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
848
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
174
Trophies
0
Age
24
XP
508
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
  • No one is chatting at the moment.
    Psionic Roshambo @ Psionic Roshambo: Taylor Swift death metal AI cover please lol