Quick answer: Construct 3 Touch plugin not registering a third or fourth simultaneous finger? Use TouchCount and the indexed event variants — the “Is touching” condition only inspects the primary touch.
A four-button on-screen controller drops inputs when the player presses three buttons at once. The condition reads only touch 0.
Per-Touch Conditions
The Touch plugin exposes For Each Touch. Inside the loop, conditions like Is touching X,Y evaluate against that touch — iterate to register all fingers.
Hit-Test Each Touch
For each Touch:
-> If Touch.X,Y over Button A: trigger A
-> If Touch.X,Y over Button B: trigger B
...Each finger hits at most one button per frame.
TouchCount
Use Touch.TouchCount to know how many fingers are down. Touch.XForID(id) reads a specific finger.
Verifying
Pressing four buttons simultaneously triggers all four — no dropped fingers on touchscreen tests.
“Iterate touches with For Each. The default condition only sees touch 0.”
Confirm your test device supports the number of simultaneous touches you expect — some panels cap at 5 or 10 regardless of code.