Tags
Creators
Details
1.0.0
Compatibility
Required content
Changes
⇄ HypeTrade
A feature-rich, secure and fully configurable player trading plugin for Paper 1.21+
📸 Overview
HypeTrade provides a polished, real-time chest-GUI trading system between two players. Both players see the same shared inventory, can offer items and money simultaneously, and must both click Ready before a configurable countdown completes the trade. Every step of the trade is protected against duplication exploits, inventory manipulation, and unexpected disconnects.
✨ Features
🖥️ Intuitive GUI
- Shared 54-slot inventory — both players see the same screen in real time
- Player skull icons showing each trader's name, item count and money offered
- Animated separator that changes colour during the countdown (green → yellow → red)
- Cancel button always visible for a safe exit
💰 Money Trading (Vault)
- Left-click: small step | Right-click: large step (both configurable)
- Per-trade maximum money cap to prevent extreme transactions
- Real-time balance verification at every step and again at trade completion
⏱️ Smart Countdown System
- Animated Boss Bar countdown with colour progression
- Separator colour mirrors the boss bar state
- Title screen overlay on trade complete and trade cancel
- If either player changes the trade contents, the countdown resets automatically
🔒 Exploit Prevention
- Items placed during the countdown are locked — no adding/removing during the final seconds
- Shift-click, number-key swap and off-hand swap are all validated against the blacklist
- Drag operations into trade slots are fully blocked
- Double-verification of balances immediately before money is transferred
- Items always returned safely if the trade is cancelled, even on server shutdown
📊 Trade Statistics
- Per-player persistent stats: trades completed, items sent/received, money sent/received
/trade stats [player]visible in-game; works for offline players too- Stored in
data/stats.yml— easy to read and back up
📝 Trade Logging
- Every completed trade written to
logs/trades.logwith full detail:- Timestamp, both player UUIDs, every item on both sides, money amounts
🌍 Multi-Language
- Ships with English and Turkish out of the box
- Every single message — including GUI labels — lives in
lang/en.yml/lang/tr.yml - Missing keys automatically fall back to English; you'll never see a broken message
- Switch language with one line in
config.yml:language: "en"orlanguage: "tr"
⚙️ Fully Configurable
| Option | Default | Description |
|---|---|---|
request-timeout |
60s | Seconds before an unanswered request expires |
countdown-seconds |
5s | Ready countdown length |
cooldown-seconds |
30s | Wait time between trades |
money-step |
100 | Left-click money increment |
money-step-large |
1000 | Right-click money increment |
max-money |
1,000,000 | Max money per trade |
blacklisted-items |
list | Materials that cannot be traded |
blacklisted-worlds |
list | Worlds where trading is disabled |
bossbar-countdown |
true | Toggle the boss bar |
show-title |
true | Toggle title screens |
log-trades |
true | Toggle trade logging |
track-stats |
true | Toggle statistics tracking |
🛠️ Commands
| Command | Description | Permission |
|---|---|---|
/trade <player> |
Send a trade request | hypetrade.use |
/trade accept |
Accept an incoming request | hypetrade.use |
/trade deny |
Deny an incoming request | hypetrade.use |
/trade cancel |
Cancel your active trade | hypetrade.use |
/trade stats [player] |
View trade statistics | hypetrade.stats |
/trade list |
List all active trades | hypetrade.admin |
/trade forcecancel <player> |
Force-cancel a trade | hypetrade.admin |
/trade reload |
Reload config & language | hypetrade.admin |
🔑 Permissions
| Permission | Default | Description |
|---|---|---|
hypetrade.use |
everyone | Use /trade |
hypetrade.admin |
op | Admin commands |
hypetrade.stats |
everyone | View own stats |
hypetrade.stats.others |
op | View others' stats |
hypetrade.bypass.cooldown |
op | Skip cooldown |
hypetrade.bypass.worldblacklist |
op | Trade in blacklisted worlds |
🚀 Installation
- Download
HypeTrade.jarand place it in your/pluginsfolder - Make sure Vault and EssentialsX and an economy plugin are installed
- Start your server —
config.ymland both language files are created automatically - Set
language: "en"orlanguage: "tr"inconfig.yml - Run
/trade reloadafter any config change — no restart needed
❓ FAQ
Q: Can players trade in creative mode?
A: Yes, unless you add their world to blacklisted-worlds.
Q: What happens if a player disconnects mid-trade? A: The trade is cancelled immediately and all items are returned to their owners.
Q: Can I add my own language?
A: Yes! Copy en.yml to lang/xx.yml, translate every value, and set language: "xx" in config.
Q: Is duplication possible? A: No. Items are locked during the countdown, shifts and hotbar swaps are validated, and a final balance check runs before any money changes hands.
Made with ❤️ by xXantares_peek
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:xAwVFwEZ:tVEfdp8R"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:xAwVFwEZ:tVEfdp8R"
}

