Simplify content controls and add vehicle roles; record Workshop 0.0.144
continuous-integration/drone/push Build is passing

Discover installed mod vehicles and save independent garage, traffic, patrol and convoy assignments. Retire the superseded RHS 1.9 overrides. Include native menu, crew/driving and publication evidence.
This commit is contained in:
2026-11-06 22:06:38 +01:00
parent 518a1a5744
commit 460d9808e5
116 changed files with 14244 additions and 404 deletions
+3 -1
View File
@@ -2,7 +2,7 @@
Unarmed civilians drive ordinary S105 and V2101 cars and S1203 vans along the terrain's roads. The street-car catalog is discovered once per traffic service, with an 80% car / 20% van selection. Rally cars and tractors are excluded from moving traffic. T601 cars remain in the parked pool: native AI failed to start them on two test routes in 1.9.0.37. This is ambient life, separate from enemy convoys and VirtualHQ: drivers receive no enemy loadouts, intelligence or pursuit orders.
The admin menu's **Mission → Civilian vehicles** page has **Civilian traffic (0–6 cars)**. The default is 3. Set 0 to stop new traffic; existing unclaimed cars retire only when the normal distance and visibility checks allow it. The same setting is available as `/esc mission traffic set N` and `mission.civilianTrafficCount` in the unified server `Escapists.json`. Old configurations receive the default automatically.
The admin menu's **Content → Vehicle spawning** page has **Civilian traffic (0–6 cars)**. The default is 3. Set 0 to stop new traffic; existing unclaimed cars retire only when the normal distance and visibility checks allow it. The same setting is available as `/esc mission traffic set N` and `mission.civilianTrafficCount` in the unified server `Escapists.json`. Old configurations receive the default automatically.
After the prison phase, the server tries one new car every 30 seconds, with at most eight route candidates per attempt. Each fixed route starts on a clear road at least 1,000 m from every controlled player body and known spectator target, passes a road near the selected player area, then leaves along another road. Exit candidates include both sides of the area so a coastal road does not require an endpoint across water. It is not redirected to follow moving players. Positions come from the current terrain's road network; terrain-specific adapters are unnecessary. Roads and usable native vehicle navigation are still required.
@@ -21,3 +21,5 @@ Validation: `tests/test_civilian_traffic.py` executes the production ownership,
Final 2026-10-04 validation: all 315 registered checks passed. The final isolated Nogova run compiled with no script errors, verified native garbage protection and a neutral unarmed seated driver, observed more than 25 m of real road driving, and completed unclaimed retirement after the observer left and the production grace period elapsed. Earlier three-car runs verified physical fleet creation and recorded-claim preservation. Other terrain/resource warnings remain; no clean-all-logs or multiplayer claim. See [evidence](evidence/civilian-traffic-2026-10-04/review.json).
2026-10-05 driver readiness: native AI is activated before waiting for asynchronous compartment seating. The original living civilian driver can receive a native boarding task if still outside the car; vehicle registration precedes that recovery. No driver replacement or teleport is used. Boarding is cancelled on readiness, failure or player claim. The existing 120-second readiness deadline and distant-only retirement policy remain. Logs distinguish missing/incapacitated drivers, group admission, vehicle registration, and boarding. A hidden native comparison on Everon confirmed that deliberately unseated drivers stayed idle with the old preparation path, then boarded and drove with the updated path; the exact trigger of the live server’s initial seating failure remains unproven.
Content → Vehicles → Use for: Civilian traffic can assign discovered mod vehicles or exclude individual models from future traffic spawns. A disabled master mod also excludes its vehicles. With no enabled candidate, traffic creation is skipped; existing and claimed cars are kept.