Repository navigation
Releases: ducvd89/Bloodborne-android-rebuild-tool
Release list
Bloodborne Android Rebuild Tool 1.3.0
Bloodborne Android Rebuild Tool 1.3.0
This is the version the app 2.2.0 carries for Build on this phone, and the first PC release since 1.2.0.
What is new
- Fixes for the game's own code. The native code now carries hook sites for the guest-code fixes of the upstream port 0.7: cloth stiffness above 30 FPS, a guard against the GX occlusion query crash, play time above 30 FPS, the hit collector cap and the character id guard. Libraries you built with 1.2.x still run, but without these fixes: rebuild once to get them (the app 2.2.0 asks for it on the first start).
- Delta rebuilds. The build files are kept after a build and the next build recompiles only the parts that changed (a new fix, a new tool version) instead of the whole game. A rebuild after an update takes a fraction of the first build.
- A build manifest. A PC build can write a manifest (hashes only, nothing from the game) and the phone build uses it to check that its own parts are the same as the PC's. The app 2.2.0 ships the manifest for Bloodborne 1.09 (CUSA03173).
- The native code is still ABI 2: the app 2.2.0 loads libraries from 1.2.x, and the app 2.1.x runs 1.3.0 libraries (without the new fixes).
Downloads: Windows (bb-recomp-windows-x86_64.zip), Linux (Bloodborne-Android-Rebuild-Tool-x86_64.AppImage), macOS on Apple Silicon (bb-recomp-macos-arm64.zip, added to this release shortly) and the phone build (bb-recomp-android-aarch64.tar.xz, what the app uses).
Bloodborne Android Rebuild Tool 1.2.1 (phone build)
Bloodborne Android Rebuild Tool 1.2.1
Only the phone build changes. This is the version the app 2.1.1 carries for Build on this phone.
- The phone build (
bb-recomp-android-aarch64.tar.xz,libbbrecomp.soin the app) is now an Android (NDK) program. On Android 16 and 17 the 1.2.0 phone build was stopped by the phone's security policy as soon as it started ("a blocked system call, signal 31"). It now runs there. - The code it writes is the same as 1.2.0's, byte for byte (same ABI 2). Libraries you already built with 1.2.0 stay valid.
- On a PC, keep using Rebuild Tool 1.2.0 (Windows, Linux, macOS): nothing changed there, so there are no PC downloads in this release.
Tested on an AYN Thor (Snapdragon 8 Gen 2, Android 13) and an OPPO Find N5 (Snapdragon 8 Elite, Android 16): the whole game built in the app, identical to a PC build.
Bloodborne Android Rebuild Tool 1.2.0
Bloodborne Android Rebuild Tool 1.2.0
You must rebuild your native code with this version. The libraries made by 1.1.0 and older can stop the game with guest trap (0x800d0b, 0x287188a). 1.2.0 fixes the cause, and its libraries use ABI version 2: Bloodborne Android 2.1.0 Beta (and newer) only accepts ABI 2 and asks for the rebuild by itself; older apps (2.0.0 Beta 1 and 2.0.1 Beta 1) do not accept a library from 1.2.0.
New: build on the phone
App 2.1.0 Beta builds the native code on the phone, with no PC: choose Build on this phone in the "Native code needed" dialog it shows at start (later: menu > Native CPU > Rebuild on this phone). It takes about 6 minutes on a Snapdragon 8 Gen 2 with the charger connected (the phone gets hot) and needs about 4 GB of free RAM and 1 GB of free storage. The library is the same file, byte for byte, as the one this tool makes on a PC. If the build is interrupted, starting it again continues with the parts that were finished.
Fixed
- The crash behind
guest trap (0x800d0b, 0x287188a): the scan of a jump table could run into the next table, the tool missed a switch's bound check when a vector move sat between the compare and the jump, and a function with granular entries could run code it should only have declined. Libraries from 1.1.0 and older must be rebuilt. - The timer (
rdtsc) is now translated the same way on every computer, so a library built on one machine is identical to one built on another. - A new lift address (
0x2b00000000) that exists on every phone and PC, instead of one that does not exist on phones with a 39-bit address space. The code it produces is identical (checked on the whole game).
Also new
- The command line writes
libbbaot.jsontoo (--game-dir), progress lines for other programs (--progress), and can stop cleanly and continue later (--resume). - A clearer message when the address range cannot be used ("cannot map the image ..."); the tool then tries two other ranges by itself.
Files
Bloodborne-Android-Rebuild-Tool-x86_64.AppImage(Linux, glibc 2.35 or newer) andbb-recomp-windows-x86_64.zip(Windows 10/11, 64-bit), each with a.sha256.bb-recomp-macos-arm64.zip(new: Mac with Apple Silicon, M1 or newer, macOS 14.4 or newer), with a.sha256. Unzip it and move Bloodborne Android Rebuild Tool to Applications. The app is not notarized: the first time, right-click it > Open > Open. Built from themacosbranch (1.2.0 plus the macOS port); it makes the same library as the other builds. Intel Macs are not supported.bb-recomp-android-aarch64.tar.xz: the phone build that app 2.1.0 Beta ships (not for use by hand).
The files the tool makes come from your own game: keep them for yourself, never share them. The tool is free: if you paid for it, you were scammed.
Bloodborne Android Rebuild Tool 1.1.0
The PC program that turns your own Bloodborne PKG files into a ready-to-copy folder for Bloodborne Android. It unpacks the game and its 1.09 update and recompiles the game's x86-64 code ahead of time into native ARM64 code. The app (2.0.0 Beta 1 or newer) runs the game only from that native code; it has no x86 emulator.
Compatible with Bloodborne Android 2.0.0 Beta 1 (native code ABI version 1; the native code it builds is the same as with 1.0.0, there are no compile changes). Tested with CUSA03173 (1.09) on an AYN Thor (Snapdragon 8 Gen 2); other 1.09 releases are untested.
New in 1.1.0
- Build from an already extracted game. If you have the game as a folder instead of PKGs, choose From an extracted game in the window (the folder, or its
eboot.binwith theeboot.bin...button), or usebb-recomp --game <folder or eboot.bin> --out <dir>on the command line. - Only
aot/is written to the output folder: copy it next toeboot.binon the phone. The game folder is never changed.
Quick guide
You need: your base game PKG and the 1.09 update PKG together in one folder with nothing else in it, or an already extracted 1.09 dump (the folder with eboot.bin, sce_module and sce_sys); a PC with Windows 10 (1903+) / 11 or Linux with glibc 2.35+, a processor with AVX2, 8 GB of free RAM, and free disk space of about the size of the base game PKG plus 3 GB.
- Download the file for your system below:
bb-recomp-windows-x86_64.zip(unzip it anywhere) orBloodborne-Android-Rebuild-Tool-x86_64.AppImage(chmod +xit). - Start it (
bb-recomp.exe, or the AppImage). Choose From PKG files (the PKG folder) or From an extracted game (the game folder or itseboot.bin), and an empty Output folder, then press Build (a few minutes: PKG damage check, unpacking, recompiling). - When it says Done, copy the game folder it made (
CUSA03173, withaot/inside) to the phone. Already installed on the phone? Copy onlyaot/next toeboot.bin. - In the app: Menu → Game folder → choose that folder. The app imports the native code by itself.
Command line instead of the window: bb-recomp --pkgs <PKG folder> --out <output folder>, or bb-recomp --game <extracted game folder or eboot.bin> --out <output folder>. If the app reports a missing native entry, rebuild with --extra-entries aot-misses.log (the log from the phone). Full guide and every message: the README and docs/NATIVE_CPU.md.
Notes
- Windows: SmartScreen may say the app is unknown (it is not signed with a paid certificate). Click More info → Run anyway.
- Linux: the AppImage needs FUSE 2. If double-clicking does nothing, run
./Bloodborne-Android-Rebuild-Tool-x86_64.AppImage --appimage-extract-and-runfrom a terminal. - Never share the output. The native code is a translation of the game's own program, so it is derived from your game. Build your own and keep it for yourself. Nothing from the game is in this repository or in these downloads.
- Free software, GPL-3.0-or-later with additional terms. If you paid for it, you were scammed.
- Rebuild when the app tells you the native code has another ABI version, or when you change the game files.
SHA-256 checksums are in the .sha256 files.
Bloodborne Android Rebuild Tool 1.0.0
The PC program that turns your own Bloodborne PKG files into a ready-to-copy folder for Bloodborne Android. It unpacks the game and its 1.09 update and recompiles the game's x86-64 code ahead of time into native ARM64 code. The app (2.0.0 Beta 1 or newer) runs the game only from that native code; it has no x86 emulator.
Compatible with Bloodborne Android 2.0.0 Beta 1 (native code ABI version 1). Tested with CUSA03173 (1.09) on an AYN Thor (Snapdragon 8 Gen 2); other 1.09 releases are untested.
Quick guide
You need: your base game PKG and the 1.09 update PKG together in one folder with nothing else in it; a PC with Windows 10 (1903+) / 11 or Linux with glibc 2.35+, a processor with AVX2, 8 GB of free RAM, and free disk space of about the size of the base game PKG plus 3 GB.
- Download the file for your system below:
bb-recomp-windows-x86_64.zip(unzip it anywhere) orBloodborne-Android-Rebuild-Tool-x86_64.AppImage(chmod +xit). - Start it (
bb-recomp.exe, or the AppImage). Choose the Game PKG folder and an empty Output folder, then press Build (a few minutes: PKG damage check, unpacking, recompiling). - When it says Done, copy the game folder it made (
CUSA03173, withaot/inside) to the phone. Already installed on the phone? Copy onlyaot/next toeboot.bin. - In the app: Menu → Game folder → choose that folder. The app imports the native code by itself.
Command line instead of the window: bb-recomp --pkgs <PKG folder> --out <output folder>. If the app reports a missing native entry, rebuild with --extra-entries aot-misses.log (the log from the phone). Full guide and every message: the README and docs/NATIVE_CPU.md.
Notes
- Windows: SmartScreen may say the app is unknown (it is not signed with a paid certificate). Click More info → Run anyway.
- Linux: the AppImage needs FUSE 2. If double-clicking does nothing, run
./Bloodborne-Android-Rebuild-Tool-x86_64.AppImage --appimage-extract-and-runfrom a terminal. - Never share the output. The native code is a translation of the game's own program, so it is derived from your game. Build your own and keep it for yourself. Nothing from the game is in this repository or in these downloads.
- Free software, GPL-3.0-or-later with additional terms. If you paid for it, you were scammed.
- Rebuild when the app tells you the native code has another ABI version, or when you change the game files.
SHA-256 checksums are in the .sha256 files.