Skip to main content
Evolve+ is built around two main files:
  • eras.yml: the server-wide timeline.
  • nodes.yml: the upgrades players unlock.
Back up both files before large edits. After changing YAML, run:
If you changed the starting era or removed old eras, also reset global state:

Add an Era

Add eras under eras in eras.yml.
Rules:
  • Use an internal id without spaces, such as STEAM.
  • display-name is the readable name.
  • order controls the era order. Every era should have a unique number.
  • goal makes the era fundable with /evolve contribute.
  • Eras without goal are not normal contribution targets.
  • blocked-materials uses Bukkit material names, such as ELYTRA.
  • effects uses potion effect ids, such as speed, haste, or resistance.
Keep PRIMITIVE as the first era unless you are intentionally rebuilding the full timeline.

Add a Node

Add nodes under nodes in nodes.yml.
Node rules:
  • The node id, such as steam_engine, is used by commands and requirements.
  • era must match an era id from eras.yml.
  • requirements are parent node ids that must be unlocked first.
  • lockouts are nodes blocked after this one is unlocked.
  • rewards are console commands. Use <player> for the player name.
  • money costs require Vault plus an economy provider.
  • items.material must be a valid Bukkit material name.
A player can unlock a node only when:
  • the server has reached that node’s era,
  • all required parent nodes are unlocked,
  • the player is not locked out of the node,
  • all costs can be paid.

Position the Tree

Each node has a display position:
Use this simple layout rule:
  • x: left and right.
  • y: height.
  • z: depth away from the tree origin.
Use config.yml to scale or move the whole tree:
Use /evolve tree after edits to check spacing. Use /evolve clear to remove the projection.

Edit Existing Nodes In-Game

Node Studio can edit existing nodes without opening YAML:
Then click a projected node, or open one directly:
Node Studio supports:
  • display name,
  • description,
  • requirements,
  • lockouts,
  • costs.
Create new nodes and edit node positions in nodes.yml.

Customize Visuals and Text

Use these files:
  • config.yml: tree colors, hitboxes, animation, layout, editor GUI slots, contribution suffixes.
  • lang.yml: messages, command output, hologram text, and GUI item text.
Useful tree settings:

Quick Test Checklist

After customizing:
Watch the console during startup or reload. Evolve+ will warn or disable if a node references an unknown era, requirement, or lockout.