GTA: SA Vita

Related tags

Compilers gtasa_vita
Overview

GTA: SA Vita

This is a wrapper/port of Grand Theft Auto: San Andreas Android for the PS Vita with lots of custom patches such as:

  • Fixed camera controls for flying vehicles (including the Hydra jet).
  • Fixed broken facial expressions.
  • Fixed cheats hash key table.
  • Removed specular lighting on pedestrians.
  • Added PS2-like rendering.

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.

Changelog

v1.4

  • Updated openal for better performance. Thanks to isage.
  • Fixed crash when selecting japanese/russian language. Thanks to adjutantt.
  • Improved control scheme. Thanks to XirXes and darthbellic.

v1.3

  • Added ability to remap controls with ux0:data/gtasa/controls.txt. Thanks to PoisonPoisonPoison.
  • Added default vita-enhanced controls schema by darthbellic.
  • Added support for co-op rampage missions when using PS3 scripts. See Tips and Tricks for instructions.
  • Added option to enable high detail player textures.
  • Switched to OpenAL-SDL for better performance.

v1.2

  • Fixed memory leak in vitaGL leading to corrupted textures.
  • Added ability to map L2/R2 to the front touchpad on the top. Thanks to adjutantt.

v1.1

  • Changed to Xbox 360 buttons mapping (while keeping PS3 icons).
    • Fixes fighting moves
    • Allows switching target using L2/R2.
    • Changes bunny hop from double X to L1.
  • Fixed rain and classic shadows rendering.
  • Improved loading speed. Thanks to Graphene.
  • Fixed thread scheduling. Thanks to Graphene.
  • Fixed crash on exit.
  • Removed redundant mobile controls menu entries.

v1.0

  • Initial release.

Setup Instructions (For End Users)

(If you have already installed the game and want to update to a newer release, you can simply install GTASA.vpk on your PS Vita).

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 Grand Theft Auto: San Andreas v2.00 legally (com.rockstargames.gtasager is not supported!) for Android in form of an .apk file and one or more .obb files (usually main.8.com.rockstargames.gtasa.obb and patch.8.com.rockstargames.gtasa.obb located inside the /sdcard/android/obb/com.rockstargames.gtasa/) 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.
  • Open the apk with your zip explorer, extract the assets folder from your .apk file to ux0:data and rename it to gtasa. The result would be ux0:data/gtasa/
  • Still in the apk, extract the file libGTASA.so from the lib/armeabi-v7a folder to ux0:data/gtasa.
  • Open the main.8.com.rockstargames.gtasa.obb with your zip explorer (.obb files are zip files just like .apk files so just rename the .obb to .zip) and extract the contents to ux0:data/gtasa.
  • Same as before, open the patch.8.com.rockstargames.gtasa.obb with the zip explorer and extract the contents inside the zip to ux0:data/gtasa.
  • Download the gamefiles.zip and extract the contents to ux0:data/gtasa (if it ask about overwriting files, say yes).
  • Optional: For a more authentic console experience, copy the file ux0:data/gtasa/data/360Default1280x720.cfg to ux0:data/gtasa/ and rename it from 360Default1280x720.cfg to Adjustable.cfg. This file is a leftover from the Xbox 360 version and provides you the console HUD (e.g. radar on bottom left).
  • Install GTASA.vpk on your PS Vita.

If you have followed the steps correctly, this is how your ux0:data/gtasa folder should look like.

Configurator App

After fully installing the port, you'll be able to configure it with the Configurator app.
The Configurator app will allow users to enable or disable a set of optimizations, patches and renderer alterations to best match users taste.
You can launch the Configurator app by clicking on the Configuration button located on the LiveArea section of the port as shown in the following screenshot.

