Tutorial  Updated

A Comprehensive Look at the Wii U's File Formats and How to Convert Between Them

Introduction


In this thread I wanted to provide a single easy to follow resource for explaining and understanding the different file formats for Wii U software and the uses cases they can have, either on original hardware or on the CEMU emulator. This is also the result of a few months of experimentation on my end and I wanted to document and share these results as well.

What file formats are we dealing with?



We have 4 main file formats to work with here, of which only one properly works on original hardware, though CEMU can use all of these file formats depending on what is most convenient for you. Here's a list of these formats:
  • WUP/.app: The Wii U Package format can be best compared to the Wii's WAD format, meaning it's completely installable on original hardware using tools such as WUP Installer GX2. Unlike WAD files however, a WUP is not a single file, but rather a folder containing multiple files. These can come in two flavors: encrypted and decrypted. Encrypted WUPs are what you need for installing them on an actual Wii U, being mostly .app files (hence the .app name). Decrypted WUPs are what you need for use with the CEMU emulator or the old Loadiine GX2 app, these come as three folders: code (where the app's main executable is located), content (where the app's complementary data is located), and meta (where the app's metadata is located, including splash screens, the app icon, and even the app name strings). WUP is also the only format available for any digital only titles, such as eShop only games and any updates/DLC content.

  • WUD: The Wii U Disc format is a 1:1, raw copy of the contents of a physical Wii U disc, being the same as a ISO file for other systems like the Wii and GameCube. These are the best option for preservation of physical games for this reason. The main downside of using WUD files is that they always take up roughly 20 GB of space (matching the capacity of a Wii U Disc), which can add up quickly if you have multiple WUD files. Much like Wii discs, Wii U discs can contain multiple data partitions, though unlike the Wii you mostly see one or two partitions on most discs: a "Game" partition and a "Update" partition. Sometimes you might also have a "DLC" partition as well. Another wrinkle with these files comes in the form of a disc key. Since the contents of the disc are encrypted, a key is required to decrypt these contents to actually make them usable, and each disc has its own key for this purpose. This means a WUD file is basically useless if you don't have its disc key alongside it. CEMU requires users to manually store these disc keys in a file called "keys.txt" for every disc game you might want to play.

  • WUX: The Wii U Compressed format is exactly what the name implies, a compressed WUD file, though this is a bit of a misnomer. To keep the Wii comparisons going, this is most similar to the WBFS format. In order to save space compared to a WUD file, any junk data the disc might have is essentially removed, leaving only the actual useful data for the game to work correctly. This technique is known as scrubbing, since data is removed from the file rather than compressed. On a disc this junk data is necessary so the whole disc space is utilized, even when the game itself doesn't come close to filling it up. For a digital file, however, it only creates unnecessary wasted space. Because of this, the size gains will depend on how much junk data the disc had. Some games might see a significant reduction in size, while others could barely change at all. Also note that since the actual game data is left untouched, it is still encrypted, so you still require the disc key for a WUX file to be functional.

  • WUA: The Wii U Archive format is a CEMU exclusive solution that has a few advantages over the previous formats. Think of it like a playable zip file. A WUA file can contain the game data, game updates, and any DLC in a single plug-and-play file, and since it stores the decrypted contents only, no disc keys are required. It also can efficiently compress the data, allowing for some storage savings as well. The main downsides with these files are that the process to create a WUA file is irreversible (if you converted from a WUD/WUX file or an encrypted WUP folder), making it a dubious solution for long term preservation. And as mentioned, this is CEMU exclusive so these files won't work outside of the emulator.
In summary, WUP/.app is the best choice if you plan to mainly play on an actual Wii U, while WUX and WUA are the better options if using the CEMU emulator, with WUA offering the most streamlined solution possible for CEMU users.

How can we convert between these files formats?



Now that we know about the file formats and how/where to use them, how can we get our games to the format we want? There's a few possible conversion paths we can use, but do note some conversion paths are not possible. For example, WUP folders cannot be converted to a WUD/WUX file even when the opposite is possible. With this in mind, here's a list of some options I could think of:

The most logical place to start is by making a digital copy of a game disc, which we can thankfully do pretty easily thanks to a Homebrew app called WUDD (Wii U Disc Dumper). To use this we need a hacked Wii U console running either Aroma or Tiramisu alongside a working disc drive.

1774644784091.png


Simply open the app and insert a disc to get started, you can dump the game as a WUX/WUD file, or WUP (.app) folder and save it to either the SD Card or a NTFS USB Hard Drive. A Wii U Formatted Hard Drive will not work. You will see the final dump in a folder called "wudump" on the root of the storage drive used, inside that folder you should see a subfolder roughly called "WUP-P-XXXX" with the Xs being a game specific ID.

1774650135670.png


If you dumped a WUD/WUX file, you will also have a file called 'game.key' which as you could guess, is the disc's key. If you want to use this key with CEMU, you'll have to open it with a Hex editor (on Windows, I recommend HxD for the job) and copy the key from here and paste it in the 'keys.txt' file without any spaces (the Fs here are just an example):

1774645202163.png

1774645264942.png


If you dumped the WUD/WUX file to an SD card, you might notice these are split in multiple files. You can combine these into a single file by moving them to your computer and using a command prompt/terminal, though the exact command will depend on your operating system (if using WUD files, use wud instead of wux in these commands):

Windows Command: copy /b game.wux.part? game.wux
Linux/macOS Command: cat `ls game.wux.part? | sort` > game.wux

1774649148794.png
1774645494420.png


If you decided to dump a WUP folder, you will have to choose the partition you want to dump. Make sure to choose the "Game" partition. This will then leave you with the WUP folder inside the "WUP-P-XXXX" folder, which can then be installed using WUP Installer GX2.

1774645623572.png

1774650465580.png
If you previously dumped the game as a WUD/WUX file for use with CEMU but now want to make a digital copy for your Wii U, you will need to convert your WUD/WUX file to a WUP folder. There's two tools we can use to accomplish this: JWUDTool and Nkit 2.0.
JWUDTool is Java tool by Maschell for manipulating WUD/WUX files that we can use for these conversions. You will need to have Java installed on your computer first, and you will also need the Wii U Common Key which can be extracted from an 'otp.bin' file from your console (or you can obtain the key from other means, which is up to you to figure out). Once you have the common key string, create a file called 'common.key' and open it with a Hex editor (on Windows I recommend HxD). You can then paste the common key string into this file and save it (it won't be all Fs like you see in this image, so just use your imagination):

1774648888276.png


With that file ready we can start the process:
  1. Download JWUDTool from here (you want the .jar file): https://github.com/Maschell/JWUDTool/releases/latest
  2. Move the jar file, the WUD/WUX file to convert, the common key, and the disc key to the same folder. If you don't have the disc key file but do have the string, you can manually create this file using similar steps for the 'common.key' file. Make sure the file is called 'game.key' (WUDD dumps the key with this name already), the folder should look like this:

    1774649185297.png


  3. Open a command prompt/terminal and go to this folder:

    1774649241734.png


  4. Type this command and run it (if using a WUD file, use wud instead of wux): java -jar JWUDTool.jar -in "game.wux" -out "game" -extract all

    1774649335710.png

Inside this "game" folder you should see a WUP folder for each partition of the disc, you want to use the folder that starts with '00050000' since that will always be the game partition. For discs with only one partition, that should be the only folder you have anyway.

1774649461702.png


Congratulations! You can now install this folder on your Wii U with WUP Installer GX2.
Not to be confused with the old Nkit app for GameCube/Wii, this new version can handle multiple systems including the Wii U. Beyond some useful verification tools, Nkit can also do some conversions as well. The main downsides with this app is that it's currently closed source (with future plans to open source the project, but only time will tell when it happens), and that you can only download this app from the Nkit Discord server.

If those are dealbreakers for you, consider using JWUDTool instead. If you are interested in using NKit, you can find the Discord invite link on the Nkit GitHub's README, there's two app versions to download: a pure command line version and a UI version. For ease of use, I'll only cover the UI version.
  1. Create a zip file with all the disc keys for your games (the ones generated from WUDD), and move it to Nkit's "keys/wiiu" folder:

    1774652445423.png


  2. Open the Nkit app, select the Wii U, and choose the Convert option:

    1774652506232.png


  3. On the Settings, set the format single to "APP" and add your wud/wux file.

    1774652627996.png


  4. Click on Process and wait for the conversion to finish. You can open the console to see how the conversion is going:

    1774652961450.png
Congratulations! Next to the WUX/WUD file you should have a WUP folder that can now be installed using WUP Installer GX2.

1774653059635.png
If you dumped a WUD file but want to compress it to save some space, this is the section for you. We can use one of these tools for the job: JWUDTool and Nkit 2.0.
JWUDTool is Java tool by Maschell for manipulating WUD/WUX files that we can use for these conversions. You will need to have Java installed on your computer first.
  1. Download JWUDTool from here (you want the .jar file): https://github.com/Maschell/JWUDTool/releases/latest
  2. Move the jar file and the WUD file to compress to the same folder, the folder should look like this:

    1780022318488.png


  3. Open a command prompt/terminal and go to this folder:

    1774649241734.png


  4. Type this command and run it: java -jar JWUDTool.jar -in "game.wud" -compress

    1774653744403.png
After the compression and verification are finished, you should now have a 'game.wux' file for use with CEMU.

1774653919172.png
Not to be confused with the old Nkit app for GameCube/Wii, this new version can handle multiple systems including the Wii U. Beyond some useful verification tools, Nkit can also do some conversions as well.

The main downsides with this app is that it's currently closed source (with future plans to open source the project, but only time will tell when it happens), and that you can only download this app from the Nkit Discord server. If those are dealbreakers for you, consider using JWUDTool instead. If you are interested in using NKit, you can find the Discord invite link on the Nkit GitHub's README, there's two app versions to download: a pure command line version and a UI version. For ease of use, I'll only cover the UI version.
  1. Open the Nkit app, select the Wii U, and choose the Convert option:

    1774652506232.png


  2. On the Settings, set the format single to "WUX" and add your wud file.

    1774653984448.png


  3. Click on Process and wait for the conversion to finish. You can open the console to see how the conversion is going:

    1774655752569.png
When the conversion is finished, you should now have a 'game.wux' file.
If you want to revert a WUX file to a WUD file for archival purposes, this section will cover how to accomplish this. You can use one of these tools for this: JWUDTool or Nkit 2.0.
JWUDTool is Java tool by Maschell for manipulating WUD/WUX files that we can use for these conversions. You will need to have Java installed on your computer first.
  1. Download JWUDTool from here (you want the .jar file): https://github.com/Maschell/JWUDTool/releases/latest
  2. Move the jar file and the WUX file to convert to the same folder, the folder should look like this:

    1780022438045.png


  3. Open a command prompt/terminal and go to this folder:

    1774649241734.png


  4. Type this command and run it: java -jar JWUDTool.jar -in "game.wux" -decompress

    1774655458753.png
After the decompression and verification are finished, you should now have a 'game.wud' file you can archive as you wish.

1774655532433.png
Not to be confused with the old Nkit app for GameCube/Wii, this new version can handle multiple systems including the Wii U. Beyond some useful verification tools, Nkit can also do some conversions as well. The main downsides with this app is that it's currently closed source (with future plans to open source the project, but only time will tell when it happens), and that you can only download this app from the Nkit Discord server.

If those are dealbreakers for you, consider using JWUDTool instead. If you are interested in using NKit, you can find the Discord invite link on the Nkit GitHub's README, there's two app versions to download: a pure command line version and a UI version. For ease of use, I'll only cover the UI version.
  1. Open the Nkit app, select the Wii U, and choose the Convert option:

    1774652506232.png


  2. On the Settings, set the format single to "ISO (WUD)" and add your wux file.

    1774655913130.png


  3. Click on Process and wait for the conversion to finish. You can open the console to see how the conversion is going:

    1774656021219.png
When the conversion is finished, you should now have a 'game.iso' file that you can archive as you wish. You can also rename the file extension to wud if you would like.
If you have an encrypted WUP folder and need to decrypt it (either for using it with CEMU/Loadiine, or if you are interested in the files themselves) we can use a tool called CDecrypt on a Windows computer (VMs will work too). Do note that this process is irreversible, as there's currently no reliable way to restore an encrypted WUP from a decrypted WUP.
  1. Download CDecrypt from here (you want the zip file): https://github.com/VitaSmith/cdecrypt/releases/latest
  2. Extract the zip file to a folder, and move the WUP folder you want to decrypt to this folder. It should look like this:

    1774657054856.png


  3. Open a command prompt inside this folder:

    1774657107399.png


  4. Run this command to decrypt the WUP folder (where "encrypted" is the WUP folder to decrypt): cdecrypt encrypted decrypted

    1774657226001.png
Inside the "decrypted" folder you should see the decrypted WUP files:

1774657429573.png
If you want to dump a decrypted WUP folder without needing to decrypt a WUP first, we can dump it directly from our Wii U console using Dumpling. Or if you have the games on a Wii U Formatted Hard Drive, you can also use DumpsterU on a Windows/Linux computer and dump it from the hard drive directly. This is also the only way to dump digital only titles from a Wii U (eShop games, updates, and DLC).

The CEMU guide has a section dedicated to using Dumpling if you are interested in using it. The method covered in the guide requires the console to not be running any CFW, so if you are currently using Aroma, either make sure you aren't autobooting into it or hold R while booting the console. Here's the link to the guide: https://cemu.cfw.guide/using-dumpling.html

Keep in mind that since DumpsterU predates the USB Partition Stroopwafel plugin, it only works with a completely formatted Hard Drive and not a partition. On top of this, Wii U HDDs are encrypted so that they can only work on the console that originally formatted the drive, meaning you require your console's 'otp.bin' and 'seeprom.bin' files, which you can get using a NAND dumper.

An alternative to DumpsterU that can work with a partition is wfs-tools, which are command line tools for manipulating the proprietary WFS filesystem used by the Wii U. For similar reasons as DumpsterU, you still require the 'otp.bin' and 'seeprom.bin' files from your console. Since I find DumpsterU simple to use, I will only explain how to use wfs-tools under Linux. While this could work on Windows, I haven't found a way to properly mount a Wii U formatted partition (a Linux VM will work and is what I used for this tutorial).
  1. Download wfs-tools from here (get the Linux zip file): https://github.com/koolkdev/wfs-tools/releases/latest
  2. Extract the zip to a folder, and move your console's 'otp.bin' and 'seeprom.bin' files to this folder. It should look like this:

    Debian-2026-03-27-21-20-32.png


  3. Plug in your Wii U HDD to the computer, open a terminal, and use this command to see the disk/partition mount point: lsblk. In my case since I'm using a partitioned hard drive, my mount point is "/dev/sda2/", keep a note of this:

    Debian-2026-03-27-21-24-24.png


  4. You'll need to find the title ID of the Game/Update/DLC you want to dump, you can use this page from WiiUBrew to see what ID to use: https://wiiubrew.org/wiki/Title_database. For this example, I'm going to dump the North American version of New Super Luigi U (which has an ID of "00050000-10142300").
  5. Open a terminal and navigate to your wfs-tools folder:

    Debian-2026-03-27-21-31-42.png


  6. Use this command to dump your game: sudo ./wfs-extract --input /dev/sda2 --dump-path "usr/title/00050000/10142300" --output dump_dir --otp otp.bin --seeprom seeprom.bin, depending on the title ID you found, the "00050000" and "10142300" parts will change to whatever the ID was, the mount point of "dev/sda2" will also change depending on what lsblk showed:

    Debian-2026-03-27-21-38-30.png
Inside the "dump_dir" folder you will now have a "usr" folder, where the rest of the folder will correspond to the dump path specified in the command. At the end of the path you will find your decrypted WUP folder:

Debian-2026-03-27-21-47-50.png
If you want to streamline your CEMU library and save space as much as possible, you can turn your games into a single WUA file for easy storage and management. All you need beyond the latest version of CEMU is for the game to be recognized by CEMU's Title Manager, as well as having any updates and DLC for the game installed. Installed WUP folders and WUD/WUX files with their appropriate keys added to 'keys.txt' will work.
  1. Open the CEMU emulator:

    1774660050847.png


  2. Under "Tools", open the "Title Manager":

    1774660097198.png


  3. Right click on the game you want to convert, and select the "Convert to compressed Wii U archive (.wua)" option:

    1774660129164.png


  4. Verify that everything you have installed of the game is being detected, in this case the game has no updates and DLC, so we can proceed:

    1774660209051.png


  5. Press "OK" and select where to save the WUA file:

    1774660249395.png


  6. Wait for the conversion to be finished:

    1774660271376.png
    1774660281637.png
Congratulations! You now have a wua file you can use with CEMU. To save some space, you can delete the individual game/update/DLC files and stick to the wua file instead.
This one slipped my mind when writing the guide originally since to be blunt, it's the most limited conversion in terms of usefulness. To explain why, I have to explain a bit more about what a WUA file is. I compared it to a playable zip file earlier, but to be more technical it's actually a ZArchive file.

ZArchive is an archive format developed by Exzap (a known contributor to the CEMU emulator) that allows for random access reads while using the ZSTD compression algorithm (this is what Dolphin's RVZ files use by default for their compression). This is what makes these files playable on CEMU while also being able to save space compared to a WUD/WUX file or a WUP folder.

However, since CEMU only works with decrypted WUPs, WUA files can only compress these decrypted WUPs. For the best compression results and to avoid the usage of disc keys, WUD/WUX files cannot be used directly, so CEMU needs to extract the decrypted contents from the file first, which is completely irreversible. As a result of these limitations, while we can extract files from a WUA, we would be extracting the decrypted game files only, which have limited use cases.

It doesn't make sense to use these for CEMU since WUA is a better option, and Loadiine has compatibility issues and limitations when it comes to running actual Wii U games, on top of being out of date. I can only think of wanting to see the files for modding purposes as a valid reason to follow this section, so for completeness sake here's how we can extract files from a WUA:
  1. Download ZArchive from here (Windows only): https://github.com/Exzap/ZArchive/releases/latest. While ZArchive does have a Linux version, no pre-built binaries are available so you need to compile it from the source code. I'll only cover the Windows version.
  2. Move 'zarchive.exe' and the wua file to extract to a folder, it should look like this:

    1774920053084.png


  3. Open a command prompt inside this folder:

    1774919848206.png


  4. Run this command: zarchive game.wua

    1774920099069.png
Inside the newly created "game_extracted" folder you will have folders for everything the WUA file included (main game, updates, DLC). The main game folder will always start with "00050000", while "0005000C" is for DLC, and "0005000E" is for game updates.
 
Last edited by GABO1423,
aren't WUA's just zarchive files? I just used that to get the 3 folders from one. Are you meaning they can never be installed again? cause you could use the folders on loadiine right?

I was hoping there was a way from WUA >zarchive> folders > ???? > install wup, but I got nothing.
 
You could extract the files using ZArchive, but at best you'd be restoring the decrypted contents of game/update/DLC. That's why it's irreversible, you can't restore a WUD/WUX/Encrypted WUP (what you need for installing to a Wii U) from a WUA.

Those decrypted contents you can restore would only be useful on CEMU and Loadiine. But there's no point in using them on CEMU since it will just take more space than the WUA, so you'd rather stick with the WUA. Also Loadiine is quite outdated and has issues for actual Wii U games so its usefulness is also limited.

If there was a reliable way to restore an decrypted WUP dump to an encrypted one then you could at least get an installable WUP, but I haven't been able to find a method to include here, plus you still couldn't restore it to a WUD/WUX anyway.
Post automatically merged:

I added a section regarding extracting WUA files and further clarified what makes recovering a WUD/WUX/Encrypted WUP from a WUA impossible as of now.
 
Last edited by GABO1423,
  • Like
Reactions: lordelan
Great overview.
Back then we only dealt with two formats, basically. WUP/App and "Loadiine format" which is basically the same (as you also wrote) just decrypted/encrypted. Probably moving from my real Wii U to Steam Machine for Wii U games as soon as it's out, this comes in handy. Thanks for your work.
 
  • Like
Reactions: GABO1423

Site & Scene News

Popular threads in this forum