Fixes two ways the setup could fail or look stuck and a GPU crash on NVIDIA under Linux, keeps a log of the setup, and
makes a GPU crash say where it happened.
Changes
- "Compile the game code" sat at 359/359 with no sign of life (#2): after the last file the game library is linked,
and on its first link zig also builds its C runtime for the target (76 s on a 6-thread Windows PC, more on a slow
disk or with an antivirus scanning). That now runs while the files compile, the link counts in the progress bar,
and a link that takes over 30 minutes stops with an error instead of waiting forever. unable to find zig installation directory: zig now gets itslib/folder named, so it no longer depends on the
path a launcher or sandbox gives its executable.- The setup writes
logs/setup.log: every tool's output and how long each step took; a failed setup points to it. - NVIDIA on Linux lost the device as soon as sparse textures were in use (at boot or when a race started): a texture
was destroyed while a bind of its memory was still queued (#7, thanks to @guillo1990; likely #6). - When the GPU is lost (#4, #5: AMD discrete cards that went black after the startup logo),
logs/mkw.lognow says
what the driver knows (the faulting address,VK_EXT_device_fault) and which upload batch, render pass or dispatch
the GPU had started and finished last (VK_AMD_buffer_markermarks). Nothing to set: attach the log.
Tested before publishing
From these packages, before publishing:
- The whole setup (generate, compile, translate the 11 561 shaders, the first run of the game) on Linux (Radeon 660M,
RADV) with no system tools on PATH, and on Windows 11 (GTX 1050 Ti). - Races on both with the GPU marks on and off (no measurable cost), and #7's fix on AMD (a 60 s race, no GPU
faults).
Install
- Linux x86-64, glibc 2.31 or newer (Debian 11, Ubuntu 20.04, SteamOS and later):
chmod +xthe AppImage and run it.
The game it builds lives in~/.local/share/mkw-recomp. - Windows 10/11 x64: unpack the zip into a folder and run
mkw.exe. - Either: a Vulkan 1.3 GPU and about 30 GB free. Open Game files, point it at your
exefs/andromfs/(Mario
Kart World 1.0.0, your own dump) and press Prepare. Nothing of the game ships here: the setup builds it on your
machine and downloads NVIDIA'snvdisasmandptxas(pinned by sha256; 84 MB on Linux, 126 MB on Windows) to
describe the shader encoding.
Updating
Linux: run the new AppImage. Windows: unpack the new zip over the same folder. Then press Prepare again: the steps
already done are skipped.
Known issues
- Below 60 fps, set Settings > Screen > Frame rate to 30: the Automatic one does not settle at 30 yet.
Reporting a problem
Open an issue with the bug form and attach the logs: logs/mkw.log (the game and the start screen) and
logs/setup.log (the setup's tools), in ~/.local/share/mkw-recomp on Linux and next to mkw.exe on Windows.