Skip to content

A collection of guides about Emulation on Steam Deck and more...

Notifications You must be signed in to change notification settings

AlexIndiex/DeckNoobGuides

Repository files navigation

DeckNoobGuides

A collection of guides that range from recommended peripheral hardware, to emulation and more...

Quick emulators backup link

BETA Emulators autoinstall script for Linux users:

The update.sh is a script to install and update Dolphin Developer, Cemu, Panda3DS, mgbaDev, melonDS, Ryujinx, RMG, Lime3DS, Sudachi, SkyEmu, citra-enhanced and citrapmk7 from their respective repositories.

Note

NOTE: I recommend getting Emudeck installed, because the script relies on a folder in your user directory, which is $HOME/Applications. But don't worry, if you don't want to, the script makes it for you!

Important

NOTE: The updater-v2.sh file is a work in progress new version of the current method of what the script does. In the current state it works and could replace the previous version while providing a much more clear notification output on what got updated, remained the same or even failed to download, at the cost of 6 times more pop-ups! (these pop-ups are for troubleshooting reasons, you could disable them by editing what notifications you dont want to get by simply modify notify "text here" to echo "text here" inside the script file); Also, this script uses another folder, which is $HOME/Apps: like the previous version, the script will make this folder for you! This change was made to have Emudeck and the emulators this script grabs in separated directories, so if something goes wrong, you dont have to reset your Emudeck's configuration!

To use the script, follow these steps:

  • Download the update.sh file;

  • Open Konsole terminal and type chmod +x $HOME/Downloads/updater.sh to give the .sh file permission to execute;

  • Now open the .sh file, it's going to download the latest builds in $HOME/Applications/ and notify you with pop-ups of what it got updated;

  • Now go to $HOME/Applications/ and link in your desktop the emulators (for Ryujinx link Ryujinx.sh from $HOME/Applications/publish/, for Lime3DS, citra-enhanced and citrapmk7 link .AppImage from their respective $HOME/Applications/ folders);

  • Add the .sh file and the new appimages to Steam and enjoy the latest updates.

Note

NOTE: When the script updates or installs Sudachi, it will also open in your browser another fork, Torzu, which doesnt have proper releases like the other emulators you get with this script, hence why I recommend grabbing the files yourself, either flatpak or appimage are the best options since the standalone executable works only with specific libraries.

Important

NOTE: ONLY Cemu, mgbaDev, Torzu, Lime3DS, citrapmk7, citra-enhanced and Ryujinx work with EmuDeck and SteamRomManager; SkyEmu, Dolphin Developer, melonDS and Panda3DS DO NOT, CHANGE ANYTHING AT YOUR OWN RISK.

Botw and Totk guides:

45fps BOTW on Cemu for SteamDeck.
  • Step 1: Install EmuDeck and Cemu with it. The appimage is advised due to compatibility in gaming mode.

  • Step 2: Put your ROMs into the EmuDeck folder inside /Emulation/ROMs/WiiU/ROMs. You need the base game and the latest update.

  • Step 3: Open Cemu, select File>Install game title, update or DLC and select the update and/or DLC file in the previously said path. The update should be called The Legend of Zelda Breath of the Wild (UPDATE DATA) (vXXX) and DLC The Legend of Zelda Breath of the Wild (DLC).

  • Step 4: In Cemu top-bar select Options>Graphics Packs. In this window, click on download latest community graphic packs. If Cemu finds a new version, install it and wait for it to be installed. Then open the Graphic Packs again.

  • Step 5: In the graphics pack window, select The Legend of Zelda Breath of the Wild and open all the drop-down menus except the cheats if you don't need them.

  • Step 6: In Mods, enable extended memory. Then in fps++, click on it and select mode>advanced settings. Set the frame rate limit to 40fps, cutscene fps limit to limit all cutscenes to 30fps, static mode to disabled, frame average to 6 frames averaged, fence type to performance fence. Now enable fps++.

  • Step 7: In Workarounds, enable grass swaying. Then in Enhancements, click on it and set reflection range to disabled. Then anisotropic filtering to medium. Now enable Enhancements. Now in Graphics set the anti-aliasing to none, shadows to low, shadow draw distance to medium or low, your choice here. Now enable Graphics.

  • Step 8: Restart Cemu and enjoy Botw :]

