In order to edit this wiki, you must register and verify your account.
System RPL Files: Difference between revisions
m (→Tested files: typo) |
(Many fixes, tweaks and additions. Wikitable is currently broken, so changed the table class to "table") |
||
Line 1: | Line 1: | ||
== Description == | == Description == | ||
RPL files are utility libraries and or drivers which contains important code and functions that are used by the Wii U's applications and software to interface with the OS | RPL files are utility libraries and or drivers which contains important code and functions that are used by the Wii U's applications and software to interface with the OS. The system RPL files are included with every Wii U are part the Wii U's OS and are used by all Wii U games, applications and software. The system RPL files are located inside a separate storage chip inside the Wii U called: SLC or <code>storage_slc</code> internally, which contains a lot of critical system files such as the Wii U's firmware. | ||
Cemu emulates parts of these libraries, however Cemu's implantation of these System RPL files is largely incomplete and as a result some fratures might not work correctly. | Cemu emulates parts of these libraries, however Cemu's implantation of these System RPL files is largely incomplete and as a result some fratures might not work correctly. | ||
Providing Cemu with system RPL files can improve compatibility with some software features that Cemu doesn't emulate correctly. | Providing Cemu with system RPL files can improve compatibility with some software features that Cemu doesn't emulate fully or correctly. | ||
This wiki page provides information on how to dump them the system RPLs and which RPL files are considered compatible with Cemu. | This wiki page provides information on how to dump them the system RPLs and which RPL files are considered compatible with Cemu. | ||
Line 10: | Line 10: | ||
== Dumping == | == Dumping == | ||
=== Using Ftpiiu === | === Using Ftpiiu === | ||
[https://github.com/wiiu-env/ftpiiu_plugin Ftpiiu] is a program that hosts a FTP server from a Wii U. It allows an external PC to remotely upload, copy and delete files from the Wii U's system files or inserted SD card. This option is only available on a modded Wii U with the Ftpiiu plugin installed. | [https://github.com/wiiu-env/ftpiiu_plugin Ftpiiu] is a program that hosts a FTP server from a Wii U. It allows an external PC to remotely upload, copy and delete files from the Wii U's system files or the inserted SD card. This option is only available on a modded Wii U with the Ftpiiu plugin installed. | ||
Additional software may be required to connect to a FTP server on a PC. You can use one of the | Additional software may be required to connect to a FTP server on a PC. You can use one of the programs below: | ||
* FileZilla FTP Client. [https://filezilla-project.org/ Download Page] | * FileZilla FTP Client. [https://filezilla-project.org/ Download Page] | ||
* Windows File Explorer (Windows) <br> Windows has a build in FTP-server | * Windows File Explorer (Windows) <br> Windows has a build in FTP-server feature in File Explorer, however these features are disabled in Windows by default and need to be activated. This can be done very easily inside the "'''Turn Windows features on or off'''" section inside the Windows Control Panel. To activate, open the page in the Control Panel and expand "Internet Information Services" Then check the box "FTP-server". Press ok and restart if prompted. You can now use FTP features in Windows Explorer. To use this function type <code>ftp://[ip-address]</code> into the address bar of the File Explorer and you will be connected to the FTP-server. <!-- May need to be referenced to an external site instead --> | ||
Enter the IP-address, seen in the Ftpiiu plugin settings, into your FTP client and navigate to the path below: | Enter the IP-address, seen in the Ftpiiu plugin settings, into your FTP client and navigate to the path below: | ||
Line 22: | Line 22: | ||
Copy all or some of the files of your choosing. '''DO NOT DELETE THEM FROM YOUR WII U AS THIS WILL BRICK YOUR WII U''' | Copy all or some of the files of your choosing. '''DO NOT DELETE THEM FROM YOUR WII U AS THIS WILL BRICK YOUR WII U''' | ||
You may find other folders | You may find other folders containing similar files in the Wii U SLC, but they're old versions of the system RPL files that may not have up to date functions that Cemu aren't compatible with. | ||
=== Using a Nand dump === | === Using a Nand dump === | ||
The alternative, and more complicated, method is to use nanddumper on Wii U to dump the SLC nand image(<code>slc.bin</code>) and then decrypt and extract the files from it via one of the options below: | The alternative, and more complicated, method is to use nanddumper on Wii U to dump the SLC nand image(<code>slc.bin</code>) and then decrypt and extract the files from it via one of the options below: | ||
* [https://github.com/koolkdev/wfs-tools wfs-extract]. (Command line only) | <!--* [https://github.com/koolkdev/wfs-tools wfs-extract]. (Command line only)--> | ||
* [https://github.com/koolkdev/wiiu-nandextract Nandextract] ( | * [https://github.com/koolkdev/wiiu-nandextract Nandextract] (GUI) | ||
You need the Wii U common key to decrypt a <code>slc.bin</code> nand image. You can extract the key from your <code>opt.bin</code> file used for online play. For more information follow this guide: [https://wiki.cemu.info/wiki/Obtaining_Keys_for_Keys.txt Optaining Keys for Keys.txt]. | You need the Wii U common key to decrypt a <code>slc.bin</code> nand image. You can extract the key from your <code>opt.bin</code> file used for online play. For more information follow this guide: [https://wiki.cemu.info/wiki/Obtaining_Keys_for_Keys.txt Optaining Keys for Keys.txt]. | ||
== Loading == | == Loading == | ||
Cemu normally emulates parts of the system RPLs in high level | Cemu normally emulates parts of the system RPLs in high level. | ||
To force Cemu to load a system RPL file instead of emulating it, create a folder named <code>cafeLibs</code> inside the same directory as the Cemu.exe file and then place the <code>.rpl</code> files of your choosing inside the folder. | To force Cemu to load a system RPL file instead of emulating it, create a folder named <code>cafeLibs</code> inside the same directory as the Cemu.exe file and then place the <code>.rpl</code> files of your choosing inside the folder. | ||
Make sure "Load Shared Libraries" checkbox is set in the software's game profile or it won't use system RPL files and instead use Cemu's build in implementation (if available). Some predefined game profiles have this feature disabled by | Make sure the "Load Shared Libraries" checkbox is set in the software's game profile or it won't use system RPL files and instead use Cemu's build in implementation (if available). Some predefined game profiles have this feature disabled by default, so make sure to check the game profile if you wish to use system RPL files. | ||
* '''If you're planning to use native system libraries, please make sure you have made a full MLC dump from your Wii U as many of these libraries uses files from the Wii U system files.''' | * '''If you're planning to use native system libraries, please make sure you have made a full MLC dump from your Wii U as many of these libraries uses files from the Wii U system files.''' | ||
* '''Do not copy all the <code>.rpl</code> files because many of them will cause Cemu to crash or cause general compatibility issues.''' | * '''Do not copy all of the <code>.rpl</code> files because many of them will cause Cemu to crash or cause general compatibility issues.''' | ||
* '''Cemu only loads the RPL file if the title uses code and functions from it.''' | |||
* '''Some games are packaged with <code>.rpl</code> files in their <code>code</code> folder and are loaded by the game automatically and should therefore not be placed in the <code>cafeLibs</code> folder.''' | * '''Some games are packaged with <code>.rpl</code> files in their <code>code</code> folder and are loaded by the game automatically and should therefore not be placed in the <code>cafeLibs</code> folder.''' | ||
Line 46: | Line 48: | ||
*'''Title data required''', means that the RPL file expects some system files to be present and will cause issues or crash Cemu if not present. | *'''Title data required''', means that the RPL file expects some system files to be present and will cause issues or crash Cemu if not present. | ||
{| class=" | {| class="table sortable" border="1" | ||
! Filename !! Usage !! Size in bytes !! Cemu version | ! Filename !! Usage !! Size in bytes !! Cemu version | ||
|- | |- | ||
| <code>drmapp.rpl</code> || Digital rights management. | | <code>drmapp.rpl</code> || Digital rights management. Used by the Wii U Menu to check if the title that is being launched is legit. Required to boot downloaded software titles directly from the Wii U Menu (Title data required) || style="text-align:right" | 603,968 || ? | ||
|- | |- | ||
| <code>erreula.rpl</code> || Error System Applet (Title data required). Displays the Native error applet when an error code is being displayed. || style="text-align:right" | 790,080 || ? | | <code>erreula.rpl</code> || Error System Applet (Title data required). Displays the Native error applet when an error code is being displayed, which may display more informative errors to the users. || style="text-align:right" | 790,080 || ? | ||
|- | |- | ||
| <code>nn_ec.rpl</code> || E-Commerce library. | | <code>nn_ec.rpl</code> || E-Commerce library. Used to interface whith Nintendo eShop to gather info about Add-On Content and your eShop balance and information as well as allowing in-game purchases and downloads via the AOC overlay app. Largely useless due to missing logic to tile switching in Cemu.|| style="text-align:right" | 176,128 || ? | ||
|- | |- | ||
| <code>nn_fp.rpl</code> || Friend Presence (Friend list library). Uses the official native functions from the Wii U to use friend features. || style="text-align:right" | 21,824 || 2.0-57+ | | <code>nn_fp.rpl</code> || Friend Presence (Friend list library). Uses the official native functions from the Wii U to use friend features. || style="text-align:right" | 21,824 || 2.0-57+ | ||
|- | |- | ||
| <code>nn_olv.rpl</code> ||Olive (Miiverse) library (Title data required). Implements Miiverse features utilized by serveral Wii U titles and system software. This library is hardcoded to connect to Nintendo's Miiverse servers. || style="text-align:right" | 131,072 || 2.0-77+ Recommended | | <code>nn_olv.rpl</code> ||Olive (Miiverse) library (Title data required). Implements Miiverse features by adding support for the Miiverse API utilized by serveral Wii U titles and the system software. This library is hardcoded to connect to Nintendo's Miiverse servers. || style="text-align:right" | 131,072 || 2.0-77+ Recommended | ||
|- | |- | ||
| <code>nn_sl.rpl</code> || Title management for Wii U Menu || style="text-align:right" |403,904 || ? | | <code>nn_sl.rpl</code> || Title management for Wii U Menu || style="text-align:right" |403,904 || ? | ||
Line 64: | Line 65: | ||
| <code>nsyskbd.rpl</code> || Keyboard driver for software keyboard || style="text-align:right" | 20,416 || ? | | <code>nsyskbd.rpl</code> || Keyboard driver for software keyboard || style="text-align:right" | 20,416 || ? | ||
|- | |- | ||
| <code>snd_user.rpl</code> || Extended sound effects for Sound driver. | | <code>snd_user.rpl</code> || Extended sound effects for Sound driver 1. Fixes missing sound effects in affected software || style="text-align:right" | 84,032 || 1.11.5+ | ||
|- | |- | ||
| <code>snduser2.rpl</code> || | | <code>snduser2.rpl</code> || Extended sound effects for Sound driver 2. Fixes missing sound effects in affected software. || style="text-align:right" |111,360 || 1.11.5+ | ||
|- | |- | ||
| <code>swkbd.rpl</code> || Software keyboard (Title data required). Displays the native Wii U software keyboard on the screen when opened.|| style="text-align:right" | 1,116,288 || ? | | <code>swkbd.rpl</code> || Software keyboard (Title data required). Displays the native Wii U software keyboard on the screen when opened.|| style="text-align:right" | 1,116,288 || ? | ||
|} | |} | ||
===Notes=== | ===Compatibility Notes=== | ||
==== | ====Title specific compatibility improvements==== | ||
* The keyboard files make name entry work in [[Pokkén Tournament]]. | * The keyboard files make name entry work in [[Pokkén Tournament]]. | ||
* Monster Hunter 3 Tri G(JP) requires <code>snd_user.rpl</code>, <code>swkbd.rpl</code>, <code>nsyskbd.rpl</code> and <code>nn_sl.rpl</code> to boot | * Monster Hunter 3 Tri G(JP) requires <code>snd_user.rpl</code>, <code>swkbd.rpl</code>, <code>nsyskbd.rpl</code> and <code>nn_sl.rpl</code> to boot | ||
Line 80: | Line 79: | ||
* The <code>drmapp.rpl</code> and <code>nn_sl.rpl</code> system libraries allows Cemu to title switch from the Wii U Menu. | * The <code>drmapp.rpl</code> and <code>nn_sl.rpl</code> system libraries allows Cemu to title switch from the Wii U Menu. | ||
* The <code>nn_olv.rpl</code> library fixes a crash in the Miiverse applet, as well as allowing a connection to the Miiverse servers in games that use it, however this just results in an error code since the service is discontinued. | * The <code>nn_olv.rpl</code> library fixes a crash in the Miiverse applet, as well as allowing a connection to the Miiverse servers in games that use it, however this just results in an error code since the service is discontinued. | ||
==== | ====RPL Compatibility warnings==== | ||
* The <code>swkbd.rpl</code> being present will crash Cemu if the corresponding Title files for the Software Keyboard are not present in <code>mlc01\sys\title\0005001b\1004F000</code> | * The <code>swkbd.rpl</code> being present will crash Cemu if the corresponding Title files for the Software Keyboard are not present in <code>mlc01\sys\title\0005001b\1004F000</code> | ||
* The <code>erreula.rpl</code> being present will crash Cemu if the corresponding Title files for the ErrEula are not present in <code>mlc01\sys\title\0005001b\10051000</code> | * The <code>erreula.rpl</code> being present will crash Cemu if the corresponding Title files for the ErrEula are not present in <code>mlc01\sys\title\0005001b\10051000</code> | ||
* The <code>drmapp.rpl</code> being present will crash Cemu if the files are not present in <code>mlc01\sys\title\0005001b\10058000</code> | * The <code>drmapp.rpl</code> being present will crash Cemu if the files are not present in <code>mlc01\sys\title\0005001b\10058000</code> | ||
* The <code>nn_olv.rpl</code> library may have compatibility issues in a small amount of software. This library is broken in offline mode. If the proper files are not pressent in the MLC folder then this library will not work correctly. | * The <code>nn_olv.rpl</code> library may have compatibility issues in a small amount of software. This library is broken in offline mode. If the proper files are not pressent in the MLC folder then this library will not work correctly. | ||
* The <code>nn_ec.rpl</code> library may have compatibility issues or cause crashes in a small amount of games that use it, such as "Minecraft: Wii U Edition" in online mode. | * The <code>nn_ec.rpl</code> library may have compatibility issues or cause crashes in a small amount of games that use it, such as "Minecraft: Wii U Edition" in online mode. This is partly due to missing logic in Cemu that this library uses. | ||
[[Category:Cemu]] | [[Category:Cemu]] |
Revision as of 03:36, 14 July 2024
Description
RPL files are utility libraries and or drivers which contains important code and functions that are used by the Wii U's applications and software to interface with the OS. The system RPL files are included with every Wii U are part the Wii U's OS and are used by all Wii U games, applications and software. The system RPL files are located inside a separate storage chip inside the Wii U called: SLC or storage_slc
internally, which contains a lot of critical system files such as the Wii U's firmware.
Cemu emulates parts of these libraries, however Cemu's implantation of these System RPL files is largely incomplete and as a result some fratures might not work correctly.
Providing Cemu with system RPL files can improve compatibility with some software features that Cemu doesn't emulate fully or correctly.
This wiki page provides information on how to dump them the system RPLs and which RPL files are considered compatible with Cemu.
Dumping
Using Ftpiiu
Ftpiiu is a program that hosts a FTP server from a Wii U. It allows an external PC to remotely upload, copy and delete files from the Wii U's system files or the inserted SD card. This option is only available on a modded Wii U with the Ftpiiu plugin installed. Additional software may be required to connect to a FTP server on a PC. You can use one of the programs below:
- FileZilla FTP Client. Download Page
- Windows File Explorer (Windows)
Windows has a build in FTP-server feature in File Explorer, however these features are disabled in Windows by default and need to be activated. This can be done very easily inside the "Turn Windows features on or off" section inside the Windows Control Panel. To activate, open the page in the Control Panel and expand "Internet Information Services" Then check the box "FTP-server". Press ok and restart if prompted. You can now use FTP features in Windows Explorer. To use this function typeftp://[ip-address]
into the address bar of the File Explorer and you will be connected to the FTP-server.
Enter the IP-address, seen in the Ftpiiu plugin settings, into your FTP client and navigate to the path below:
storage_slc/sys/title/00050010/1000400a/code
Copy all or some of the files of your choosing. DO NOT DELETE THEM FROM YOUR WII U AS THIS WILL BRICK YOUR WII U
You may find other folders containing similar files in the Wii U SLC, but they're old versions of the system RPL files that may not have up to date functions that Cemu aren't compatible with.
Using a Nand dump
The alternative, and more complicated, method is to use nanddumper on Wii U to dump the SLC nand image(slc.bin
) and then decrypt and extract the files from it via one of the options below:
- Nandextract (GUI)
You need the Wii U common key to decrypt a slc.bin
nand image. You can extract the key from your opt.bin
file used for online play. For more information follow this guide: Optaining Keys for Keys.txt.
Loading
Cemu normally emulates parts of the system RPLs in high level.
To force Cemu to load a system RPL file instead of emulating it, create a folder named cafeLibs
inside the same directory as the Cemu.exe file and then place the .rpl
files of your choosing inside the folder.
Make sure the "Load Shared Libraries" checkbox is set in the software's game profile or it won't use system RPL files and instead use Cemu's build in implementation (if available). Some predefined game profiles have this feature disabled by default, so make sure to check the game profile if you wish to use system RPL files.
- If you're planning to use native system libraries, please make sure you have made a full MLC dump from your Wii U as many of these libraries uses files from the Wii U system files.
- Do not copy all of the
.rpl
files because many of them will cause Cemu to crash or cause general compatibility issues.
- Cemu only loads the RPL file if the title uses code and functions from it.
- Some games are packaged with
.rpl
files in theircode
folder and are loaded by the game automatically and should therefore not be placed in thecafeLibs
folder.
Tested files
These below are the files tested and known to work. Other files probably will properly just lead to games crashing on boot.
- Title data required, means that the RPL file expects some system files to be present and will cause issues or crash Cemu if not present.
Filename | Usage | Size in bytes | Cemu version |
---|---|---|---|
drmapp.rpl |
Digital rights management. Used by the Wii U Menu to check if the title that is being launched is legit. Required to boot downloaded software titles directly from the Wii U Menu (Title data required) | 603,968 | ? |
erreula.rpl |
Error System Applet (Title data required). Displays the Native error applet when an error code is being displayed, which may display more informative errors to the users. | 790,080 | ? |
nn_ec.rpl |
E-Commerce library. Used to interface whith Nintendo eShop to gather info about Add-On Content and your eShop balance and information as well as allowing in-game purchases and downloads via the AOC overlay app. Largely useless due to missing logic to tile switching in Cemu. | 176,128 | ? |
nn_fp.rpl |
Friend Presence (Friend list library). Uses the official native functions from the Wii U to use friend features. | 21,824 | 2.0-57+ |
nn_olv.rpl |
Olive (Miiverse) library (Title data required). Implements Miiverse features by adding support for the Miiverse API utilized by serveral Wii U titles and the system software. This library is hardcoded to connect to Nintendo's Miiverse servers. | 131,072 | 2.0-77+ Recommended |
nn_sl.rpl |
Title management for Wii U Menu | 403,904 | ? |
nsyskbd.rpl |
Keyboard driver for software keyboard | 20,416 | ? |
snd_user.rpl |
Extended sound effects for Sound driver 1. Fixes missing sound effects in affected software | 84,032 | 1.11.5+ |
snduser2.rpl |
Extended sound effects for Sound driver 2. Fixes missing sound effects in affected software. | 111,360 | 1.11.5+ |
swkbd.rpl |
Software keyboard (Title data required). Displays the native Wii U software keyboard on the screen when opened. | 1,116,288 | ? |
Compatibility Notes
Title specific compatibility improvements
- The keyboard files make name entry work in Pokkén Tournament.
- Monster Hunter 3 Tri G(JP) requires
snd_user.rpl
,swkbd.rpl
,nsyskbd.rpl
andnn_sl.rpl
to boot - The
nn_ec.rpl
is required to successfully start Lego Dimensions whenerreula.rpl
is present. - The
drmapp.rpl
andnn_sl.rpl
system libraries allows Cemu to title switch from the Wii U Menu. - The
nn_olv.rpl
library fixes a crash in the Miiverse applet, as well as allowing a connection to the Miiverse servers in games that use it, however this just results in an error code since the service is discontinued.
RPL Compatibility warnings
- The
swkbd.rpl
being present will crash Cemu if the corresponding Title files for the Software Keyboard are not present inmlc01\sys\title\0005001b\1004F000
- The
erreula.rpl
being present will crash Cemu if the corresponding Title files for the ErrEula are not present inmlc01\sys\title\0005001b\10051000
- The
drmapp.rpl
being present will crash Cemu if the files are not present inmlc01\sys\title\0005001b\10058000
- The
nn_olv.rpl
library may have compatibility issues in a small amount of software. This library is broken in offline mode. If the proper files are not pressent in the MLC folder then this library will not work correctly. - The
nn_ec.rpl
library may have compatibility issues or cause crashes in a small amount of games that use it, such as "Minecraft: Wii U Edition" in online mode. This is partly due to missing logic in Cemu that this library uses.