JohnnyonFlame / FNAPatches

A repository containing Handheld and SBC Focused FNA game patches.
MIT License
15 stars 4 forks source link

What is in this repository?


This repository contains game-specific hacks and patches for Mono/FNA games on low power SBCs and handhelds, and the required tooling to comfortably develop and deploy said patches are provided here.

Usage:


This isn't meant for end-users, but for development reference or contribution. Please refer to your favorite supported packaging system, such as PortMaster.

Developing:


What follows is a non-exhaustive guide on how to first build the patch, it won't go into details on how to actually work with Harmony or how to approach the patch development. If you're looking for those, read Harmony's documentation, MonoMod's documentation and check out ILSpy.

Building:


Example:

export CONFIGURATION=Debug
export COMPILER=VisFree/bin/Debug/VisFree.exe
export MONO_PREFIX=~/mono-6.12.0.122/built
export DEPS_FOLDER=~/.steam/steam/SteamApps/common/Celeste
git clone --recursive https://github.com/JohnnyonFlame/FNAPatches
(cd deps/Harmony && wget https://github.com/pardeike/Harmony/releases/download/v2.2.1.0/Harmony.2.2.1.0.zip && unzip Harmony.2.2.1.0.zip)
(cd deps/MonoMod && wget https://github.com/MonoMod/MonoMod/releases/download/v22.05.01.01/MonoMod-22.05.01.01-net452.zip && unzip MonoMod-22.05.01.01-net452.zip)
(cd deps/FNA && wget https://github.com/JohnnyonFlame/FNAHacks/releases/download/IntPtr-SoundEffect/FNA_3d954a5-aarch64.tar.gz && tar zxvf FNA_3d954a5-aarch64.tar.gz --strip-components=1 --wildcards dlls/\*.dll)
make -C VisFree
make libs
make Celeste

LICENSE:


The files in this repository are free software licensed under MIT, read the License File for reference.