TradeForge
One shared window, and nothing moves until both say yes
TradeForge is player-to-player trading for Paper and Spigot, from 1.17 to 26.x. Two players, one shared window, items and money on the table, and nothing changes hands until both sides have said yes to the same offer.
The three decisions
- One shared window: there is exactly one place where a traded stack exists at any moment. With two copies to keep in sync on every click, any drift is an item that exists twice or not at all.
- Any change clears both confirmations: items, money, either side. It isn't a setting you can weaken. It is the whole defence against changing the deal after somebody agreed to it.
- All or nothing: inventory space and balance are checked for both players before anything moves, so a trade never ends with half the load on the floor.
When things go wrong
- Somebody disconnects mid-trade: what they had on the table is written to disk and handed back the next time they log in.
- Somebody dies mid-trade: the same, handed over on respawn.
- The server stops mid-trade: the same again, written before the plugin disables.
- A balance drops between confirming and closing: the trade aborts and tells both players, instead of half-paying anybody.
- One of you walks away: the distance is measured again at settlement, not only when the window opened.
- Somebody's inventory is full: the trade stays open and says who has no room, so it can be fixed without starting over.
- Both close the window at the same instant: the goods are returned once, not twice.
How to use it
- Install: drop the jar into
/plugins, restart once and paste your licence key intoconfig.yml. English is the default. - Set the rules in
config.yml: slots per side, blocked materials, the distance limit and the money ceiling. - Trade:
/trade <player>sends a request, and the other player runs/trade accept. Shift-click an item to offer it, and use/trade money <amount>to add money.
Commands and permissions
/trade <player>,/trade accept,/trade deny,/trade canceland/trade money <amount>(aliases/tradeforgeand/tf)./trade logshows the recent trades (tradeforge.log).tradeforge.useandtradeforge.moneyare on for everyone.tradeforge.log,tradeforge.reloadand the two bypasses (tradeforge.bypass.blocked,tradeforge.bypass.distance) default to operators.- Every node is declared in
plugin.yml, so your permissions plugin can see them all.
Requirements
- Paper or Spigot from 1.17 to 26.x, forks like Purpur included, on the Java version your server already uses.
- Optional: Vault with an economy plugin (money on the table) and PlaceholderAPI.
Neither is required. Without Vault the money slot switches itself off and says so. Without PlaceholderAPI the placeholders aren't registered. The plugin never refuses to start because an optional plugin is missing.
FAQ
Can players trade money?
Yes, with Vault and an economy plugin. Money is only taken and paid at settlement, with an optional ceiling per trade.
Can I stop certain items being traded?
Yes. List them under blocked materials. Staff with the bypass permission can still trade them.
Where can I see what was traded?
Every settled trade is added to trades.log, tab separated, and /trade log shows the recent ones in game.
For questions or bug reports, use the discussion tab on this page or our Discord. Every update is announced on the Discord before it reaches the listing.