How to create a custom Wii U forwarder for ANY vWii Homebrew + gamepad support

After many many hours of research and testing, I have finally learned how to make a forwarder for ANY vWii homebrew. Something I've realized is that a lot of people have the wrong idea of how TeconMoon's injector works when you inject homebrew which is the root of most of the confusion. The two most common problems I saw people having were just not being able to get the homebrew working themselves with an inject that way, or when it did work they were unable to update the homebrew unless they made a new inject. That's because the injector doesn't make an automatic forwarder that will just point to /sd/apps/xxx/boot.dol, it injects the specific boot.dol that you selected to be installed. This means if you were trying to make a forwarder for snes9xgx, and you selected its boot.dol for the inject, you wouldn't even need to have snes9xgx in your apps folder for it to launch from this inject because the homebrew is fully installed. The problem with creating injects with the homebrews own boot.dol is that some of them simply don't work at all, and even the ones that do will need to be manually updated with a new inject and install whenever the homebrew gets updated. But that all changes today...

1. On your PC, download and install devkitPro.

2. Once installed, download devkitPPC r29-1 and extract it. Navigate to your devkitPro folder (usually on the root of your C drive). Delete the devkitPPC folder and then drag in the one you extracted from the download.

3. Download these libogc and portlibs folders, and back inside your devkitPro folder, delete the existing libogc and portlibs folders and replace them with the ones you downloaded.

4. Download the forwarder templates and extract them to your desktop, it should give you two folders "1 Path Template" and "2 Path Template"

5. (Optional, but recommended) Download Visual Studio Code to make editing the code files in the next step easier

6. Go into the folder for the template you want to use -> source and open main.c with Visual Studio Code. Scroll down to line 50 and where it says "YOURAPP", and change that text to exactly match the name of of the app you want to forward in /sd/apps, for example if you were making a forwarder for snes9xGX the updated line would look like const char *fPath = "sd:/apps/snes9xgx/boot.dol"; if you are using the 2 Path Template, meaning you want the forwarder to look in two different possible locations for the boot.dol of the app, change the path in line 54 to what you want the secondary path to be. Once you're done updating the path in the main.c file, go to File -> Save and then you can close out of Visual Studio Code.

