2022-02-04 15:05:17 +01:00
[![CI-Release ](https://github.com/wiiu-env/sdcafiine_plugin/actions/workflows/ci.yml/badge.svg )](https://github.com/wiiu-env/sdcafiine_plugin/actions/workflows/ci.yml)
2021-04-06 16:58:19 +02:00
# SDCafiine Plugin
## What is SDCafiine
The main feature of this application is the **on-the-fly replacing of files** , which can be used used to loaded modified content from external media (**SD**). It hooks into the file system functions of the WiiU. Whenever a file is accessed, SDCafiine checks if a (modified) version of it present on the SD device, and redirect the file operations if needed.
## Dependecies
2022-04-22 17:37:16 +02:00
Requires the [ContentRedirectionModule ](https://github.com/wiiu-env/ContentRedirectionModule ) to be loaded.
2021-04-06 16:58:19 +02:00
2022-01-30 20:47:40 +01:00
## Installation of the modules
(`[ENVIRONMENT]` is a placeholder for the actual environment name.)
1. Copy the file `sdcafiine.wps` into `sd:/wiiu/environments/[ENVIRONMENT]/plugins` .
2. Requires the [WiiUPluginLoaderBackend ](https://github.com/wiiu-env/WiiUPluginLoaderBackend ) in `sd:/wiiu/environments/[ENVIRONMENT]/modules` .
2022-04-22 17:37:16 +02:00
3. Requires the [ContentRedirectionModule ](https://github.com/wiiu-env/ContentRedirectionModule ) in `sd:/wiiu/environments/[ENVIRONMENT]/modules` .
2021-04-06 16:58:19 +02:00
### Installation of the mods
2022-04-22 17:37:16 +02:00
Before the mods can be loaded, they need to be copied to a SD Card.
**In the following "root:/" is corresponding to the root of your SD card**. The basic filepath structure is this:
2021-04-06 16:58:19 +02:00
```
root:/sdcafiine/[TITLEID]/[MODPACK]/content/ < -- for game files . Maps to / vol / content /
```
Replace the following:
- "[TITLEID]" need to be replaced the TitleID of the games that should be modded. A list of can be found [here ](http://wiiubrew.org/w/index.php?title=Title_database#00050000:_eShop_and_disc_titles ) (without the "-"). Example for SSBU "0005000010145000". Make sure to use the ID of the fullgame and not the update title ID.
- "[MODPACK]" name of the modpack. This folder name can be everything but "content" or "aoc".
Example path for the EUR version of SuperSmashBros for Wii U:
```
root:/sdcafiine/0005000010145000/SpecialChars/content/ < -- for game files . Maps to / vol / content /
```
For replacing the file /vol/content/movie/intro.mp4, put a modified file into:
```
root:/sdcafiine/0005000010145000/SpecialChars/content/movie/intro.mp4
```
*NOTES: paths like "root:/sdcafiine/0005000010145000/content/" are still supported for compatibility, but **not recommended** *
### Handling multiple mod packs
SDCafiine supports multiple different mods for a single game on the same SDCard. Each mod has an own subfolder.
Example:
```
sd:/sdcafiine/0005000010145000/ModPack1/content/
sd:/sdcafiine/0005000010145000/ModPack2/content/
```
## 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 sdcafiineplugin-builder
# make
docker run -it --rm -v ${PWD}:/project sdcafiineplugin-builder make
# make clean
docker run -it --rm -v ${PWD}:/project sdcafiineplugin-builder make clean
```
2022-02-04 15:05:17 +01:00
## Format the code via docker
`docker run --rm -v ${PWD}:/src wiiuenv/clang-format:13.0.0-2 -r ./src -i`