PlumDeliveryPlumDelivery
Home
Guide
  • Overview
  • Database
  • Deliveries
  • Menus
  • Categories
  • Rewards
  • Messages
Commands
Placeholders
  • Overview
  • Methods
  • Events
Database Guide
FAQ
GitHub
Home
Guide
  • Overview
  • Database
  • Deliveries
  • Menus
  • Categories
  • Rewards
  • Messages
Commands
Placeholders
  • Overview
  • Methods
  • Events
Database Guide
FAQ
GitHub
  • Configuration

    • Configuration Overview
    • Database Configuration
    • Delivery Types Configuration
    • Menu Configuration
    • Categories Configuration
    • Rewards Configuration
    • Messages Configuration

Categories Configuration

Overview

Categories are the core of PlumDelivery. Each category defines a set of objectives (items to collect or mobs to kill) and goals with rewards.

Full Category Example

categories:
  farm:
    name: "&eFarming"
    title: "&aFarming Category"
    size: 27
    index: 11
    icon:
      title: "&aFarming Category"
      material: WHEAT
      lore:
        - ""
        - "&aAre you good at farming?"
        - "&aProve you are the best with deliveries!"
        - ""
        - "&aTotal deliveries: &e<current>"
        - ""
        - "&aYou can earn points by;"
        - "&7Harvesting Wheat"
        - "&7Killing Mooshrooms"
        - ""
        - "&eClick to access!"
    required-objects:
      o-1:
        type: WHEAT
        action: COLLECT
      o-2:
        type: MUSHROOM_COW
        action: KILL
    goals:
      daily:
        '25':
          index: 11
          icon:
            title: "&aDaily First Goal"
            material: IRON_INGOT
            lore:
              - ""
              - "&e<current>&7/&a<required>"
              - "{0}"
              - ""
              - "&7Rewards for completing the daily goal;"
              - "&bx2 &7diamonds"
          commands:
            - "give %player% diamond 2"
      weekly:
        '100':
          index: 11
          icon:
            title: "&aWeekly First Goal"
            material: IRON_INGOT
            lore:
              - ""
              - "&e<current>&7/&a<required>"
              - "{0}"
              - ""
              - "&7Rewards for completing the weekly goal;"
              - "&bx10 &7diamonds"
          commands:
            - "give %player% diamond 10"
      monthly:
        '500':
          index: 11
          icon:
            title: "&aMonthly First Goal"
            material: IRON_INGOT
            lore:
              - ""
              - "&e<current>&7/&a<required>"
              - "{0}"
              - ""
              - "&7Rewards for completing the monthly goal;"
              - "&bx50 &7diamonds"
          commands:
            - "give %player% diamond 50"

Category Options

Basic Settings

OptionTypeDescription
namestringDisplay name with color codes
titlestringCategory menu title
sizeintegerCategory menu size (9/18/27/36/45/54)
indexintegerSlot position in the category selection menu

Icon Settings

OptionTypeDescription
icon.titlestringItem display name
icon.materialstringMinecraft material name (e.g., WHEAT, DIAMOND_SWORD)
icon.lorelistItem description lines
icon.custom-model-dataintegerCustom model data for resource packs (optional)

Icon Lore Placeholders

PlaceholderDescription
<current>Player's current point total in this category

Required Objects

Required objects define what players need to do to earn points.

required-objects:
  o-1:
    type: WHEAT
    action: COLLECT
  o-2:
    type: MUSHROOM_COW
    action: KILL

Action Types

COLLECT

  • Players gather items in their inventory
  • Points are awarded when items are submitted via the GUI Submit button
  • Items are removed from the player's inventory on submission
  • Points = total number of items submitted
o-1:
  type: WHEAT        # Minecraft material name
  action: COLLECT

KILL

  • Players kill specific entities in the world
  • Points are awarded automatically (1 point per kill)
  • No submission needed
  • Works across ALL active delivery types simultaneously
o-2:
  type: MUSHROOM_COW  # Minecraft entity type name
  action: KILL

Tips

You can have multiple required objects of the same action type. All COLLECT items and KILL entities contribute to the same category point total.

Goals

Goals are point milestones that unlock rewards.

goals:
  daily:       # Delivery type
    '25':      # Point threshold (must be quoted)
      index: 11
      icon:
        title: "&aDaily First Goal"
        material: IRON_INGOT
        lore:
          - "&e<current>&7/&a<required>"
          - "{0}"
        custom-model-data: 0
      commands:
        - "give %player% diamond 2"

Goal Options

OptionTypeDescription
Key (e.g., '25')stringPoint threshold (must be quoted!)
indexintegerSlot position in the category menu
iconobjectSame as category icon settings
commandslistConsole commands to execute as rewards

Goal Lore Placeholders

PlaceholderDescription
<current>Player's current points
<required>Points required for this goal
{0}Replaced with finish-lore-text when goal is completed

Multiple Goals

You can define multiple goals per delivery type:

goals:
  daily:
    '25':
      index: 11
      icon: { ... }
      commands:
        - "give %player% diamond 2"
    '50':
      index: 12
      icon: { ... }
      commands:
        - "give %player% diamond 5"
    '100':
      index: 13
      icon: { ... }
      commands:
        - "give %player% diamond 10"

Warning

Goal keys (point thresholds) must be quoted as strings (e.g., '25' not 25). This is required by the configuration system.

Adding a New Category

To add a new category, simply add a new entry under categories with a unique key:

categories:
  farm:
    # ... (existing category)
  combat:
    name: "&cCombat"
    title: "&cCombat Category"
    size: 27
    index: 13
    icon:
      title: "&cCombat Category"
      material: DIAMOND_SWORD
      lore:
        - "&7Kill mobs to earn points!"
    required-objects:
      o-1:
        type: ZOMBIE
        action: KILL
      o-2:
        type: SKELETON
        action: KILL
    goals:
      daily:
        '50':
          index: 11
          icon:
            title: "&cDaily Combat Goal"
            material: IRON_INGOT
            lore:
              - "&e<current>&7/&a<required>"
              - "{0}"
          commands:
            - "give %player% diamond 5"

Don't forget to add corresponding rewards in the rewards section!

Prev
Menu Configuration
Next
Rewards Configuration