Skip to content

Event Args

Quick Start: Spice it up with twists.

Every trigger carries event args, read with <args:index>. The trigger list lives in Run Timing.

Tag Meaning
<args:index> Trigger's event arg by index; bare <args> reads 0; a missing index yields null.
<ismobhostile:type> paid true when the entity type is hostile (pair with <args:0> on ON_MOB_KILLED).
<islivingentity:type> true when the entity type is living (pair with <args:0> on ON_MOB_KILLED).

Each trigger carries its own event args, read with <args:index>. A missing index yields null; a non-numeric index warns and yields null. Every located trigger ends with the exact spot plus its block center: the occupied block's coords plus .5 on every axis with the view zeroed, so block centers read strictly .5/.5/.5 while block spots stay corner coords:

Trigger Args
ON_START None: every index is null.
INTERVAL 0: the seconds actually waited for this firing.
ON_MOB_KILLED 0: the killed mob's entity type name (e.g. ZOMBIE). 1: the victim location as one list, [x, y, z, world, pitch, yaw]. 2: the real drops as a nested list of [MATERIAL, qty] pairs (e.g. [[ROTTEN_FLESH, 3], [IRON_INGOT, 1]]), or null with no drops. 3: the victim-spot center. Intercepts with <intercept:item> (nested lists replace with several stacks, so <intercept:<args:2>> re-drops the originals). The victim type is also stored as the killer's pending shapeshift mob for <pshapeshift.mob>.
ON_PLAYER_KILLS, ON_HUNTER_KILLS, ON_SPEEDRUNNER_KILLS 0: the exact name of the killer (vanilla or struggle-attributed, so lava deaths after combat count). 1: the exact name of the killed player. 2: the victim spot as one list. 3: the victim-spot center.
ON_BLOCK_BROKEN 0: the exact name of the acting player. 1: the UPPER-CASE block material name (e.g. STONE). 2: the block location as one list, [x, y, z, world, pitch, yaw] (pitch and yaw read 0). 3: the primary drop as [MATERIAL, qty] (e.g. [REDSTONE, 4] for redstone ore), or null with no drops; only the primary is picked when a block drops several things. 4: the block center. Intercepts with <intercept:item>: only the primary is replaced, every other drop (including container contents) still drops.
ON_BLOCK_PLACED 0: the exact name of the acting player. 1: the UPPER-CASE block material name (e.g. STONE). 2: the block location as one list, [x, y, z, world, pitch, yaw] (pitch and yaw read 0). 3: the block center. Intercepts with <intercept:[block, qty]>: the block swaps to the named material, air cancels the placement without consuming anything.
ON_RIGHT_CLICK, ON_LEFT_CLICK 0: the exact name of the clicking player. 1: the clicked block spot as one list, or null when the click hits air. 2: the clicked-spot center, or null for air. Main hand only, so one press fires once; physical actions (pressure plates) never fire. Left clicks fire once per press always, while holding right with a usable item (food, bows, shields) refires per vanilla use packet. Pair with hand-item checks (<pheld:…>) to act on what was held.
ON_CRAFT_PREPARE, ON_CRAFT 0: the exact name of the crafter. 1: the result pair [MATERIAL, qty] with the UPPER-CASE material (e.g. [DIAMOND_SWORD, 1]); prepare previews the recipe result, craft reports the landed slot. ON_CRAFT_PREPARE intercepts with <intercept:item> (single item only).
ON_NETHER_ENTER, ON_END_ENTER, ON_FIRST_NETHER_ENTER, ON_FIRST_END_ENTER 0: the origin world name, 1: the destination world name.
ON_EVERY_ADVANCEMENT 0: the advancement's namespaced key (e.g. minecraft:nether/root).
ON_RESPAWN, ON_SPEEDRUNNER_RESPAWN, ON_HUNTER_RESPAWN 0: the death location as one list, [x, y, z, world, pitch, yaw]. 1: the death-spot center.
ON_DAMAGE_TAKEN 0: the damaged player's name. 1: damage taken in half hearts. 2: the damage dealer's name (projectile shooters resolve to their player), or null for mobs, the environment, and non-player shooters. 3: the Bukkit damage cause name (FALL, PROJECTILE, ENTITY_ATTACK, ...). 4: attacker distance in blocks, or null with no attacker. 5: the victim spot as one list. 6: the victim-spot center.
ON_DEATH 0: the exact name of the player who died. 1: the exact name of the killer (vanilla or struggle-attributed), or null for natural and self deaths. 2: the victim's former role (HUNTER or SPEEDRUNNER). 3: the death spot as one list. 4: the death-spot center.
ON_DISCONNECT 0: the quitter name. 1: the quitter role at disconnect. 2: the quit spot as one list. 3: the quit-spot center.
ON_ELIM, ON_SPEEDRUNNER_ELIM, ON_HUNTER_ELIM 0: the exact name of the eliminated player. 1: the former role (HUNTER or SPEEDRUNNER). 2: the elim spot as one list, or null when the eliminated player is offline. 3: the elim-spot center, or null when offline.
ON_CLEANUP None: every index is null.
ON_PLAYER_INPUT paid 0: the exact name of the acting player. 1: seconds the press has held continuously (the final hold length on release). 2: the movement vector as one list, [x, y, z], in player-local space (x is right minus left, y is jump minus sneak, z is forward minus backward; opposites cancel, longer vectors normalize to unit length, rotation never changes it; [0, 0, 0] exactly once when the vector settles).
ON_MOVE 0: the exact name of the moving player. 1: blocks moved since last tick.
ON_CROUCH 0: the exact name of the crouching player. 1: seconds the crouch has held continuously.
ON_JUMP 0: the exact name of the acting player. 1: seconds the jump key has held continuously.
ON_SHAPESHIFT_EXIT 0: the exact name of the shifted player. 1: the view-mob entity type name (e.g. ZOMBIE). 2: the exit reason (MANUAL for <pshapeshift.exit>, COMBO for the exit hold, DEATH, QUIT, or MOB_LOST).
ON_PGHOST_EXIT 0: the exact name of the ghosted player. 1: the ghost id. 2: damage taken during the phase (0 when none). 3: the exit reason (CANCEL for manual exits and internal cancels like teleports, quits, decoy deaths, and match end; COLLISION_BLOCK, COLLISION_PROJECTILE, COLLISION_ENTITY, COLLISION_PLAYER, or COLLISION_GHOST). 4: the reason detail (block material, projectile or mob name, player name, or the other ghost's id; null for CANCEL). 5: the shooter player name for COLLISION_PROJECTILE hits (null when the shooter is missing or not a player, and for every other reason). 6: the colliding entity's location as [x, y, z, world, pitch, yaw] for COLLISION_ENTITY, COLLISION_PLAYER, COLLISION_PROJECTILE (the projectile's spot), and COLLISION_GHOST (the other drone's anchor); null for CANCEL and COLLISION_BLOCK.

<ismobhostile:type> answers whether an entity type is hostile to players (the platform hostile marker, so ghasts, slimes, and shulkers count alongside zombies): pair it with <args:0> on ON_MOB_KILLED to count hostile kills only. Names match case-blind with an optional minecraft: prefix; unknown names warn and read false, malformed tags warn and yield null.

Next Steps