v-atamanenko / baba-is-you-vita

Loader of the Baba Is You Android release that allows to run it on the PSVita.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


Baba Is You · PSVita Port

How to installControlsHow to compileCreditsLicense

Baba Is You is an award-winning puzzle game where you can change the rules by which you play. In every level, the rules themselves are present as blocks you can interact with; by manipulating them, you can change how the level works and cause surprising, unexpected interactions!

This repository contains a loader of the Android release of Baba Is You, based on the Android SO Loader by TheFloW. The loader provides a tailored, minimalistic Android-like environment to run the official ARMv7 game executables on the PS Vita.

This software does not contain the original code, executables, assets, or other not redistributable parts of the game. The authors do not promote or condone piracy in any way. To launch and play the game on their PS Vita device, users must provide their own legally obtained copy of the game in form of an .apk file.

Setup Instructions (For End Users)

In order to properly install the game, you'll have to follow these steps precisely:

  • Install kubridge and FdFix by copying kubridge.skprx and fd_fix.skprx to your taiHEN plugins folder (usually ur0:tai) and adding two entries to your config.txt under *KERNEL:
  *KERNEL
  ur0:tai/kubridge.skprx
  ur0:tai/fd_fix.skprx

Note Don't install fd_fix.skprx if you're using rePatch plugin!

  • Make sure you have libshacccg.suprx in the ur0:/data/ folder on your console. If you don't, follow this guide to extract it.
  • Legally obtain your copy of Baba Is You for Android in form of an .apk file. You can get all the required files directly from your phone or by using any APK extractor you can find on Google Play. Note: After August 2022 update (version 471. you can check the version by running the game on your Android device and looking in the bottom left corner), the game is no longer supplied in a plain APK, but in a XAPK instead. Follow this guide by CatoTheYounger97 to obtain a normal ARMv7 APK for the updated version.
  • Open the .apk with any zip explorer (like 7-Zip) and extract all folders from the .apk into ux0:data/baba. Example of resulting path: ux0:data/baba/assets/Arrow.png
  • Install BABA.vpk (from Releases).

Controls

Button Action
joysl / dpadh / dpadv Move Baba
cross Select / OK
circl / squar Undo
trian Wait
selec Restart level
start Open Menu

Build Instructions (For Developers)

In order to build the loader, you'll need a vitasdk build fully compiled with softfp usage.
You can find a precompiled version here.
Additionally, you'll need these libraries to be compiled as well with -mfloat-abi=softfp added to their CFLAGS. You can find precompiled versions here.

  • OpenSLES
  • mathneon
  • vita2d
  • VitaGL

Additionally, you'll need to manually compile Northfear's fork of SDL2 with VitaGL backend.

After all these requirements are met, you can compile the loader with the following commands:

cmake -Bbuild .
cmake --build build

Also note that this CMakeLists has two "convenience targets". While developing, I highly recommed using them, like this:

cmake --build build --target send # Build, upload eboot.bin and run (requires vitacompanion)
cmake --build build --target dump # Fetch latest coredump and parse

For more information and build options, read the CMakeLists.txt.

Credits

  • Andy "The FloW" Nguyen for the original .so loader.
  • Rinnegatamante for VitaGL and lots of help with understanding and debugging the loader.
  • psykana for technical advice, help with testing, patching the side buttons, moral support, and memes.
  • Northfear for the VitaGL SDL fork and shared experience of porting SDL-powered Android games.
  • GrapheneCt for PVR_PSP2, sfp2hfp, and pthread wrapper functions.
  • CatoTheYounger97 for help with testing and the guide on how to get a normal APK from a XAPK.
  • Everybody on the Vita scene who answered my occasional stupid questions on Discord.

License

This software may be modified and distributed under the terms of the MIT license. See the LICENSE file for details.

About

Loader of the Baba Is You Android release that allows to run it on the PSVita.

License:MIT License


Languages

Language:C 98.9%Language:CMake 1.0%Language:Makefile 0.0%Language:Shell 0.0%