Skip to main content

AtomatrixDonutCore

AtomatrixDonutCore is a combined Paper plugin that replicates multiple DonutSMP features in a single JAR. Every feature is a self-contained module with its own YAML config file, and most modules can be reloaded or fully enabled/disabled at runtime without restarting the server.

This plugin is not publicly available and is exclusive to the Atomatrix DonutSMP Replica Server Setup.

Features

Economy & Trading

  • Pay: Economy features with /pay, /paytoggle, and /bal, plus configurable tax, formatting, and limits.
  • Worth: Adds Worth: $X lore to items in your inventory, with a contents-and-total summary on shulker boxes. Item values live in the shared worth.yml.
  • Billford: A configurable trading menu showing a single rotating trade. Trades rotate on a configurable interval, are picked at random from billford.yml, and survive restarts. All clicks are server-validated to defeat packet-spam client mods.
  • Auction House: A paginated player-to-player auction house with category filtering, sorting, sign search, shulker preview, buy/sell confirmation GUIs, My Listings, and full transaction history. Expired items are auto-returned to sellers.
  • Shop: A configurable buy shop with category icons and quantity-adjustable confirm screens. Each category can independently use Vault, PlayerPoints, or CoinsEngine as its currency.
  • Sell: A 5-row sell GUI with nine item categories, each with independent multipliers that level up (up to 20 levels) as you earn. Includes /sellworth, /sellhistory, and /selltop.
  • Shards: A passive shard-earning system. Players in AFK regions earn shards on a configurable interval; physical booster items multiply earnings. Optional kill-reward system included.

Movement & Teleportation

  • Homes: A homes GUI with teleport (countdown), rename, set, and confirm-delete. Home slot count is granted by the donuthome.<n> permission. Admin visit/delete commands included.
  • TPA: A teleport request system with /tpa, /tpahere, a confirmation GUI, accept/deny/cancel commands, and several per-player toggles.
  • Spawn: A paginated spawn and AFK-zone GUI. Clicking a location starts a movement-cancellable countdown. Admins create, delete, open, and close locations.
  • RTPZone: Configure WorldGuard regions as RTP zones with a live countdown; when the timer hits zero every player in the world is scattered to a unique safe random location.
  • Jump: DonutSMP-style double-jump inside allowed WorldGuard regions, with configurable boost, cooldown, and sound.

Social & Cosmetic

  • Hide: /hide scrambles your nametag into &k-style magic characters.
  • PlayerToggle: Hides every other player from your client only, with per-world and per-region opt-outs.
  • Msg: Private messaging with /msg and /reply, plus /msgtoggle and per-player blocking. State persists across restarts.
  • Team: A full team system. Players who have earned $50,000 from /sell can create a team, invite/kick members, set a team home, use team chat, and manage five per-member permissions through a GUI.
  • Settings: A personal settings GUI where each item is a configurable toggle that dispatches a command and flips its lore.

Gameplay

  • Combat: Combat tagging with an actionbar timer, combat-log inventory drop + reconnect kill, blockable commands while tagged, and WorldGuard PvP-zone border enforcement.
  • Crate: A choose-your-own crate system with fully virtual keys. Right-click a bound block to open a crate, preview rewards, and pick one. Five default crates ship pre-configured.
  • Tools: Five time-limited tools (Amethyst Axe, Sell Axe, Drillpick, Drill Shovel, Drainer), each handed out for a set duration and breaking when the timer expires.
  • Leaderboards: A GUI with six ranked categories (Money, Deaths, Playtime, Mobs Killed, Blocks Broken, Blocks Placed).
  • Baltop: A paginated money leaderboard of player heads with a personal head, refresh, and sign-based search.

Commands & Permissions

Most player commands default to true (available to everyone); admin commands default to op. Passive permissions (no command) are marked (passive).

Core

CommandDescriptionPermissionDefault
/donutcore reload [module]Reload all modules, or a single module config.donutcore.adminop
/donutcore statusPrint the colored module status banner. Alias: /adc.donutcore.adminop

Pay

CommandDescriptionPermissionDefault
/pay <player> <amount>Send money to another player.donutpay.paytrue
/paytoggleToggle whether you receive payments.donutpay.paytoggletrue
/bal [player]View a balance. Aliases: /balance, /money.donutpay.baltrue
/donutpayAtomatrixDonutPay info banner. Alias: /adp.donutpay.adminop

