# ⚙️ Main Config — DonutOrders

This page documents every configuration option inside the main config.yml file for DonutOrders.
Each section explains what the setting does, its purpose, and examples.

# 🔑 License Settings

license-key: paste your license here!
  • Description: Your unique license key tied to your purchase.
  • Required: Must be filled in for the plugin to function.

# 🔔 Webhook Settings

webhook:
  enabled: true
  url:
  
  options:
    created: true
    completed: true
    delivered: false
    cancelled: false
  • Purpose: Sends notifications to a Discord webhook for order events.
  • Options:
    • created → Notify when a new order is created.
    • completed → Notify when an order is completed.
    • delivered → Notify when an order is delivered.
    • cancelled → Notify when an order is cancelled.

# 💵 Price & Item Settings

# Accept 100k, 10k, 1m, etc... in the sign of price.
accept-formatted-sign: true

# Enable/disable accepting shulker boxes
accept-shulker-boxes: true

minimum-price-per-item: 1
maximum-price-per-item: -1
  • accept-formatted-sign: Allows short number formats like 10k or 1m.
  • accept-shulker-boxes: Lets players trade with Shulker Boxes.
  • minimum-price-per-item: The lowest price per item allowed.
  • maximum-price-per-item: The highest allowed price per item (-1 disables limit).

# 🧾 Command Settings

command-aliases:
  - ordering
  • Description: Adds custom aliases for the main /order command.
  • Example: /ordering will execute the same as /order.

# 📦 Order Limit Settings

limit-orders:
  enabled: true
  • Description: Enables order limits based on permissions.
  • Example: Give order.limit.2 to restrict a player to 2 orders.

# 🔒 Lockdown Mode

lockdown-mode:
  enabled: false
  • Description: Disables all features temporarily.
  • Use Case: Use during maintenance or testing to prevent interactions.

# 📢 Announcement Settings

announce-orders: false
  • Description: Enables or disables in-chat order announcements.

# ⚙️ Lore & Delivering Check

delivering-check-ignore-lore: false
  • Description: If enabled, ignores item lore when checking delivery matches.

# 💰 Economy Settings

# Vault Integration

economies:
  vault:
    enabled: true
    format: '&a$%value%'
    icon:
      material: PAPER
      name: '&a&l[!] Vault'
      lore:
        - '&aClick Here &fto Select'
  • Purpose: Integrates with Vault to handle money transactions.
  • Tip: Optionally, if you want the worth lore, install ProtocolLib.

# PlaceholderAPI Integration

  placeholder-api:
    enabled: false
    economies:
      coins:
        enabled: true
        format: '&e%value% Coins'
        icon:
          material: DIAMOND
          name: '&e&l[!] Coins'
          lore:
            - '&eClick Here &fto Select'
        commands:
          deposit-balance: coins give %player% %amount%
          withdraw-balance: coins take %player% %amount%
        placeholder: '%coinsengine_balance_raw_coins%'
  • Purpose: Adds support for custom economy systems (like CoinsEngine).
  • Commands: Used to deposit/withdraw funds when players trade.

# 🗄️ Database Settings

database:
  enabled: false
  
  # Options: mysql & filesystem
  type: filesystem
  thread-pool-size: 4
  
  sql:
    hostname: hostname
    database: database
    username: username
    password: password
  • Description: Handles order storage.
  • Options:
    • filesystem → Stores data locally (default).
    • mysql → Use for cross-server syncing.
  • thread-pool-size: Defines number of async worker threads.

💡 Use MySQL only if you need multi-server data syncing.


# 💬 Sign Text Configuration

sign-texts:
  java:
    search:
      line1: ''
      line2: ^^^^^^^^^^^^^^^
      line3: Search
      line4: ''
    amount:
      line1: ''
      line2: ^^^^^^^^^^^^^^^
      line3: Amount
      line4: ''
    price:
      line1: ''
      line2: ^^^^^^^^^^^^^^^
      line3: Price Per
      line4: Item

  bedrock:
    search:
      line1: ''
      line2: Search
      line3: vvvvvvvvvv
      line4: ''
    amount:
      line1: ''
      line2: Amount
      line3: vvvvvvvvvv
      line4: ''
    price:
      line1: ''
      line2: Item Price
      line3: vvvvvvvvvv
      line4: ''
  • Description: Controls how signs appear for both Java and Bedrock players.
  • Use arrows (^^^^^^^^^ or vvvvvvvv) for visual separation.

# ⏱️ Expiration Settings

expire-time-seconds: 604800
  • Description: How long before an order expires (in seconds).
  • Default: 604800 seconds = 7 days.

# 🔊 Sound Settings

sounds:
  menu-click-sound: UI_BUTTON_CLICK
  deliver-item-sound: ENTITY_EXPERIENCE_ORB_PICKUP
  received-item-sound: ENTITY_EXPERIENCE_ORB_PICKUP
  • menu-click-sound: Plays when interacting with menus.
  • deliver-item-sound: Plays when delivering an item.
  • received-item-sound: Plays when receiving an order item.

# 📨 Message Settings

messages:
  not-enough-balance: '&cYou don''t have enough money to place this order.'
  own-order: '&cYou cannot open your own order!'
  no-items-to-collect: '&cYou have no items to collect.'
  need-to-hold-item: '&cYou need to hold an item in your hands!'
  imported-item: '&aCreated item successfully!'
  delivered-item: '&7You delivered &a%owner% %item%&7 and received %price%'
  reached-limit: '&cYou''ve reached the limit!'
  order-created: '&7You ordered &a%amount% %item%'
  received-item: '&a%player% &7delivered you &a%amount% %item%'
  order-complete: '&7Your &a%item%&7 order is complete!'
  order-announced: '&cᴏʀᴅᴇʀ &8▪ &c%player% &7ordered &a%amount% %item%&7 for &a%price%&7.'
  reached-maximum-price: '&cᴏʀᴅᴇʀ &8▪ &7You cannot sell it for that much!'
  • Description: Controls all player-facing messages.
  • Supports: Color codes (&a, &c) and placeholders:
    • %player%, %item%, %amount%, %price%.

# 💬 Action Bar Messages

action-bar:
  not-enough-balance: '&cYou don''t have enough money to place this order.'
  own-order: '&cYou cannot open your own order!'
  no-items-to-collect: '&cYou have no items to collect.'
  need-to-hold-item: '&cYou need to hold an item in your hands!'
  imported-item: '&aCreated item successfully!'
  delivered-item: '&7You delivered &a%owner% %item%&7 and received &a%price%'
  reached-limit: '&cYou''ve reached the limit!'
  order-created: '&7You ordered &a%amount% %item%'
  received-item: '&a%player% &7delivered you &a%amount% %item%'
  order-complete: '&7Your &a%item%&7 order is complete!'
  • Description: Displays short pop-up texts above the player’s hotbar.

# 🧠 Debug Settings

debug: false
  • Description: Enables extra console logs for debugging.
  • Recommended: Keep disabled unless requested by the plugin author.

Once configured, run:

/donutorder reload

to apply your new configuration instantly.