buiild with ICE

This commit is contained in:
Alex Vanderveen
2026-08-07 03:56:32 -04:00
parent 67aaae8a75
commit 33c9901497
3 changed files with 12 additions and 7 deletions
+1 -1
View File
@@ -167,7 +167,7 @@ is zero-init.
| CMake option | Default | Effect |
| ------------------ | ------- | --------------------------------------------------------------------------------------------- |
| `PSX_NETPLAY` | OFF | Link `recomp-net` + lobby client; advertise **full netplay UI** when the title has 2+ players |
| `PSX_NETPLAY` | OFF | Link `recomp-net` + lobby client; advertise **full netplay UI** when the title has 2+ players. Also defaults `RNET_ENABLE_ICE=ON` (libjuice) unless `-DRNET_ENABLE_ICE=OFF`. |
| `PSX_SETUP_WIZARD` | OFF | Advertise **first-run setup wizard + Generate & rebuild** (`GameInfo.setup_wizard_supported`) |
+9 -6
View File
@@ -76,9 +76,11 @@ asymmetric NAT does not strand players on failed ICE attempts.
**ICE** (with **TURN** relay via the project’s coturn on
`netplay.retcomm.net`) remains part of the stack for discovery,
signaling, and fallbacks. Builds that need ICE link libjuice with
`-DRNET_ENABLE_ICE=ON`. “Force TURN” in the UI can raise delay floors for
relay-heavy paths; it does not replace the SFU online architecture above.
signaling, and fallbacks. With `PSX_NETPLAY=ON`, `runtime.cmake` defaults
`RNET_ENABLE_ICE=ON` (libjuice) before adding `recomp-net`. Pass
`-DRNET_ENABLE_ICE=OFF` only for LAN-only / no-FetchContent builds.
“Force TURN” in the UI can raise delay floors for relay-heavy paths; it
does not replace the SFU online architecture above.
### LAN / Direct IP (P2P star)
@@ -153,9 +155,10 @@ Generate & rebuild / prepare flows should point at the **`.cue`**, not a lone
2. Before `include(runtime.cmake)`: `set(PSX_NETPLAY ON CACHE BOOL … FORCE)`.
3. `psxrecomp_add_game_runtime(… ENABLE_NETPLAY_IF_PRESENT …)` with
`MAX_PLAYERS` / `game.toml` `players` set correctly.
4. For ICE builds: `-DRNET_ENABLE_ICE=ON`.
5. Fill `[netplay]` disc gates for multi-track games.
6. Test LAN 2P, then online lobby; soak rollback + FMV if the title uses media.
ICE (libjuice) defaults ON with `PSX_NETPLAY`; override with
`-DRNET_ENABLE_ICE=OFF` if needed.
4. Fill `[netplay]` disc gates for multi-track games.
5. Test LAN 2P, then online lobby; soak rollback + FMV if the title uses media.
This document will grow as N-way rollback confirmation, SFU soak on 5P titles,
and further ICE/SFU policy land.
+2
View File
@@ -183,6 +183,8 @@ jobs:
# SCPH1001) locally via the wizard, then rebuild.
# Prefer -DPSXRECOMP_FORCE_SETUP_HOST=ON (psxrecomp_add_game_runtime).
# Legacy -DYOURGAME_FORCE_SETUP_HOST=ON still works if the title wires it.
# Titles with PSX_NETPLAY=ON in CMakeLists get RNET_ENABLE_ICE=ON from
# runtime.cmake (libjuice FetchContent — needs network at configure).
cmake -S . -B build-ci -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DPSXRECOMP_FORCE_SETUP_HOST=ON \