Hide / PlayerToggle / Worth / Jump

CommandDescriptionPermissionDefault
/hideToggle hiding your nametag.donuthide.usetrue
/playertoggle [toggle]Toggle other players' visibility for yourself only.playertoggle.usetrue
/worth [toggle]Show or hide the worth lore on your own items.donutworth.usetrue
/donutjump [toggle]Enable or disable double-jump for yourself.donutjump.usetrue
(passive)Excludes the player from the double-jump feature.donutjump.ignorefalse

Billford / Baltop

CommandDescriptionPermissionDefault
/billfordOpen the Billford trading menu. Alias: /donutbillford.donutbillford.usetrue
/billford set <trade>Force the active trade to the named entry.donutbillford.adminop
/baltopOpen the Baltop leaderboard menu. Alias: /donutbaltop.donutbaltop.usetrue

Msg

CommandDescriptionPermissionDefault
/msg <user> <message>Send a private message. Aliases: /tell, /whisper, /w.donutmsg.usetrue
/reply <message>Reply to the last player who messaged you. Alias: /r.donutmsg.usetrue
/msgtoggleToggle whether you receive private messages.donutmsg.usetrue
/msgblock <user>Block a player from messaging you.donutmsg.blocktrue
/msgunblock <user>Unblock a previously blocked player.donutmsg.blocktrue

Region / Settings

CommandDescriptionPermissionDefault
/donutregion bypass [region]Override (or clear) the IP-based region detection.donutregion.adminop
/settingsOpen the personal settings GUI. Alias: /donutsettings.donutsettings.usetrue

Homes

CommandDescriptionPermissionDefault
/home [name]Teleport to a home. Opens the GUI when you have multiple homes and no name is given.donuthome.usetrue
/homesOpen the homes GUI.donuthome.usetrue
/sethome [name]Set a home at your current location.donuthome.usetrue
/renamehome <old> <new>Rename a home via command.donuthome.usetrue
/home-admin delhome <player> <home>Delete any player's home.donuthome.adminop
/home-admin visithome <player> <home>Teleport to any player's home.donuthome.adminop
(passive)Allow the player to have N homes (donuthome.1donuthome.5).donuthome.<n>false
(passive)Bypass blocked-world restriction when setting homes.donuthome.bypass.worldop
(passive)Bypass blocked-region restriction when setting homes.donuthome.bypass.world.guardop

Leaderboards

CommandDescriptionPermissionDefault
/leaderboardOpen the leaderboards hub. Aliases: /leaderboards, /lb.leaderboards.usetrue
/leaderboard <category>Jump directly to a category leaderboard.leaderboards.usetrue
(passive)Reserved for future Leaderboards admin actions.leaderboards.adminop

Auction House

CommandDescriptionPermissionDefault
/ahOpen the Auction House GUI. Alias: /auctionhouse.donutauction.usetrue
/ah sell <price>List the held item at the given price (opens confirm GUI).donutauction.usetrue
/ah fastbuyInstantly buy the cheapest listing for the held item type.donutauction.fastbuytrue
/ah fastsell <price>List the held item at the given price without confirmation.donutauction.fastselltrue
/ah toggleOpen or close the Auction House for non-admin players.donutauction.toggleop
/ah infoShow active listing count and expiry statistics.donutauction.usetrue
/ahadmin block <player>Block a player from using the Auction House.donutauction.adminop
/ahadmin unblock <player>Unblock a previously blocked player.donutauction.adminop
/ahadmin clearcurrent <player>Cancel all active listings for a player (items returned).donutauction.adminop
/ahadmin clearhistory <player>Wipe a player's transaction history.donutauction.adminop
/ahadmin clearall <player>Cancel listings, clear history, and unblock a player.donutauction.adminop
(passive)Allow N concurrent listings (donutauction.sell.1, .2, .3, .5, .10, .25).donutauction.sell.<n>false
(passive)Unlimited concurrent listings.donutauction.sell.unlimitedop
(passive)Bypass the open/closed toggle when selling.donutauction.sell.bypassop
(passive)Bypass the open/closed toggle when buying.donutauction.buy.bypassop
(passive)Bypass all Auction House restrictions.donutauction.emergency.bypassop

