v0.3.13
Optimum v0.3.13
Optimum v0.3.13 targets Vintage Story 1.22.7 and adds shader compatibility reporting plus safer Windows path handling.
New
- The launcher scans installed mod directories and archives for shader paths and render-hook indicators before cache validation.
- The scanner writes
.optimum/shader-compatibility.jsonwith source fingerprints, shader owners, conflicts, and disabled optional features. - The scanner reads metadata and assembly bytes without loading a managed mod assembly. It never replaces a third-party shader.
- Effective shader feature state stays separate from saved preferences. A conflict disables the affected optional feature without rewriting the user's settings.
- A failed scan uses a conservative fallback that keeps the vanilla shader path.
- The API patcher adds
ICoreClientAPI.IsTesselationThread(int). Cache validation and launch preflight reject a cached API assembly that lacks the contract.
Fixes
- The Windows installer accepts install and data directories on separate drives.
- The installer rejects drive roots, overlaps with the Vintage Story folder, overlaps with the extracted Optimum workspace, and overlapping install and data paths.
- The installer checks write access before it starts decompilation and packaging.
- The release keeps the prior OIT, shader reload, runtime donor, TerraTag, and type-forward fixes from v0.3.12.
Shader compatibility
The Mod DB shader audit covered 19 shader-tag packages and the three packages named in the Optimum comment thread. Direct shader replacement and shared render-hook packages remain combinations that need a visual test. Natural Foliage stays in the texture-only compatible group.
Validation
The release tree reports zero build warnings and errors, 669 passing tests with 34 skips, 16 passing launcher tests, and 34 passing installer tests. All 14 PowerShell scripts parse on Linux with PowerShell 7. The complete GUI installer still needs a native Windows PowerShell 5.1 host test.