Skip to content

Releases

v0.1.6

Choose a tag to compare

@github-actions github-actions released this 12 Nov 13:37

An in-between release while the menus are being rebuilt.

  • Touch drag follows your finger. The player ends up where you drag, in the direction you drag, instead of losing about half of every move.
  • New pause menu. Resume, volume, hitboxes, screenshot and settings on one card beside the picture; retry and quit to title ask first.
  • New launchers. Desktop: title art, Play and the game folder up front. Android: Material 3 with Home, Settings, Replays and Stats on a bottom bar or side rail.
  • Pausing is quicker and keeps the music where it was. Opening the menu no longer stops and restarts the sound output.
  • Desktop window icon on Windows and Linux.

Fixes

  • The title-screen demo starts after you leave the menu idle, as in the original.
  • Practice mode no longer loses its practice state when you back out of a practice game.
  • Text and fine textures stay sharp after you change the render resolution during play.
  • A boss pattern that read the wrong value now plays as in the original.

See the downloads and how to install. You need your own copy of the game.

v0.1.5

Choose a tag to compare

@github-actions github-actions released this 07 Nov 10:57

Highlights

  • Settings in the pause menu. F1 / Esc (Back on Android) now opens a settings sheet over the paused game:
    language, scaling and filters, colour filter and brightness, music / effect volumes, input display, now-playing,
    touch-button opacity. Quit to title goes through the game's own pause menu, so it saves like the original.
  • Sharper picture. New render_scale setting (1×, 2×, 3× or auto): the game is drawn at 2–3× resolution, so
    rotated sprites, lasers, 3D backgrounds and text are sharp on big screens. 1× stays pixel-identical to before;
    default is 1×.
  • Stats tab (desktop and Android): play time, runs per character and difficulty with best scores, deaths and
    bombs per stage, most-failed spell cards, last 20 runs; plus a score.dat viewer with high scores, clear flags and
    the capture history of all 222 spell cards. Recording can be switched off (stats); replays and demos are not
    counted.
  • Replay browser (desktop and Android): replays with their details, sorted by date or score; watch, export or
    share, delete; import by file picker or drag and drop.
  • Replay to video (desktop): Export video… on a replay writes an mp4 / mkv with music and sound effects at
    1×–3× size (needs ffmpeg), or a PNG sequence + WAV.
  • Gamepad remapping in the launcher: press a button to bind it, conflicts are shown, one click resets; the
    d-pad always steers.
  • Keyboard remapping with conflict warnings and a WASD + J / K / L preset.
  • Screenshots: F12 or the pause menu; saved to a folder on desktop, to the gallery on Android, downloaded on the
    web.
  • Practice slow motion (½ / ¾; scores and replays are not saved once used), input display overlay,
    now playing toast with the track name.
  • Discord Rich Presence (Windows, Linux; off by default): shows stage, character, difficulty and mode.
  • Windows: update through the installer. The installed game downloads the new installer, checks it against
    SHA256SUMS and updates itself, keeping saves and shortcuts.
  • Android: the launcher icon now matches the desktop one.

Install

The port contains no game data: you need your own copy of Touhou 8 ~ Imperishable Night (th08.dat, thbgm.dat).

Platform File
Windows 10 / 11 (x64) th08-0.1.5-windows-nsis.exe: installer (recommended), or th08-0.1.5-windows-exe.exe: portable
Linux (x86-64, glibc 2.35+) th08-0.1.5-linux-appimage.AppImage: chmod +x, then run
Android 8.0+ (arm64) th08-0.1.5-android-apk.apk: installs as org.th08.port, updates 0.1.0 – 0.1.4
  • Windows / Linux: pick your game folder in the launcher on the first start.
  • Android: in the launcher, tap Import game files and pick th08.dat and thbgm.dat. From 0.1.4, Update in
    the launcher installs this release.
  • Check a download: sha256sum -c SHA256SUMS --ignore-missing, or gh attestation verify <file> -R kauri-off/th08-rs.

Saves, translations, updates and the rest: docs/PLAYING.md.

Known issues

  • Dialogue and spell-card text uses a system Japanese font, not the original's MS Gothic pixels.
  • Windows SmartScreen warns about the unsigned exe and installer on each new version.
  • Difficulty names (Easy … Lunatic) in the Stats tab are not translated yet.

v0.1.4

Choose a tag to compare

@github-actions github-actions released this 06 Nov 15:54

