
Orderium [Order System]
Add an order system and let players to create and deliver orders from each others! Inspired by DonutSMP.
- Загрузки
- 5K
- Подписчики
- 23
- Обновлён
- 31 июля 2026 г.
- Лицензия
- GPL-3.0-only
Опубликован 12 февраля 2026 г.
Orderium is a plugin that adds an order system, allowing players on your server to request items from other players and give them money as a reward. (Basically an auction house plugin but "reversed")
It is inspired by DonutSMP.
Features
- Create orders for a specific item and deliver them to get money
- Support items with different NBT data variants like enchantment books, potions, etc
- Add custom items from plugins like ItemsAdder, Nexo, CraftEngine, etc
- Blacklist certain items you don't like
- Highly configurable settings, messages, texts, sounds, etc are configurable
Why this plugin
There are many plugins that embed this system into your server. However, many of them are AI-generated, which creates a number of security possibilities.
Besides, Orderium is also open-source, you can see the source code and contribute to the project if you found it helpful. As well as supports for custom items and items with different NBT varients, Orderium is preferred than other plugins with similar idea.
Requirements
Orderium needs these dependencies to operate:
- VaultUnlocked (recommended) or Vault
- An economy plugin
- packetevents
Compatibility
- Compatible versions: 1.21.7+
- Compatible software: Paper, Folia, and their forks
Incompatible setups
- GeyserMC
- Cross-server data syncing
Contact
Contact me for anything else related to this plugin, including vulnerability reports.
Email: [email protected]
Ченджлог
2.2.0Бета26.1.1, 26.1.2, 26.2 · 31 июля 2026 г.
Optimizations
This version mainly improves the performance impact of the plugin to servers.
The issue
- A bottleneck in Orderium was that strings are constantly getting deserialized to MiniMessage text components. At first, this does not sound very resource-intensive, just deserializing a string. However, it starts to create a performance impact when this happens more often. Every page, every item, every lore lines, custom name, all of them are deserialized when you execute
/ordercommand. - The plugin makes
Bukkit.getOfflinePlayer(UUID)calls for all active orders whenever a player uses search. This method tends to be resource-intensive.
The solution
For the first problem, I used 2 methods to solve it:
- Lazy loading: whenever a player executes
/order, it generates all the pages, even if the player only accesses the first or second page. This version no longer generates all the pages, it only does when the player moves to the next page, minimizing the amount of inventories need to be created as well asItemStacks. - Caching: The orders used to create a new
ItemStackthen deserialize the lore lines with placeholders. Now, it only creates theItemStackevery time the placeholder values change or the config reloads.
For the second problem, I also simply cache OfflinePlayer and only call Bukkit.getOfflinePlayer(UUID) once when the server starts for each order.
You can see that a lot of changes have been made. Therefore, bugs might appear in this version, because optimizing is always scary. If you found any, feel free to report an issue on the Github repository :)
2.1.0Релиз26.1.1, 26.1.2, 26.2 · 14 июля 2026 г.
Fixes
- cancel order gui config is missing
- API events are not called when delivering for an order
- Orders can be canceled even if it's already completed
News
- Webhook support
- Order limits for different permissions
- Show cost when creating order and reward when cancelling order
2.0.0Альфа26.1.1, 26.1.2, 26.2 · 21 июня 2026 г.
READ ME!
This update has many changes, please read the changelog carefully before updating.
Config Overhaul
The plugin should automatically migrate to the new formats for you.
Each GUI now has its own config file instead of putting everything in config.yml.
The config files of the GUIs are under gui/ directory.
gui.main > main.yml
gui.your-orders > your-orders.yml
gui.choose-item > choose-items.yml
gui.search-sign > search.yml
gui.delivery > deliver.yml
gui.enchant-item > enchant.yml
gui.new-order > new-order-dialog.yml
gui.confirm-delivery > confirm-delivery.yml
gui.manage-order > manage-order.yml
In container GUIs, you can now specify the amount of rows.
For main, your orders, choose items, enchant item GUIs, you can now specify a list of slots where the
orders/items/enchantment books should be put in respectively.
Buttons now have 2 keys, item and slot; name, lore, item model of the button is now moved to the item key, under
components, providing a more vanilla format.
name-prefix in enchant GUI's config is changed to name.active and name.inactive
sort-prefix and sort-types are now merged to sorts-display, allowing you to set the text for each sort type when
it is active and inactive.
FastStats
The plugin now uses FastStats to collect anonymous data. Besides default metrics it collects, Orderium also tracks errors at different places, and these data:
- API Usage: a boolean determines if your server is using API from Orderium
- Experimental features: a string array contains names of experimental features being used
- Order amount: an integer shows the amount of orders have been created
- Items collected: an integer shows the amount of items collected from all orders
1.7.0Релиз26.1.1, 26.1.2, 26.2 · 26 мая 2026 г.
- Removed empty items.db file
- Fix bStats not working correctly with config option
- Fix packetevents listeners spamming errors if the plugin is disabled
- Fix not recognizing economy plugin if it enables after Orderium
- Fix commands not unregistered if the plugin is disabled
- Add permission
orderium.usefor executing commandorders
1.6.1Релиз26.1, 26.1.1, 26.1.2 · 16 мая 2026 г.
- Fixed an issue with false warning of downgrading plugin.
If you didn't downgrade the plugin, you can safely ignore the message.
1.6.0Релиз26.1, 26.1.1, 26.1.2 · 16 мая 2026 г.
- Items are now obtained from the server (nms)
- Default blacklisted items are removed
- Added aliases for the
orderscommand
1.5.0Релиз26.1, 26.1.1, 26.1.2 · 16 мая 2026 г.
- Add minimum price to config
1.4.0Релиз26.1, 26.1.1, 26.1.2 · 1 мая 2026 г.
- Fix various bugs
- Better Folia compatibility
- Reduced plugin jar file size
- Some optimizations
- Java requirement is now 21
Комментарии
Загружаем…