7. Open Msys2 (search for it in start menu if you can't find it), once opened you need to type a few commands to build your .dol for the forwarder. First, type "cd desktop" and press enter, then type "cd 1 path template" or "cd 2 path template" depending on which template you're using. Now you should just type "make" and hit enter, and it should build your boot.dol pretty fast. You can find it in the "1 Path Template" or "2 Path Template" folders, whichever one you're using.

8. Now that you have your boot.dol, you need to download and open TeconMoon's VC Injector Mod. At the top select "Wii Homebrew Injection" and for game, select the new boot.dol that you just compiled. You can customize the title, icon, banners, logo, and boot sound to your liking. If you are making a forwarder for WiiSXRX, Wii64, Nintendont or some other homebrew that benefits from c2w patches, make sure to enable them in the "Advanced" tab.

9. VERY IMPORTANT before you build the title, you're going to need to change the Title ID in the GamePad/Meta options tab. This is very important as if you have two forwarders that use the same title ID you will run into issues. Keep track of Title IDs when doing this and make sure 2 are never identical. My personal suggestion for this is changing the last number to go up by one each time. I don't know if it makes a difference but I personally suggest sticking to changing numbers only and ones that are towards the end of the title ID. Once you're sure you have a unique title ID selected, go to the "Build Title" tab and click on build.

10. Copy the new folder you just made with TeconMoon's injector to the install folder of your SD card and put it back in your Wii U. Boot up, install with WUP Installer, and enjoy your fancy new vWii homebrew forwarder from your Wii U homescreen! Anytime your homebrew updates now all you will need to do is update the boot.dol in your apps folder!

Credits:

@SaulFabre for the method of using nintendont autoboot forwarder as a base for the forwarders + the libogc and portlibs files

@TeconMoon for the lovely injector

@FIX94 for the nintendont autoboot forwarder that is used as a base

@leseratte for making it possible to still download old versions of devkitPro

The devkitPro team
 

AdamCatalyst

Well-Known Member
Member
Joined
May 26, 2020
Messages
179
Trophies
0
XP
1,128
Country
Canada
Love this! Sadly, @Extrems still doesn´t listen and doesn´t change Not64 to be compatible with the gamepad. It´s really important, since some N64 games run better on Not64.

Oh, he listens plenty. But it's up to him to prioritize what he wants to work on. It's his life, his time, his effort. What's important to you may not be important to him. No-one is stopping you from stepping in and doing the work yourself.
 

jul16ares

Well-Known Member
Member
Joined
Dec 25, 2018
Messages
175
Trophies
0
XP
853
Country
France
I can't figure were is the problem. When compiling I getthis messge :

Bash:
###########@VAIO-VPCZ21V9E MSYS ~/desktop/forwarders templates/1 Path Template
$ make
make[1]: /home/#########/desktop/forwarders: No such file or directory
make[1]: *** No rule to make target '/home/###########/desktop/forwarders'.  Stop.
make: *** [Makefile:101: build] Error 2
 
Last edited by jul16ares,

TonyNESgri

Well-Known Member
Member
Joined
Sep 16, 2021
Messages
175
Trophies
0
Age
24
XP
510
Country
France
When I download libwiidrc, how can I use it for a specific Homebrew ? Actually, where do I put the files, what do I do with them, please ?
 

muniryka

Well-Known Member
Newcomer
Joined
Feb 24, 2023
Messages
55
Trophies
0
Age
23
XP
70
Country
Algeria
After many many hours of research and testing, I have finally learned how to make a forwarder for ANY vWii homebrew. Something I've realized is that a lot of people have the wrong idea of how TeconMoon's injector works when you inject homebrew which is the root of most of the confusion. The two most common problems I saw people having were just not being able to get the homebrew working themselves with an inject that way, or when it did work they were unable to update the homebrew unless they made a new inject. That's because the injector doesn't make an automatic forwarder that will just point to /sd/apps/xxx/boot.dol, it injects the specific boot.dol that you selected to be installed. This means if you were trying to make a forwarder for snes9xgx, and you selected its boot.dol for the inject, you wouldn't even need to have snes9xgx in your apps folder for it to launch from this inject because the homebrew is fully installed. The problem with creating injects with the homebrews own boot.dol is that some of them simply don't work at all, and even the ones that do will need to be manually updated with a new inject and install whenever the homebrew gets updated. But that all changes today...

1. On your PC, download and install devkitPro.

2. Once installed, download devkitPPC r29-1 and extract it. Navigate to your devkitPro folder (usually on the root of your C drive). Delete the devkitPPC folder and then drag in the one you extracted from the download.

3. Download these libogc and portlibs folders, and back inside your devkitPro folder, delete the existing libogc and portlibs folders and replace them with the ones you downloaded.

4. Download the forwarder templates and extract them to your desktop, it should give you two folders "1 Path Template" and "2 Path Template"

5. (Optional, but recommended) Download Visual Studio Code to make editing the code files in the next step easier

6. Go into the folder for the template you want to use -> source and open main.c with Visual Studio Code. Scroll down to line 50 and where it says "YOURAPP", and change that text to exactly match the name of of the app you want to forward in /sd/apps, for example if you were making a forwarder for snes9xGX the updated line would look like const char *fPath = "sd:/apps/snes9xgx/boot.dol"; if you are using the 2 Path Template, meaning you want the forwarder to look in two different possible locations for the boot.dol of the app, change the path in line 54 to what you want the secondary path to be. Once you're done updating the path in the main.c file, go to File -> Save and then you can close out of Visual Studio Code.

7. Open Msys2 (search for it in start menu if you can't find it), once opened you need to type a few commands to build your .dol for the forwarder. First, type "cd desktop" and press enter, then type "cd 1 path template" or "cd 2 path template" depending on which template you're using. Now you should just type "make" and hit enter, and it should build your boot.dol pretty fast. You can find it in the "1 Path Template" or "2 Path Template" folders, whichever one you're using.

8. Now that you have your boot.dol, you need to download and open TeconMoon's VC Injector Mod. At the top select "Wii Homebrew Injection" and for game, select the new boot.dol that you just compiled. You can customize the title, icon, banners, logo, and boot sound to your liking. If you are making a forwarder for WiiSXRX, Wii64, Nintendont or some other homebrew that benefits from c2w patches, make sure to enable them in the "Advanced" tab.

9. VERY IMPORTANT before you build the title, you're going to need to change the Title ID in the GamePad/Meta options tab. This is very important as if you have two forwarders that use the same title ID you will run into issues. Keep track of Title IDs when doing this and make sure 2 are never identical. My personal suggestion for this is changing the last number to go up by one each time. I don't know if it makes a difference but I personally suggest sticking to changing numbers only and ones that are towards the end of the title ID. Once you're sure you have a unique title ID selected, go to the "Build Title" tab and click on build.

10. Copy the new folder you just made with TeconMoon's injector to the install folder of your SD card and put it back in your Wii U. Boot up, install with WUP Installer, and enjoy your fancy new vWii homebrew forwarder from your Wii U homescreen! Anytime your homebrew updates now all you will need to do is update the boot.dol in your apps folder!

Credits:

@SaulFabre for the method of using nintendont autoboot forwarder as a base for the forwarders + the libogc and portlibs files

@TeconMoon for the lovely injector

@FIX94 for the nintendont autoboot forwarder that is used as a base

@leseratte for making it possible to still download old versions of devkitPro

The devkitPro team
does this mean i can play with the Wii U Gamepad using the packages made with this tutorial...?
Post automatically merged:

When I download libwiidrc, how can I use it for a specific Homebrew ? Actually, where do I put the files, what do I do with them, please ?
apparently you have to code libwiidrc to the homebrew which is very hard to do and needs a dev to do it
 
Last edited by muniryka,
  • Like
Reactions: TonyNESgri

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • Psionic Roshambo @ Psionic Roshambo:
    I just want a Pokemon Hell Raiser fan game 😭
  • K3Nv2 @ K3Nv2:
    Anyone wanna play with my joydock
  • BigOnYa @ BigOnYa:
    Biomutant looks cool tho, may have to try that
  • Quincy @ Quincy:
    Usually when such a big title leaks the Temp will be the first to report about it (going off of historical reports here, Pokemon SV being the latest one I can recall seeing pop up here)
  • K3Nv2 @ K3Nv2:
    I still like how a freaking mp3 file hacks webos all that security defeated by text yet again
  • BigOnYa @ BigOnYa:
    They have simulators for everything nowdays, cray cray. How about a sim that shows you playing the Switch.
  • K3Nv2 @ K3Nv2:
    That's called yuzu
    +1
  • BigOnYa @ BigOnYa:
    I want a 120hz 4k tv but crazy how more expensive the 120hz over the 60hz are. Or even more crazy is the price of 8k's.
  • K3Nv2 @ K3Nv2:
    No real point since movies are 30fps
  • BigOnYa @ BigOnYa:
    Not a big movie buff, more of a gamer tbh. And Series X is 120hz 8k ready, but yea only 120hz 4k games out right now, but thinking of in the future.
  • K3Nv2 @ K3Nv2:
    Mostly why you never see TV manufacturers going post 60hz
  • BigOnYa @ BigOnYa:
    I only watch tv when i goto bed, it puts me to sleep, and I have a nas drive filled w my fav shows so i can watch them in order, commercial free. I usually watch Married w Children, or South Park
  • K3Nv2 @ K3Nv2:
    Stremio ruined my need for nas
  • BigOnYa @ BigOnYa:
    I stream from Nas to firestick, one on every tv, and use Kodi. I'm happy w it, plays everything. (I pirate/torrent shows/movies on pc, and put on nas)
  • K3Nv2 @ K3Nv2:
    Kodi repost are still pretty popular
  • BigOnYa @ BigOnYa:
    What the hell is Kodi reposts? what do you mean, or "Wut?" -xdqwerty
  • K3Nv2 @ K3Nv2:
    Google them basically web crawlers to movie sites
  • BigOnYa @ BigOnYa:
    oh you mean the 3rd party apps on Kodi, yea i know what you mean, yea there are still a few cool ones, in fact watched the new planet of the apes movie other night w wifey thru one, was good pic surprisingly, not a cam
  • BigOnYa @ BigOnYa:
    Damn, only $2.06 and free shipping. Gotta cost more for them to ship than $2.06
  • BigOnYa @ BigOnYa:
    I got my Dad a firestick for Xmas and showed him those 3rd party sites on Kodi, he loves it, all he watches anymore. He said he has got 3 letters from AT&T already about pirating, but he says f them, let them shut my internet off (He wants out of his AT&T contract anyways)
  • K3Nv2 @ K3Nv2:
    That's where stremio comes to play never got a letter about it
  • BigOnYa @ BigOnYa:
    I just use a VPN, even give him my login and password so can use it also, and he refuses, he's funny.
  • BigOnYa @ BigOnYa:
    I had to find and get him an old style flip phone even without text, cause thats what he wanted. No text, no internet, only phone calls. Old, old school.
    BigOnYa @ BigOnYa: I had to find and get him an old style flip phone even without text, cause thats what he wanted...