v1.0
PluginStable

Island Upgrades and Requirements

Configure all nine upgrade types, level values, costs, personal progress, and compound requirements.

v1.0·Minecraft 1.21.11·Paper·Java 21

Upgrade types

TypeEffect
borderIncreases one-direction island border length.
membersIncreases team capacity including the owner.
hoppersIncreases loaded hopper limit inside the island cell.
mobsIncreases the loaded mob limit across all dimensions.
pistonsIncreases the combined normal and sticky piston limit.
generatorAdvances the lava-water generator weighted pool.
generator-luckOptional OneBlock mob/crate multiplier; hidden and disabled by default.
mob-dropsIncreases mob loot and experience multipliers.
crop-dropsIncreases mature crop yield.

Every type can be disabled independently. menu-enabled: false only hides its built-in menu card; the feature and /ob upgrade <type> remain available for an external menu.

Shared level configuration

Most upgrades use parallel lists in config/upgrades.yml:

  • values: Effective limit or multiplier for every level.
  • requirements: Shared island OneBlock break requirement.
  • island-level-requirements: Block-based island-level requirement.
  • costs: Vault money cost.
  • item-costs.<level>: One or more material costs.

The first entry is the starting level. Every later index is a purchasable target level. Related arrays must have the same length as values.

Player-specific requirements

config/upgrade-requirements.yml supports:

  • Personal total or selected-tier OneBlock breaks.
  • Personal material breaks from one tier or all tiers.
  • Vanilla XP levels consumed on purchase.
  • Vanilla playtime hours.
  • Required permission.
  • PlaceholderAPI comparisons.
yaml
upgrade-requirements:
  hoppers:
    required-blocks: [0, 0, 300, 700, 1400]
    requirement-tiers: [0, 0, 2, 4, 7]
    required-xp-levels: [0, 0, 0, 5, 10]
    required-playtime-hours: [0, 0, 0, 1.0, 2.0]
    required-permissions: ['', '', '', 'server.rank.experienced', 'server.rank.master']
    required-placeholders: ['', '', '', '', '%statistic_time_played% >= 360000']

Placeholder comparisons support >=, <=, >, <, ==, and !=. Numeric operands are compared numerically; other values are compared as case-insensitive text.

Purchase safety

Feature state, ownership, maximum level, every requirement, money, XP, and items are validated before resources are consumed. A failed economy withdrawal does not grant the upgrade. Border changes are applied to relevant online members immediately. Lowering a limit in configuration does not automatically delete existing blocks or entities.