Base Game Character Triggers - Monster-Train-2-Modding-Group/Trainworks-Reloaded GitHub Wiki
This page documents the available triggers within the game engine, categorized by their in-game presence.
Section A: Triggers with In-Game Names
Enchant (AfterSpawnEnchant)
- JSON Name:
after_spawn_enchant - Notes: Need to use CardEffectEnchant as its effect.
Inspire (CardCorruptPlayed)
- JSON Name:
card_corrupt_played - Notes: N/A
Etch (CardExhausted)
- JSON Name:
card_exhausted - Notes: N/A
Rally (CardMonsterPlayed)
- JSON Name:
card_monster_played - Notes: N/A
Incant (CardSpellPlayed)
- JSON Name:
card_spell_played - Notes: N/A
Inspire (CorruptionAdded)
- JSON Name:
corruption_added - Notes: N/A
End of Turn (EndTurnPreHandDiscard)
- JSON Name:
end_turn_pre_hand_discard - Notes: Do not use for anything that would modify a combat preview. As this trigger is not taken into account for combat previews.
Siphon (OnAnyHeroDeathOnFloor)
- JSON Name:
on_any_hero_death_on_floor - Notes: N/A
Hellborne Harvest (OnAnyMonsterDeathOnFloor)
- JSON Name:
on_any_monster_death_on_floor - Notes: N/A
Harvest (OnAnyUnitDeathOnFloor)
- JSON Name:
on_any_unit_death_on_floor - Notes: N/A
Armored (OnArmorAdded)
- JSON Name:
on_armor_added - Notes: N/A
Strike (OnAttacking)
- JSON Name:
on_attacking overrideTargetCharacter: Character Attacked.- Notes: N/A
Strike (Alternative) (OnAttackingBeforeDamage)
- JSON Name:
on_attacking_before_damage overrideTargetCharacter: Character Attacked.- Notes: Alternate version of Strike used by Plague Doctor, Frostpiercer, Combustible Suit, Arkion Pushback.
Extinguish (OnDeath)
- JSON Name:
on_death - param_int (threshold param): 1 if revived from reanimate, 0 otherwise.
- Notes: N/A
Vangaurd (OnDeathwish)
- JSON Name:
on_deathwish - Notes: This is a conditional trigger. It triggers once the unit is in front of the room. Required to have an
on_deathwish_losttrigger to undo the changes made in this trigger.OnDeathwishLostis triggered when the unit is no longer in front of the room.
Eaten (OnEaten)
- JSON Name:
on_eaten - Notes: N/A
Celebrate (OnEncounterComplete)
- JSON Name:
on_encounter_complete - Notes: N/A
Equipped (OnEquipmentAdded)
- JSON Name:
on_equipment_added - Notes: N/A
Artificer (OnEquipmentAddedToAlly)
- JSON Name:
on_equipment_added_to_ally - Notes: N/A
Unequipped (OnEquipmentRemoved)
- JSON Name:
on_equipment_removed - Notes: N/A
Gorge (OnFeed)
- JSON Name:
on_feed - Notes: N/A
Hunger (OnFoodSpawn)
- JSON Name:
on_food_spawn - Notes: N/A
Graft Equipped (OnGraftEquipmentAdded)
- JSON Name:
on_graft_equipment_added - Notes: N/A
Rejuvenate (OnHeal)
- JSON Name:
on_heal - param_int (threshold param): Amount healed.
- Notes: N/A
Revenge (OnHit)
- JSON Name:
on_hit - param_int (threshold param): Damage taken.
- param_int2 (relic param): Damage type.
- Notes: N/A
Slay (OnKill)
- JSON Name:
on_kill - Notes: N/A
Full Moon (OnMoonLit)
- JSON Name:
on_moon_lit - Notes: This is a conditional trigger. Triggers once it is Full Moon. If used then
on_moon_lit_lostshould be specified to undo the changes made by this trigger.
Mooncycle (OnMoonPhaseShift)
- JSON Name:
on_moon_phase_shift - Notes: N/A
New Moon (OnMoonShade)
- JSON Name:
on_moon_shade - Notes: This is a conditional trigger. Triggers once it is New Moon. If used then
on_moon_shade_lostshould be specified to undo the changes made by this trigger.
Conjure (OnOwnAbilityActivated)
- JSON Name:
on_own_ability_activated - Notes: (Fires as a result of playing a card, or if CardEffectSacrifice was played from a unit ability and the character with the ability was sacrificed from the ability)
Conjure (Alternative) (OnPreOwnAbilityActivated)
- JSON Name:
on_pre_own_ability_activated - Notes: Alternate version of Conjure used by Fenix Egg path
Gelfuel (OnPyregelAdded)
- JSON Name:
on_pyregel_added - Notes: Unused but should work.
Reanimated (OnReanimated)
- JSON Name:
on_reanimated - Notes: N/A
Shift (OnShift)
- JSON Name:
on_shift - Notes: N/A
Summon (OnSpawn)
- JSON Name:
on_spawn - Notes: N/A
Summon (Alternative) (OnSpawnNotFromCard)
- JSON Name:
on_spawn_not_from_card - Notes: Used by Korin the Judge
On Team Turn (OnTeamTurnBegin)
- JSON Name:
on_team_turn_begin - Notes: Triggers at the end of deployment phase. Triggers before battling starts
Loop (OnTrainRoomLoop)
- JSON Name:
on_train_room_loop - Notes: N/A
Action (OnTurnBegin)
- JSON Name:
on_turn_begin - Notes: N/A
Valiant (OnValiant)
- JSON Name:
on_valiant - param_int (threshold param): Total amount of Valor on character.
- Notes: Triggers when the unit gains valor. Can be parameterized to trigger when the unit has X valor. Used by Fel Unchained III (Permanent Valor) as a Hidden Trigger.
Ascension (PostAscension)
- JSON Name:
post_ascension - Notes: N/A
Resolve (PostCombat)
- JSON Name:
post_combat - Notes: N/A
Descension (PostDescension)
- JSON Name:
post_descension - Notes: N/A
Start of Turn (PreCombat)
- JSON Name:
pre_combat - Notes: Triggers before you draw your hand. Literally start of turn.
Section B: Triggers without In-Game Names (Hidden/Internal)
Since these triggers do not have an in game name you generally do not want to give a description to triggers of these types.
OnBurnout
- JSON Name:
on_burnout - Notes: Triggers when the user dies from burnout and is not revived from reanimate
OnDeathwishLost
- JSON Name:
on_deathwish_lost - Notes: This is the other half of conditional trigger for Vanguard (
OnDeathwish). You generally want to undo the changes made to the other trigger with this one.
OnHatched
- JSON Name:
on_hatched - Notes: Used by Wurmkin Egg Units to Kill egg and spawn hatched unit
OnMoonlitLost
- JSON Name:
on_moonlit_lost - Notes: This is the other half of conditional trigger for Full Moon (
OnMoonLit). You generally want to undo the changes made to the other trigger with this one.
OnMoonshadeLost
- JSON Name:
on_moonshade_lost - Notes: This is the other half of conditional trigger for New Moon (
OnMoonshade). You generally want to undo the changes made to the other trigger with this one.
OnNewStatusEffectAdded
- JSON Name:
on_new_status_effect_added - param_int (threshold param): Total Number of Unique Buffs / Debuffs on character.
- Notes: This is used by certain artifacts.
OnQueuedStatusEffectToAdd
- JSON Name:
on_queued_status_effect_to_add - param_int (threshold param): Bonus stack count for Status ID.
- param_int2 (relic param): Tracking ID of Room Modifier (see notes).
- param_string (relic param): Status ID.
- Notes: Used Exclusively By RoomStateAddStatusEffectOnStatusApplied
OnRemoveHatch
- JSON Name:
on_remove_hatch - Notes: Used by Wurmkin Egg Units to remove Shell per Charged Echo
OnSilence
- JSON Name:
on_silence - Notes: Unused
OnSilenceLost
- JSON Name:
on_silence_lost - Notes: Unused, this may be a passive trigger so required to undo OnSilence's effects
OnStatusEffectChanged
- JSON Name:
on_status_effect_changed - param_int (threshold param): Amount of Status ID stacks.
- param_int2 (relic param): Change in amount of Status ID.
- param_string (relic param): Status ID.
- Notes: N/A
OnTimebomb
- JSON Name:
on_timebomb - Notes: Unused, questionable if implemented. Used by the Timebomb status effect
OnTroopAdded
- JSON Name:
on_troop_added - param_int (threshold param): Total amount of Troop.
- param_int2 (relic param): Number of Troop stacks added.
- Notes: N/A
OnTroopRemoved
- JSON Name:
on_troop_removed - param_int (threshold param): Total amount of Troop.
- param_int2 (relic param): Number of Troop stacks removed.
- Notes: N/A
OnUnitAbilityAvailable
- JSON Name:
on_unit_ability_available - Notes: Drives abilities
OnUnitAbilityUnavailable
- JSON Name:
on_unit_ability_unavailable - Notes: Drives abilities
OnUnscaledSpawn
- JSON Name:
on_unscaled_spawn - Notes: Invisible Summon Trigger that was used by Kinhost Carapace in MT1. This is a Summon trigger whose effects aren't copied by Transcendimp.
PostAttemptedAscension
- JSON Name:
post_attempted_ascension - Notes: N/A
PostAttemptedDescension
- JSON Name:
post_attempted_descension - Notes: N/A
PostCombatHealing
- JSON Name:
post_combat_healing - Notes: Used by Healer enemy units. Do not use for friendly units.
RegalCountAdded
- JSON Name:
regal_count_added - Notes: Completely unused