BitAspire Wiki
XenoLevelsXenoLevels

Event Catalog

How XenoLevels uses the shared Event Catalog.

XenoLevels uses the shared Event Catalog as its event-expression layer. This page explains how XLV consumes those expressions inside the leveling system.

Canonical event list

For the full event reference, aliases, and shared argument catalog, start with the shared Event Catalog.

Where XLV uses events

XLV areaWhy it matters
systems/<id>/exp-events.ymlAwards EXP from gameplay actions
Event-based level requirementsTracks progression goals that depend on specific event expressions
Event-based prestige requirementsReuses the same expression language for next-prestige tracking

How XLV rewards matching events

PatternXLV behavior
Direct events like KILL_MOB or BREAK_BLOCKMatching expressions award the configured exp once per valid occurrence.
EXCESSIVE events like SMELT, DROP_ITEM, and PICKUP_ITEM[count] is treated as the payout threshold, and partial-excessive: true allows proportional leftovers.
Batched NO_ARGS events like MOVE, JUMP, SNEAK, SPRINT, or SWIMXLV batches hits and pays them on the interval defined by [count].
TIMED_EXP[count]XLV pays once every count seconds, and expressions can still filter with arguments such as PERMISSION.
  • Prefer CRAFT over CRAFT_ITEM.
  • Prefer EXP_GAIN over VANILLA_XP.
  • Prefer RIVAL_HARVESTER_HOES_BLOCK_BREAK over RIVAL_HARVESTER_HOES.
  • Prefer RIVAL_PICKAXES_BLOCK_BREAK over RIVAL_PICKAXES.

XLV-oriented examples

  • KILL_MOB:NATURE=HOSTILE
  • BREAK_BLOCK:TYPE_EXACT=WHEAT::AGE=7
  • TIMED_EXP[300]:PERMISSION=group.vip
  • RIVAL_HARVESTER_HOES_BLOCK_BREAK:CROP=WHEAT::AGE=7
  • RIVAL_PICKAXES_BLOCK_BREAK:BLOCK=STONE,DEEPSLATE

Next reading

  1. Configure rewards in exp-events.yml.
  2. Plan balanced earning loops in Experience Design.
  3. Keep shared syntax changes aligned with the shared Event Catalog.

Last updated on

On this page