multitap enhancements

This commit is contained in:
Alex Vanderveen
2026-08-07 10:19:12 -04:00
parent 33c9901497
commit 4cdccf58c1
9 changed files with 334 additions and 33 deletions
+20 -3
View File
@@ -103,9 +103,26 @@ Guests rearrange among seats **1..N−1**.
| Library / lobby / UI ceiling | **8** seats (`RNET_MAX_SLOTS`, dual SCPH-1070) |
| Per-title cap | `game.toml` `players` / `PSX_MAX_PLAYERS` (e.g. MotK=2, Bomberman Party=5) |
Rollback and delay-sync both carry multitap pad bytes. Offline and netplay
share the same multitap arming rules (game-started gate, `multitap_port` in
`game.toml`). Empty tap seats are fine — not every slot needs a device.
**Offline:** recomp-ui exposes a Multitap checkbox on PSX titles with
`num_players > 4`. Off hides controller seats beyond Player 4 and caps
`g_offline_pad_count` at 4 (`settings.toml` `[controller] multitap`,
default on). Multitap still arms at game-start when three or more offline
seats are live (`multitap_port` from `game.toml`).
**Multitap analog (hack):** tap seats are plain digital by default. Opt in
with `game.toml` / `settings.toml` `[controller] multitap_analog = true`
(or the Controllers / Lobby Settings checkbox). When on, tap seats may
report DualShock (`0x73` + sticks) in multitap bulk status. Hosts publish
`match_caps.multitap_analog` so every peer applies the same setting at
launch. Not reliable across titles — leave off unless the game needs it.
**Netplay (psxrecomp only):** lobbies with more than **2** seats always
force SCPH-1070 multitap on (`force_session_pads_connected` /
session start when `slot_count >= 3`). The offline Multitap toggle does
not opt out of that. Empty tap seats are fine — not every slot needs a
device.
Rollback and delay-sync both carry multitap pad bytes.
---