Test build for startup crashes, black screens and first-level loading failures, including the #188 candidate. Windows and Linux packages are attached to this single release. The launcher still shows version 2.6.0.
This build combines candidate fixes and additional diagnostics. It is not a confirmed fix for every startup report. Gameplay and comparisons on previously affected machines are still pending.
Download spartanport-windows.zip for Windows or spartanport-x86_64.AppImage for Linux. Both are complete packages: Python and a separate source patch installation are not required.
What changes from 2.6.0
- First-level loading candidate (#188, #270, #467, #497, #769). Preserved the Windows shared-descriptor I/O fix and the crash diagnostics from the preceding #188 test build. Sequential and positioned reads sharing a descriptor are serialized. Fatal errors include the last 128 reads, registers and instruction information. Confirmation on a previously affected machine is still needed.
- Launcher errors stay visible (#404). The output reader remains alive while the launcher window is hidden. If launching fails, the window now reappears with the error instead of closing.
- NVIDIA 610 startup fallback (#774). Proprietary NVIDIA 610 drivers use conventional pipeline compilation instead of the optional binary-cache path. This avoids the global-key query implicated in the report. Other driver families retain their existing behavior; the affected Linux/NVIDIA system still needs testing.
- Device creation failure stops initialization (#556). The renderer no longer continues with an invalid logical device after creation fails. This improves error handling without establishing the original cause of the report.
- Invalid game files are identified before gameplay (#243, #621, #452). Preparation rejects invalid
REGION.TXTidentifiers and names executable/module files that are not SELF or ELF. Binary analysis found a path from an unrecognized region to the nullstrncpysource seen in #243/#621. The reporters' file contents are not available to confirm that cause. Original files are preserved; the message asks for the original file from a complete dump. - Missing data directories no longer abort native startup. Parent directories are created when needed, and an explicitly selected GPU data directory is honored even when it does not exist yet. A file in that location produces a controlled error instead of an uncaught filesystem exception.
- Diagnostics without closing the game (#568). Use Advanced > Diagnostics > Collect running game diagnostics to request thread information while the game remains open. Windows also records recent file reads. Keep the launcher available to use this button.
- Specific startup guidance. Added advice for address reservation error 487 (#546/#605), insufficient Vulkan support (#404), Intel driver crashes (#286), RivaTuner crashes (#829), invalid-device failures (#556), and the signatures in #249/#383. Advice does not mean the underlying fault is fixed.
How to test
- Keep your working installation and back up your saves. Extract the Windows ZIP into a separate folder, or make the Linux AppImage executable and open it. Select the same game dump and use copies of your saves/settings. Keep resolution, patches and cutscene-skipping behavior the same for comparisons.
- Repeat the startup that failed in three separate launches. For #188, start a New Game, choose the difficulty and check whether the opening reaches playable gameplay. Preserve the complete
last_run.logbefore each new launch; with a custom saves folder, the log is inside that folder. - For #404, enable Close the launcher when the game starts and check that preparation continues. An unsuccessful launch should show the launcher again with its log.
- For #774, leave Pipeline binary cache enabled. On NVIDIA 610, the log should report conventional compilation without entering binary-cache initialization.
- If the game hangs, keep it open and use Collect running game diagnostics. Preserve the log after the thread snapshot finishes.
Reply in the corresponding issue with this build tag, CPU, GPU/driver, operating system, game title ID/update version, settings, the complete log and whether the previous build still fails at the same point. First-level crashes matching the #188 signature belong in #188. Do not upload game files.
Known issues
- Gameplay and affected-hardware validation are pending. Local regressions and launcher startup do not confirm that every reported crash is fixed. The NVIDIA 610 policy was checked with synthetic identifiers; that NVIDIA hardware was not available locally. Earlier gameplay checks belong to the preceding #188 candidate.
- Memory and address reservation remain environment-dependent (#213, #546, #605). This build does not create additional RAM/page-file capacity or establish one cause for every report in #213. Increasing the page file does not resolve address reservation error 487. No global Windows security settings are changed automatically.
- Vulkan 1.3 remains required (#404). A test build cannot add capabilities missing from the GPU or driver.
- Intel and RivaTuner crashes need comparisons (#286, #829). Test the Intel driver installation or disable the RivaTuner overlay for SpartanPort as applicable. Driver and overlay settings are not changed automatically.
- Some reports still need diagnosis (#249, #383, #568). The original Windows signature in #383 is separate from the Linux pipeline-binary report posted there; that Linux report follows the #774 test path. The original cause of #556 and the reporters' region data in #243/#621 remain unconfirmed.
Validation so far
- Windows Python suite: 668 tests run, 74 skipped, no remaining failures. Modules ran in separate processes to isolate Tk state. Translation coverage was corrected and rechecked. Skipped tests are not counted as validated behavior.
- Linux native-loader Python tests: 23 tests run, two Windows-only cases skipped, no failures. The shared-descriptor I/O regression passed on both platforms.
- Pipeline-binary initialization tests passed on Windows/AMD RX 6700 XT and Linux/llvmpipe. The binary-cache regression also passed on Linux. These are not NVIDIA gameplay checks.
- Opened both packaged launchers with isolated data and verified their frozen dependencies. The Windows native executable code matches the tested build. Linux was built on Ubuntu 24.04, and the AppImage launcher was opened under Xvfb in WSL. No Linux gameplay or other-distribution validation is claimed.
- Verified Windows ZIP integrity, package hashes and all six uploaded asset digests. Both packages and their SHA-256 files are attached.
- Source base:
6eba8dafcfc95566ffbebe136b24dab1b84de828. Candidate changes remain uncommitted and are supplied insource-changes.patch, verified to reconstruct 19 changed source/test files.source-manifest.jsonrecords source and package hashes. The release target identifies the base, not a commit containing these local changes. Players do not need to apply the source patch. - Not validated yet: gameplay of this combined build, affected Intel/NVIDIA configurations, or resolution of every startup issue listed above.
SHA-256: see spartanport-windows.zip.sha256 and spartanport-x86_64.AppImage.sha256.
This project builds on Supermedo/bloodborne_pc, deadinside28/bloodborne_pc and shadPS4.
You still need your own copy of the game files. No game files are included.