Tips and Tricks

  • In order to reduce occasional stutters in-game, delete both ux0:data/gtasa/scache_small_low.txt and ux0:data/gtasa/scache_small.txt, then create a copy of the ux0:data/gtasa/scache.txt file to have two version of it. (for example scache(1).txt so in the end you end up with both scache.txt and scache(1).txt inside the ux0:data/gtasa/ folder), then rename scache.txt to scache_small.txt and scache(1).txt to scache_small_low.txt . This will however make the loading screen longer since it needs to compile more shaders ahead.
    • If the folder ux0:data/gtasa/cache contains much more than 300 files, it's recommended to delete the folder and have it rebuilt.
  • You can input PC cheats by pressing L+SELECT to open the on-screen keyboard. See CHEATS.md for available and unavailable cheats (you can input cheat codes in lowercase as well as uppercase).
  • The L2/R2 buttons are mapped to the rear touchpad on the top and the L3/R3 buttons are mapped to the front touchpad on the bottom. With v1.2 and higher, you can map L2/R2 to the front touchpad on the top.
  • You can open the map by holding START and then releasing.
  • In order to save storage on your Memory Card, you can safely delete all files in sub-folders of ux0:data/gtasa/texdb which end with:
    • .dxt.dat, .dxt.tmb, dxt.toc
    • .etc.dat, .etc.tmb, etc.toc
  • To get local freeroam coop and rampages working you will need to replace the main scripts with those of the PS3 version:
    • Keep in mind that saves made with the old files will be incompatible with a game using the new files and vice-versa.
    • Obtain mainPS3.scm and scriptps3.img from the /PS3_GAME/USRDIR/PS3Data.obb -> /data/script folder of a PS3 copy. In order to extract the .obb file rename it to .zip and use your favorite archive extractor.
    • Rename the files to mainV1.scm and scriptv1.img and copy them to both ux0:data/gtasa/data/ and ux0:data/gtasa/data/script/ replacing both original files in both directories each time.
    • To use the multiplayer functionality navigate to a corresponding marker (a list can be found here Marker locations ). You will have to have another controller connected via Bluetooth and set up as controller number 2 (you can configure that via the qick menu, accessible by holding the PS-Button on that controller once connected).
    • On a PSVita (as opposed to on a PSTV) you will also need to use MiniVitaTV to connect the controller in the first place.
  • There is a bug which causes invisible peds when you load a save straight after launching. To avoid that issue, start a new game and then load your save.
  • To have the cut songs back you'll need to extract the STREAMS audio files with saat 1.10 by alci SAAT 1.10 by alcy from your downgraded steam/rockstar launcher version or from the disc version that has the cut songs:
    • Use the command prompt on the directory you extract saat 1.10 by alci to, for example: cmd D/saat/ ,then use the command saat_stream.exe -e <stream_file(s)> <target_dir>, for example: saat_stream.exe -e BEATS newfolder.
    • It'll export them as track_001.ogg, track_002.ogg...etc, you'll need to use a good audio editing/converter program that can convert .ogg to .mp3 like sound forge 9.0 is what was used here to convert them or a better one if you have it.
    • With 56kbps and 22050hz mono highest quality convert them from .ogg to .mp3 and make sure you uncheck the id3 settings so the tracks wouldn't have any id3 tags on them.
    • Then after the conversion compress the converted .mp3 files into .zip files compression set to store with 7z or rar.
    • After that rename the file extension from .zip to .osw for each one of them but leave their original name untouched.
    • You need also saaf by nick7 build 239 SAAF by nick7 build 239 to use it to open each .osw file, it'll create an .osw.idx file.
    • After creating the .osw.idx files for each one of them just copy all of the .osw with their .osw.idx files to the STREAMS folder on your vita in ux0:data/gtasa/audio/STREAMS and overwrite if asked.
    • And you should be able to enjoy the game with all the songs on the latest build.

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:

  • mpg123

    • 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
  • openal-soft

    • cd build
      cmake -DCMAKE_TOOLCHAIN_FILE=${VITASDK}/share/vita.toolchain.cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS=-mfloat-abi=softfp .. && make install
  • libmathneon

    • make install
  • vitaShaRK

    • make install
  • imgui-vita

    • make install
  • kubridge

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

    • make HAVE_SBRK=1 SOFTFP_ABI=1 SHARED_RENDERTARGETS=1 NO_DEBUG=1 install

Finally, in the folder of gtasa_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

