Bully: Anniversary Edition Vita
MIT License
This is a wrapper/port of Bully: Anniversary Edition for the PS Vita.
The port works by loading the official Android ARMv7 executable in memory, resolving its imports with native functions and patching it in order to properly run. By doing so, it's basically as if we emulate a minimalist Android environment in which we run natively the executable as is.
(If you have already installed the game and want to update to a newer release, you can simply install Bully.vpk on your PS Vita).
In order to properly install the game, you'll have to follow these steps precisely:
kubridge.skprx
and fd_fix.skprx
to your taiHEN plugins folder (usually ux0:tai
) and adding two entries to your config.txt
under *KERNEL
: *KERNEL
ux0:tai/kubridge.skprx
ux0:tai/fd_fix.skprx
Note Don't install fd_fix.skprx if you're using repatch plugin
.apk
file and one or more .obb
files (usually main.11.com.rockstargames.bully.obb
and patch.11.com.rockstargames.bully.obb
located inside the /sdcard/android/obb/com.rockstargames.bully/
) folder. You can get all the required files directly from your phone or by using an apk extractor you can find in the play store. The apk can be extracted with whatever Zip extractor you prefer (eg: WinZip, WinRar, etc...) since apk is basically a zip file. You can rename .apk
to .zip
to open them with your default zip extractor.assets
folder from your .apk
file to ux0:data
and rename it to Bully
. The result would be ux0:data/Bully/
libBully.so
from the lib/armeabi-v7a
folder to ux0:data/Bully
.ux0:data/Bully/Android
, copy and paste (do not extract!) main.11.com.rockstargames.bully.obb
to ux0:data/Bully/Android/main.11.com.rockstargames.bully.obb
and patch.11.com.rockstargames.bully.obb
to ux0:data/Bully/Android/patch.11.com.rockstargames.bully.obb
and finally rename them to to ux0:data/Bully/Android/main.obb
and ux0:data/Bully/Android/patch.obb
.ux0:data/Bully
..idx
files for the .obb
files. Make sure that your device does not go to sleep in that time. After the first boot, the game should take around 1min to start.ux0:data/Bully/glsl
, please send them to us. If there are too many, then it is because you forgot to install gamefiles.zip
, in which case do not send us the files.In order to build the loader, you'll need a vitasdk build fully compiled with softfp usage.
You can find a precompiled version here: https://github.com/vitasdk/buildscripts/actions/runs/1102643776.
Additionally, you'll need these libraries to be compiled as well with -mfloat-abi=softfp
added to their CFLAGS:
Apply mpg123.patch using patch -Np0 -i mpg123.patch
.
autoreconf -fi
CFLAGS="-DPSP2 -mfloat-abi=softfp" ./configure --host=arm-vita-eabi --prefix=$VITASDK/arm-vita-eabi --disable-shared --enable-static --enable-fifo=no --enable-ipv6=no --enable-network=no --enable-int-quality=no --with-cpu=neon --with-default-audio=dummy --with-optimization=3
make install
cd build
cmake -DCMAKE_TOOLCHAIN_FILE=${VITASDK}/share/vita.toolchain.cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS=-mfloat-abi=softfp .. && make install
make install
make install
make install
mkdir build && cd build
cmake .. && make install
make SOFTFP_ABI=1 UNPURE_TEXTURES=1 PHYCONT_ON_DEMAND=1 install
Finally, in the folder of bully_vita
, install SceLibc stubs using:
make -C libc_bridge install
After all these requirements are met, you can compile the loader with the following commands:
mkdir build && cd build
cmake .. && make