Jailbreak tweak for injecting CLEO scripts into GTA: SA on iOS.
This is not a port of the existing tools, but is instead a from-scratch implementation for the iOS platform. It attempts to function similarly to the Android version of CLEO.
- Install a
.debarchive for this tweak to the device. - To install a script, place it in
/var/mobile/Documents/CS. - Any supporting files (
.fxtonly at the moment) should also be placed there. - Expect decent results only with Android (
.csaor.csi) scripts. - Custom textures are not yet supported.
Please carefully read any readme.txt (or similarly named) files packaged with scripts
in order to find out what you have to do to use the mod. To access the mod menu, you must
swipe down in the middle of the screen. You can dismiss it either by selecting a script
to run, or by tapping outside of the menu.
- Loads scripts and injects them into the game.
- Loads localisation files (
.fxt). - Mimics Android's touch zone control system.
- Provide a script menu ("mod menu") similar to Android and allows scripts to be loaded mid-game.
- Load PC scripts (some may work, but don't expect most to).
- Guarantee that all scripts (Android or not) will work.
-
CLEO is not currently compatible with the Odyssey jailbreak, as it relies on Saurik's Cydia Substrate.
-
Not all instructions are implemented.*
-
Any script that relies on custom assembly code will never work. This is because the Android version of the game is exclusively 32-bit, and while there are both 32 and 64-bit versions of the game for iOS, CLEO only supports 64-bit devices.
*There are several instructions added on Android that cannot be used with iOS, either because they don't make sense for iOS (i.e. they relate to Android-only system features) or because the iOS game cannot provide enough information for them to be implemented - function names are not present in the iOS version, for example, so instructions that aim to obtain function information by name cannot be implemented (realistically). There are also some instructions that I don't know enough about to implement (please see Contributing).
Please feel free to contribute code, ideas, tutorials or anything else to the CLEO project!
Even if you can't contribute to the code directly, I'm looking specifically for information on
the Android opcodes 0xDD0-0xDDD because they are not implemented on iOS and thus many scripts
that use them will be broken.
- Configure with CMake and build with Clang from an iOS toolchain.
- You will need to specify the path to your iOS toolchain's
bindirectory inCMakeLists.txt, along with the path to your SDK. - To build a
.deb, you need to runmeta/package.shwith the single argumentCLEO.-
You will need to change the path to
ldidto match your toolchain. This does not apply if you have thecodesigncommand (e.g. if you're on macOS). -
If you do not use
zshyou will have to change the first line ofpackage.sh:#!/usr/bin/zshto
#!/bin/bashor whatever the path to your shell is.
-