Highlights

  • Windows: no more silent crash on older Intel graphics. The game now uses DX12 by default, the most tested
    graphics path on Windows. Some Vulkan drivers (for example on 6th–10th gen Intel graphics, even the latest driver)
    crashed while the game started, so it closed without a window. WGPU_BACKEND=vulkan (or gl) still picks another
    backend.
  • Android: update from the launcher. When a new release is out, Update downloads the APK, checks it against
    the release's SHA256SUMS, checks that it is newer and signed with the same key, and installs it. Saves, settings,
    game files and translations stay. The first time, Android asks you to allow installs from th08. Updating from 0.1.3
    still goes through the download link; from 0.1.4 on it works in the app.
  • Smooth on 30–50 Hz screens. On displays slower than 60 Hz the game keeps running at full speed (60 logic frames
    per second) instead of slowing down.
  • Smaller downloads: Windows installer 9.5 → 6.1 MB, portable exe 22.3 → 19.8 MB, APK 19.4 → 17.2 MB, AppImage
    10.2 → 9.2 MB, browser build 15 → 10 MB.
  • Android: importing the game files needs about a third less memory (fewer workers on low-RAM phones); a
    translation that could not be copied because the storage was full is removed and reported instead of staying
    half-installed.
  • Faster start: the system Japanese font is read once and loaded during the loading screen.
  • Safety: a crafted compressed archive could exhaust memory (zstd decoder updated).

Install

The port contains no game data: you need your own copy of Touhou 8 ~ Imperishable Night (th08.dat, thbgm.dat).

Platform File
Windows 10 / 11 (x64) th08-0.1.4-windows-nsis.exe: installer (recommended), or th08-0.1.4-windows-exe.exe: portable
Linux (x86-64, glibc 2.35+) th08-0.1.4-linux-appimage.AppImage: chmod +x, then run
Android 8.0+ (arm64) th08-0.1.4-android-apk.apk: installs as org.th08.port, updates 0.1.0 – 0.1.3
  • Windows / Linux: pick your game folder in the launcher on the first start.
  • Android: in the launcher, tap Import game files and pick th08.dat and thbgm.dat.
  • Check a download: sha256sum -c SHA256SUMS --ignore-missing, or gh attestation verify <file> -R kauri-off/th08-rs.

Saves, translations, updates and the rest: docs/PLAYING.md.

Known issues

  • Dialogue and spell-card text uses a system Japanese font, not the original's MS Gothic pixels.
  • Windows SmartScreen warns about the unsigned exe and installer on each new version.

Full changelog: v0.1.3...v0.1.4

v0.1.3

Choose a tag to compare

@github-actions github-actions released this 05 Nov 23:14

Highlights

  • Update check. The launcher tells you when a newer release is out, with links to the release notes and the
    right download for your platform. It asks GitHub at most once a day, only from the launcher, and the
    Update check setting turns it off. On Android, Obtainium can also track these releases; the AppImage can
    update itself with AppImageUpdate or an AppImage manager.
  • Windows installer. Besides the portable exe there is now an installer: per-user, no admin rights, Start menu
    shortcut and an uninstaller. Saves stay in %APPDATA%\th08 either way.
  • Errors you can see. If the game crashes or cannot start, the launcher shows what happened on the next start
    (desktop: copy the report or open its folder; Android: share it). The report is last_error.txt, and a short
    log th08.log sits next to it. Failing to write a save shows a message in the game instead of failing silently.
  • Android:
    • tapping a touch button quickly no longer gets lost;
    • gamepad d-pads that report as axes (DualShock 4 and many Bluetooth pads) now work;
    • no hang when the screen is resized, split or the font size or language changes;
    • sound comes back after plugging or unplugging headphones or Bluetooth;
    • opening the notification shade in a stage pauses the game;
    • asks the display for 60 Hz (smoother on 90 / 120 Hz phones) and wakes up far less often;
    • Android's own backup now covers your scores, replays and settings (and nothing else);
    • pressing Home while the game loads no longer leaves a black screen.
  • Browser: translations can now be downloaded and built in the browser; smoother frame pacing on 60 Hz
    screens; saves are kept in persistent storage; sound starts on a tap or click too; scores are saved when the
    tab is hidden.
  • Desktop: scores are saved when you close the window mid-run; on Linux without Vulkan the OpenGL fallback
    works (WGPU_BACKEND=gl); the game no longer wakes the CPU about a thousand times a second while waiting for
    the next frame.
  • Safer file handling. Damaged or crafted score.dat, replays, archives and translation packs give an error
    instead of crashing; an unreadable score.dat is kept as score.dat.bad-<time> instead of being overwritten;
    save imports are checked before anything is replaced.
  • Releases come with SHA256SUMS and a GitHub build attestation, so you can check a download was built from
    this tag.

Install

The port contains no game data: you need your own copy of Touhou 8 ~ Imperishable Night (th08.dat, thbgm.dat).

Platform File
Windows 10 / 11 (x64) th08-0.1.3-windows-nsis.exe: installer (recommended), or th08-0.1.3-windows-exe.exe: portable
Linux (x86-64, glibc 2.35+) th08-0.1.3-linux-appimage.AppImage: chmod +x, then run
Android 8.0+ (arm64) th08-0.1.3-android-apk.apk: installs as org.th08.port, updates 0.1.0 – 0.1.2
  • Windows / Linux: pick your game folder in the launcher on the first start.
  • Android: in the launcher, tap Import game files and pick th08.dat and thbgm.dat.
  • Check a download: sha256sum -c SHA256SUMS --ignore-missing, or gh attestation verify <file> -R kauri-off/th08-rs.

Saves, translations, updates and the rest: docs/PLAYING.md.