Combat

CommandDescriptionPermissionDefault
(passive)Bypass combat tagging and PvP border restrictions (admin).combat.adminop
(passive)Bypass combat tagging and PvP border restrictions.combat.bypassfalse

Crate

CommandDescriptionPermissionDefault
/dc bind <crate>Mark the next block broken as the crate's block.donutcrate.adminop
/dc unbindMark the next block broken for unbinding.donutcrate.adminop
/dc view <crate>Open the crate GUI in view-only mode (no key consumed).donutcrate.viewtrue
/dc itemeditor <crate>Open the item editor GUI for the given crate.donutcrate.adminop
/dc createcrate <name>Create a new empty crate in crate.yml.donutcrate.adminop
/dc givekey <player> <crate> <amount>Give virtual crate keys to a player.donutcrate.adminop
/dc keytake <player> <crate> <amount>Remove virtual crate keys from a player.donutcrate.adminop
/dc keyall <crate> <amount>Give virtual keys to every online player.donutcrate.adminop
/dc keylist <player>List all virtual key counts for a player.donutcrate.adminop
/dc keyclear <player>Clear all virtual keys for a player.donutcrate.adminop
/dc helpShow the crate command list.(none)true
(passive)Allows the player to open crates with virtual keys.donutcrate.usetrue

Spawn & AFK

CommandDescriptionPermissionDefault
/spawnOpen the Spawns GUI to browse and teleport to spawn areas.spawn.usetrue
/afkOpen the AFK GUI to browse and teleport to AFK zones.spawn.usetrue
/setspawn <name>Set a spawn at your current location.spawn.setspawnop
/setafk <name>Set an AFK zone at your current location.spawn.setafkop
/delspawn <name>Delete a spawn by name.spawn.removespawnop
/delafk <name>Delete an AFK zone by name.spawn.removeafkop
/spawnopen <name>Open a spawn so players can teleport to it.spawn.spawnopenop
/spawnclose <name>Close a spawn so players cannot teleport to it.spawn.spawncloseop
/afkopen <name>Open an AFK zone so players can teleport to it.spawn.afkopenop
/afkclose <name>Close an AFK zone so players cannot teleport to it.spawn.afkcloseop

Sell

CommandDescriptionPermissionDefault
/sellOpen the sell GUI to place items and sell on close.sell.usetrue
/sellworth [item]Check the sell price of the held item or a named key. Alias: /sw.sell.worthtrue
/sellhistoryOpen the paginated sell transaction history GUI. Alias: /sh.sell.historytrue
/selltopOpen the sell leaderboard GUI. Alias: /st.sell.toptrue
/selladmin reset <player>Reset a player's sell data (progress, history, totals).sell.adminop
/selladmin saveForce-save all sell data to disk.sell.adminop

Team

CommandDescriptionPermissionDefault
/teamOpen your team GUI (paginated member list).donutteam.usetrue
/team create <name>Create a new team (requires $50k from /sell).donutteam.usetrue
/team invite <player>Invite a player to your team.donutteam.usetrue
/team kick <player>Kick a member from your team (opens confirm GUI).donutteam.usetrue
/team leaveLeave your current team (opens confirm GUI).donutteam.usetrue
/team disbandDisband your team (owner only, opens confirm GUI).donutteam.usetrue
/team rename <name>Rename your team (owner only).donutteam.usetrue
/team sethomeSet the team home at your current location (owner only).donutteam.usetrue
/team delhomeDelete the team home (owner only).donutteam.usetrue
/team homeTeleport to the team home (with countdown).donutteam.usetrue
/team chat <message>Send a message visible only to team members.donutteam.usetrue
/team chat toggleToggle persistent team-chat mode on/off.donutteam.usetrue
/team-admin delete <name>Force-delete any team.donutteam.adminop
/team-admin home <name>Teleport to any team's home.donutteam.adminop

Shop

CommandDescriptionPermissionDefault
/shopOpen the shop GUI. Alias: /donutshop.shop.usetrue
(passive)Allows the player to reload the shop module.shop.adminop
(passive)Access all premium shop categories.shop.premiumfalse
(passive)Access the End category if premium is required.shop.premium.endfalse
(passive)Access the Nether category if premium is required.shop.premium.netherfalse
(passive)Access the Gear category if premium is required.shop.premium.gearfalse
(passive)Access the Food category if premium is required.shop.premium.foodfalse
(passive)Access the Shards category if premium is required.shop.premium.shardsfalse