Credits

  • Rinnegatamante for porting the renderer using vitaGL, providing the companion app and making various improvements to the port.
  • aap for porting PS2-rendering aka skygfx.
  • Freakler for providing LiveArea assets.
  • frangarcj, fgsfds and Bythos for graphics-related stuff.
  • CBPS/SonicMastr for PIB, which was used on earlier stages of development.
  • isage for the native audio backend for OpenAL-Soft.
  • JonathanERC and gtagmodding for the Cheat List
Issues
  • Customizable Controller Config

    Customizable Controller Config

    Allows you to change the controls Individually through a txt file. Limited to 100 entrys because its just editing the 360 configuration in memory. Popups will show the correct button prompt.

    opened by PoisonPoisonPoison 4
  • Userfriendly cheat list

    Userfriendly cheat list

    I made this .md document with the cheats that work and those that does not work for making easy to people to identify them. Take a look and consider if is good to publish or not. Thank you for your time and all the good things you all share with us.

    opened by JonathanERC 2
  • Hide widgets & Control fix

    Hide widgets & Control fix

    Re-added BUTTON_UNUSED check to fix broken Controls when a Mapping is Unused.

    Unbound Mappings will let the game draw a touch widget.

    Added a function to hide specific widgets.

    Hid the Button for Sidemissions and a few widgets that will appear when the button is unused.

    opened by PoisonPoisonPoison 1
  • Add an option to map L2/R2 to front touchpad

    Add an option to map L2/R2 to front touchpad

    I guess I'm not the only one who can't stand Vita's rearpad, so I added an option to remap triggers to the top of the front touchpad. Earlier today, actual code in loader/jni_patch.c was different, but v1.1 changed a lot so I chose a brute approach.

    opened by psykana 1
  • Revamp hydraulics controls

    Revamp hydraulics controls

    Fixed taxi boost jump which was hardcoded to ped jump. Patched AimWeapon functions so they don't return 0.0f for vehicles with hydraulics unless hydraulics_locked is set.

    opened by psykana 0
  • Check libshacccg.suprx

    Check libshacccg.suprx

    In some cases the libshacccg.suprx located in the ux0:data/external.

    here is the code in the vitagl

    if (!is_shark_online)
       is_shark_online = shark_init("ur0:data/external/libshacccg.suprx") >= 0;
    
    opened by TheSnowfield 0
  • Fix crash on Russian/Japanese language selection

    Fix crash on Russian/Japanese language selection

    Unlike the rest, Russian and Japanese languages load their fonts from respective .png files (Menu_ApplyLanguage function). A few calls down the line lead to a setjmp call at 0x1EDC0B which causes a prefetch abort exception. After resolving that, turned out libpng fprintfs some kind of warning (at 0x1F25CE), which caused another crash. IDK what that warning is so I just resolved what it needs.

    opened by psykana 0
