Skip to main content

Creating a Category

Creating a quest category is relatively simple once you understand the configuration.

This is a full example pouch configuration file:

name: Weekly
refreshTime: 604800
questsAmount: 1

quests:
  '1':
    type: BLOCK_BREAK
    weight: 1.0
    condition: "'%block%' == 'COBBLESTONE'"
    goal: 10
    rewards:
      - '[Message] text=<green>Completed the quest!'
    item:
      material: COBBLESTONE
      name: '<red><bold>Break 10 Cobblestone'
      lore:
        - '<gray>Progress: <yellow>%current%/%goal%'
    completeItem:
      material: COBBLESTONE
      name: '<green><bold>Break 10 Cobblestone'
      lore:
        - '<gray>Progress: <yellow>Complete!'

inventorySettings:
  rows: 3
  title: '<green>Weekly Quests'
  questSlots:
    - 13
  customItems:
    '1':
      material: PAPER
      name: '<green><bold>Custom Item'
      lore:
      - '<gray>Test Item'
      slot:
      - 4
      actions:
      - '[Message] text=<green>Test!'
  • name: This parameter defines the internal name of your category. This must be unique across all categories.
  • refreshTime: The amount of time in seconds between refreshes. This is preserved across server restarts.
  • questsAmount: The amount of quests to load for this category. Make sure you have at least the amount of quests you're specifying here, otherwise the plugin will not load properly.
  • quests:
    • type: The quest type. There's built-in ones and you can add more through expansions.
    • weight: The weight of this quest when it is being picked for the rotation.
    • condition: The condition to evaluate when the action is performed. This can be removed, and all events will count. You can compare strings and numbers. For comparing strings, make sure you encapsulate them around quotes.
    • goal: The amount of times the action has to be performed to complete the quest.
    • item & completeItem: These are the items used when the quest is incomplete and complete, respectively.
      • Both of these support custom model data and skull textures. Example:
      • item:
          material: PLAYER_HEAD
          headTexture: 'example'
          name: '<green><bold>Example Quest'
          lore:
            - '<gray>Break 100 cobblestone blocks!'
      • Model data example:
      • item:
          material: PAPER
          modelData: 10000
          name: '<green><bold>Example Quest'
          lore:
            - '<gray>Break 100 cobblestone blocks!'
  • inventorySettings:
    • rows: The amount of rows this category inventory has.
    • title: The title of this inventory.
    • questSlots: Defines where the quest items will be located.
    • customItems:
      • You can define custom items here. You need to define material, name, lore, slot(s), and actions to execute.

If you need more help creating your quest categories, feel free to reach out on Discord!