30fps TOTK on YuzuEA for SteamDeck.
  • Requirements: keys and firmware 16.0.3 or newer from your switch, base game and update 1.2.0, EmuDeck, and mods.

  • Step 1: Go into desktop mode, install Yuzu with EmuDeck (or use an alternative, like Sudachi or Suyu).

  • Step 2: Move the keys and firmware inside ~/Emulation/bios/yuzu/ if you prefer it.

  • Step 3: Move the ROMs into EmuDeck inside ~/Emulation/ROMs/switch/ and install the update.

  • Step 4: Open Yuzu, go into Emulation>Configure>Graphics in Graphics change vsync mode to fifo relaxed, move to the advanced tab and switch ASTC recompression to BC3, enable Enable asynchronous presentation and Force maximum clocks, switch VRAM usage mode to Aggresive everything else is stock.

  • Step 5: Download the zip file TOTK-1.2.0-30fps.zip and extract the content into the mods directory. With Yuzu right-click on the game and select open mod data location.

  • Step 6: Go back into gaming mode and make sure you set in the quick access menu :button_aux_1::button_aux_2: the GPU clock at 1200 and lock the FPS limiter to 30. With some decks decreasing the TDP to 11/13 watts helps with battery life.

  • Step 7: Enjoy your TOTK experience on Deck :]

[!NOTE] NOTE: the mods present in this repository are quite old, please use TOTK-Optimizer to update them with a new pack.

[!TIP] NOTE: if you are updating the mods or is the first time you are using them, clean all your pipeline shaders from TOTK in the remove section of Yuzu when you right-click on the title.

EXTRA

I made some lists regarding emulators, pc ports and utilities this repository follows to make backups of, you can find them here.

