Releases: Just1Developer/MC_TradingSystem
Release list
TradingSystem Hotfix v1.2a
Hotfix Release 1.2a - Experience Trading
Experience trading has been on my To-Do list for over a year, and it's finally here! Now, Players can trade XP just like items using the Trading UI. Additionally, the UI now provides options to reload settings and languages from within the game without needing to restart the server. Missing entries in existing language files are set to their English counterpart.
Furthermore, this release addresses several issues and small bugs with the Language / UI system, so even if you're not planning on using the XP Trading, it is still recommended to upgrade. The XP Trading can be disabled in the configuration at any time.
As always, reporting bugs and issues is very cool so you should do it!
Key notes
- The plugin now comes with an option in the config to enable/disable XP trading. Default value is true.
- Click the Exp Bottle to change traded XP, and again to lock it in. The trade cannot be confirmed until the XP has been confirmed.
- If the XP changes to below the set limit during the countdown, the trade countdown is canceled
- The book in the center column provides an overview of traded XP, when the book is enchanted, there has been a change. To "unmark" the book, simply leftclick on it.
Permission Overview
New permissions:
- trading.admin.reloadsettings - Reload the settings and display reload items.
=> This permission is automatically granted if the player is an operator, or has one of the following permissions:
- *
- trading.*
- trading.admin.*
Other Changes
- The Language Inventory and the Settings inventory now have a refresh item. Refreshing languages cancels all current trades because the inventory titles could change, and then the plugin would no longer detect the trade inventory as such.
- The language files for English and German have been updated.
- The permission system now works a bit differently:
-> The .* hierarchy extends all the way down, when a Player has perm.* as permission, they also have perm.test1.*, perm.test2, perm.test1.reload, etc.
-> Players with OP have all permissions. - Added Configuration Values for Auto-Accept cooldown and trade request duration. If a Player who has Auto-Accept enabled receives a trade request in between cooldowns, it's treated like a normal request in chat to prevent spamming trades.
- The Time values have minimums, if the value is set to something below that minimum, the value is instead set to the minimum. If this happens, a warning is printed to the console on startup. The minimum values are 100 milliseconds for the Auto-Accept cooldown and 2 seconds (2000 ms) for the trade expiration. Although values this low are obviously not recommended, this is the lowest the plugin will go.
Patch Notes
- Languages now receive English default values instead of simply unknown when an entry is missing. This allows the Administrators to see what the message should be for ease of translation, and the players still know what it's supposed to say, provided they can understand English.
- Fixed some major and minor bugs with the UI
- Fixed issues where the UI would be unresponsive or could be modified when using languages other than English.
- Fixed several Infinite Items and Item Duplication Issues
- Fixed reload issues where the UI would be unresponsive or could be modified when the language was altered and the server was restarted while the inventory was loading.
- Fixed the wrong message being sent when accepting trades.
- Resolved Parsing Errors when reading language files, these values will now be assigned a set default value when an error occurs while parsing. When this happens, a warning is sent to the console during startup.
Additional Patches for 1.2a
- Resolved multiple issues related to XP trading and trade cancellation due to "insufficient xp". The trades did not even need to contain any XP for this bug to occur.
- A bug that caused discrepancies between clicks and detected clicks has been resolved by adding a small delay between allowed clicks.
- Resolved issues with checking for the correct amount of XP in general when the cancellation countdown is active.
TradingSystem v1.2
Release 1.2 - Experience Trading
Experience trading has been on my To-Do list for over a year, and it's finally here! Now, Players can trade XP just like items using the Trading UI. Additionally, the UI now provides options to reload settings and languages from within the game without needing to restart the server. Missing entries in existing language files are set to their English counterpart.
Furthermore, this release addresses several issues and small bugs with the Language / UI system, so even if you're not planning on using the XP Trading, it is still recommended to upgrade. The XP Trading can be disabled in the configuration at any time.
As always, reporting bugs and issues is very cool so you should do it!
Key notes
- The plugin now comes with an option in the config to enable/disable XP trading. Default value is true.
- Click the Exp Bottle to change traded XP, and again to lock it in. The trade cannot be confirmed until the XP has been confirmed.
- If the XP changes to below the set limit during the countdown, the trade countdown is canceled
- The book in the center column provides an overview of traded XP, when the book is enchanted, there has been a change. To "unmark" the book, simply leftclick on it.
Permission Overview
New permissions:
- trading.admin.reloadsettings - Reload the settings and display reload items.
=> This permission is automatically granted if the player is an operator, or has one of the following permissions:
- *
- trading.*
- trading.admin.*
Other Changes
- The Language Inventory and the Settings inventory now have a refresh item. Refreshing languages cancels all current trades because the inventory titles could change, and then the plugin would no longer detect the trade inventory as such.
- The language files for English and German have been updated.
- The permission system now works a bit differently:
-> The .* hierarchy extends all the way down, when a Player has perm.* as permission, they also have perm.test1.*, perm.test2, perm.test1.reload, etc.
-> Players with OP have all permissions. - Added Configuration Values for Auto-Accept cooldown and trade request duration. If a Player who has Auto-Accept enabled receives a trade request in between cooldowns, it's treated like a normal request in chat to prevent spamming trades.
- The Time values have minimums, if the value is set to something below that minimum, the value is instead set to the minimum. If this happens, a warning is printed to the console on startup. The minimum values are 100 milliseconds for the Auto-Accept cooldown and 2 seconds (2000 ms) for the trade expiration. Although values this low are obviously not recommended, this is the lowest the plugin will go.
Patch Notes
- Languages now receive English default values instead of simply unknown when an entry is missing. This allows the Administrators to see what the message should be for ease of translation, and the players still know what it's supposed to say, provided they can understand English.
- Fixed some major and minor bugs with the UI
- Fixed issues where the UI would be unresponsive or could be modified when using languages other than English.
- Fixed several Infinite Items and Item Duplication Issues
- Fixed reload issues where the UI would be unresponsive or could be modified when the language was altered and the server was restarted while the inventory was loading.
- Fixed the wrong message being sent when accepting trades.
- Resolved Parsing Errors when reading language files, these values will now be assigned a set default value when an error occurs while parsing. When this happens, a warning is sent to the console during startup.
As there are some issues with this release, please see 1.2a for the fixed download file.
TradingSystem v1.1
[RELEASE 1.1] Global Config & Inv Rework
- Global Config providing server default language
- Language Inventory Rework
- Fixed bugs regarding inventory layout and language reset
- Fixed language reload message
- Minor adjustments to messages
- Added auto-add of missing phrases in language files
- Minor bugfixes and polishes
- All languages now have the language deleted reset message
TradingSystem v1.0
Introducing: Language and UI
The Trading system now also supports whatever languages you add and configure. The plugins now also features an exciting new UI for user settings and language settings.
Admins can create, edit, reset and delete languages as they see fit. An overview of the permissions can be found below. If the player is a server operator, all permission checks are bypassed automatically.
Changelog:
- Trade preferences are now implemented
- Implemented Auto-Add items
- Added intended lore to Auto-Collect items in Trade Settings Inventory
- Added Language Settings and Edit Inventories for Admins
- Implemented everything as need be
- Implemented Language Command:
- /trade language <create/reload/edit/reset/delete> <langCode> [for create: LanguageName]
- Permission Overview:
- trading.admin.language.* - All of them
- trading.admin.language.create - Create Languages
- trading.admin.language.reload - Reload Languages
- trading.admin.language.edit - Edit Languages / See the edit screen
- trading.admin.language.reset - Reset Languages
- trading.admin.language.delete - Delete Languages (not the main one)
- Languages can now be deleted and reset via the UI
- Could not recreated reported bug of players being able to edit their trade inventory just before the end of the countdown, though preventative measures have been put in place before testing
- Minor bug fixes
TradingSystem v1.0.1
[RELEASE 1.0.1] Minor Bug Fixes
- Fixed some minor bugs regarding auto-collect
[ALPHA] Trading v0.9
### Introducing: Trading, a trading plugin complete with requests, GUI and everything else.
Though I have not tested it, this plugin should also work on versions as low as 1.16.
Attention: This is an Alpha Build
Note that this version is still in development, the 1.0 release will provide user settings so that players can also auto-decline (turn off) and auto-accept trades.
Additionally, settings will also provide an option to not message other players you declined their trade request and, in a later update, a language option.
Screenshots:
The Trading GUI (Split-Screen):

Trade accepted:

Once the trade is confirmed by both players, a blue loading bar will appear and take 4.5 seconds to complete. During this time either player can un-confirm or cancel the trade.
Trades are automatically cancelled when one of the players closes the inventory. (size 3, gray)
Commands:
/trade - Opens the trade settings. This feature is not available in the alpha (pre-1.0).
/trade - Sends a trade request to another player. They have 30 seconds to accept or decline the trade before it expires.
/trade accept - Accept a pending trade request from another player. You can also click the [ACCEPT TRADE] button in the chat to accept.
/trade decline - Decline a pending trade request from another player. You can also click the [DECLINE TRADE] button in the chat to accept. The other player will be informed you declined the trade.
/trade cancel - Cancel a pending trade request you made to another player. You can also click the [TAKE BACK] button in the chat to accept. The other player will not be informed you took back the trade.



