Wii U
This guide will show you how to access your server from a Wii U console.
You may now dump the BOSS keys from your console for use in the BOSS (SpotPass) server. These keys are only required if you want to create new Wii U SpotPass content.
These steps are based on the guide from the boss-crypto repository.
- Download Full Key Dumper and run the ELF from the
Tiramisu environment (this program does not support Aroma). Then, copy the file
SD:/boss_keys.bin
from your SD card to theconsole-files
directory in this repo. - Run
./scripts/get-boss-keys.sh
to validate the dumped keys. It will show you if the keys are missing or incorrect. - If it reports that the Wii U BOSS keys are valid, run
./scripts/setup-environment.sh
to reconfigure the servers with the BOSS keys.
Connecting
- Inkay (homebrew)
- SSSL (hackless)
- Follow the official Pretendo Network Wii U installation guide to install the Inkay patches. Do not create a new PNID yet. At this point, you should be connected to the official Pretendo server.
- Open
System Settings => Internet => Connect to the Internet => Connections => (Your current internet connection) => Change Settings
. - Go to
Proxy Settings => Set => OK
. Set the proxy server to your server's IP address and the port to 8080. Then, tapConfirm => Don't Use Authentication
. - Save the settings and go back to the Home Menu. Check your mitmproxy logs at 127.0.0.1:8081 to verify that the console is sending HTTP requests through your proxy.
- Start an FTP server on your console. Then, run
./scripts/compile-custom-inkay.sh
to compile a custom version of the Inkay patches that uses your own mitmproxy certificate, which is required to connect. - Reboot your console.
- Create a new PNID on your console from the users page.
Getting the Nintendo CA G3 certificate
If you or someone you know already has a homebrewed Wii U, use FTP to copy the file
/storage_mlc/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CA_G3.der
to the console-files
directory
in this repo and move on to Setting up SSSL. Otherwise, continue with the following steps.
- Visit https://account.nintendo.net in Google Chrome. Unfortunately, Firefox does
not have the necessary feature of exporting server certificates. Ensure that you get to a
Your connection is not private
tab (you might need to reload a couple times). - Click the
Not secure
button in the left side of the address bar. - Click on
Certificate is not valid
. - Click on the
Details
tab. Then, click onNintendo CA - G3
in theCertificate Heirarchy
box. Ensure that the first line of theCertificate Fields
box also saysNintendo CA - G3
to make sure you are downloading the correct certificate. - Click on the
Export...
button. Select the file type asDER-encoded binary (*.der)
and save the certificate asCACERT_NINTENDO_CA_G3.der
in theconsole-files
directory of this repo.
Setting up SSSL
- Run
./scripts/patch-sssl-certificate.sh
to create a patched Nintendo CA G3 SSL certificate for SSSL. - Open
compose.yml
and uncomment thenginx-sssl
andcoredns-public
services. - Follow the official Pretendo Network Wii U SSSL guide, but use
your local server's IP address as the
Primary DNS
server. - Create a new PNID on your console from the users page.
Make sure that the license agreement page has the custom text "Welcome to your self-hosted Pretendo Network server!". If it does not, your proxy settings did not apply correctly and you are still connected to the official Pretendo Network servers.
Changing which server you are connected to
- Inkay (homebrew)
- SSSL (hackless)
Inkay build | Inkay patching | Proxy settings | |
---|---|---|---|
Self-hosted Pretendo server | Custom (run ./scripts/compile-custom-inkay.sh ) | Enabled | Enabled, set to the server IP, port 8080 |
Official Pretendo server | Unmodified (run ./scripts/compile-custom-inkay.sh --reset ) | Enabled | Disabled |
Nintendo server | N/A | Disabled | Disabled |
Primary DNS server | |
---|---|
Self-hosted Pretendo server | Your server's IP address |
Official Pretendo server | Pretendo's SSSL DNS server |
Nintendo server | (Set to Auto-obtian) |