08 February 2024

RetroArch Tutorial Part III - Usage 101 / Best Practices

After two tutorials on a proper RetroArch setup (Part I and Part II), this might be the most difficult Part III on best practices in RetroArch. Frankly, it's an attempt and I will see where this heads to.

Hello RetroArch!
I do hope it's fine to use your great logo here :-).

RetroArch Menu Styles

While I like the pragmatic new menu layout of ozone, you can also check the different layouts which RetroArch offers. Look for: Settings/User Interface/Menu (change requires a save and restart)

ozone - the standard MacOS menu

glui - the standard iOS menu

xmb - the former default menu, still such an eye candy!
But no tips in lower right corner.


Joypad Navigation

Although the RetroArch menus can also be navigated via keyboard and mouse, it clearly makes most sense with a joypad. This is why one of the first configurations is the proper joypad configuration. Modern RetroArch builds are very good in automatically configuring, however if your peculiar joypad is not fully configured, don't go any further until you have configured it perfectly.

Look for: Settings/Input/Retropad Binds/Port 1 Controls and verify that all standard settings are properly assigned to your joypad.

Always look to the lower right corner for hints how to navigate through the menus:


Hint: As you can see in this screenshot, I swap the OK button and the Back button, which is more of a PS4-way of thinking. You do this easily in Settings/Input/Menu Swap OK and Cancel Buttons ON.

Menu Toggle: Is by far the most important hotkey, as it brings you from a running game into the Quick Menu. Without it, you can get lost very fast during configuration, as you can access certain configuration steps only via the Quick Menu - particularly Configuration Overrides, Shaders and Remaps (see Part II).
Check for: Settings/Input/Hotkeys/Menu Toggle -> with PS4 controllers, it is very conveniently the PS button. You apparently need a button that isn' assigned for normal gameplay and that is actually supported by RetroArch.

Toggle Fast Forward: It's also a good idea to consider a fast forward hotkey on your joypad, e.g. for bypassing long cutscenes in games faster. Also this hotkey should be out of the way from other usage, e.g. the R3 Button (pressing the button on the right analoge stick) can be a nice candidate.
Check for: Settings/Input/Hotkeys/Fast Forward (Toggle) - choose and then press the correct button

Important Default Keyboard Hotkeys

Despite being joypad centric, certain hotkeys fit well or even better on the keyboard. Here is a list of hotkeys that are important for my own use case, so this is incomplete in any sense:

f                switch between window and fullscreen
space        toggle/end fast forward
esc/esc      quit RetroArch (without saving)
p                pause a running game

Four Ways To Run Games

Risking to state the obvious, let's list the ways to start games:

Load Content - the most basic way to run a game, and depending on the file ending, you can be asked for the correct core (this is always true for starting games that are in a zip file)
History - after a successful launch, you can apparently restart the game from the History Menu
Favorites - a rather loose collection of your current favs
Playlist - if you have created a Playlist, this is the most convenient way to start a game

Configuration Best Practices

Repeating my Survival Hint from Part I: Disable auto-saving your RetroArch configuration when exiting. While this is convenient, you risk your running configuration during testing a new setup. Without this being enabled, you can check out new configuration ideas, and if it does not reach the desired result, you simply exit RetroArch with Esc-Esc.
Head for: Settings/Configuration/Save Configuration on Exit -> OFF

Again stating the obvious: Only configure what you really understand. If you are unsure and just test, be sure that you do not save the configuration (see first hint above).

Keep a clean RetroArch configuration as spare configuration: Rename your ~/Library/Application Support/RetroArch directory temporarily (so that you do not loose your current config) and launch RetroArch newly. It will create a new RetroArch directory at this place. Now only configure your joypad config correctly, disable auto-save configuration at exit, but leave the settings otherwise unchanged. You now have a very clean RetroArch configuration to revert in case of troubles. Now rename this directory to your liking, e.g. RetroArch-clean and revert to your tweaked RetroArch directory by renaming it back.

Don't move away from default settings without actual need. From my long experience with RetroArch, the default settings are a good thing for most of your needs. In my Part I and Part II tutorials, I also try to stay at default settings to a maximum possible extent.

Stay simple with shaders. The shader library that RetroArch provides you is just overwhelming. Frankly it is too much to digest. When it comes to Arcade gaming, the following shaders are a good choice in MacOS (starting from the shaders_slang directory):
  • crt/crt-geom and crt/crt-geom-deluxe: The safe bet for beginners, very performant. You might know it from official MAME.
  • crt/crt-royale: High reputation in the community, but rather demanding.
  • bezel/koko-aio: My first choice allround shader for everything. Superior effects and perfect handling, some configuration required.
  • tbc...

Troubleshooting RetroArch

With the sometimes overwhelming options and capabilities, you may end up in troubles with RetroArch.

First, some configuration tipps & tricks in order to avoid troubles:
  • deactivate the "Save Configuration on Quit" option (see Part I of the turorial), but be sure to then manually save any config option you are sure about!
  • keep RetroArch up-to-date (don't be afraid of nightly builds)
  • frequently update assets/cores/controller profiles in the Online Updater (but not shaders, if you use custom shaders, such as my koko-aio derivative shaders
If nothing helps, see whether it's your own configuration of retroarch.cfg:
  • quit RetroArch
  • manually rename $HOME/Application Support/RetroArch - to RetroArch.backup
  • start RetroArch and begin from scratch -> a new folder with a clean retroarch.cfg is created 
  • try to find out whether your problem also exists with a fresh retroarch.cfg -> if the problem is no longer existing, it's your retroarch.cfg

Work in progress...should you like someting to be covered - drop a comment below.





No comments:

Post a Comment

Any comments are welcome!