Demo
The demo is a first-person shooting range built on the Unreal FirstPerson template. It is the fastest way to feel every trigger effect on your own controller before writing any code.
You can download the playable build (Windows, no editor needed) from the Gumroad page.
What is in it
- 12 pads, one per trigger effect. Step on a pad and its effect is applied to R2. A panel in the top right corner shows the parameters, what you should feel and how to test it.
- A shooting range behind the pads, with a target per lane. Every pad has its own fire mode: Weapon, Bow and Section fire on the click of the trigger, the vibrating pads fire in bursts timed with the effect.
- Lightbar per pad, so you can see which effect is active.
- Native input for everything, including the PS, Touchpad and Mic buttons. No RawInput.
- Force Feedback Effect assets: press D-pad Up for a trigger resistance ramp, D-pad Right for a lightbar colour (keys
1and2on the keyboard).
| Control | Action |
|---|---|
| Left stick / WASD | Move |
| Right stick / mouse | Look |
| ✕ / Space | Jump |
| R2 / left mouse button | Fire (with the rifle) |
| Options / P | Pause |
When you stand on two pads at once, the last one you stepped on wins.
How the demo uses the plugin
The rifle is picked up from the floor. When that happens, the character puts a Weapon effect on R2 (start 2, end 5, strength 3):
Each pad is a BP_TriggerEffectZone actor with three variables set per pad: Hand, Effect (an FDS5TriggerEffect) and ZoneColor. When the player enters it, it applies the effect and the colour; when the player leaves, it calls DS Stop Trigger and DS Update Output.
Testing checklist
Use the demo to check your controller and the plugin before debugging your own project:
- Walk onto the Weapon pad: R2 resists, then clicks. Fire: the shot leaves on the click.
- Walk onto Vibration and hold R2 past the start zone: the trigger buzzes.
- Walk off every pad: R2 moves freely again.
- Unplug the controller and plug it back in: the effect and the lightbar come back by themselves.