Files
jakub 1b1a8b5173 Add mission customization, HQ support and aggression-driven AI
Integrate faction and random settings menus, generated objectives, scouts, convoys, air support, mortar stations and body-intel recovery. Add identified-body aggression, finite hunter UAZ deployment, dedicated objective defence and maximum AI skill with separate reduced aim accuracy. Include policy tests, native probes, evidence and documentation.
2026-09-23 15:07:14 +02:00

2.7 KiB

Permanent mortar crew assignments

Each of the four mortar sites has a four-person crew assigned to its physical gun until that gun is destroyed or removed. This is separate from the lifetime of an HQ fire order: target expiry, cancellation, completed salvos, and ammunition depletion do not release the station.

A gunner walks to and boards the original mortar using native AI. While the gun is intact, native AI dismount behaviors are ineligible for its own crew. The other crew members hold their positions while retaining aiming, firing, radio, inventory and damage behavior. If the gunner is lost, a surviving ammunition bearer can approach and take the empty gunner position. No crew or ammunition is created to replace losses, and occupied seats are never forcibly cleared.

Gun destruction releases movement restrictions and the HQ support reservation, allowing surviving crew to leave and receive ordinary assignments. Mission stop also cleans up the station controls. Player-controlled characters, unrelated groups, other mortars and vehicles are unaffected. The depot courier remains a separate group and can still deliver the existing finite ammunition stock.

tests/test_mortar_station.py covers authority, ownership, player exclusion and restriction lifetime. --project core --smoke mortar-station exercises native idle boarding, competing dismount/movement orders, and release after damage destroys the original mortar. Local fixtures do not establish multiplayer replication or ordinary player-input acceptance.

On 2026-09-22, the station fixture passed all seven native checks: idle boarding, refusal of a high-priority dismount, retention after fire-order cancellation, all three support members resisting movement orders, and actual movement after gun destruction. The runner retained its launch source snapshot. Its initial cleanup check raced an exiting process; an independent post-run check then confirmed that the disposable prefix was idle.

The existing mortar-fire fixture also completed with the station rule enabled: an actual radio uplink/downlink led to a native projectile, consumed exactly one of the 27 original shells, and stopped without duplicate firing or replenishment. Its setup now unlocks the prison before waiting for combat AI. The full repository check suite and targeted station/activity tests passed. Native resource warnings from external addons remain; neither fixture is a dedicated-server acceptance test.

The firing run passed 51 assertions with no script errors. Its independent post-cleanup check confirmed both an idle prefix and source hashes unchanged from launch; the original runner's cleanup-race report is preserved.

The sites are now discoverable through intel; see mortar intel and map behavior.