github gamboozino/ngbrecomp v0.9.56
Ninja Gaiden Black Recompiled v0.9.56

3 hours ago

What's changed

  • Mods: files in a mods folder beside the saves are read instead of the game's own, by the same path (mods/chr_ryu.afs, mods/Media/Sound.xsb). The installed game is never changed; deleting a file goes back to the original (#179).
  • Ninpo and Wind Run can be bound to any two controller buttons pressed together (#170). Once moved, the game's own pair for them no longer does them.
  • Nintendo controllers: the buttons work by position, as on an Xbox pad, and the prompts show Nintendo buttons ("Nintendo" in Button Prompts too). On Android they stay by label.
  • Controls page: each binding shows as its key or button picture, and binding a key or button takes it from the action that had it.
  • Android: Adreno 605 and 610 phones can use Turnip, which reported too old a Vulkan version on them, and a phone whose GPU can't run the game shows the message instead of closing (#192).

Testing: lighter renderer calls (off by default)

Two of the game's most frequent graphics calls can skip preparing commands the renderer doesn't use, which lowers CPU load: about 7% on a desktop, and 50 to 55 fps on a Pixel 4a. To try it, set this environment variable:

NGB_D3D_TAKE=CDevice_SetStateVB,D3DDevice_SetRenderState_Simple

  • Linux: NGB_D3D_TAKE=CDevice_SetStateVB,D3DDevice_SetRenderState_Simple ./NinjaGaidenBlack-x86_64.AppImage, or put the same before %command% in Steam's launch options.
  • Windows: in a command prompt in the game's folder, set NGB_D3D_TAKE=CDevice_SetStateVB,D3DDevice_SetRenderState_Simple and then NinjaGaidenBlack.exe.
  • Android: a file env.txt in Android/data/io.github.gamboozino.ngbrecomp/files with the line NGB_D3D_TAKE=CDevice_SetStateVB,D3DDevice_SetRenderState_Simple.

The log shows [D3D] taking ... for each. Remove the variable to turn it off.

Don't miss a new ngbrecomp release

NewReleases is sending notifications on new releases.