Inputs

- PassUser1 <string>
Causes this entity's OutUser1 output to be fired. Can pass any parameter.
- PassUser2 <string>
Causes this entity's OutUser2 output to be fired. Can pass any parameter.
- PassUser3 <string>
Causes this entity's OutUser3 output to be fired. Can pass any parameter.
- PassUser4 <string>
Causes this entity's OutUser4 output to be fired. Can pass any parameter.
- FireRandomUser <void>
Fires OnUser1, OnUser2, OnUser3, or OnUser4 with a 25% chance of each.
- PassRandomUser <string>
Fires OutUser1, OutUser2, OutUser3, or OutUser4 with a 25% chance of each. Can pass any parameter.
- SetHealth <integer>
Sets this entity's health. This input already existed on several entities, but now it's part of all entities.
- AddHealth/RemoveHealth <integer>
Adds to/removes from this entity's health. These inputs already existed on props and func_breakables, but now they're part of all entities, including NPCs.
- SetHealth <integer>
Sets this entity's maximum health. This will not change the entity's current health unless it exceeds the new maximum, in which case the entity's health will be lowered down to the new maximum.
- FireOutput <string>
Fires the named output on this entity. Format: <output name>:<activator>:<caller>:<parameter>:<delay> For example: OnDeath:my_entity:my_entity. Everything beyond the output name is optional.
- RemoveOutput <string>
Removes all instances of the named output on this entity. Wildcards are supported, meaning you could just pass '*' to wipe all outputs from this entity.
- AcceptInput <string>
Fires the named input on this entity. Format: <input name>:<parameter>:<activator>:<caller>:<output ID> Example: SetTarget:target_entity. Everything beyond the input name is optional. Note that this is arranged differently from FireOutput, having the parameter right after the input name.
- CancelPending <void>
Cancels any events fired by this entity that are currently pending in the I/O event queue. This input originated from logic_relay, but it's been promoted to a base input so any entity could cancel their outputs.
- FreeChildren <void>
Unparents all entities parented to this entity in a movement hierarchy.
- SetLocalOrigin <vector>
Sets this entity's origin in local space, relative to its parent if one exists. Otherwise relative to the world.
- SetLocalAngles <vector>
Sets this entity's angles in local space, relative to its parent if one exists. Otherwise relative to the world.
- SetAbsOrigin <vector>
Sets this entity's origin in the map, always relative to the world origin.
- SetAbsAngles <vector>
Sets this entity's angles in the map, always relative to the world origin.
- SetLocalVelocity <vector>
Sets this entity's current velocity.
- SetLocalAngularVelocity <vector>
Sets this entity's current angular velocity.
- AddSpawnFlags <integer>
Adds spawnflag(s) to this entity. Many spawnflags have their respective numbers suffixed in Mapbase's FGD.
- RemoveSpawnFlags <integer>
Removes spawnflag(s) from this entity. Many spawnflags have their respective numbers suffixed in Mapbase's FGD.
- AddEFlags <integer>
Adds EFlags to this entity.
- RemoveEFlags <integer>
Removes EFlags from this entity.
- SetMoveType <integer>
Sets this entity's movetype.
- SetCollisionGroup <integer>
Sets this entity's collision group.
- AddSolidFlags <integer>
Adds solid flags to this entity.
- RemoveSolidFlags <integer>
Removes solid flags from this entity.
- ChangeVariable <string>
A special version of AddOutput that changes a datadesc variable instead of a keyvalue, similar to logic_datadesc_accessor.

Outputs

- OutUser1 <string>
Fires in response to PassUser1. Can pass any parameter.
- OutUser2 <string>
Fires in response to PassUser2. Can pass any parameter.
- OutUser3 <string>
Fires in response to PassUser3. Can pass any parameter.
- OutUser4 <string>
Fires in response to PassUser4. Can pass any parameter.
- OnKilled <void> (from L4D)
Fires when this entity is removed with the 'Kill' input.

KeyValues

The owner entity can now be accessed with the keyvalue and (an internal flag variable) can now be accessed with the aptly named keyvalue, but neither are actually used in any base FGD classes to avoid clutter.