RTPZone

CommandDescriptionPermissionDefault
/rtpzone startImmediately scatter all players in the configured world.rtpzone.adminop
/rtpzone statusShow time remaining, players in zone, and zone config.rtpzone.adminop

Shards

CommandDescriptionPermissionDefault
/shard timeleftCheck remaining time on your active shard booster.shards.usetrue
/shard toggleToggle the actionbar shard countdown messages on/off.shards.usetrue
/shard pay <player> <amount>Give shards to a player.shards.adminop
/shard take <player> <amount>Take shards from a player.shards.adminop
/shard givebooster <player> <time> <multi>Give a shard booster item (e.g. 24h 4).shards.adminop
/shard clearbooster <player>Clear a player's currently active booster.shards.adminop
(passive)Earn shards from anywhere, not only in AFK regions.shards.get.anywherefalse
(passive)Booster tier permission (1×–30×, e.g. shards.booster.4).shards.booster.<n>false

TPA

CommandDescriptionPermissionDefault
/tpa <player>Request to teleport to another player.donuttpa.tpatrue
/tpahere <player>Request another player to teleport to you.donuttpa.tpaheretrue
/tpaccept [player]Accept a pending teleport request (most recent if no arg).donuttpa.tpaccepttrue
/tpdeny [player]Deny a pending teleport request (most recent if no arg).donuttpa.tpdenytrue
/tpacancelCancel your own outgoing teleport request.donuttpa.tpacanceltrue
/tpatoggleToggle whether others can send you /tpa requests.donuttpa.tpatoggletrue
/tpaheretoggleToggle whether others can send you /tpahere requests.donuttpa.tpaheretoggletrue
/tpaautoToggle auto-accepting all incoming teleport requests.donuttpa.tpaautotrue
/tpaguitoggleToggle the confirmation GUI on or off for yourself.donuttpa.tpaguitoggletrue
/tp <player>Teleport yourself to another player.donuttpa.tpop
/tp <player1> <player2>Teleport player1 to player2 (admin).donuttpa.adminop

Tools

CommandDescriptionPermissionDefault
/tools give <player> <tool> <time>Give a time-limited tool to a player. Aliases: /dt, /donuttools.tools.adminop
/tools listList the available tools.tools.usetrue
/tools toggleToggle tool sounds and particles for yourself.tools.usetrue
/tools helpShow the Tools command list.tools.usetrue

Placeholders

Requires PlaceholderAPI.

PlaceholderDescription
%donutcrate_<crateId>%The viewing player's virtual key count for the given crate (e.g. %donutcrate_common-crate%).
%donutbillford_next_trade%Time until the active Billford trade rotates, e.g. 2d 2h.
%donutbillford_current_trade%The ID of the currently active Billford trade.
%donutregion_playerregion%The viewing player's coarse region label (e.g. NA East).
%donutteam_name%The viewing player's team name, or empty if not in a team.
%donutteam_yes_no%Yes if the player is in a team, No otherwise.
%donutrtpzone_time_rtpzone%Seconds remaining until the next RTP scatter event.
%shards_value%The viewing player's current shard balance (formatted with K/M/B/T suffixes).
%sell_me_name%The viewing player's name.
%sell_me_made%The viewing player's total sell earnings (formatted, e.g. 1.23M).
%sell_me_item%The viewing player's total items sold.
%sell_position_me%The viewing player's rank in the sell leaderboard, or ? if unranked.
%sell_item_<n>%Rank label for the nth leaderboard entry, e.g. 1. PlayerName.
%sell_name_<n>%Player name for the nth sell leaderboard entry.
%sell_made_<n>%Total earnings for the nth sell leaderboard entry (formatted).
%sell_totalsold_server%Total money earned from sells across all players (formatted).
%sell_totalsolditemscount_server%Total items sold across all players.

Dependencies

Required:

Optional:

  • PlaceholderAPI - for the placeholders listed above.
  • Vault - required for Vault-based shop categories.
  • PlayerPoints - required for PlayerPoints-based shop categories (Shards)

Companion Plugins

Some DonutSMP features are provided by separate plugins: