haptic_relay
haptic_relay
is a point entity available in Half-Life: Alyx.
Entity description
The haptic_relay is an entity which ostensibly has the power to trigger force-feedback in VR controllers based on its properties being similar to env_shake. It appears to share some attributes with logic_relay but requires additional testing for use.
Todo: Test this entity for its intended uses and update this page with use-cases
Investigate: .hpt files in scripts/haptics, audio2haptic_inputkv.txt, and OnHandEvent input.
Properties
Source 2 Transform:
- Origin
(origin)
<coordinates> - The world space origin of the entity.
- Angles
(angles)
<angles> - The pitch, yaw, roll orientation of the entity.
- Scale
(scales)
<vector> - The x, y, z scales of the entity. Not all entities can use this.
- Transform Locked
(transform locked)
<boolean> - Lock the transform at its current value, preveting the transform of the node from being modified.
- Force Hidden
(force hidden)
<boolean> - Visually hides the entity from the viewports. The Outliner pane will still list hidden entities.
- Editor Only
(editor only)
<boolean> - Entity is only displayed in Hammer and will not appear in game.
- Misc Entity Scripts
([todo internal name (i)])
<string> - Name(s) of script files that are executed after all entities have spawned.
Outputs
OnUser1
- Fired in response to FireUser1 input
OnUser2
- Fired in response to FireUser2 input
OnUser3
- Fired in response to FireUser3 input
OnUser4
- Fired in response to FireUser4 input
OnKilled
- Fire when the entity is killed and removed from the game.
Inputs
AlyxTargetName:
RunScriptFile
- Execute a VScript file from disk, without file extension. The script contents are merged with the script scope of the receiving entity.
RunScriptCode
- Execute a string of VScript source code in the scope of the entity receiving the input. String quotation may be needed when fired via console.
CallScriptFunction
- Execute a VScript function in the scope of the receiving entity.
CallPrivateScriptFunction
- Execute a VScript function from this entity's private script scope
CallGlobalScriptFunction
- Execute a VScript function from the global script scope
Kill
- Removes this entity from the world.
KillHierarchy
- Removes this entity and its children from the world. Note:Entities already remove orphaned children upon being removed, but this input removes all children on the same frame, being marginally faster than
Kill
.
AddOutput
<string>- Adds a keyvalue/output to this entity. It can be potentially very dangerous, use with care.
KV Format:<key> <value>
I/O Format:<output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire, -1 means infinite>
FireUser1
toFireUser4
- Fire the
OnUser
outputs; see User Inputs and Outputs.
OnHandEvent
- Trigger the relay with an input that has the player as activator and HandID as value