README: Update with more info + usage instructions

This commit is contained in:
Ash Logan 2023-07-17 10:05:02 +10:00
parent 60ea5ea395
commit 6a3f25d424

View file

@ -1,40 +1,59 @@
# Aroma plugin that fixes the RCE bugs on WiiU games
- Mario Kart 8 (All regions, v64)
- [ENLBufferPwn](https://github.com/PabloMK7/ENLBufferPwn) fix
- Identification token parsing RCE fix (exploit found by Kinnay)
- ENL nullptr deref fix + OOB read
- Splatoon (All regions, v272)
- [ENLBufferPwn](https://github.com/PabloMK7/ENLBufferPwn) fix
- ENL nullptr deref fix + OOB read
## Buildflags
### Logging
Building via `make` only logs errors (via OSReport). To enable logging via the [LoggingModule](https://github.com/wiiu-env/LoggingModule) set `DEBUG` to `1` or `VERBOSE`.
`make` Logs errors only (via OSReport).
`make DEBUG=1` Enables information and error logging via [LoggingModule](https://github.com/wiiu-env/LoggingModule).
`make DEBUG=VERBOSE` Enables verbose information and error logging via [LoggingModule](https://github.com/wiiu-env/LoggingModule).
If the [LoggingModule](https://github.com/wiiu-env/LoggingModule) is not present, it'll fallback to UDP (Port 4405) and [CafeOS](https://github.com/wiiu-env/USBSerialLoggingModule) logging.
## Building using the Dockerfile
It's possible to use a docker image for building. This way you don't need anything installed on your host system.
```
# Build docker image (only needed once)
docker build . -t rcepatches-builder
# make
docker run -it --rm -v ${PWD}:/project rcepatches-builder make
# make clean
docker run -it --rm -v ${PWD}:/project rcepatches-builder make clean
```
## Format the code via docker
`docker run --rm -v ${PWD}:/src wiiuenv/clang-format:13.0.0-2 -r ./source -i`
# rce_patches
This Aroma plugin provides fixes for games that have security and crashing issues that can be triggered in a multiplayer
game. These patches are known to work on Nintendo Network as well as [Pretendo Network](https://pretendo.network).
Anyone playing multiplayer in affected games should have these patches installed.
The following fixes are provided:
- Mario Kart 8 (All regions, v64)
- [ENLBufferPwn](https://github.com/PabloMK7/ENLBufferPwn) fix
- Identification token parsing RCE fix (exploit found by Kinnay)
- ENL nullptr deref fix + OOB read
- Splatoon (All regions, v272)
- [ENLBufferPwn](https://github.com/PabloMK7/ENLBufferPwn) fix
- ENL nullptr deref fix + OOB read
## Usage
Go to the [latest release](https://github.com/PretendoNetwork/rce_patches/releases/latest) and download the `.wps` file.
On your Wii U's SD card, place that file in `wiiu/environments/aroma/plugins`. Then reboot your console.
You can press L+Down+Minus on Aroma to view a config menu - if the installation worked, you should see "rce_patches"
listed in that menu. You're now safe to play online.
If you need help with the installation, you can ask in the [Pretendo discord](https://invite.gg/pretendo),
[Nintendo Homebrew](https://discord.gg/C29hYvh), or advanced users in the
[Aroma discord](https://discord.com/invite/bZ2rep2).
## Building
### Build options
Building via `make` only logs errors (via OSReport). To enable logging via the [LoggingModule](https://github.com/wiiu-env/LoggingModule) set `DEBUG` to `1` or `VERBOSE`.
`make` Logs errors only (via OSReport).
`make DEBUG=1` Enables information and error logging via [LoggingModule](https://github.com/wiiu-env/LoggingModule).
`make DEBUG=VERBOSE` Enables verbose information and error logging via [LoggingModule](https://github.com/wiiu-env/LoggingModule).
If the [LoggingModule](https://github.com/wiiu-env/LoggingModule) is not present, it'll fallback to UDP (Port 4405) and [CafeOS](https://github.com/wiiu-env/USBSerialLoggingModule) logging.
### Building using Docker
It's possible to use a docker image for building. This way you don't need anything installed on your host system.
```
# Build docker image (only needed once)
docker build . -t rcepatches-builder
# make
docker run -it --rm -v ${PWD}:/project rcepatches-builder make
# make clean
docker run -it --rm -v ${PWD}:/project rcepatches-builder make clean
```
### Formatting code using Docker
`docker run --rm -v ${PWD}:/src wiiuenv/clang-format:13.0.0-2 -r ./source -i`
## Licensing
To ensure everyone has access to every fix, these patches are under GPLv2. Unless you're a programmer at Nintendo, then
you can have the patches for free ;)