Skip to content

Events

All player events fire synchronously on that player's owner thread. Pre events are cancellable; post events are informational after their corresponding commit.

EventTimingCancellableMutable fieldCancellation/effect
SkillPreCastEventAfter cooldown/resource/condition checks, before the skill effectYesNonePrevents effect execution, cost consumption, cooldown, and statistics.
SkillPostCastEventAfter the skill effect succeeds and costs/cooldowns commitNoNoneReports player, skill id, and trigger id.
PlayerSkillSlotChangeEventBefore equip, unequip, or trigger-binding mutationYesNonePrevents the slot/binding update.
SkillPreUpgradeEventAfter validation, before charging and the rollYessuccessRatePrevents charge and roll; listeners may replace the effective rate.
SkillUpgradeEventAfter the upgrade attempt fully resolvesNoNoneReports before/after levels, rate, roll success, and downgrade state.

Both asynchronous cast entry points move event publication to the player's owner thread. Script actions and external skill-source collection do not create additional event classes beyond these documented runtime paths.