Skip to content

Rinnegatamante/ff4_vita

Repository files navigation

Final Fantasy 4 Vita

This is a wrapper/port of Final Fantasy 4 Android 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.

Changelog

V.1.3.2

  • Updated trophies icons to hi-res versions.

v.1.3

  • Updated to latest vitaGL commit.
  • Updated to latest so loader revision.
  • Made game patches version agnostic (potential more recent game updates support).
  • Added CRT PostFX effect.
  • Added trophies support.

v.1.2

  • Updated to latest vitaShaRK commit. (Fixes some memory leaks and reduces overhaul memory usage)
  • Updated to latest vitaGL commit.
  • Added an option to swap O and X buttons functionalities.
  • Added possibility to force english dub usage.

v.1.1

  • Fixed an issue causing the game to crash with plugins hooking sceDisplaySetFrameBuf.
  • Set Bilinear Filtering to Disabled by default cause it causes some minor artifacting with textures.
  • Fixed an issue causing text input keyboard to partially glitch when a PostFX effect was being used.
  • Fixed the Debug Menu option in the Configurator app. Now it can be correctly enabled.
  • Fixed higher resolutions (720p,/1080i) support. Now works as intended.
  • Added support for Simplified Chinese, Traditional Chinese and Korean languages.

v.1.0

  • First Release

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 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

  • Optional: Install PSVshell to overclock your device to 500Mhz.
  • Install libshacccg.suprx, if you don't have it already, by following this guide.
  • Obtain your copy of Final Fantasy 4 legally from the Google Play store in form of an .apk file and one or more .obb files (usually located inside the /sdcard/android/obb/com.square_enix.android_googleplay.FFIV_GP/) 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.
  • Copy the .obb file to ux0:data/ff4 and rename it to main.obb.
  • Open the apk and extract libff4.so from the lib/armeabi-v7a folder to ux0:data/ff4.
  • Install FF4.vpk on your PS Vita.
  • Optional (Opening Video Playback): Extract from the apk, the file res/raw/opening.mp4 and convert it to 1280x720 (ffmpeg can be used for this task with the command ffmpeg -i opening.mp4 -vf scale=1280x720 output.mp4). Once converted, copy it to ux0:data/ff4 named as opening.mp4.

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: Linux / Windows.
Additionally, you'll need these libraries to be compiled as well with -mfloat-abi=softfp added to their CFLAGS:

  • libmathneon

    • make install
  • vitaShaRK

    • make install
  • kubridge

    • mkdir build && cd build
      cmake .. && make install
  • vitaGL

    • make SOFTFP_ABI=1 MATH_SPEEDHACK=1 NO_DEBUG=1 NO_TEX_COMBINER=1 PHYCONT_ON_DEMAND=1 install
  • opensles

    • cd libopensles
      make install

Finally, you'll need these libraries recompiled with -mfloat-abi=softfp from vitasdk/packages:

  • sndfile
  • SDL

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

mkdir build && cd build
cmake .. && make

Credits

  • TheFloW for the .so loader which is the core mechanism used for this port.
  • frangarcj for FF3_Vita on which this port is heavily based off.
  • Darth Bellic for the Livearea assets.
  • Samilop "Cimmerian" Iter for testing the game.

About

No description, website, or topics provided.

Resources

License

MIT, OFL-1.1 licenses found

Licenses found

MIT
LICENSE
OFL-1.1
OFL.txt

Stars

Watchers

Forks

Packages

No packages published