Repository navigation
fix(overlay): ship GameContent.dll - #131
Merged
Merged
Conversation
Overlay packages omitted an assembly referenced by patched VSEssentials at RunGame. Closes #129
Zaldaryon
pushed a commit
to StratumServer/RiftLauncher
that referenced
this pull request
Oct 5, 2026
…#662) Optimum's patcher now deploys Optimum.GameContent.dll to the game root, backing up a copy the build already had under .optimum/vanilla/, or writing an .absent marker there when it had none (StratumServer/Optimum#131). The launcher restores a build from that folder itself and then deletes the whole state folder, and it only knew about Optimum.Api.Contracts.dll, so Remove Optimum and the rollback of a failed run both left the assembly in a folder that was otherwise vanilla again, with the record of what had been there before gone too. restoreVanillaBuild now copies the backup back over the live file when there is one and removes the live file otherwise, before the state folder goes. The refusals are unchanged, and a failure in the new step leaves the state folder for a second try. A live file with neither a backup nor a marker is removed here where Optimum's own rollback leaves it, as the contracts assembly already is. Part of #578
7 of 12 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #129
The v0.3.19 overlay omits
Optimum.GameContent.dll, though patchedMods/VSEssentials.dllreferences types from it when the integrated server reachesRunGame. The server stops withFileNotFoundExceptionbefore a world opens.This change stages the assembly in the overlay, deploys it through platform package and direct deploy paths, validates patched assembly references, and restores or removes the DLL on rollback. Linux uninstall also removes this Optimum-owned runtime file.
The Windows overlay reproduction failed before the DLL was added and reached
RunGameafterward. The final server smoke used a temporary copy of the RiftLauncher data directory.This fix will ship in the next Optimum release after this PR merges.
Validation:
dotnet build VintageStory.slnx -c Release --nologo --verbosity minimal: passed, 0 warnings and 0 errors.git diff --checkchecks passed. Vanilla compatibility had 18 explicit skips.scripts/check-patches.sh --strict-unavailablereports 3 conflicts in existing patches unchanged fromorigin/main:ChunkTesselatorManager.cs.patch,LoadBalancer.cs.patch, andPhysicsManager.cs.patch. The runtime donor stage compiled all 22 runtime patches.The client texture-atlas teardown race mentioned in the issue discussion is separate and was not changed or verified by this PR.