Add configurable main-road checkpoints and reconnect replacements; record Workshop 0.0.136
continuous-integration/drone/push Build is passing

This commit is contained in:
2026-11-01 18:22:38 +01:00
parent 0e1e7790f9
commit b8dfa9184e
40 changed files with 2818 additions and 112 deletions
+3 -1
View File
@@ -25,7 +25,9 @@ The owner's original `ESCT_SpectatorComponent`, `ESCT_OrbitPlayerManualCameraCom
The successor keeps one round-owned life record per authenticated account. A connection number is only the current binding to that record. A new life can enter during prison, radio search or radio defence; extraction and terminal phases refuse new admission. Successful initial assignment spends the life. Cancelling an unassigned preload never restores or spends a life.
Native reconnect reservation and handoff remain separate from new-character admission. A returning account may reclaim its surviving reserved actor through Reforger's reconnect system. A dead actor remains a spent life; unconsciousness is not death. Reserved living actors remain participants while their connections are absent. These policies are implemented, but real remote reconnect and reservation-expiry acceptance remains unfinished.
Native reconnect reservation and handoff remain separate from new-character admission. A returning account may reclaim its surviving reserved actor through Reforger's reconnect system. When a genuinely disconnected account returns without a usable reservation (missing, expired or dead body), it can receive a fresh soldier through normal admission during prison, radio search or radio defence. Extraction and terminal phases still block new soldiers. A valid living reservation restores the same soldier, inventory and injuries; unconsciousness is not death. A failed native handoff retains that reservation instead of granting a duplicate soldier. An unclaimed living orphan is retired through native cleanup before replacement; dead corpses remain for normal cleanup. Duplicate audit callbacks do not grant extra lives, and death while remaining connected still uses the spectator path. Reserved living actors remain participants while their connections are absent. These policies are implemented, but real remote reconnect and reservation-expiry acceptance remains unfinished.
Reconnect replacement checks (2026-11-01): `tests/test_reconnect_recovery.py` executes the production reservation, handoff, cleanup and roster replacement methods with opaque native boundaries, covering missing/expired/dead bodies, original equipment retention, occupied controllers, failed handoffs, duplicate callbacks and extraction restrictions. The [native fixture](evidence/reconnect-replacement-2026-11-01/native-checks.log) compiles the changed code and exercises actual roster disconnect/rebind and one-time admission eligibility. It completes without script/runtime failures; 13 existing resource/world errors keep the strict runner result nonzero. Actual remote authentication, handoff and replacement spawning still need multiplayer acceptance.
## Weapon retention on unconsciousness