Configuration
What lives in each configuration file.
On this page
File layout
config.yml # theme, features, database, permissions, prices, blacklist
menu.yml # every menu layout
webhooks.yml # Discord notification for new orders
customitems.yml # custom item ids by provider
lang/messages.yml # every player-facing message
Browsers are 54 slots and the creation menus are 27, with no filler panes.
Theme
theme:
brand-hex: "C8A96E"
brand-gradient-start: "FF9400"
brand-gradient-end: "FFBE00"
success-hex: "00FF12"
danger-hex: "FF3B3B"
info-hex: "2E9BFF"
Four roles, each with a flat hex and a two-stop gradient: brand for titles and the prefix, success for money and confirmations, danger for errors and deletions, and info for hints and navigation. Write flat &#RRGGBB codes in YAML, and spans that use a theme hex render as real gradients.
brand-hex and its gradient to your own color, then reload. The progress bar colors are under progress-bar.Features and settings
| Key | Default | Meaning |
|---|---|---|
features.webhooks | false | Send a Discord message for new orders. |
features.broadcast | true | Announce big new orders. |
features.custom-items | true | Allow custom items from other plugins. |
features.highlight | true | Allow highlighted orders. |
features.debug | false | Extra console output. |
settings.highlight-fee | 2.5 | Highlight fee, as a percent of the order total. |
settings.min-price-per-item / max-price-per-item | 0.01 / 1000 | The allowed price range. |
settings.auto-save-interval | 5 | How often orders are saved. |
settings.broadcast.min-total-price | 1000 | The smallest order total that is announced. |
date-format | dd-MM HH:mm:ss | How dates are shown. |
number-format | K M B T | The suffixes for large numbers and the decimal places. |
Per-item prices and the blacklist
per-item-price:
DIAMOND:
min-price-per-item: 10
max-price-per-item: 500
blacklist-items:
- "BEDROCK"
- "SPAWNER"
The blacklist holds materials that can never be ordered. The shipped list covers command blocks, structure blocks, bedrock, spawners, portals, infested blocks and other items that should not be traded.
Database
database:
type: sqlite
host: localhost
port: 3306
database: alphaorder
username: root
password: "change-me"
pool-size: 10
sqlite is the default and needs no setup. Use mysql with the host, port and login for a database server. The pool settings control connection counts and timeouts. The first start creates all tables.
Custom items
customitems.yml lists the custom item ids that can be ordered, grouped by provider: ItemsAdder, MMOItems, Nexo and SmartSpawner. The matching plugin must be installed, and features.custom-items on.
Discord webhooks
With features.webhooks on, a new order sends the order-create message in webhooks.yml. Set its url to your Discord webhook. The embed can use %player%, %material%, %amount%, %price%, %total_price%, %enchantments% and %duration%. Leave the section key order-create unchanged.
The panel block holds the approval settings.
