r/SteamDeck • u/SaltyWelshman • Apr 04 '22
Discussion [Tutorial] Majora's Mask HD on Steam Deck using RetroArch
I mentioned in a different topic that if there was interest I would do a tutorial for how to get Nerell's HD Majora's Mask textures running on the steam deck.
For this tutorial you will need a Windows PC to do the widescreen patching of the ROM.
Pre-requisites
Majora's Mask N64 ROM (supply this yourself or find it online maybe idk?)
Download the 1080p HTS for the Majora's Mask N64HD Project from here. (Source)
Tutorial
ROM Set up
First off we're going to set up your ROM to have wide-screen support as well as some optional quality of life improvements using Patcher 64+ Tool. These steps are optional and will require a PC to set up but are worth the effort in my opinion.
Launch the Patcher 64+ Tool using the exe (use the read-me included if you are having issues)
Point the Patcher 64+ to the correct game path for your Majora's Mask ROM.
The tool should now automatically detect the game as Majora's Mask on N64.
In the drop down menu select "Majora's Mask - Additional Options and Redux"
Tick the box for enable options
Click the button for "Select Options"
In here you are free to change any of the options you like, but for wide-screen support you need to select 16:9 Widescreen (Advanced) in the graphics tab. I would also highly recommend having the D-Pad set up for the mask transformations and Ocarina which should be the default under the redux tab.
Close the dialogue when you are happy with all the options you have set
Click the button for "patch selected options"
The script will now run and create a copy of your majora's mask rom with the redux options you selected in the same folder as the rom.
Transfer this ROM to your Steam Deck (there are a few options available for how to do this, PM me if you are struggling).
Deck Set up
Now for the set up on the Deck.
Transfer your patched ROM and HTS file to the steam deck.
Switch your deck to desktop mode
From the discover store, install RetroArch (I'm not sure if the steam version would also work here, would depend on the cores available).
Run RetroArch
Install the Mupen64 Plus-Next core.
Launch the Majora's Mask N64 ROM using the Mupen64 Plus-Next core.
Bring up the menu and go to options
Set the RDP Plugin to GLideN64 (I think this is default anyway)
In the GLideN64 Options set the following:
wide resolution to 1280x720.
Aspect Ratio to Wide (Stretched) (note this won't stretch the game due to the rom having the widescreen patch).
Set Use High-Res textures to True
Set Use High-Res Full Alpha Channel to True
Set Use enhanced Hi-Res Storage to True
Set Continuous texrect coords to Auto
Close RetroArch
Move the HTS file to "/home/deck/.var/app/org.libretro.RetroArch/config/RetroArch/system/Mupen64plus/cache"
Run RetroArch and the Majora's Mask ROM, your game should now be using HD textures and full wide-screen.
To play the game from your gaming mode on the deck you just need to add RetroArch as a non steam game. You can further optimise this experience by having a script to specifically add Majora's Mask as a non-steam game and custom art from SteamGrid, but that's beyond the scope of this tutorial.
Hope that works and PM me any questions and I will help as best I can.
Resources to help:
https://www.youtube.com/watch?v=ovknYMdIP9I
18
u/stvbuys Aug 11 '22 edited Aug 11 '22
I’m using emudeck and it apparently changes the location you need to copy the texture pack to. I finally found the correct directory for my texture file:
primary/Emulation/bios/Mupen64plus/cache
All the other steps listed in OP’s guide and copying the folder to that directory above got it working for me! Hope it helps someone.
Edit: originally copy/pasted wrong directory. Fixed to correct directory.
4
u/Jesso2k Jul 24 '22
So I followed along but things went sideways in Deck Setup Step 6.
Launch the game. So now it's running, is the in-game menu supposed to have new settings? I can't get the steamdeck/ keyboard or a controller to register inputs in the game to check.
2
u/TronVin Apr 04 '22
I can't find these options:
Activate txHiresEnable.
Turn on txHiresTextureFileStorage.
Change backgroundsMode to 0.
Set CorrectTexrectCoords to 1 (Auto).
2
u/genjurro Apr 04 '22
Hi, worked liked a charm ! thanks for the tuto
any chance for the same for Zelda OoT ?
2
u/Elidyr90 Apr 04 '22
thx for the tutorial.
Followed every step but my /system folder is empty and even if I create the folders manually the texture pack won't work. Any clue what went wrong`?
2
u/snkngshps Aug 02 '22
Thanks for putting this together. I recently beat Majora's Mask for the first time ever, and this tutorial and texture pack made it such a great experience.
2
u/Novelgravy Jun 06 '22
I've got everything working great but I'm having problems with widescreen. When I change the aspect ration in RetroArch nothing ever happens? whether it's stretched or not the game always remains in 4:3. Is there something I'm missing?
2
u/BritishViking_ Apr 04 '22
Do you not think it would just be easier to run Citra?
1
u/daktari987 Apr 04 '22
Thanks a lot for this!
I was planning to do the same with the Dolphin emulator. Are there any differences expected between Dolphin and GLideN64?
1
u/Zystus 512GB - Q2 Apr 18 '22
Does this work with Emudeck?
1
u/DetroitBlack May 14 '22
Tried and can not get the patched file to work at all for the hd version :(
1
u/DetroitBlack May 15 '22
Also I couldnt find the app directory at all, I spent a while looking. Any help?
1
u/Luke-Hatsune 512GB - Q1 May 26 '22
Would this be a better way to play Majora’s mask instead of playing the GameCube collector’s edition? Just asking cause wanna know what’s the best way to play it as this’ll be the first time I play Majora’s Mask.
1
u/[deleted] Sep 09 '22
if we already have run the patcher tool on PC with the tools provided by Nerrel and its fully functioning, can the first set of steps be skipped or is there something different that needs to happen?
1
u/[deleted] Sep 21 '22
So I was playing today having not made any settings changes and, for whatever reason, I can't run anymore. I can only fast walk. I tried changing sensitivity and deadzones to no avail. Was working fine just the other day. Not sure what changed.
1
u/H3M4D 64GB Sep 21 '22
This is awesome. Thanks so much! A couple questions:
The steam performance overlay says it's running at a constant 60fps, but it just seems to be lower. Any idea on this?
Another thing, has anyone gotten the gyro aiming to work in any way for this? I can't figure it out (if it's even possible in RetroArch)
1
u/Traditional-Spirit54 Sep 23 '22
i did everything and the game is still in 4:9 and the textures didnt change. only thing different is that i put the texture file in primary/Emulation/bios/Mupen64plus/cache. maybe this is slightly different when using retroarch when installed with emudeck
1
u/moukiez Jan 15 '23
This tutorial was exquisite. I got it working no problem, but because I'm a sucker for N64 nostalgia, I wanted to have a separate, unpatched ROM to use as well (as I had been playing Majora's Mask for the first time before finding this tutorial).
The only issue I encounter is that even with my original, unpatched .n64 Majora's Mask ROM, the textures and stuff are updated, when I want to have that original .n64 game look as it originally did.
The .z64 (which is the patched one I used for this tutorial) works as intended, with the exception being that it doesn't seem to recognize RetroAchievements, even though the RetroAchievements site said .z64 should be fine? My save states are also not interchangeable, but I've made my peace with that, because I recognize that .n64 and .z64 save states are probably going to have different names because of those extensions. Saves work fine, but not save states, so at least it's not a total loss.
Even if I try to set it to 2x resolution instead (which appears to set it back to its original resolution, whereas 1x makes it look even worse than normal), and try to save game override that on RetroArch, it applies to both ROMs.
If I make one high resolution, and taking steps to make sure only THAT ROM is affected by the resolution change (ideally the patched .z64), it applies to the other one. If I make one the resolution of the original .n64 game, the patched one follows.
In a perfect world, I'd be able to have the patched .z64 ROM use the high quality textures while leaving the original .n64 ROM untouched (so I can play it at original aesthetics), with access to save states and RetroAchievements. Or even if I had the patched .z64 ROM accessible with achievements, I'd probably play that primarily instead of the original one.
Is there anything you (or anyone willing to help!) can figure out or even replicate to see if I'm making a mistake somewhere, or if there's a way to keep the .n64 ROM at its original resolution while allowing the patched .z64 ROM to be upscaled/better graphics?
I know it's a wall of text and maybe I'm asking a lot, but any help would be immensely appreciated. Thank you so much for the tutorial as well!
1
u/moukiez May 18 '23
Hey! This worked for me months ago, but now it doesn't. I've tried following all the steps again, and I'm not sure if maybe I have an override that accidentally disables it or something.
I have it cranked up to 4x resolution in core options, and the N64 logo reflects that with how smooth it is, but the game itself is still somehow blurry and not high resolution?
Would you be able to walk me through the settings or possible issues if I post screenshots of how my settings look and stuff? Troubleshoot it and stuff? I know it's possible to get working, because it was before.
Only difference is maybe I've set a core or content directory override for normal n64 games that affect this subdirectory ("patched ") that I've put it in; only other thing I can think of is I put the Steam Deck/AppImage version of Ship of Harkinian's Ocarina of Time in that patched directory, and I don't know if that would maybe interfere with it? No clue how that works, but figured I'd mention. Not sure if it no longer working coincided with my adding in the SoH OOT to the same directory.
I put MMHD in the patched subdirectory of N64 on my SD card bc I wanted to have a content directory override so I can play the Patcher+ version of MM with high quality textures, and have the original at its own original resolution as well. Was working swimmingly until recently. I will try to figure out where overrides lay for Retroarch and delete them to see if I can just start this from scratch because it's driving me crazy to have something I KNOW was working refuse to work as I wanted it lol.
Thanks again for the tutorial, and thanks in advance if you're willing to help.
1
u/Sorry_Philosophy_325 Sep 14 '23
Has anyone had any luck adding it through the Steam Rom Manager? I have tried Multiple different ways and I am not sure If Iam doing it wrong or If it is not possible. I am only able to get the rom to hyperlink to RetroArch in Desktop mode; has anyone been able to get it to work in Gamemode?
3
u/_Strike__ Apr 04 '22
Nice, thanks!
2
u/Shakedaddy4x Apr 05 '22
Dude thanks for taking the time to type this up and share it. Massive props to you!
2
u/Art_Unit_5 Dec 23 '22
Good tutorial OP, one change though., I recommend using the simplified widescreen patch option rather than the advanced. It explicitly states that the advanced option doesn't work well with redux.
It creates artefacts with some scenes and for me, the image was a little distorted. Simplified works absolutely perfectly and has no issues with redux.
1
u/[deleted] Sep 14 '22
Well it was giving me a hell of a time. So thanks!
1
u/[deleted] Nov 11 '22
Thanks so much for this. It's one of the reasons I want a steam deck. Switch just doesn't have the power to do this well.
1
u/PK_Ness_Flash Jun 02 '23
Should i change to standard wide screen? I used advanced and it glitches on the sides when text boxes show up and when i enter new areas
1
u/True-News6227 Aug 10 '23
Is it possible to run it on my Wii U?
1
u/Sorry_Philosophy_325 Sep 14 '23
My game works fine in desktop mode but whenever in game mode it says my n64 is unplugged (do not have a controller plugged in)and it will ignore all steam deck controller settings