From 3990ee0d85b8841870ccef065c218c8ca2551b1e Mon Sep 17 00:00:00 2001 From: neobenedict <16228871+neobenedict@users.noreply.github.com> Date: Tue, 22 Dec 2020 14:36:52 +0000 Subject: [PATCH] Update README.md --- README.md | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 5f02b51..0a3b935 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,28 @@ -# magiatranslate -Magia Translate Client Source +# Magia Translate +[![Discord Chat](https://img.shields.io/discord/665980614998097941.svg)](https://discord.gg/6vncnjj) +This is the client source code for Magia Translate, an English translation modification for Magia Record JP. It is licenced under the GNU General Public License v3.0. + +## How to build +- Clone the repository including all submodules `git clone --recurse-submodules https://github.com/rayshift/magiatranslate` +- Download `android-ndk-r16b` and `android-ndk-r21d` from https://developer.android.com/ndk/downloads and place them somewhere. +- Install Visual Studio along with ninja and cmake plugins for C++. Edit the paths to these executables in the `.bat` files if you are not using VS 2019 Enterprise. +- Install the python requirements in requirements.txt. +- Move `sign_example.bat` to `sign.bat` and add your jarsigner keystore, alias and password. +- Build abiproxy by running `abiproxy/build_release.bat`. +- Place your magia record APK in the `apk` directory. +- Run `build_release.bat`. + +Notes: +- Use `build.bat` if you want a debug build with debug symbols. +- If your apk has split ABIs (armeabi-v7a/arm64), you will need to move the other `libmadomagi_native.so` into `build/app/lib/{ARCH}`. For example, if the arm7 version of the game is placed in `apk/`, you need to move the `arm8` .so manually, and vice versa. +- There is no Linux build script currently, but you should be able to build this on Linux if you follow the steps in the `.bat`. + +## Contributing +Create a pull request with your contributions. Please do not submit any copyrighted content (images) to this repository. + +Ensure you test your changes on both armeabi-v7a and arm64-v8a. Also test an emulator such as Nox. To force install a specific ABI, use something like: +`adb.exe -s device install --abi arm64-v8a -r -d .\MagiaTranslate_v2.2.6_v110.apk` + +## Further reading +- The server source code is currently not public. In order to change the server being used, edit the URLs in the smali file `smali/MagiaNative/app/src/main/java/io/kamihama/magianative/RestClient.smali`. You can also recompile the smali file by loading the MagiaNative project in Android Studio, editing `RestClient.java`, and compiling with this plugin: https://github.com/ollide/intellij-java2smali +- The hooking library used is https://github.com/jmpews/Dobby.