Combine Workshop addon and fix prison startup

Merge owned systems into one addon while preserving resource identities. Gate player admission on the replicated prison scene, restore the original framed door, and hold enemy AI until escape. Correct scenario branding and author metadata, include publishing assets, and retain regression and native verification evidence.
This commit is contained in:
2026-09-20 16:42:52 +02:00
parent 7d94953b53
commit cab998fb64
513 changed files with 18940 additions and 862 deletions
+2 -2
View File
@@ -30,8 +30,8 @@ The native ShootingLogic superclass increments its behavior shot counter. The su
New production helpers:
- `addons/ai/Scripts/Game/ERR/ERR_MortarReadiness.c`
- `addons/ai/Scripts/Game/ERR/ERR_MortarSupplyTransfer.c`
- `addons/core/Scripts/Game/ERR/10_AI/ERR_MortarReadiness.c`
- `addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSupplyTransfer.c`
`mortar-finite-operations.patch` contains only Battery/System/Firing edits. No native probe, shared staging, Core source, resources or `check.py` was edited. New `tests/test_mortar_transactions.py` executes actual extracted population/allocation/order/ownership/cycle policies and the actual transfer Poll/Acknowledge control flow against narrow API fakes. Cases include zero/late/duplicate population, callback without inventory, wrong destination storage, simultaneous source/destination claims, stale order, cancellation, exact timeout, late completion, missing shell and repeated pending ticks without duplicate shot-counter increment. Source contracts additionally constrain allocation latching, single native move, cleanup and Firing's pre-super wait. Native inventory/expansion/firing remain separate qualification tasks.