Vibration¶
Category: Executor Tier: Basic
Purpose¶
Triggers gate/gamepad rumble for tactile feedback.
Visual Reference¶

When To Use¶
1. Weapon Fire
Keyboard Listener (Key: "Space", Tap: true)
-> AND Gate
-> Vibration Executor (Pattern: Pulse, Intensity: 0.7, Duration: 0.1)
-> Sound Executor (Play: "gunshot.wav")
Short vibration on each shot.
2. Explosion Impact
Collision Listener (Group: "explosives")
-> AND Gate
-> Vibration Executor (Pattern: Ramp Down, Intensity: 1.0, Duration: 0.5, Strong: 1.0, Weak: 0.5)
Heavy rumble that fades.
3. Low Health Heartbeat
Property Listener (Global "health" < 20)
-> Always Listener (Pulse: 1 second)
-> AND Gate
-> Vibration Executor (Pattern: Pulse, Intensity: 0.3, Duration: 0.15)
Rhythmic pulse when low health.
4. Driving Engine
Property Listener (Global "engine_on" == true)
-> Always Listener
-> AND Gate
-> Vibration Executor (Pattern: Continuous, Intensity: 0.4, Duration: 0.1, Strong: 0.6, Weak: 0.2)
Continuous engine rumble (retriggered every 0.1s).
5. Charging Attack
Keyboard Listener (Key: "C", Hold: true)
-> AND Gate
-> Vibration Executor (Pattern: Ramp Up, Intensity: 0.8, Duration: 2.0)
Vibration intensifies as attack charges.
Runtime Behavior¶
Executes: Sends vibration command to game gate
Properties¶
Property |
Type |
Default |
Notes |
|---|---|---|---|
Target |
option |
Gamepad |
Gamepad: rumble a connected controller. Handheld: vibrate the phone (Android native + Web via navigator.vibrate). iOS Safari does not support web vibration. |
Device |
int |
0 |
Gamepad device ID (0 = first connected gamepad) |
Pattern |
option |
Pulse |
Pulse: fire once per activation | Continuous: re-trigger every tick while gate is active |
Intensity |
float |
0.5 |
Vibration strength (0.0-1.0). Ignored when Target=Handheld (browser/OS controls amplitude). |
Duration |
float |
0.2 |
How long to vibrate in seconds |
Verbose |
bool |
False |
Log vibration dispatch to console (controlled by ladybug button) |