github HarbourMasters/Ghostship 3.0.0
Nautilus - Alfa 3.0.0

4 hours ago

Play Online

https://ghostship.net64.dev/

Download

Windows Linux / Steam Deck macOS Android iOS

What's Changed

New platforms

  • Add an iOS target and CI job by @KiritoDv
  • Add Android support, based on Waterdish's work by @KiritoDv
  • Android on device extraction (rebase of #225) by @KiritoDv in #250
  • Add a web (Emscripten) build with IDBFS persistence and a Pages deploy by @KiritoDv

Renderer

  • Add a Vulkan backend by @KiritoDv
  • Add a full postprocessing system with multipass custom shaders, manifest-driven shader settings, and a Shaders tab in the menu by @KiritoDv
  • Expose engine variables as custom shader uniforms by @KiritoDv
  • Add HD texture support (ported from Jeod) with auto-mipmap generation, async texture loading, and deferred texture frees by @KiritoDv
  • Move sRGB to a postprocess pass; fix viewport and depth clamp with postprocess steps by @KiritoDv
  • Implement G_CD_* noise dithering; multiple LOD fixes by @KiritoDv
  • Fix Metal texture stutter, Metal postprocessing, and the game lagging while unfocused by @KiritoDv
  • Fix the D3D11 vertex stride for lit materials without combiner shade by @KiritoDv
  • Fix missing Vulkan DLLs on Windows builds by @KiritoDv
  • Fix the universal macOS build (tinycc host target leaking into the x86_64 slice) by @KiritoDv
  • Fix blurry menu text on Retina displays by @quarrel07 in #234
  • Fix the menu tab row showing a scrollbar after the Shaders tab was added by @quarrel07 in #249

Modding API

  • Load TCC-compiled mod scripts in memory instead of via a dropped shared library by @KiritoDv
  • Big event pass: engine lifecycle, render pipeline, HUD/text-label, camera, level script, geo layout node, entity distance culling, behavior native-call, save load/flush, file select, and pause menu events by @KiritoDv
  • Add a keyboard input API and KeyboardInput event by @KiritoDv
  • Add ImGui draw callbacks for C mods by @KiritoDv
  • Add a data persistence system for mods (player store, channel store, player identity) by @KiritoDv
  • Export a large set of previously static engine symbols to mods by @KiritoDv
  • Show a readable error when a mod script fails to build by @KiritoDv
  • Fix the mod template to target the main repo and add clang-format to it by @KiritoDv
  • Fix the preprocessor mis-parsing some constructs by @KiritoDv

Networking

  • Move websockets to mbedtls and enable TLS on Linux by @KiritoDv
  • Add relay versioning to avoid conflicts between game versions by @KiritoDv
  • Add a USE_SATELLA build option and an "Enable Satella" toggle in Developer Tools by @KiritoDv
  • Guard Satella behind USE_NETWORKING by @JeodC in #193
  • Fix Satella never connecting on macOS by @quarrel07 in #237

Gameplay and fixes

  • Fix Goombas insta-killing Mario by @KiritoDv
  • Fix crashes when loading saves and improve conversion of old save files by @KiritoDv
  • Fix the current save being wiped after a Game Over by @quarrel07 in #229
  • Fix the title screen background after a Game Over by @quarrel07 in #238
  • Fix the Bowser key being treated like a star with Collecting Stars Will Not Exit Level enabled by @quarrel07 in #243
  • Fix achievements tracking and popping while the toggle is off by @quarrel07 in #239
  • Enable achievements by default by @KiritoDv
  • Fix interpolation of menu text, Mario's hand cursor, and the skybox by @KiritoDv
  • Fix use-after-free crash in audio synthesis on level reset (#133) by @JeodC in #197
  • Fix the crash on quit by @quarrel07 in #244
  • Fix held movement keys opening the macOS accent popup by @quarrel07 in #231
  • Move "Disable LoD" to the Graphics tab by @KiritoDv

Extraction and assets

  • Port the improved extraction flow: re-extract confirmation, single sm64.o2r generation, and word-wrapped Torch errors by @KiritoDv
  • Keep existing sm64.o2r archives working after the Torch CRC byte-order change by @quarrel07 in #248
  • Fix special characters in path #126 by @JeodC in #196
  • Add a full PNG loader (RawTextureFactory) and make merge.py output PNG textures by @KiritoDv

Build, packaging and CI

  • Add a Liquid Glass app icon for macOS by @quarrel07 in #245
  • Fix Mac builds reporting version 0.1.0 by @quarrel07 in #228
  • Fix the macOS build failing against Homebrew's current mbedtls by @quarrel07 in #232
  • Fix the packaged macOS app failing to launch when built with Homebrew's sdl2 by @quarrel07 in #233
  • Fix generator mismatch in cmakelists by @JeodC in #195
  • Fix AppImage packaging by @KiritoDv
  • CI: cut macOS build time from ~86 min to ~15 min by caching MacPorts by @quarrel07 in #247

New Contributors

Full Changelog: 2.0.0...3.0.0

Don't miss a new Ghostship release

NewReleases is sending notifications on new releases.