Embed RHS 1.9 compatibility; record Workshop 0.0.141
continuous-integration/drone/push Build is passing

This commit is contained in:
2026-11-05 16:39:35 +01:00
parent 9418b6950a
commit 9caed3f12d
325 changed files with 76722 additions and 25 deletions
+74
View File
@@ -0,0 +1,74 @@
# RHS 1.9 compatibility
## Embedded in Escape
The same two replacements can live directly in Escape. Prepare them before
opening Workbench, testing, or packaging a fresh checkout:
```sh
python3 compatibility/rhs-1.9/prepare.py \
--rhs '/path/to/addons/RHS-StatusQuo_595F2BF2F44836FB' \
--mission addons/core
```
This keeps Escape's project identity and existing RHS dependency unchanged.
No standalone compatibility addon is required. The generated scripts are ignored
by Git but included by Workbench in Escape's package. Installed RHS files stay
untouched. The command validates both upstream hashes, refuses to overwrite local
edits, and can be repeated for identical inputs. A new RHS version requires review
and removal or regeneration of both replacements; they must not mask upstream fixes.
Credit Red Hammer Studios and link its EULA in Escape's Workshop description.
The RHS derivative terms require public, noncommercial distribution under a
similar non-derivative license. Do not redistribute generated RHS source in Git
or development-source downloads. The separate WCS patch is not embedded here.
The embedded layout passed native compilation and normal mission startup through
player spawn on 1.9.0.37. Native packing succeeded and both replacements match
the inputs inside Escape's PAK. See the [embedded test evidence](../../docs/evidence/rhs-1.9-embedded-2026-11-05/README.md).
It was published inside Escape **0.0.141** after successful Workshop upload and
backend processing. Inherited dependency diagnostics remain.
## Standalone experiment
Separate addon for RHS Status Quo **0.16.5237** and Reforger **1.9.0.37**.
It uses same-path script replacement to fix declarations before compilation:
- Accept and forward `isGM` in `RHS_CAS_EditableEntityComponent.SetAuthor`.
- Use `WheelSlotInfo.GetWheelIndex()` instead of the removed wheel-index field.
`prepare.py` reads the two scripts from the installed RHS package, verifies their
exact hashes, and generates the patched addon in a new local directory. It never
changes installed Workshop files. This directory contains the patch recipe and
project definition; generated RHS source stays in ignored local storage.
From the repository root:
```sh
python3 compatibility/rhs-1.9/prepare.py \
--rhs '/path/to/addons/RHS-StatusQuo_595F2BF2F44836FB' \
--output '.local/rhs-19-addon'
```
For an isolated test, add dependency `E119F1C05A274B83` to the test copy of
Escape's `addon.gproj`, and expose the generated addon through its addon search
directory. Keep the original RHS dependency. The GUID is a local project identity,
not a published Workshop ID.
Both changes pass native compilation of GameLib, Game and WorkbenchGame with
Escape's complete RHS/WCS/BMP/Parachute dependency graph on 1.9.0.37. The current
scenario prepares and spawns the player. The six-faction rescue fixture completes
114 assertions with no assertion failures or script exceptions: faction-matched
crews and cargo capacity, two physical landings, wounded boarding, and loaded
airborne departure. This is local Workbench evidence, not multiplayer or general
vehicle-handling qualification. Both replaced scripts are byte-identical in the
native packed output. No Workshop publication has been performed.
The full logs also exposed a WCS BMP tire initialization failure. A separate
local WCS experiment is not included in the published mission. Other inherited
resource/property diagnostics remain in the logs; the strict all-errors report
is not clean. See [native evidence](../../docs/evidence/rhs-1.9-compatibility-2026-11-05/report.json).
References: [Bohemia's script replacement documentation](https://community.bistudio.com/wiki/Arma_Reforger:Data_Modding_Basics)
and [RHS derivative-content terms](https://docs.rhsmods.org/rhs-status-quo-user-documentation/arma-reforger/rhs-status-quo/eula).
Workshop publication requires review of the generated files and these terms.