Skip to content

Commit

Permalink
README: Update with more info + usage instructions
Browse files Browse the repository at this point in the history
  • Loading branch information
ashquarky committed Jul 17, 2023
1 parent 60ea5ea commit 6a3f25d
Showing 1 changed file with 59 additions and 40 deletions.
99 changes: 59 additions & 40 deletions README.md
Original file line number Diff line number Diff line change
@@ -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 ;)

0 comments on commit 6a3f25d

Please sign in to comment.