Known issues

  • Dialogue and spell-card text uses a system Japanese font, not the original's MS Gothic pixels.
  • Windows SmartScreen warns about the unsigned exe and installer on each new version.
  • 0.1.2 and older have no update check: this is the last release you have to find yourself.

Full changelog: v0.1.2...v0.1.3

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 05 Nov 14:51

Highlights

  • Android: import the game files. In the launcher, tap Import game files and pick th08.dat and
    thbgm.dat from anywhere (Downloads, a USB drive, cloud storage). The app checks them against the original,
    converts them into its own .pak format in its private storage (about a minute on a phone) and can remove them
    again. No file copying into Android/data and no computer needed.
  • Save backups. Export your scores, replays and settings to one zip, and import them on another device or
    build (desktop, Android, browser). The current files are backed up before an import.
  • Replay controls. While a replay plays: pause, one-frame step, ¼× to 8× speed (F5–F8 on desktop, a strip on
    touch screens). Replays play exactly as at 1×.
  • Hitbox viewer. F3, the port menu or the hitboxes setting shows the player's hit box and graze area, every
    bullet's and laser's collision shape and enemy hurt boxes, drawn over the picture without touching the game.
  • Android full screen and Back. The game hides the system bars; Back uses Android's new back API
    (OnBackInvokedCallback). In full screen the first edge swipe shows the bars and the second one goes back.
  • CI: every push is now checked (fmt, clippy, tests, wasm, Android).

Install

The port contains no game data: you need your own copy of Touhou 8 ~ Imperishable Night (th08.dat, thbgm.dat).

Platform File
Windows 10 / 11 (x64) th08-0.1.2-windows-exe.exe: portable, run it from any folder
Linux (x86-64, glibc 2.35+) th08-0.1.2-linux-appimage.AppImage: chmod +x, then run
Android 8.0+ (arm64) th08-0.1.2-android-apk.apk: installs as org.th08.port, updates 0.1.0 and 0.1.1
  • Windows / Linux: pick your game folder in the launcher on the first start.
  • Android: in the launcher, tap Import game files and pick th08.dat and thbgm.dat.

Saves, translations and the rest: docs/PLAYING.md.

Known issues

  • Dialogue and spell-card text uses a system Japanese font, not the original's MS Gothic pixels.
  • Uninstalling the Android app deletes its saves and replays: export a backup first.
  • The browser build cannot download translations.

Full changelog: v0.1.1...v0.1.2

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 05 Nov 13:12

Highlights

A fix release for settings and saves.

  • Android: after the system closes the app in the background, it now resumes into the game instead of
    starting over.
  • Safer saves: the save files and port.cfg are written atomically, so a crash or a killed app mid-write no longer
    leaves a broken file.
  • Window mode: the fullscreen / windowed choice is kept in port.cfg and mirrored into the game's th08.cfg, so
    the launcher's setting sticks.
  • Music: a SoundFont that fails to load falls back to the WAV music from thbgm.dat.
  • Cheats: with any cheat setting on, score.dat and replays are never written, and the port always says so.
  • Translations: when a language is installed twice, the newest pack wins; a chosen game-text language whose
    pack is missing is shown as "not installed: original text".
  • Settings: relative paths in port.cfg are read from its own folder; developer settings are dropped from
    port.cfg when it is saved; an empty on/off value means off.
  • Releases: builds are now made and published by a manual workflow from master.

Install

The port contains no game data: you need your own copy of Touhou 8 ~ Imperishable Night (th08.dat, thbgm.dat).

Platform File
Windows 10 / 11 (x64) th08-0.1.1-windows-exe.exe: portable, run it from any folder
Linux (x86-64, glibc 2.35+) th08-0.1.1-linux-appimage.AppImage: chmod +x, then run
Android 8.0+ (arm64) th08-0.1.1-android-apk.apk: installs as org.th08.port, updates the previous release
  • Windows / Linux: pick your game folder in the launcher on the first start.
  • Android: game-file import from the launcher arrives in 0.1.2; this release cannot load game data on Android
    without developer tools.

Saves, translations and the rest: docs/PLAYING.md.

Known issues

  • Dialogue and spell-card text uses a system Japanese font, not the original's MS Gothic pixels.
  • Android: no game-file import yet (0.1.2).
  • Uninstalling the Android app deletes its saves and replays.
  • The browser build cannot download translations.

Commits

  • e7a5151 ci(release): run by hand from master with a publish input that tags and releases
  • 66ba6d0 fix(config): hermetic tool runs, cheats never write saves and are always flagged, empty bool means off,
    bundled game folder not saved to port.cfg
  • 9f40339 fix(config): Android resumes into the game after process death, port.cfg owns the window mode (mirrored
    into th08.cfg), release channel needs an explicit key, bad soundfont falls back to WAV
  • 04e64fc fix(config): atomic save and port.cfg writes, newest pack wins, missing game_text pack shown, relative
    port.cfg paths from the config dir, dev keys dropped on save
  • b6da4cc chore(release): 0.1.1

Full changelog: v0.1.0...v0.1.1

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 04 Nov 20:41