Skip to content

Upgrade Costs

joogiebear edited this page Jul 14, 2026 · 2 revisions

Upgrade Costs

Each tier's upgrade-cost is what a player pays to unlock it. You can charge money, items, or both.

    upgrade-cost:
      money: 25000000.0
      items:
        - "minecraft:GOLD_BLOCK:64"
        - "ecoitems:enchanted_gold_block:20"
        - "ecoitems:bank_upgrade_core:1"

The item format

Each entry is a string:

<namespace>:<id>:<amount>
Namespace Meaning Example
minecraft A vanilla material minecraft:GOLD_BLOCK:64
ecoitems An EcoItems custom item (by its EcoItems id) ecoitems:enchanted_gold_block:20
  • amount is the stack count required.
  • List as many items as you want; all are required.
  • Set money: 0.0 and items: [] for a free tier (level 1 is typically free).

Vanilla vs custom item matching

This is the important part. A minecraft: requirement matches only genuine vanilla items — it rejects custom/PDC-tagged EcoItems that happen to be built on the same material.

So if a player is holding a custom enchanted_gold_block (which is a gold block underneath), it will not satisfy a minecraft:GOLD_BLOCK requirement. You have to pin the custom item explicitly with ecoitems:enchanted_gold_block. This stops a fancy custom item from being consumed to pay a plain-material cost, and stops players from cheaping out with a reskinned block.

Conversely, an ecoitems: requirement matches that specific custom item and nothing else.

The combined-balance gate

Independent of the cost, settings.upgrade-unlock-combined-balance sets a minimum bank + purse balance a player must have before they can upgrade at all. It's a soft gate that keeps very new players from rushing tiers; set it to 0 to disable.

Requirements without EcoItems

Item costs using ecoitems: obviously need EcoItems installed. Without it, stick to minecraft: materials, or use money-only costs. A tier that lists an ecoitems: cost on a server without EcoItems will log a warning and the requirement can't be satisfied — so don't ship ecoitems: costs to a server that doesn't run it.

Testing tip

Test item-based costs on a staging server before putting them on a live economy tier — it's much easier to confirm the plugin consumes the right items there than to debug a player report that "upgrade took my items but didn't upgrade me." (It won't — costs are consumed in the same operation that grants the tier, and rolled back if anything fails — but staging removes all doubt.)

Clone this wiki locally