Releases: Sternab/MultiplayerStability
Release list
Multiplayer Stability v0.9.5
Changes
- Guards
VendorVM.HandleEquipmentSlotUpdatedduring the constructor window beforeStashVMis assigned. This is an ungated, UI-only fix for the paired exception family in the v0.9.4 captures. - Repairs
PartyPetSpawner.MyData.OnDisposewhen its stored unit reference no longer resolves. Exact-parity multiplayer now clears the stale spawned-unit state instead of throwing before base cleanup. - Adds serious-only standalone hashes for the class-valued child roots used by
Player.GetHash128. This narrows future player-bucket desyncs without changing simulation state.
The vendor and party-pet changes prevent their captured exception paths. Their effect on desync incidence still requires post-fix multiplayer validation.
Compatibility
- Rogue Trader
1.6.1.514 - Use the same Multiplayer Stability version on every player.
- Matching manifest versions and compiled module IDs are required for simulation fixes and custom transfer protocols.
Validation
- Compiled with Unity
6000.0.64f1against the current project reference set. - Owlcat modification build completed successfully.
- Release archive manifest reports
0.9.5. - Packaged DLL matches the verified build output and contains the new patch classes.
- Archive includes the required
BlueprintsandContentplaceholders.
Multiplayer Stability v0.9.4
Changes
- Adds narrow UI lifecycle guards for null or disposed units during Surface HUD selection, experience refreshes, inventory stat refreshes, and additional-stats view notifications.
- Preserves every valid callback on its original path. The guards are ungated, subset-safe, and do not swallow exceptions or write synchronized state.
- Covers the separately captured disposed-preview inventory refresh in addition to the four originally identified callback families.
- Keeps the packaged
BlueprintsandContentdirectories non-empty so ZIP installers retain them. - Includes all v0.9.3 pause-consensus, dialogue-answer, and UUID-attribution changes.
Compatibility
Use the same v0.9.4 build on every peer. This release targets Rogue Trader 1.6.1.514.
The guarded exception paths were recorded in the paired v0.9.2 folder-3 capture. This release is expected to eliminate those exceptions, but their effect on the two associated desync episodes still requires post-fix multiplayer validation.
SHA-256: 51DDCA3CE3AAD2E2A09E031F1FBC8870BF4CE10A5B72CBAAC797B073BECF24C4
Multiplayer Stability v0.9.3
Changes
- Stabilizes cooperative pause consensus against the exact transfer-epoch roster and ignores local pause requests while loading.
- Prevents synchronized dialogue answers from being silently discarded because of local cue timing state.
- Adds exact in-tick
GlobalUuidcaller attribution for the unresolved Medikit desync class without changing Medikit behavior. - Includes the v0.9.2 achievement reward, Proving Ground ordering, and detector recovery fixes.
Compatibility
Use the same v0.9.3 build on every peer. This release targets Rogue Trader 1.6.1.514. The new pause and dialogue fixes still require post-fix multiplayer field validation.
SHA-256: D33136E1BD41B60DFB3B8A465B44655478EADA90D0EC82195DCA0C276E2EC4C0
Multiplayer Stability v0.9.2
Multiplayer Stability v0.9.2 adds two evidence-backed desync fixes and corrects repeated recovery notifications.
- Prevents the
There Is Only War...cabin reward from changing shared inventory according to each peer's local platform achievements. - Sorts the Cyber Eagle Proving Ground ally-marker pass by
UniqueId, preserving all vanilla applications while stabilizing the surviving replacement-buff context. - Requires 100 consecutive comparable matching hash checks before DesyncWatch re-arms, preventing one unresolved fork from producing repeated dialogs and telemetry.
- Records successful three-player v0.9.1 validation of the compatibility decision, accelerated save transfer, sequenced loading locks, trap containment, and charge-cache guard.
All players must use the exact same v0.9.2 build. The new prevention changes still require post-fix multiplayer validation, so keep save backups and retain logs from any desync.
Multiplayer Stability v0.9.1
Hotfix for v0.9.0's save-load refusal.
- Sends compatibility decisions directly to each peer before
LoadSaveand preserves non-owner and simultaneous save starts. - Replaces the mutating answer-tree RNG wrapper with a no-side-effect co-op UI policy.
- Adds replayable Steam completion, generation-safe transfer cleanup, sequenced-lock progress, bounded charge diagnostics, and labeled Owlcat desync telemetry.
- Ships a non-empty
Blueprintsfolder so the installed directory survives packaging.
All players must use the exact same v0.9.1 build. Multiplayer field validation is still in progress.
Multiplayer Stability v0.9.0
Multiplayer Stability v0.9.0
Co-op desync fixes, diagnostics, and faster save transfers for
Warhammer 40,000: Rogue Trader build 1.6.1.514.
This is an experimental review release. It has passed source review, compilation, packaging, and
local startup testing, but the combined v0.9 changes have not yet completed a full post-fix
multiplayer field session. Use the same version on every machine and keep save backups.
Installation
ModFinder
- Install ModFinder.
- Download
MultiplayerStability-0.9.0.zipbelow. - Drag the unchanged ZIP onto ModFinder's Drag zips here to install area.
- Confirm the mod is enabled on every machine, then restart the game.
Manual
Create:
%USERPROFILE%\AppData\LocalLow\Owlcat Games\Warhammer 40000 Rogue Trader\Modifications\MultiplayerStability
Extract the ZIP contents into that folder. The final manifest path must be:
...\Modifications\MultiplayerStability\OwlcatModificationManifest.json
Enable the mod from the title-screen Mods menu and restart when prompted.
Changes Since v0.8.32
- Added a host-authored compatibility decision. Matching manifest versions and compiled module IDs
enable simulation fixes and custom protocols together. Incompatible v0.9 peers use vanilla
behavior; invalid or missing decisions stop the load. - Added protocol magic, versions, transfer IDs, ordered-offset and size checks, SHA-256 validation,
receiver acceptance ACK/NACK, cancellation, idle timeout, and per-peer Photon fallback to the
Steam save path. - Added sequence identity, retransmission, timeout, and abort handling to selected loading locks.
- Removed transition-flap dialog suppression. The game's desync dialog is authoritative; transition
state remains diagnostic context. - Hardened bucket attribution, tick and session resets, per-entity hash reporting, RNG leak budgets,
reflection checks, transpiler match counts, finalizers, and logging failure paths. - Changed the Tactician diagnostic to read existing component data without creating savable state.
- Preserved the frozen projectile endpoint after launch so the geometry fix cannot restore homing.
Multiplayer Check
At startup, confirm:
[MPStability] [Init] Patches applied (59 classes).
Do not continue if any peer reports FAILED, [Init][ERR], PATTERN NOT FOUND, or another
Multiplayer Stability component error. Before play begins, look for [Compat] Compatible on every
peer. Pre-v0.9 builds do not understand the compatibility decision and remain unsupported in mixed
sessions.
Artifact
| Item | Value |
|---|---|
MultiplayerStability-0.9.0.zip |
57,474 bytes, SHA-256 7C3951B59DA83168400F8D2390526DC6806EE70A512B58518BA7518EEF932CB2 |
Assemblies/MultiplayerStability.dll |
131,584 bytes, SHA-256 29408CF65919FF7ED40CBB495851C35285A752D2F1DD8B34649DE7C5C403FF7D |
| Built from | tag v0.9.0, commit 009f4085644688ff43f818429ae61ce5e4d5edb3 |
Read the installation and troubleshooting guide
or the design notes for
component status, evidence, and known limitations.
Multiplayer Stability v0.8.32
Co-op desync fixes, diagnostics, and faster save transfers for
Warhammer 40,000: Rogue Trader build 1.6.1.514.
This is an experimental release. Every player in a session must install the same version. The mod
does not start resyncs automatically.
Installation
ModFinder
- Install ModFinder.
- Download
MultiplayerStability-0.8.32.zipbelow. - Drag the unchanged ZIP onto ModFinder's Drag zips here to install area.
- Confirm the mod is enabled on every player's machine, then restart the game.
Manual
Create:
%USERPROFILE%\AppData\LocalLow\Owlcat Games\Warhammer 40000 Rogue Trader\Modifications\MultiplayerStability
Extract the ZIP contents into that folder. The final manifest path must be:
...\Modifications\MultiplayerStability\OwlcatModificationManifest.json
Enable the mod from the title-screen Mods menu and restart when prompted.
Highlights
- Targeted fixes for confirmed view, fog, UI, physics, cache, weather, projectile, dialogue, trap,
charge, and preview-unit desync paths. - Steam Networking Messages save transfer with Photon control and fallback. Test sessions measured
an improvement of about 8x. - Desync reports with state buckets, RNG fingerprints, entity hashes, and recent creation history.
- Sequenced loading barriers and high-volume disconnect log filtering.
Startup Check
Search GameLogFull.txt for:
[MPStability] [Init] Patches applied (45 classes)
Do not use the build in multiplayer if any peer has [Init][ERR] or PATTERN NOT FOUND lines.
Artifact
| Item | Value |
|---|---|
MultiplayerStability-0.8.32.zip |
48,500 bytes, SHA-256 95CCBD1C1B02C0BEB6C807C2F1F1FE36C1EF86A409B30DF6E1841DA9BBA02B89 |
Assemblies/MultiplayerStability.dll |
111,104 bytes, SHA-256 B954483BB63C53C2F25910F32CDB69340CDE2A7BDFA5B205AB5880722B596B05 |
| Built from | tag v0.8.32, commit 3ab7a4a |
Read the installation and troubleshooting guide
or the design notes for
component status and known limitations.