Repository navigation
Releases
B3-Express v0.2.0
A brand new launcher. Start the game with B3-Express.exe.
No game files are included. You need your own extracted dump, updated to v1.2.0. See INSTALL.txt in the zip, or the install guide.
The new launcher
- One button that always does the next step. Install, then Prepare shaders, then Play. While it works you see a progress bar, what it's doing and how much time is left.
- Your last session at a glance. Average FPS, the typical 1% low and the frame time, read from the game's log.
- Options has every setting the old launcher had: window size and quality, fullscreen, shadows, texture filtering, object fade, button prompts, A/B swap, stick dead zone, vibration and muting. They're saved in the game's own settings file, so the in-game menu and the launcher always agree.
- Save backups. Back up your progress with one click, and restore any backup later. Restoring backs up your current save first, so nothing is lost.
- Bug reports in one click. Help makes a zip with the game's log, your settings and your graphics card. It holds no game files and no saves. Attach it to a GitHub issue.
- Update check. The launcher tells you when a newer version is out and links to its page. It never downloads anything by itself.
- B3-Express.exe replaces
Launch-Bayonetta3.cmd, with its own icon.
The launcher window uses Microsoft Edge WebView2, which is part of Windows 11 and of Windows 10 with a current Edge. On a PC without it, the old launcher window opens instead, with the same features as before.
Game
The same game runtime as 0.1.7. Frame pacing and every fix from 0.1.7 are unchanged.
Upgrading from 0.1.7
Unzip 0.2.0 to a new folder, start B3-Express.exe and run Install again from your extracted dump. Your graphics card's shaders are prepared again on the first run, a few minutes once. To keep your progress, copy the save folder from Bayo3_120\Bayo3_120_data of your old folder into the same place in the new one before you play.
Known limits
- Mods aren't supported yet. The Mods page shows how they'll work once the game can load them
- The gallery drops under 20 FPS while its background movie plays. The fix is planned
- Tested on one PC (Ryzen 7 5700X3D, RTX 3080). Other PCs and most chapters are untested
Built on ScarletNX, GPL-3.0-or-later. Not affiliated with Nintendo, SEGA or PlatinumGames.
SHA-256 of B3-Express-0.2.0-windows-x64.zip: 36a01ea6e6bae02597b322415365fcb579fa1f8b5ab5e60e49add4798efd3371
B3-Express v0.1.7
A deep optimization of how frames reach your screen, for a much smoother 60 FPS. Plus a fix for Intel graphics losing the device.
No game files are included. You need your own extracted dump, updated to v1.2.0. See INSTALL.txt in the zip, or the install guide.
Performance in a real play session
56 minutes of normal play on 0.1.7 (199,200 frames), on the test PC (Ryzen 7 5700X3D, RTX 3080):
| Average FPS | 58.9 (59.4 outside the gallery) |
| 1% low | 47.6 FPS typical, 38.5 FPS or better in 9 of every 10 stretches |
| Frame time | 16.75 ms median, 19.5 ms at the 99th percentile |
| Rushed frames (under 14 ms) | 100 of 199,200 (0.05%) |
The 1% low is measured over each 10-second stretch of play. Loading screens and the game's own 30 FPS scenes are left out of it.
Smoother frame pacing
Before 0.1.7, the game was held back at the start of each frame, but a frame reaches the screen only after a varying amount of work. So a slow frame was often followed by a rushed one, and that felt like stutter even at a steady 60 FPS.
Frames are now presented from a thread of their own, on even 16.7 ms slots. A frame that comes late is shown at once, with no rushed frame after it. Presenting no longer waits for the next frame's preparation, because the GPU queue has a lock of its own.
On a recorded 110-second session (menu, street, practice, a verse and back), replayed the same way on both versions, out of 6,757 frames as they reached the screen:
| 0.1.6 | 0.1.7 | |
|---|---|---|
| Rushed frames (under 14 ms) | 207 | 13 |
| Frames over 19 ms | 326 | 177 |
| A slow frame followed by a rushed one | 130 | 4 |
| 99th percentile frame time | 24.2 ms | 23.3 ms |
Set SNX_PRESENT_THREAD=0 in the environment to present frames the old way.
Fixed
- Intel integrated graphics losing the device (#2). Some of the game's compute shaders waited at a barrier inside a branch, which Intel's driver can't run, and the device was lost at the first frame that used them. They now wait outside the branch. (NOT TESTED)
- Wrong colours in the dartboard room on NVIDIA. The same barrier made its colour grading come out with its colours rotated.
Upgrading from 0.1.6
Unzip 0.1.7 to a new folder and run Install again from your extracted dump. Your graphics card's shaders are prepared again on the first Play, a few minutes once.
Known limits
- The gallery drops under 20 FPS while its background movie plays. The fix is planned for 0.2.0
- The frames over 19 ms that are left come from real work (texture decoding, loading). Holding frames back can't hide those
- The Intel fix hasn't been tested on an Intel card yet. If the problem stays, please comment on #2 with your
Bayo3_120\Bayo3_120.log - Tested on one PC. Other PCs and most chapters are untested
Built on ScarletNX, GPL-3.0-or-later. Not affiliated with Nintendo, SEGA or PlatinumGames.
SHA-256 of B3-Express-0.1.7-windows-x64.zip: ac9793e5baded4a08b70d22b0c41fe1d61ef395dec42d5a228667721dde1d1de
B3-Express v0.1.6
Fixes for AMD and Intel graphics cards.
No game files are included. You need your own extracted dump, updated to v1.2.0. See INSTALL.txt in the zip, or the install guide.
Fixed
- Black 3D on AMD graphics cards (#3). Only the UI showed, because the renderer asked for a 24-bit depth buffer format that AMD cards can't render to, and every 3D draw was dropped. It now uses 32-bit depth on cards without 24-bit depth.
- Intel integrated graphics losing the device (#2). The game stopped with
VK_ERROR_DEVICE_LOSTabout 20 seconds after start on Intel Iris Xe. On integrated graphics the game no longer keeps video memory copies of its memory pools. They gave no speed there, because video memory and system memory are the same RAM, and the way they are made is the likely cause of the crash. SetSNX_NVN_VRAM=1in the environment to keep the copies anyway. - The warning at startup that the renderer is "past this GPU's per-stage limits" no longer appears when it isn't true.
Results on the test PC (Ryzen 7 5700X3D, RTX 3080)
- With 32-bit depth forced on, the scripted fight drew correctly, with depth and shadows, and no pipeline failed
- With pool copies off, the path integrated graphics now take, the scripted fight drew correctly and no pipeline failed
- Normal play on NVIDIA: no change
Upgrading from 0.1.5
Unzip 0.1.6 to a new folder and run Install again from your extracted dump. Your graphics card's shaders are prepared again on the first Play, a few minutes once.
Known limits
- Neither fix has been tested on an AMD or Intel card yet. If the problem stays, please comment on the issue with your
Bayo3_120\Bayo3_120.log - Tested on one PC. Other PCs and most chapters are untested
Built on ScarletNX, GPL-3.0-or-later. Not affiliated with Nintendo, SEGA or PlatinumGames.
SHA-256 of B3-Express-0.1.6-windows-x64.zip: 50e6316154f07af909b66b00f30cd60792a5d23ebae34ccc57237592282a8d2f
B3-Express v0.1.5
Fewer hitches on a first play and when entering new areas, and a Save settings button in the launcher.
No game files are included. You need your own extracted dump, updated to v1.2.0. See INSTALL.txt in the zip, or the install guide.
Added
- Save settings button. The launcher's Graphics and Controller pages now end with a Save settings button, usable once you change something, and a line that tells you whether your changes are saved. Before, settings were only written when you pressed Play. Closing the launcher with unsaved changes now asks whether to save them.
Improved
- Fewer freezes on the first play. The shader preparation that runs the first time you press Play now also covers the game's compute shaders. On a PC that had never run the game, 8 of them used to compile in the middle of the first fight, about a sixth of a second each. Now 1 does, in 17 ms.
- Smoother area entry. Entering a new area used to decode all its new textures in one frame, and the game waited about a sixth of a second for it. Large new textures now appear slightly soft for a few frames and sharpen as their full detail loads over the next frames. In the test, the long frame after the area entry is gone, though the entry frame itself can still be slow.
- The 1% low the game logs now counts only real 60 FPS play. Loading screens and in-engine scenes, which the game itself runs at 30 FPS, used to count as stutter. Some log windows may read lower than before because fewer frames are counted, so each real spike weighs more. Nothing got slower.
Results on the test PC (Ryzen 7 5700X3D, RTX 3080, 2560x1440)
- First play with nothing cached (the game's and the graphics driver's shader caches both empty): compute shader compiles during the scripted fight went from 8 (1,074 ms in all) to 1 (17 ms), and five frames of 200 to 290 ms are gone
- Scripted fight, area entry: textures decoded in the entry frame went from 234 to about 17 megapixels, and the 157 ms frame after it is gone. Time lost to slow frames after the first 30 seconds went from 1,010 to 708 ms
- Normal play with everything cached: no change
Upgrading from 0.1.4
Unzip 0.1.5 to a new folder and run Install again from your extracted dump. Your graphics card's shaders are prepared again on the first Play, a few minutes once.
Known limits
- Entering an area can still hitch while shaders load. The frame in the test above still took 129 ms
- About 10 rarely used shaders still compile during play the first time they are needed
- Textures that sharpen after an area entry may be visible as a short soft moment in bright scenes. Setting
SNX_ASTC_SPREAD_MPX=0in the environment turns the change off - Tested on one PC. AMD GPUs, other PCs and most chapters are untested
Built on ScarletNX, GPL-3.0-or-later. Not affiliated with Nintendo, SEGA or PlatinumGames.
SHA-256 of B3-Express-0.1.5-windows-x64.zip: 87f1eaaf205746edee7fa98200059ea610ffc9c012ec4da5e8d6d3a41aaaf42a
B3-Express v0.1.4
Replaces the game's checkerboard fade with a smooth see-through fade, and makes the game use the fast renderer however it is started.
No game files are included. You need your own extracted dump, updated to v1.2.0. See INSTALL.txt in the zip, or the install guide.
Added
-
Object fade. Bayonetta 3 fades objects with a checkerboard pattern instead of real transparency: enemies being summoned, figures fading in and out, things close to the camera. On a sharp PC screen the pattern can look rough, and at some resolutions it shows small crosses. The launcher's Graphics page now has an Object fade setting (also in the in-game menu):
- Transparent (the default): fading objects are smoothly see-through.
- Game: the original checkerboard, as on the Switch.
- Off: no checkerboard, and objects that would fade stay solid.
- Even pattern: the checkerboard at your screen's own pixels, fine and even on Balanced and Sharp.
The fade only shows for a moment while something is fading, so most of the time all four look the same.
Fixed
- The game ran on the old, much slower renderer when started without the launcher, for example by opening
Bayo3_120.exedirectly. It now uses the fast renderer however it is started. The newfast_renderersetting inBayo3_120.iniswitches it off if ever needed.
Results on the test PC (Ryzen 7 5700X3D, RTX 3080, 2560x1440)
- Object fade costs nothing measurable: on a scripted fight, the frames over 33 ms were 492 to 517 of 5999 in every mode, run to run
- All 429 of the game's shaders that use the fade are changed, and every changed shader passes the SPIR-V validator
Upgrading from 0.1.2
Unzip 0.1.4 to a new folder and run Install again from your extracted dump. The first launch with each Object fade setting prepares shaders once, like after a driver update.
Known limits
- With Transparent, something behind a fading object can sometimes be hidden or drawn in the wrong order
- Loading new areas can still hitch while textures load
- Tested on one PC. AMD GPUs, other PCs and most chapters are untested
Built on ScarletNX, GPL-3.0-or-later. The even pattern follows Witch Time (GPL-3.0-or-later). Not affiliated with Nintendo, SEGA or PlatinumGames.
SHA-256 of B3-Express-0.1.4-windows-x64.zip: 6ca3059944cd132ad1d01ec4063802cbead96207e24caa625bf701aee8df64f9
B3-Express v0.1.2
Fixes Install doing nothing on a non-English Windows, adds PlayStation and Xbox button prompts, and shortens the hitch when entering a new area.
No game files are included. You need your own extracted dump, updated to v1.2.0. See INSTALL.txt in the zip, or the install guide.
Fixed
- Install did nothing on a non-English Windows (issue #1). Clicking Install showed no message and wrote no log. The launcher's check for an already running game couldn't read Windows' reply in languages other than English, and the error was dropped silently. That check is fixed, and any unexpected launcher error now shows a message and is saved to
logs/launcher-errors.log, so a click can't fail silently again. - Shorter hitch when entering a new area. Textures seen for the first time are now decoded on the GPU in batches instead of one level at a time. On the test PC the worst frame at an area change went from 264 ms to 101 ms.
Added
- PlayStation and Xbox button prompts. The launcher's Controller page has a Button prompts setting: Auto (follows the controller you use), Switch, PlayStation or Xbox. Ported from Witch Time, credited.
Changed
- Shaders without loops back run their code in order, as Witch Time does. No difference on NVIDIA; it is meant to help AMD GPUs, which are untested.
- The shader pipeline cache is saved, and game memory is imported, off the frame.
Upgrading
Unzip 0.1.2 to a new folder and run Install again from your extracted dump. The game code is compiled for this version.
Known limits
- Loading new areas can still hitch, now shorter
- First visits to an area can freeze briefly while shaders build
- Auto button prompts haven't been tested with every controller
- Tested on one PC. AMD GPUs, other PCs and most chapters are untested
Built on ScarletNX, GPL-3.0-or-later. Button prompts and the in-order shaders follow Witch Time (GPL-3.0-or-later). Not affiliated with Nintendo, SEGA or PlatinumGames.
SHA-256 of B3-Express-0.1.2-windows-x64.zip: 7790fbfebffff4737b26821fdeefa5b6a67e75fc5571a4c445c39d54fc7ee528
B3-Express v0.1.1
Fixes the FPS drop when loading into or out of a verse.
No game files are included. You need your own extracted dump, updated to v1.2.0. See INSTALL.txt in the zip, or the install guide.
Fixed
- The FPS drop after loading into or out of a verse map. In 0.1.0 the game fell to about 17 FPS for 8 to 12 seconds there. A few of the game's compute shaders kept their working data in system memory, so the GPU waited on the PCIe bus. That data now stays in video memory.
Results on the test PC (Ryzen 7 5700X3D, RTX 3080, 2560x1440)
- After a verse exit: compute work at most 0.6 ms a frame, down from up to 24 ms. No sampled frame took over 20 ms of GPU time, where the build before had 43 of 368
- Walking the street after a load: 1% low about 47 FPS, against about 30 with the fix switched off
Upgrading from 0.1.0
Unzip 0.1.1 to a new folder and run Install again from your extracted dump. The game code is compiled for this version.
Known limits
- Loading new areas can still hitch while textures load
- First visits to an area can freeze briefly while shaders build
- Tested on one PC. AMD GPUs, other PCs and most chapters are untested
- Ride sequences are untested with cutscenes at 60
Built on ScarletNX, GPL-3.0-or-later. The fix follows the design of Witch Time (GPL-3.0-or-later). Not affiliated with Nintendo, SEGA or PlatinumGames.
SHA-256 of B3-Express-0.1.1-windows-x64.zip: bfb72d76a37042f64f6242bb927c4ba28e18693297ed7f4ef1ccab67f2db7d4b
B3-Express v0.1
First test release of B3-Express: Bayonetta 3 v1.2.0 running natively on Windows.
No game files are included. You need your own extracted dump, updated to v1.2.0. See INSTALL.txt in the zip, or the install guide.
What's in it
- A launcher that checks your dump's version, copies it and compiles the game code on your PC, about 3-5 minutes
- An NVN renderer on Vulkan, with FSR 1 and shader preparation
- Cutscenes at 60 FPS, experimental and off by default: set
cutscene_fps=60
Results on the test PC (Ryzen 7 5700X3D, RTX 3080, 2560x1440)
- Chapter 12 played through with no crash
- Gameplay 54-56 FPS, heavy combat about 49 FPS
- In-engine cutscenes about 55 FPS with
cutscene_fps=60 - About 2.9 GB of video memory for the game
Known limits
- FPS drops after loading into or out of a verse map, about 17 FPS at worst for 8-12 s
- First visits to an area can freeze briefly while shaders build
- Tested on one PC. AMD GPUs, other PCs and most chapters are untested
- Ride sequences are untested with cutscenes at 60
Built on ScarletNX, GPL-3.0-or-later. Not affiliated with Nintendo, SEGA or PlatinumGames.
SHA-256 of B3-Express-0.1.0-windows-x64.zip: 6bbbd3c8f039b57f37c0aef96bf3945b4c4e3186fa91225f9028aa695c37c999