Releases(v2.1)
  • v2.1(Aug 28, 2021)

  • v2.0(Jun 14, 2021)

  • v1.9(Jun 4, 2021)

  • v1.8(May 30, 2021)

  • v1.7(Apr 10, 2021)

  • v1.6(Mar 14, 2021)

    v1.6

    • Added a few optimizations.
    • Fixed free aim option.
    • Disabled auto landing gear deployment/retraction. Thanks to adjutantt.
    • Moved plane rudder control to GetTurret. Thanks to XirXes.

    Please remove the ux0:data/gtasa/cache folder (containing .gxp files). Shaders will be recompiled (which will take a few minutes the first launch).

    Follow the instructions at https://github.com/TheOfficialFloW/gtasa_vita/blob/master/README.md.

    If you already installed GTA: SA Vita, simply install the new vpk and override the existing installation. See gamefiles.zip for the new controls.txt file.

    Source code(tar.gz)
    Source code(zip)
    gamefiles.zip(13.52 KB)
    GTASA.vpk(1.29 MB)
  • v1.5(Mar 6, 2021)

    v1.5

    • Added option to allow cut radio songs to play.
      • See MUSIC.md for how to restore removed songs.
    • Added MP3 fuzzy seek option to improve loading speed.
    • Added custom codes to activate mobile cheats:
      • "THEFLOW" - Invincibility
      • "RINNEGATAMANTE" - Weapon set 4
    • Fixed mixed cheat codes.
    • Fixed plane rudder controls.
    • Improved the "Resume" menu entry to load the latest save (manual and auto save).
      • Selecting the "Quit Game" menu entry will now create a quick-save which can be loaded via the "Resume" menu entry.
    • Improved performance by redirecting mpg123 to our own library.
    • Improved performance by using better algorithms in vitaGL.

    Follow the instructions at https://github.com/TheOfficialFloW/gtasa_vita/blob/master/README.md.

    If you already installed GTA: SA Vita, simply install the new vpk and override the existing installation. See gamefiles.zip for the new controls.txt file.

    NOTE: Binary has been reuploaded at 2020-03-06 20:18 UTC, please redownload.

    Source code(tar.gz)
    Source code(zip)
    gamefiles.zip(13.52 KB)
    GTASA.vpk(1.29 MB)
  • v1.4(Feb 28, 2021)

    v1.4

    • Updated openal for better performance. Thanks to isage.
    • Fixed crash when selecting japanese/russian language. Thanks to adjutantt.
    • Improved control scheme. Thanks to XirXes and darthbellic.

    Follow the instructions at https://github.com/TheOfficialFloW/gtasa_vita/blob/master/README.md.

    If you already installed GTA: SA Vita, simply install the new vpk and override the existing installation. See gamefiles.zip for the new controls.txt file.

    Source code(tar.gz)
    Source code(zip)
    gamefiles.zip(13.50 KB)
    GTASA.vpk(1.16 MB)
  • v1.3(Feb 25, 2021)

    v1.3

    • Added ability to remap controls with ux0:data/gtasa/controls.txt. Thanks to PoisonPoisonPoison.
    • Added default vita-enhanced controls schema by darthbellic.
    • Added support for co-op rampage missions when using PS3 scripts. See Tips and Tricks for instructions.
    • Added option to enable high detail player textures.
    • Switched to OpenAL-SDL for better performance.

    Follow the instructions at https://github.com/TheOfficialFloW/gtasa_vita/blob/master/README.md.

    If you already installed GTA: SA Vita, simply install the new vpk and override the existing installation. See gamefiles.zip for the new controls.txt file.

    Source code(tar.gz)
    Source code(zip)
    gamefiles.zip(13.51 KB)
    GTASA.vpk(1.36 MB)
  • v1.2(Feb 21, 2021)

    v1.2

    • Fixed memory leak in vitaGL leading to corrupted textures.
    • Added ability to map L2/R2 to the front touchpad on the top. Thanks to adjutantt.

    Follow the instructions at https://github.com/TheOfficialFloW/gtasa_vita/blob/master/README.md.

    If you already installed GTA: SA Vita, simply install the new vpk and override the existing installation.

    Source code(tar.gz)
    Source code(zip)
    gamefiles.zip(11.30 KB)
    GTASA.vpk(1.15 MB)
  • v1.1(Feb 20, 2021)

    v1.1

    • Changed to Xbox 360 buttons mapping (while keeping PS3 icons).
      • Fixes fighting moves
      • Allows switching target using L2/R2.
      • Changes bunny hop from double X to L1.
    • Fixed rain and classic shadows rendering.
    • Improved loading speed. Thanks to Graphene.
    • Fixed thread scheduling. Thanks to Graphene.
    • Fixed crash on exit.
    • Removed redundant mobile controls menu entries.

    Follow the instructions at https://github.com/TheOfficialFloW/gtasa_vita/blob/master/README.md.

    Source code(tar.gz)
    Source code(zip)
    gamefiles.zip(11.29 KB)
    GTASA.vpk(1.15 MB)
  • v1.0(Feb 17, 2021)

Owner
Information Security Engineer
null
An open source UI re-implementation based on GTA:V, built for GTA: San Andreas.

V Hud: A work-in-progress user interface overhaul, for Grand Theft Auto: San Andreas, based on Grand Theft Auto: V. Project has been made in order to

_AG 91 Aug 1, 2022
Toolbox that makes homebrewing the PS Vita easier

