RaindropCentral Logo
Requirements Config ReferenceUser-focused guide for adding, editing, and removing requirement entries in plugin config files.
Scope
This page includes config behavior relevant to server owners and admins. API details are excluded.
Core Requirement TypesUse these type IDs in config requirement blocks.
ITEMRequired: type, requiredItemsOptional: consumeOnComplete, exactMatch, description
type: ITEM
requiredItems:
  - type: DIAMOND
    amount: 16
consumeOnComplete: true
exactMatch: true
CURRENCYRequired: type, currency, amountOptional: consumable
type: CURRENCY
currency: vault
amount: 5000
consumable: true
EXPERIENCE_LEVELRequired: typeOptional: requiredLevel, experienceType, consumeOnComplete, description
type: EXPERIENCE_LEVEL
requiredLevel: 30
experienceType: LEVEL
consumeOnComplete: true
PERMISSIONRequired: type, requiredPermissionsOptional: permissionMode, checkNegated, description
type: PERMISSION
requiredPermissions:
  - raindrop.rank.warrior
  - raindrop.rank.guardian
permissionMode: ANY
LOCATIONRequired: type, at least one of: requiredWorld | requiredRegion | requiredCoordinatesOptional: requiredDistance, description
type: LOCATION
requiredWorld: world
requiredCoordinates:
  x: 100.0
  y: 64.0
  z: -200.0
requiredDistance: 12.0
PLAYTIMERequired: type, requiredPlaytimeSeconds OR worldPlaytimeRequirementsOptional: description
type: PLAYTIME
requiredPlaytimeSeconds: 72000
COMPOSITERequired: type, requirementsOptional: operator, minimumRequired, allowPartialProgress, description
type: COMPOSITE
operator: MINIMUM
minimumRequired: 2
requirements:
  - type: CURRENCY
    currency: vault
    amount: 2000
  - type: EXPERIENCE_LEVEL
    requiredLevel: 25
CHOICERequired: type, choicesOptional: minimumChoicesRequired, mutuallyExclusive, allowChoiceChange, description
type: CHOICE
minimumChoicesRequired: 1
choices:
  - type: ITEM
    requiredItems:
      - type: DIAMOND_BLOCK
        amount: 8
  - type: CURRENCY
    currency: vault
    amount: 15000
TIME_BASEDRequired: type, delegate, timeLimitMillisOptional: autoStart, description
type: TIME_BASED
timeLimitMillis: 600000
delegate:
  type: ITEM
  requiredItems:
    - type: BLAZE_ROD
      amount: 12
PLUGINRequired: type, valuesOptional: plugin, category, consumable, description
type: PLUGIN
plugin: auto
category: SKILLS
values:
  mining: 50
  combat: 30
Module-Specific Config Notes
RDQ
Supports ITEM, CURRENCY, EXPERIENCE_LEVEL, PERMISSION, LOCATION, PLAYTIME, COMPOSITE, CHOICE, and PLUGIN.
SKILLS and JOBS config sections are normalized into PLUGIN requirements.
CURRENCY sections can contain multiple currencies, but current mapping uses the first configured entry.
RDR
Store requirement sections are normalized before evaluation.
Aliases are accepted for common fields, including world -> requiredWorld and requiredType -> experienceType.
Timed aliases such as timeConstraintSeconds and timeLimitMinutes/hours/days are normalized to timeLimitMillis.
RDS
Uses the same normalized requirement map strategy as RDR for store requirements.
Shop store tiers can define PLUGIN requirement entries for skills/jobs checks.
For banking progress in store flows, non-consumable currency/item requirements are treated as checks only.
Known Config Caveats
PERMISSION map config currently ignores minimumRequired in mode handling.
CHOICE map config currently ignores maximumRequired and allowPartialProgress.
COMPOSITE map config currently ignores maximumRequired.
PLAYTIME map config infers world mode from worldPlaytimeRequirements.
TIME_BASED support in RDQ config adapters can differ by section source; validate this in your active config path.
Combined Example
requirements:
  item_req:
    type: ITEM
    requiredItems:
      - type: DIAMOND
        amount: 16
    consumeOnComplete: true

  currency_req:
    type: CURRENCY
    currency: vault
    amount: 2500
    consumable: true

  composite_req:
    type: COMPOSITE
    operator: MINIMUM
    minimumRequired: 2
    requirements:
      - type: CURRENCY
        currency: vault
        amount: 3000
        consumable: true
      - type: EXPERIENCE_LEVEL
        requiredLevel: 25
      - type: PERMISSION
        requiredPermissions:
          - raindrop.guild.member

  plugin_req:
    type: PLUGIN
    plugin: jobsreborn
    category: JOBS
  values:
      miner: 10