Skip to content

v5.0

Choose a tag to compare

@smiei smiei released this 31 Oct 20:49
· 41 commits to master since this release

Lockstep 5.0

The SoulLink Nuzlocke Tracker has a new name: Lockstep, the SoulLink & Nuzlocke tracker. 5.0 also brings a Windows app, 16 ROM hacks, Pokémon up to Gen 9 and a start page for all your runs.

Install

Windows Docker Pinokio Node.js 20.9+
Lockstep-Setup-5.0.exe below (or the portable zip). See Windows app. ghcr.io/smiei/lockstep:5.0 (or :latest). See the compose example. Explore → GitHub or Hugging Face URL: https://github.com/smiei/lockstep-pinokio npm install → npm run setup → npm start

New name, new addresses

Up to 4.3 From 5.0
Repository smiei/nuzlocke_tracker smiei/lockstep (the old address forwards)
Docker image gloryy/nuzlocke-tracker (Docker Hub) ghcr.io/smiei/lockstep (GitHub's registry only)
Pinokio launcher smiei/nuzlocke-tracker-pinokio smiei/lockstep-pinokio (the old address forwards)

The Docker Hub image gets no new releases. It stays available for rollbacks to 4.3.

New

  • Windows app: one installer, no Docker, no admin rights.
    • Lockstep runs in the system tray, like Jellyfin's Windows server, and you use it in the browser.
    • Starting it opens your browser right away. On the first start a waiting page shows the progress while the Pokémon pictures download, then switches to Lockstep by itself.
    • The tray menu shows the address for phones and friends on the same Wi-Fi, opens the data folder and the log, and can start Lockstep with Windows.
    • Your runs live in %LOCALAPPDATA%\Lockstep, untouched by updates and uninstalling.
    • The installer is not code-signed yet, so your browser may flag the download (allow it) and Windows SmartScreen may warn on start (More info → Run anyway). Both are false alarms for a new, unsigned program; it is built by GitHub Actions from this repository.
  • 16 ROM hacks:
    • Radical Red, Unbound, Run & Bun, Renegade Platinum, Sacred Gold, Storm Silver, Blaze Black, Volt White, Blaze Black 2 / Volt White 2 Redux, Emerald Kaizo, Inclement Emerald, Rising Ruby, Sinking Sapphire, Blazing Emerald, Glazed and New Generations.
    • Each comes with its own stat, type and move changes. The route lists and boss teams come from nuzlocke.app.
    • The data is unverified, and the app says so when you pick one of them.
  • Pokémon up to Gen 9 (No. 1025), with Alolan, Galarian, Hisuian and Paldean forms and their evolutions, for the hacks that use them.
    • A hack's own Pokémon (Radical Red's Sevii forms, Blazing Emerald's Hoenn forms and new species) are in too, shown with a placeholder sprite.
    • Older games are unaffected: they still offer only the Pokémon and forms they had.
  • Bring your own game:
    • New Run → Import your own game reads a game pack file, checks it and lists any problems.
    • npm run pack turns a plain text list of routes and bosses into one.
    • Backups (format v5) carry the imported games their runs use.
    • Want everyone to have it? See game packs and CONTRIBUTING.
  • Start page:
    • / now shows every run as a card: team, route progress, badges, next level cap and deaths, most recently played first.
    • A fresh install greets you with a short welcome instead of an empty "Run 1", with the language picker right there.
    • The house icon beside the logo leads back to the start page.
    • A link without a run, like the installed app's start, opens the run you played last.
  • Boss-trainer pictures download by themselves on first start, from Pokémon Showdown.
    • Pictures you added yourself are never overwritten.
    • TRAINER_SPRITES=off turns the download off.
    • Docker users should add the volume /app/public/trainers (see the compose example).
  • Honest data notes:
    • Game packs whose routes haven't been checked against the game are marked "Data unverified", with a link to report mistakes.
    • French, Spanish and Italian are marked as machine-translated. Pokémon names are official in every language.

Fixes and maintenance

  • After switching the language, the gear menu and the blind-flight button kept German labels for screen readers. They now follow the language.
  • The Docker image runs on Node.js 24 (Node.js 20 no longer gets security updates). Next.js and the image library sharp are updated, which closes known security issues.

Upgrading from 4.x

  • Docker:
    • change the image to ghcr.io/smiei/lockstep:latest (or :5.0) and recreate the container;
    • keep your volumes, DATABASE_URL and ports;
    • optionally add the /app/public/trainers volume.
    • Details: moving from the old image name.
  • Pinokio: Update. GitHub forwards the old launcher address, and your runs stay in data/nuzlocke.db.
  • Without Docker: git pull, npm install, npm run setup. The old repository address forwards; to update it, run git remote set-url origin https://github.com/smiei/lockstep.git.
  • If git pull or Pinokio's Update fails: the repository's history was cleaned up once before 5.0 (commit messages only, no code). Without Docker, run git fetch origin and git reset --hard origin/master in the app folder (your database is not part of the repository and stays). In Pinokio, use Reset, then Install; your runs stay in data/.
  • Database: one migration runs on the first start. It records when each run last changed, which orders the start page. It also removes the empty "Run 1" that earlier versions created, but only if nobody ever used it.

Unofficial, non-commercial fan project. Pokémon is © Nintendo, Creatures Inc., GAME FREAK inc. and The Pokémon Company. This release contains no Pokémon artwork; sprites and trainer pictures are downloaded when you set the app up.