Accessories and Hardware Recommendations for SteamDeck.
  • Accessories you could need:

    • Screen protector (self-explanatory).
    • Cover or skin (self-explanatory).
    • Travel bag (self-explanatory).
  • Extra hardware you could need:

    • MicroSD (Samsung, SanDisk, Team-Group).
    • 2230 NVMe SSD for storage upgrade (Corsair, Sabrent, Western Digital).
    • 45w to 65w PD power bank (20000mAh capacity highly suggested).
    • External storage in case something happens with the microSD (ShargeDisk or a normal SATA to USB enclosure).
    • Monitor (LG, Alienware, Gigabyte).
    • Keyboard (Keychron, Akko/Epomaker, Wooting).
    • Mouse (Logitech, Pulsar, Endgame Gear).
    • IEMs (Moondrop, Tangzu, 7hz, Truthear).
    • Headphones (Sennheiser, AKG, Shure).
    • Portable DAC/AMP (Qudelix, Fiio, Moondrop).
    • Cables/hubs (Ugreen, Anker, StarTech).
    • Controllers (Flydigi, Gamesir, 8bitdo).
  • Extra programs you could like to have:

    • ProtonUp-QT (useful for compatibility layers other than Valve's Proton).
    • DeckyLoader (for plugins in gaming mode).
    • EmuDeck (wrapper to install everything you need for emulation).
    • Discord/Vencord (self-explanatory).
    • Vivaldi (better alternative to Chrome).
    • Lutris (to install non-Steam games from other launchers or sources).
    • Heroic Launcher (to install EpicGames and GOG Galaxy games).
    • Prism Launcher (to install Minecraft Java).
    • LibreOffice (Microsoft Office alternative).
    • OnlyOffice (Microsoft Office alternative).
    • VLC media player (media player for audio and video files).
    • OBS (recording and streaming program).
    • KdenLive (Adobe Premiere alternative).
    • Krita (Adobe Photoshop alternative).
    • Gimp (Adobe Photoshop alternative).
    • Bottles (similar to Lutris but only for simple exe programs that don't need many dependencies).
    • Flatseal (Flatpak's permissions manager).
    • ProtonTricks (side loader for dependencies needed for certain games).
    • DeckThemes (CSS Loader of DeckyLoader but for desktop Steam).
EmuDeck Setup Guide (prior Citrus death).
  • Files and programs you need:

    • EmuDeck.
    • BIOS files (needed for PS1, PS2, Nintendo Switch, Nintendo DS/DSi, Sega CD, Saturn, and DreamCast emulation).
    • ROM files (for the systems you want to emulate).
    • Free storage (either on your internal storage, microSD, or external storage).
    • An internet connection (kinda obvious).
  • Other things you might need:

    • Dock or hub (for multiple devices connection).
    • Mouse and keyboard (useful for navigation).
    • External drive (either for moving files or using it for EmuDeck).
    • Syncthing (if you care for syncing files between different PCs).
    • Warpinator and Winpinator (if you don't have an external drive to move your files).
    • Mods and Cheats (you either rely on communities or dedicated sites).
    • DeckyLoader for PowerTools (it can be installed with EmuDeck).

Now let's get started with the installation process:

  • Initial EmuDeck installation:
    • In Desktop Mode, download EmuDeck.desktop and move it to your desktop window.
    • Double click it. It will start installing EmuDeck (and only EmuDeck). You'll notice the previous file being replaced with a new one with the EmuDeck logo. Once it finishes, it's going to open the program for you.
    • Select either quick or custom installation. The difference between the two is the ability to choose what emulators you want to install. The first one installs everything EmuDeck offers support for, while with the second, you can just install the emulators you care for.
    • Select where you want to install your emulation folder (Which contains the aformentioned emulators based on the selection you made), the aspect ratio for your emulators (I would recommend using the original aspect ratio of each system so you won't encounter graphical glitches), the EmulationStation's theme and whether you want homebrew games or not. Now click the finish button and let EmuDeck install everything you chose.

It's time to move your files:

  • [DISCLAIMER] In this section, I will tell you where to move your files with an external drive since it's the fastest way to do it. If you want to do it in any other way, please refer to the embedded links in Syncthing, Warpinator, and Winpinator:
    • Open Dolphin, the file explorer (not the emulator), and navigate to your drive where you installed EmuDeck. You're gonna find a folder named Emulation. Right-click on it and open it in a new tab. While you are in it, open a new tab for both BIOS and ROMs folders. Now return to the first tab and open the drive where you have the files you want to move. Now you should have 4 tabs: the drive of your files, the emulation folder, BIOS folder, and ROMs folder. You can close the emulation folder if you don't have any kind of save file or texture pack to move.
    • You can start moving your BIOS files from your drive to the BIOS folder. The only files that need a deeper location are your Nintendo Switch's keys and firmware files, which you can move to both Yuzu and Ryujinx folders (Ryujinx needs the firmware installed instead). (For any other emulator, please refer to the EmuDeckWiki).
    • You can start moving your ROMs from your drive to the ROMs folder. Inside of it, you're going to find out that each system has a folder for its ROMs. You can read a text file inside each of them to know what ROMs' format each emulator supports. I would recommend creating an update folder for modern systems (like 3DS, WiiU, Switch, PS3, Xbox360, Xbox) that support update ROMs for your games in /Emulation/ROMs/ (please pay attention to folders like WiiU; you're gonna find another ROM folder inside of it, and you need to move your ROMs there instead of just /Emulation/ROMs/WiiU/).

You can now open EmuDeck again and start installing extra programs you might need to get everything working in the best way:

  • [DISCLAIMER] Please install DeckyLoader to have access to EmuDeck specific plugins.
    • Let's start by checking your BIOS files. Select the BIOS checker section and make sure the box for the emulators you need a BIOS for is green. If it's not, make sure to redumping it.
    • If you want to use the gyro controls for emulators that need it or support it, open the gyroscope section. You're gonna need a sudo password. If you have not set a password, this page will prompt you to create one. Insert it and click install. Once the terminal closes, you can go back to the main page.
    • Next, you're gonna need PowerTools for emulators like Yuzu and Dolphin-emu, mainly to disable SMT, the multi-thread process of Deck's APU, since in SteamOS 3.4 it's bugged. Go to the PowerTools section and install it the same way as the gyroscope section (same process for DeckyControls, a plugin to quickly check each emulator's controls and hotkeys).
    • For better WiiU emulation, I would recommend installing Cemu native, known as Cemu appimage. You can get it in manage emulators > Cemu > install Cemu appimage.
    • Add your emulators and ROMs to Steam with SteamRomManager so you will be able to play them in GamingMode. There is a shortcut on the initial page of EmuDeck. Click it. It's going to prompt that it's closing Steam for you. If your controls don't work after clicking yes, please use a mouse to navigate your Deck for this process. Wait for SteamRomManager to boot. Once it opens, go to settings > theme > change it from EmuDeck to classic for easier navigation. You can either leave everything on or turn off the toggle parsers' toggle and turn on only the toggles for the systems you want to add to Steam. Once you're done choosing, click preview > parse. Wait for the program to retrieve the URLs for the artworks. Once it's done, click save to Steam. Now click on the log tab and wait for SteamRomManager to finish saving everything to Steam. Once it's done, close it, and open Steam.
    • You can now either go back to GamingMode, installing your ROMs updates for your emulators, or fixing Dolphin-emu and Suyu/Yuzu gyro controls. For this last point, please refer to the following links:

[!NOTE] BTW, don't update EmuDeck, or you will lose Citrus' entries for SteamRomManager if you try to parse newer games,

but if you did, the way SteamRomManager parsed Yuzu is:

  • For Windows: "C:\Windows\System32\cmd.exe"" /k start /min "Loading PowerShell Launcher" "C:\Windows\System32\WindowsPowershell\v1.0\powershell.exe" -NoProfile -ExecutionPolicy Bypass -Command "& {C:\Emulation\tools\launchers\yuzu.ps1 '-f' '-g' 'C:\Emulation\roms\switch\[rom].nsp'}" && exit " && exit --emudeck in target;

  • For Linux: "/home/deck/Emulation/tools/launchers/yuzu.sh" in target, and vblank_mode=0 %command% -f -g "'/home/deck/Emulation/roms/switch/[rom].nsp'" in launch options;

meanwhile for Citra is:

  • For Windows: "C:\Windows\System32\cmd.exe" /k start /min "Loading PowerShell Launcher" "C:\Windows\System32\WindowsPowershell\v1.0\powershell.exe" -NoProfile -ExecutionPolicy Bypass -Command "& {D:\Emulation\tools\launchers\citra.ps1 'D:\Emulation\roms\n3ds\[rom].cxi'}" && exit " && exit --emudeck in target;

  • For Linux: "/usr/bin/flatpak" run org.citra_emu.citra "/home/deck/Emulation/roms/n3ds/[rom].cxi" in target for Citra flatpak; your citra-qt.appimage path here in target, and vblank_mode=0 %command% "'/home/deck/Emulation/roms/n3ds/[rom].cxi'" in launch options for Citra Appimage(similar to yuzu SRM for Linux);

If you need the middleware files used by SteamRomManager, you can find them in the Citrus folder.

[!IMPORTANT] These values go into the properties when creating a new entry for a Non-Steam game/app.

Miscellaneous content.
All the links below are the references to make the backup of the link above.