Skip to main content

Event Nodes

Guide

Notify another graph or an integrated event system

Node Usage

Raise Internal Event

Broadcasts a named event through the current GCS battle controller; use it with On Internal Event to let separate graphs react without a direct wire between them

Inputs

  • In (Control): Raises the event when execution reaches the node

Outputs

  • Out (Control): Continues after the synchronous event raise

Parameters

  • Event Name (String): Empty; Exact name received by matching On Internal Event entries; an empty name does nothing
  • Arg Bindings (Binding list): Empty; Named values added to the event payload

Each binding contains Arg Name, Source, and Fixed Value; blank names are skipped; repeated names overwrite the earlier value. Source can be Fixed, SourceUnitId, DefaultTargetUnitId, AttackerUnitId, LastDamage, LastArmor, LastHeal, CardInstanceId, CardSourceGuid, BattleTurnNumber, or PlayerEnergy; context values fall back to 0 or an empty string when unavailable

The raise does nothing when the battle controller is unavailable; listeners compare the event name exactly, so keep spelling and capitalization consistent

Raise Internal Event node with an event name and argument bindings

Raise GES Event

Raises a Game Event System event by asset GUID; use it to bridge a card, status, or enemy graph into project-level systems that already listen through GES

Inputs

  • In (Control): Builds the configured sender and argument, then raises the GES event

Outputs

  • Out (Control): Continues after the raise attempt

Parameters

  • GES Event Guid (Asset GUID): Empty; Shown as the GES Event asset picker; the other rows appear only after a valid event is selected and the integration is available
  • GES Arg Type Full Name (Type name): Empty; Written automatically from the selected event's argument type and not shown as an editable text field; selects the builder path but does not convert raw values
  • GES Arg Source (Context source): Fixed; Shown as Arg Source only for a primitive-like argument; chooses the raw Fixed, integer context, or GUID string value
  • GES Arg Fixed Value (String): Empty; Shown as Arg Value only when the primitive argument source is Fixed
  • GES Arg Object Value (Unity object): None; Shown as the Arg object picker only when the argument type derives from UnityEngine.Object
  • GES Arg Json (JSON): Empty; Backing storage for a non-primitive, non-Unity-object argument; edited through the structured Arg popup rather than a raw JSON field
  • GES Sender Type Full Name (Type name): Empty; Written automatically from the selected event's sender type and not shown as editable text; enables the sender + argument overload without coercing the raw value
  • GES Sender Arg Source (Context source): Fixed; Shown as Sender Source only for a primitive-like sender; chooses the raw Fixed, integer context, or GUID string value
  • GES Sender Fixed Value (String): Empty; Shown as Sender Value only when the primitive sender source is Fixed
  • GES Sender Object Value (Unity object): None; Shown as the Sender object picker only when the sender type derives from UnityEngine.Object
  • GES Sender Json (JSON): Empty; Backing storage for a complex sender; edited through the structured Sender popup rather than a raw JSON field

Both source dropdowns offer Fixed, SourceUnitId, DefaultTargetUnitId, AttackerUnitId, LastDamage, LastArmor, LastHeal, CardInstanceId, CardSourceGuid, BattleTurnNumber, and PlayerEnergy; with no sender or argument type, the parameterless event is raised; an argument type uses the single-argument overload; a sender type uses the sender + argument overload; invalid type names or failed JSON produce null values, and JSON failures are logged

Primitive values are not converted to the declared type

Fixed always produces a String; unit IDs, damage, armor, healing, card instance ID, turn number, and energy produce an Integer; CardSourceGuid produces a String; declaring float, bool, long, or another primitive type does not convert those raw values before the GES bridge passes them to the strongly typed event; match the declared type to the actual raw value, or use a correctly typed Unity object / JSON value; a mismatched primitive value can fail to raise the typed event

GES integration

This node requires the optional Game Event System bridge; if the project does not include GES, use Raise Internal Event for communication inside GCS

Raise GES Event node configured for a Game Event System asset

On this page