Перейти к содержимому
Mineforgian

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
Paper Purpur Folia Github
Wiki Issues Discord

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:

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

  1. 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 /order command.
  2. 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:

  1. 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 as ItemStacks.
  2. Caching: The orders used to create a new ItemStack then deserialize the lore lines with placeholders. Now, it only creates the ItemStack every 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.use for executing command orders
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 orders command
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

Комментарии

Загружаем…