Event Catalog
Canonical event syntax, aliases, and arguments shared by CTK, XLV, and XTK.
This page is the canonical catalog for event names, aliases, and criteria shared across BitAspire plugins that use the common event-expression system.
Current BitAspire consumers
| Plugin | Runtime surface | Main file |
|---|---|---|
| CyberTokens (CTK) | Base catalog from CyberEventEngine 0.1.1 | events.yml |
| XenoLevels (XLV) | Advanced catalog from XenoEventEngine 0.2.0 | systems/<id>/exp-events.yml |
| XenoTokens (XTK) | Advanced catalog from XenoEventEngine 0.2.0 | currencies/<id>/events.yml |
CLV compatibility
The base catalog keeps CLV-style aliases such as timed-giving, killing-monsters, vanilla-exp-gain, rivalhh-breaking, and axpick-breaking. Use the canonical names below in new configs, but legacy spellings still resolve where the runtime supports them.
Runtime surfaces
| Surface | What it includes | Typical consumers |
|---|---|---|
| Base CEV catalog | Core combat, block, item, chat, movement, timed, Rival block-break, and Ax block-break events | CTK and CLV-compatible configs |
| Advanced XEV catalog | Base CEV plus broader Bukkit events, KILL_MOB, excessive item events, utility events, Rival reward events, Ax reward events, AxBoosters, and dynamic custom event specs | XLV and XTK |
Expression syntax
- Expressions follow
EVENT[count]:ARG=value. - Use
::or&&for logical AND,||for logical OR, and!to negate a condition. - When an event defines a default key,
BREAK_BLOCK:WHEATandBREAK_BLOCK:TYPE_EXACT=WHEATare equivalent. - Many arguments accept comma-separated values, for example
TYPE_EXACT=WHEAT,CARROT. - Ranges use
min-max, for exampleLEVEL=10-20,XP=50-100, orAGE=7.
Count policy notes
CountPolicy is an internal handling hint for consumers, not a complete syntax contract.
| Policy | Practical meaning |
|---|---|
NORMAL | Standard event match. Consumers usually process it as a direct trigger. |
EXCESSIVE | The event carries hit volume, such as stack size, furnace output amount, or raw XP gained. |
IGNORED | Consumers usually ignore [count] and react per matching occurrence. |
NO_ARGS | Consumers usually batch or schedule the event instead of rewarding it immediately. Some of these events still support filters like PERMISSION. |
Base CEV events
These events are available in CyberEventEngine 0.1.1 and are inherited by XenoEventEngine.
Combat and entity events
| Event | Policy | Main arguments | Notes |
|---|---|---|---|
KILL_PLAYER | NORMAL | NAME_EXACT, NAME_REGEX, NAME_CONTAINS, PERMISSION | Filters apply to the killed player. |
DAMAGE_PLAYER | NORMAL | NAME_EXACT, NAME_REGEX, NAME_CONTAINS, PERMISSION | Filters apply to the damaged player. |
KILL_ANIMAL | NORMAL | TYPE_EXACT, TYPE_CONTAINS, DATA_CONTAINS, NAME_EXACT, NAME_CONTAINS, NATURE, CATEGORY | Passive-animal target event. |
DAMAGE_ANIMAL | NORMAL | TYPE_EXACT, TYPE_CONTAINS, DATA_CONTAINS, NAME_EXACT, NAME_CONTAINS, NATURE, CATEGORY | Passive-animal damage event. |
KILL_MONSTER | NORMAL | TYPE_EXACT, TYPE_CONTAINS, DATA_CONTAINS, NAME_EXACT, NAME_CONTAINS, NATURE, CATEGORY | Monster or hostile target event. |
DAMAGE_MONSTER | NORMAL | TYPE_EXACT, TYPE_CONTAINS, DATA_CONTAINS, NAME_EXACT, NAME_CONTAINS, NATURE, CATEGORY | Monster or hostile damage event. |
DYING | NO_ARGS | PERMISSION | Player death trigger. Alias: DEATH. |
BREED | NORMAL | TYPE | Matches the bred entity type. |
Block and item events
| Event | Policy | Main arguments | Notes |
|---|---|---|---|
BREAK_BLOCK | NORMAL | TYPE_EXACT, TYPE_CONTAINS, DATA_CONTAINS, GROUP, AGE | GROUP=ORE / ORES matches ore-like materials. |
PLACE_BLOCK | NORMAL | TYPE_EXACT, TYPE_CONTAINS, DATA_CONTAINS, GROUP, AGE | AGE works for ageable block data such as crops. |
CRAFT | NORMAL | TYPE_EXACT, TYPE_CONTAINS | Alias: CRAFT_ITEM. |
CONSUME | NORMAL | TYPE_EXACT, TYPE_CONTAINS | Matches the consumed item. |
FISH | NORMAL | TYPE_EXACT, TYPE_CONTAINS | Matches the caught item stack when one is available. |
BREW | NORMAL | EFFECT | Matches potion base types or custom effects. |
ENCHANT | NORMAL | ENTRY, ENCHANTMENT, LEVEL | ENTRY supports NAME or NAME-level, for example PROTECTION-4. |
Progress, chat, and recurring events
| Event | Policy | Main arguments | Notes |
|---|---|---|---|
EXP_GAIN | IGNORED | EXP | Alias: VANILLA_XP. Uses raw vanilla XP amount. |
CHAT | EXCESSIVE | MESSAGE_CONTAINS, MESSAGE_CONTAINS_IGNORE_CASE, MESSAGE_EXACT, MESSAGE_EXACT_IGNORE_CASE | Each matching message counts as one hit. |
MOVE | NO_ARGS | PERMISSION | Commonly used as a batched movement trigger such as MOVE[60]. |
TIMED_EXP | NO_ARGS | PERMISSION | [count] is typically used as the interval in seconds, for example TIMED_EXP[300]. Aliases include TIMED_GIVING and TIMED-GIVING. |
Advanced XEV events
These events require XenoEventEngine 0.2.0.
| Event | Policy | Main arguments | Notes |
|---|---|---|---|
KILL_MOB | NORMAL | TYPE_EXACT, TYPE_CONTAINS, DATA_CONTAINS, NAME_EXACT, NAME_CONTAINS, NATURE, CATEGORY | Broad living-mob kill event. |
DAMAGE_MOB | NORMAL | Same as KILL_MOB | Broad living-mob damage event. |
SMELT | EXCESSIVE | ITEM, FURNACE_TYPE | Hit count is the extracted item amount. |
REPAIR_ITEM | NORMAL | ITEM | Matches completed anvil repair results on supported versions. |
DROP_ITEM | EXCESSIVE | ITEM | Hit count is the dropped stack size. |
PICKUP_ITEM | EXCESSIVE | ITEM | Hit count is the picked-up stack size. |
ADVANCEMENT | IGNORED | KEY | Uses full advancement keys such as minecraft:adventure/kill_a_mob. |
LEVEL_UP | IGNORED | LEVEL | Matches gained vanilla levels. |
JUMP | NO_ARGS | DISTANCE, CHECK_MOVEMENT | Compatibility arguments are accepted but do not add extra filtering today. |
SNEAK | NO_ARGS | DISTANCE, CHECK_MOVEMENT | Compatibility arguments are accepted but do not add extra filtering today. |
SPRINT | NO_ARGS | none | Sprint toggle trigger. |
SWIM | NO_ARGS | none | Swim toggle trigger on versions where Bukkit exposes it. |
SHEAR_SHEEP | NO_ARGS | none | Sheep shearing trigger. |
MILK_COW | NO_ARGS | none | Cow milking trigger. |
TRADE_VILLAGER | NORMAL | ITEM, PROFESSION, LEVEL, BIOME | Matches villager trade output and villager metadata. |
TAME_ENTITY | NORMAL | TYPE | Matches the tamed entity type. |
PERMISSION | IGNORED | HAS | Standalone permission-based event. |
RUN_COMMAND | NORMAL | EXACT, CONTAINS, IS_CONSOLE | Matches both player and server command dispatch. |
JOIN | NO_ARGS | none | Player join trigger. |
QUIT | NO_ARGS | none | Player quit trigger. |
WORLD_CHANGE | NORMAL | NAME_EXACT, NAME_CONTAINS, TYPE | TYPE uses world environments such as NORMAL, NETHER, or THE_END. |
Optional integration events
These event types are registered only when the corresponding plugin/API is present.
| Event | Main arguments | Aliases | Surface |
|---|---|---|---|
RIVAL_HARVESTER_HOES_BLOCK_BREAK | CROP, CROP_CONTAINS, AGE | RHH, RHH_BREAK, RIVAL_HARVESTER_HOES, RIVALHH_BREAKING | Base + Advanced |
RIVAL_PICKAXES_BLOCK_BREAK | BLOCK, BLOCK_CONTAINS, AGE | RPX, RPX_BREAK, RIVAL_PICKAXES, RIVALPICK_BREAKING | Base + Advanced |
AX_HOES_BLOCK_BREAK | AMOUNT | AXHOES_BREAKING, AX_HOES_PLAYER_XP_GAIN | Base + Advanced |
AX_PICKAXES_BLOCK_BREAK | AMOUNT | AXPICK_BREAKING, AX_PICKAXES_PLAYER_XP_GAIN | Base + Advanced |
RIVAL_HARVESTER_HOES_MONEY_RECEIVE | MONEY, BOOST, MULTIPLIER | RHH_MONEY | Advanced |
RIVAL_HARVESTER_HOES_XP_GAIN | XP, BOOST, LEVEL, MULTIPLIER | RHH_XP | Advanced |
RIVAL_PICKAXES_MONEY_RECEIVE | MONEY, BOOST, LEVEL, PRESTIGE | RPX_MONEY | Advanced |
RIVAL_PICKAXES_XP_GAIN | XP | RPX_XP | Advanced |
RIVAL_PICKAXES_LEVEL_UP | LEVEL | RPX_LEVEL | Advanced |
RIVAL_FISHING_RODS_MONEY_RECEIVE | MONEY | RFR_MONEY | Advanced |
RIVAL_FISHING_RODS_ESSENCE_RECEIVE | ESSENCE | RFR_ESSENCE | Advanced |
RIVAL_FISHING_RODS_XP_GAIN | XP | RFR_XP | Advanced |
RIVAL_MOB_SWORDS_MONEY_RECEIVE | MONEY, BOOST | RMS_MONEY | Advanced |
RIVAL_MOB_SWORDS_MOB_KILL | TYPE_EXACT, TYPE_CONTAINS, MODE | RMS_KILL | Advanced |
RIVAL_MOB_SWORDS_XP_GAIN | XP, BOOST | RMS_XP | Advanced |
AX_HOES_MONEY_GAIN | AMOUNT | AX_HOES_MONEY | Advanced |
AX_HOES_ESSENCE_GAIN | AMOUNT | AX_HOES_ESSENCE | Advanced |
AX_HOES_TOOL_XP_GAIN | AMOUNT | AX_HOES_TOOL_XP | Advanced |
AX_HOES_TOOL_LEVEL_UP | TOOL | AX_HOES_TOOL_LEVEL | Advanced |
AX_PICKAXES_MONEY_GAIN | AMOUNT | AX_PICKAXES_MONEY | Advanced |
AX_PICKAXES_ESSENCE_GAIN | AMOUNT | AX_PICKAXES_ESSENCE | Advanced |
AX_PICKAXES_TOOL_XP_GAIN | AMOUNT | AX_PICKAXES_TOOL_XP | Advanced |
AX_PICKAXES_TOOL_LEVEL_UP | TOOL | AX_PICKAXES_TOOL_LEVEL | Advanced |
AX_BOOSTERS_START | LOCAL | none | Advanced |
AX_BOOSTERS_END | none | none | Advanced |
AX_BOOSTERS_MULTIPLIER | MULTIPLIER | AX_BOOSTERS_GET_MULTIPLIER | Advanced |
Dynamic custom events
XenoEventEngine can load custom event specs from YAML files or directories. Each direct child under the root or under an events section becomes a custom EventType.
Common fields:
| Field | Purpose |
|---|---|
event, class, or event-class | Bukkit event class to bind |
player, actor, or player-getter | Getter path used to resolve the player actor, defaulting to getPlayer |
getter, subject, value, or amount | Getter path used as the expression subject |
setter, value-setter, or amount-setter | Optional setter path for integrations that mutate values |
policy, count-policy, or countPolicy | Optional explicit CountPolicy; numeric getters default to EXCESSIVE |
alias / aliases | Additional names accepted in configs |
icon | Optional display metadata for consumers |
Custom events receive generic arguments: VALUE, EXACT, CONTAINS, REGEX, and NUMBER.
Recommended canonical names
- Prefer
CRAFTover the legacy aliasCRAFT_ITEM. - Prefer
EXP_GAINover the aliasVANILLA_XP. - Prefer
TIMED_EXPoverTIMED_GIVING. - Prefer
RIVAL_HARVESTER_HOES_BLOCK_BREAKoverRIVAL_HARVESTER_HOES. - Prefer
RIVAL_PICKAXES_BLOCK_BREAKoverRIVAL_PICKAXES.
Example expressions
KILL_MONSTER:TYPE_EXACT=ZOMBIEBREAK_BLOCK:TYPE_EXACT=WHEAT::AGE=7CHAT:MESSAGE_CONTAINS_IGNORE_CASE=ggENCHANT:ENTRY=PROTECTION-4TIMED_EXP[300]:PERMISSION=group.vipRIVAL_HARVESTER_HOES_BLOCK_BREAK:CROP=WHEAT::AGE=7RIVAL_PICKAXES_MONEY_RECEIVE:MONEY=100-250AX_BOOSTERS_MULTIPLIER:NUMBER=>=2
Last updated on