All versions
1.21.x-1.0
Release
1.21.x-1.0-Paper3 months ago 16
Compatibility
Minecraft: Java Edition
1.21.x
Platform
Paper
Changes
EasyTrading v1.0 — Release
What's New
Player-to-Player Trading
A full-featured direct trading system between players — no more dropping items on the ground!
How it works
- Send a trade request with
/market trade <player> - The target player receives a clickable chat message with [Accept] and [Decline] buttons
- Alternatively, use
/market trade acceptor/market trade decline - When accepted, a shared 6-row trade GUI opens for both players
Trade GUI
- Each player has 16 item slots on their side of the window
- Both players can see what the other is offering in real time
- Add or remove money to the trade (+10 / -10 buttons)
- Press Confirm when satisfied — once both players confirm, a 3-second countdown begins
- After the countdown, items and money are swapped
Anti-Exploit & Safety
All edge cases have been accounted for to prevent item duplication and exploits.
- If either player changes items or money after confirming, both confirmations are automatically reset
- Trade is instantly cancelled and items returned if a player:
- Disconnects
- Dies
- Changes world / gets teleported
- Closes the trade window
- Shift-clicking items from inventory into trade is blocked to prevent manipulation
- Dragging into opponent's slots is blocked
- Money balance is validated at execution time, not just at offer time
- Items that don't fit in inventory are safely dropped at the player's feet
- Trade requests expire after 60 seconds
- Cannot start a trade while already in one
- Double-execution is prevented with a session lock
Other Changes
- Vault is now a soft dependency — the plugin loads correctly without Vault installed
- Version bumped to
1.0
Commands
| Command | Description |
|---|---|
/market trade <player> |
Send a trade request |
/market trade accept |
Accept incoming trade request |
/market trade decline |
Decline incoming trade request |
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:ps74UrHn:bYRIpqc7"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:ps74UrHn:bYRIpqc7"
}

