Skip to content

Sonic (2006) — floating stick, 120 FPS cap and mod crash fix, build 1.0.9

Choose a tag to compare

@DevZer0D4Y DevZer0D4Y released this 16 Oct 04:44

Build 1.0.9. Install over the existing Sonic (2006) app with your sideloading tool and keep the bundle ID com.devz.sonic2006, so your game files, mods and saves stay in place. The IPA is unsigned and contains no game files.

New

  • Floating stick. The movement stick stays hidden until your thumb touches the lower left of the screen, then appears right under it and follows your thumb. Let go and it disappears. Tap EDIT → STICK to switch back to the fixed stick with its D-Pad ring. Resizing the stick in the editor also sets the floating stick's size.
  • 120 FPS cap. The game now runs at up to 120 FPS on ProMotion iPhones and iPads, and never above that. The old 60 FPS cap code is gone. If your frame rate was still at the old default of 60, it moves to 120 once. You can lower it any time under Options → Frame Rate. Upstream warns that frame rates other than 60 can cause glitches in places, and 120 FPS makes the phone warmer.

Fixes

  • Stretched touch buttons after switching apps or taking a screenshot. iOS kept reporting the screen as portrait, and the buttons were drawn several times too tall. They now follow the orientation the game is drawn in.

  • Crash while loading a stage with Khronos-based mods. Khronos patches the game executable so that it loads its Core.xex DLL. Physics and Physics Companion are Lua scripts that call into that DLL. The recompiled game can't load Xbox DLLs or apply executable patches, so with those mods enabled the game crashed after Episode Select. The mod manager now refuses to enable these mods and says why:

    • Khronos: loads the Core.xex DLL by patching the executable.
    • Physics Companion: its patch.mlua patches the executable.
    • Physics: requires patches that Marathon doesn't include (CorrectFastSonicGoalAnimation, DisableCharacterStumble, RestoreRotationInterpolation).

    Required patches that Marathon has as built-in codes (for example ControllableBoundAttack) no longer block a mod and are switched on when you tap Play. Running Khronos mods would need a port of its DLL to the recompiled game.

Validation

Touch and mod regression suites pass (UBSan/ASan), including the floating stick, a stale portrait window size, and executable-patch detection against the real Khronos and Physics packages. Release arm64 iPhoneOS build and IPA integrity checks passed. Not yet tested on a device: the floating stick feel, the 120 FPS cap and the app-switcher fix.