P1 steers with raw WASD runes and P2 with arrow keys (same-keyboard local-multiplayer design). On the web touch deck the d-pad sends arrow sequences — so a phone player seated as P1 steers P2's snake.
Controls declarations (kit v2.10.0) can't fix this: WASD chips would work but movement-on-chips feels bad, and the seat-keyed split is the real issue — each connection has its own keyboard, so the split serves no purpose for remote seats.
Proposed fix: route movement through per-seat input (each seat's arrows AND wasd steer that seat's own snake via Resolve()/raw, keyed by the player's seat rather than the key family), keeping the same-keyboard solo co-op mode working. The t/m/b/s extras (theme/mode/bot/settings) should then be declared as chips.
From the 2026-06-11 catalogue controls audit (mobile-controls work).
P1 steers with raw WASD runes and P2 with arrow keys (same-keyboard local-multiplayer design). On the web touch deck the d-pad sends arrow sequences — so a phone player seated as P1 steers P2's snake.
Controls declarations (kit v2.10.0) can't fix this: WASD chips would work but movement-on-chips feels bad, and the seat-keyed split is the real issue — each connection has its own keyboard, so the split serves no purpose for remote seats.
Proposed fix: route movement through per-seat input (each seat's arrows AND wasd steer that seat's own snake via
Resolve()/raw, keyed by the player's seat rather than the key family), keeping the same-keyboard solo co-op mode working. Thet/m/b/sextras (theme/mode/bot/settings) should then be declared as chips.From the 2026-06-11 catalogue controls audit (mobile-controls work).