A comprehensive marketplace plugin for Minecraft Paper servers that allows players to create buy orders for items. Players can place orders for items they need, and other players can fulfill these orders by delivering the requested items for payment.
- Create Buy Orders: Players can create orders for items they need, specifying quantity and price per item
- Order Management: View and manage your active orders through an intuitive GUI
- Order Fulfillment: Deliver items to active orders and earn money instantly
- Order Highlighting: Pay a fee to highlight your order for better visibility
- Progress Tracking: Visual progress bars show order completion status
- Time-Limited Orders: Orders automatically expire after a configurable period
- Database Support: Support for both SQLite and MySQL databases
- Statistics Tracking: Track player order statistics and delivery history
- Discord Webhooks: Send notifications to Discord for order events
- Multi-Language Support: Built-in support for multiple languages (English, Turkish)
- PlaceholderAPI Integration: Use order data in other plugins via placeholders
- Vault Economy Integration: Seamless integration with Vault-compatible economy plugins
- Item Blacklist: Prevent certain items from being ordered
- Order Limits: Set limits on active orders per player
- Permission-Based Features: Fine-grained control over plugin features
- Server: Paper 1.21.4 or higher
- Java: Java 21 or higher
- Dependencies:
- Vault (Required)
- PlaceholderAPI (Optional)
- NLib (Required)
- Download the latest release of NOrder
- Place the
.jarfile in your server'spluginsfolder - Install required dependencies (Vault)
- Restart your server
- Configure the plugin in
plugins/NOrder/config.yml - Reload the plugin with
/orderadmin reload
database:
type: sqlite # Database type (sqlite or mysql)
host: localhost # MySQL host
port: 3306 # MySQL port
database: norder # Database name
username: root # MySQL username
password: your_secure_password # MySQL password
lang: en_US # Language (en_US or tr_TR)
settings:
highlight-fee: 2.5 # Fee percentage for highlighting orders
send-webhooks: false # Enable Discord webhooks
# Order expiration time is set per player with permission
# norder.expiration.<days> (default: 7 days)
# Order limits are set per player with permission
# norder.limit.<number> (default: 5)Configure items that cannot be ordered in config.yml:
blacklist-items:
- "BEDROCK"
- "COMMAND_BLOCK"
- "SPAWNER"
# Add more items...| Command | Aliases | Description | Permission |
|---|---|---|---|
/order |
/norder, /sipariş |
Open the order menu | norder.use |
/order create <item> <quantity> <price> |
Create an order directly from command | norder.menu |
Command Examples:
/order create DIAMOND 64 10.5- Create an order for 64 diamonds at $10.50 each/order create IRON_INGOT 128 5- Create an order for 128 iron ingots at $5.00 each/order create NETHERITE_INGOT 16 100.25- Create an order for 16 netherite ingots at $100.25 each
| Command | Description | Permission |
|---|---|---|
/orderadmin reload |
Reload plugin configurations | norder.admin |
/orderadmin info <id> |
View detailed order information | norder.admin |
/orderadmin delete <id> |
Delete an order | norder.admin |
| Permission | Description | Default |
|---|---|---|
norder.use |
Allows using the order system | op |
norder.menu |
Allows opening the order menu | op |
norder.cancel |
Allows cancel your own order | op |
norder.admin |
Allows using admin commands | op |
norder.highlight |
Allows highlighting orders | norder.highlight |
norder.limit.<number> |
Sets max active orders (e.g., norder.limit.10) |
5 |
norder.expiration.<days> |
Sets order expiration in days (e.g., norder.expiration.14) |
7 |
- Run
/orderto open the order menu - Click "Create New Order"
- Select the item you want to order
- Set the quantity needed
- Set the price per item
- (Optional) Enable highlighting for better visibility
- Click "Confirm Order"
Run /order create <item> <quantity> <price> directly:
- Example:
/order create DIAMOND 64 10.5 - This creates an order for 64 diamonds at $10.50 per diamond ($672 total)
- The command automatically validates all inputs and deducts the total cost from your balance
- Tab completion helps you find item names
Note: The total cost will be deducted from your balance when the order is created.
- Run
/orderto view all active orders - Click on an order to view details
- Bring the requested items in your inventory
- Click on the order to deliver items
- Receive payment instantly for delivered items
- Run
/orderto open the order menu - Click "Your Orders" to view your active orders
- View progress and collected items
- Take delivered items from your orders
If PlaceholderAPI is installed, you can use these placeholders:
%norder_orders_total%- Number of total orders
Spesific order placeholders
-
%norder_order_<id>_<> -
%norder_order_<id>_material% -
%norder_order_<id>_amount% -
%norder_order_<id>_price% -
%norder_order_<id>_buyer% -
%norder_order_<id>_status% -
%norder_order_<id>_createDate% -
%norder_order_<id>_expirationDate%
Player statistics placeholders (for the player viewing the placeholder)
%norder_player_totalOrders%- Total orders created by the player%norder_player_totalEarnings%- Total earnings from delivered orders%norder_player_totalDelivered%- Total items delivered to orders%norder_player_totalCollected%- Total items collected from orders
Specific player statistics placeholders (for looking up other players)
%norder_player_{player_name}_totalOrders%- Total orders by specific player%norder_player_{player_name}_totalEarnings%- Total earnings by specific player%norder_player_{player_name}_totalDelivered%- Total items delivered by specific player%norder_player_{player_name}_totalCollected%- Total items collected by specific player
Note: Player names can contain underscores (e.g., %norder_player_ItzFabbb____totalOrders%)
Configure webhooks in webhooks.yml to receive notifications about:
- New orders created
The plugin supports multiple languages. Available languages:
- English (en_US)
- Turkish (tr_TR)
To add custom language files, create a new .yml file in plugins/NOrder/languages/.
No additional configuration needed. Data is stored in plugins/NOrder/database.db.
Configure MySQL settings in config.yml:
database:
type: mysql
host: localhost
port: 3306
database: norder
username: root
password: your_password
pool-size: 10
minimum-idle: 5For issues, feature requests, or questions:
- GitHub: NotPatch/NOrder
- Create an issue on GitHub for bug reports or feature requests
git clone https://github.com/NotPatch/NOrder.git
cd NOrder
mvn clean packageThe compiled .jar file will be in the target directory.
This project is licensed under the terms specified by the repository owner.
- Developed by NotPatch
- Uses NLib for core functionality
- Compatible with Paper server implementations