VitaDeploy Toolbox that makes homebrewing the Playstation Vita/TV easier Features file manager (VitaShell) sd2vita mount/format firmware updater/downg

null 126 Jul 31, 2022
Vita Recorder is a plugin that allows to record video clips during your play sessions.

Vita Recorder Vita Recorder is a plugin that allows to record video clips during your play sessions. The code is based off VITA2PC at which has been a

Rinnegatamante 20 Jul 5, 2022
Battlefield: Bad Company 2 Vita

Battlefield: Bad Company 2 Vita This is a wrapper/port of Battlefield: Bad Company 2 Android for the PS Vita. The port works by loading the official A

Andy Nguyen 50 Jul 18, 2022
Dink Smallwood HD port for Playstation Vita.

Dink Smallwood HD -- To just download working versions to play Dink Smallwood

Nabsi 5 Dec 16, 2021
A port of uMario (a widescreen remake of SMB NES) to the Playstation vita.

uMario PSVita Port A port of uMario (a widescreen remake of SMB NES) to the Playstation vita. Gameplay video: https://youtu.be/QZDfrHlEhj4 uMario: htt

WeegeeDEV 18 Jul 5, 2022
SoRR (BennuGD) vita port.

SoRR Streets of Rage Remake This is port of the Streets of Rage Remake (BennuGD engine) game to PSVita. Installing [For Linux] You can download VPK-pa

Epifanov Ivan 28 Aug 7, 2022
Dune Legacy port for PS Vita

Dune Legacy port for PS Vita Install Download and install dunelegacy.vpk. Extract content of dunelegacy_data.zip into ux0:data/. https://github.com/No

Taras 8 May 1, 2022
Playstation Vita first_loader hack for prototype units on firmware 1.03

broombroom Playstation Vita first_loader hack for prototype units on firmware 1.03 This hack grants "bootrom"-level code execution on the PSP2 by expl

null 14 Feb 27, 2022
Run GTA:SA multiple times

Multi Process GTASA With this ASI mod you are able to run GTASA multiple times If you also wish to have windowed mode ability, you can use https://git

iAmir 13 Nov 8, 2021
Play GTA San Andreas Multiplayer with mouse only and no keyboard

Play GTA SAMP with your mouse and no keyboard! For some reason some people think it's a troll or an inside joke, IT IS NOT! This is a legit mod for th

iAmir 23 Feb 14, 2022
GTA Online survival missions in Single Player mode

SurvivalsModCPPVersion You liked the survival missions from GTA Online? Well, me too. This mod aims to recreate the same gamemode in Single Player mod

null 1 Nov 23, 2021
SDK for creating GTA IV .asi plugins

iv-sdk "SDK" for creating GTA IV .asi plugins Supports 1.0.7.0 and 1.0.8.0 (EFIGS only) The majority of the project has been created for 1.0.8.0 and t

null 23 Jun 12, 2022
GTA III, Vice City

Intro In this repository you'll find the fully reversed source code for GTA III (master branch) and GTA VC (miami branch). It has been tested and work

Kid 1.2k Jul 29, 2022
A mod menu base for GTA - Custom UI, backend == BigBase

Custom Base This is a mod menu base made for Grand Theft Auto V and compatible with GTA Online aswell. Making a parent submenu Parent submenus are the

null 4 Jan 16, 2022
PoC that fixes two GTA Online bugs and drastically improves load times for CPU-bound systems

Project status Officially fixed by R* 2021-03-16 :) PoC that fixes two GTA Online bugs and drastically improves load times for CPU-bound systems All a

null 2.8k Jul 29, 2022
GTA SA FMOD mod, realistic car engine sounds.

GTA FMOD Informations FMOD is a proprietary sound effects engine and authoring tool for video games and applications developed by Firelight Technologi

Chrystian Farias 22 May 29, 2022
GTA 3/VC HUD recreation for Manhunt.

GTAHud Grand Theft Auto HUD recration for Manhunt. Installation GTAHud requires Ultimate ASI Loader (https://github.com/ThirteenAG/Ultimate-ASI-Loader

null 2 Feb 2, 2022