Repository navigation
0.14.0
This release adds a level select and a menu size setting.
- LEVEL SELECT (Issue #51): a new entry on the front end, after TIME ATTACK.
- Pick the place, the level, the time of day, the player and the partner (and 1 or 2 players), then START.
- What you can pick:
- the five attractions, levels 1–5;
- TRAINING and INTRODUCTION;
- World Entrance with every attraction open;
- the six special stages and the bonus stage.
- Practice only: there is no clock and no records, and nothing is saved. The game runs in its own NO SAVE mode, so your DATA slots are never written.
- Save states, rewind and fast-forward work here, unlike in TIME ATTACK.
- When the level is over (the game goes back to its lobby, or leaves the special or bonus stage), you come back to LEVEL SELECT.
- It is not available during netplay.
- Details: docs/LEVEL_SELECT.md.
- MENU SIZE (Issue #49): OPTIONS > VIDEO > MENU SIZE sets AUTO, NORMAL, LARGE or EXTRA LARGE.
- The rows, text and touch areas grow 1.5× or 2×, and the text stays on whole pixels so it is still sharp.
- AUTO is LARGE on Android and iOS, where the menu used to be small (a settings row was about 4 mm tall on a phone), and NORMAL on desktop.
- Pages that no longer fit scroll, and the pause menu wraps onto a second line.
- Layout fixes found along the way:
- In a portrait window, the front end's list ran off the edge and the pause row off both sides. Both are fixed, and the game picture now sits above the list.
- After a TIME ATTACK run, BACK could land in the pause menu while the game was at its title screen.
Thanks to @CooliKnucx for both suggestions.
Validation:
- Windows: all 103 CTest cases pass. New tests:
- every page, at four window sizes from phone portrait to 2400×1080 and in both fonts, keeps every row and touch area on screen at every menu size, with each size larger than the one before;
- the real app, run at three window sizes, checks the same;
- LEVEL SELECT reaches every place, including the special and bonus stages, with NO SAVE and no SRAM written;
- a finished level saves nothing, where the same run played into DATA 1 does save;
- lockstep holds throughout.
- Lockstep: all 33 sweep runs with random input are bit-identical.
- macOS (M1): all 100 CTest cases pass and lockstep is bit-identical on arm64.
- Linux: all 100 Linux CTest cases pass.
- Packages: the packaged Windows and Linux builds pass the startup tests.
- Android: the APKs have not been tested on a device for this release.
Downloads: the Windows x64 zip, the Linux x64 tar.gz, the macOS arm64 zip, the iOS .ipa, and two Android APKs: arm64-v8a/x86_64 (the usual one) and armeabi-v7a (32-bit ARM). Both APKs use version code 38 and the same signing certificate as 0.13.0, so they update in place.
You must supply your own Knuckles' Chaotix (Japan, USA) ROM. No ROM image or game assets are included.