Difference between revisions of "Retroarch"

From OoT Randomizer Wiki
(Tips: add fps stuff)
m (move remap controls above gamecube controller stuff)
Line 60: Line 60:
  
 
If your controls don't feel quite right, while running the ROM press <kbd>F1</kbd> to access the <kbd><samp>Quick Menu</samp> ⇒ <samp>Options</samp></kbd> menu. If your stick causes input without you trying to, change the <samp>Analog Deadzone</samp> to <kbd><samp>10</samp></kbd> or higher if that is not enough. If you aren't able to both walk and run increase <samp>Analog Sensitivity</samp> to make it easier to run. Decrease it to make it easier to walk.
 
If your controls don't feel quite right, while running the ROM press <kbd>F1</kbd> to access the <kbd><samp>Quick Menu</samp> ⇒ <samp>Options</samp></kbd> menu. If your stick causes input without you trying to, change the <samp>Analog Deadzone</samp> to <kbd><samp>10</samp></kbd> or higher if that is not enough. If you aren't able to both walk and run increase <samp>Analog Sensitivity</samp> to make it easier to run. Decrease it to make it easier to walk.
 +
 +
=== Remap Your Controls ===
 +
You'll probably need to customize your controller inputs by loading your ROM and pressing the <kbd>F1</kbd> key to bring up the RetroArch <samp>Quick Menu</samp>. Choose <kbd><samp>Controls ⇒ Port 1 Controls</samp></kbd>. Highlight the control on your controller on the left side and press <kbd>←</kbd> and <kbd>→</kbd> to cycle through the available N64 controller options on the right side.
 +
 +
Make sure <samp>C-Buttons Mode</samp> is not bound to any of your controls. This is intended for controllers without enough buttons/a right analog stick to map C-Buttons to and usually causes controller issues.
 +
 +
==== Gamecube Style C-Buttons ====
 +
If you want to emulate the Gamecube controller's style of C-Buttons, where they are bound to the right analog stick and the the extra face buttons on your controller, you need to enable another setting. Press <kbd>F1</kbd> to open the <samp>Quick Menu</samp> and scroll down and select <kbd><samp>Options</samp></kbd>. Scroll down and switch the <samp>Independant C-button Controls</samp> from <samp>False</samp> to <kbd><samp>True</samp></kbd>. This will add controls like <samp>C-Down</samp> and <samp>C-Up</samp> to the right side of the Controls remappings.
 +
 +
Head back to the <samp>Quick Menu</samp> and go over to <kbd><samp>Controls</samp> ⇒ <samp>Port 1 Controls</samp></kbd> and map your face buttons to the <samp>C-*</samp> options, and your right analog stick to the <samp>C Buttons *</samp> analog control values.
  
 
=== GameCube Controller Setup ===
 
=== GameCube Controller Setup ===
Line 91: Line 101:
 
RetroArch-GameCube-vJoyDeviceNumber.png|2. vJoy Device #4 was the correct one for this time.
 
RetroArch-GameCube-vJoyDeviceNumber.png|2. vJoy Device #4 was the correct one for this time.
 
</gallery>
 
</gallery>
 
=== Remap Your Controls ===
 
You'll probably need to customize your controller inputs by loading your ROM and pressing the <kbd>F1</kbd> key to bring up the RetroArch <samp>Quick Menu</samp>. Choose <kbd><samp>Controls ⇒ Port 1 Controls</samp></kbd>. Highlight the control on your controller on the left side and press <kbd>←</kbd> and <kbd>→</kbd> to cycle through the available N64 controller options on the right side.
 
 
Make sure <samp>C-Buttons Mode</samp> is not bound to any of your controls. This is intended for controllers without enough buttons/a right analog stick to map C-Buttons to and usually causes controller issues.
 
 
==== Gamecube Style C-Buttons ====
 
If you want to emulate the Gamecube controller's style of C-Buttons, where they are bound to the right analog stick and the the extra face buttons on your controller, you need to enable another setting. Press <kbd>F1</kbd> to open the <samp>Quick Menu</samp> and scroll down and select <kbd><samp>Options</samp></kbd>. Scroll down and switch the <samp>Independant C-button Controls</samp> from <samp>False</samp> to <kbd><samp>True</samp></kbd>. This will add controls like <samp>C-Down</samp> and <samp>C-Up</samp> to the right side of the Controls remappings.
 
 
Head back to the <samp>Quick Menu</samp> and go over to <kbd><samp>Controls</samp> ⇒ <samp>Port 1 Controls</samp></kbd> and map your face buttons to the <samp>C-*</samp> options, and your right analog stick to the <samp>C Buttons *</samp> analog control values.
 
  
 
== HiRes Texture Packs ==
 
== HiRes Texture Packs ==

Revision as of 02:33, 22 May 2020

by Raizuto

RetroArch is the only cross-platform emulator supported by the Ocarina of Time Item Randomizer staff, and the number 1 recommended emulator regardless of platform. It is also possible to use it to play a vast number of platforms other than N64 as well. This might just make it your emulator of choice once you get used to using it.

Installing RetroArch

RetroArch Downloads Page and Download Stable button

Head over to the RetroArch downloads page and click the button labeled Download Stable Run the installer file it downloads.

Windows Specific Installation

On Windows you may get a popup when trying to run the installer that warns you if you do not have DirectX 9.0c installed1. Press OK to continue. Click Next > until it asks you where you would like to install RetroArch2. The default path should be C:\Users\<yourusername>\AppData\Roaming\RetroArch. If it does not display this location it is recommended to copy and paste the following text into the box: %AppData%\RetroArch and then continue clicking Next >. Soon you will see the Choose Components screen3. Make sure you click the checkbox next to DirectX 9.0c Runtime before clicking Next >. Keep clicking Next > until the Install button appears. Once you click Install RetroArch will begin installing.

Before RetroArch finishes installing it should pop up the DirectX installer. Click Next > until you get to the screen offering to install the Bing Bar4. You should uncheck Install the Bing Bar before clicking Next >. Once you finish the DirectX installation the RetroArch installation will finish as well.

Install a RetroArch Core

You should now be at the Main Menu of RetroArch1. You can switch between the different menus on the left side of the screen when you are on the top-most sub-menu of a menu. If you can't see the left sidebar with the different menus listed and you need to switch which menu you are in, you can press Backspace, X, or the Right Mouse Button until you see it again. To open a menu, submenu, or option you can press Enter or Z while it is highlighted, or Left Mouse Button while hovering over it. Keep in mind that these are the default controls in RetroArch. If you change these keyboard bindings in the Settings menu, you'll have to use the buttons you bound to A or Start to select, and the buttons you bound to B or Back to go back to the previous menu. Using the mouse controls should always work properly, so we will assume you are using them throughout the rest of the guide.

On the Main Menu click on the Load Core option. In the Load Core submenu, you will normally see your installed cores. Since you just installed RetroArch you won't see any. Click the Download a Core option2. In the Core Updater menu that appears, scroll down to the Nintendo - Nintendo 64 options. It is recommended that you choose the Nintendo - Nintendo 64 (ParaLLEl N64) core option3. You can also choose the Nintendo - Nintendo 64 (Mupen64Plus-Next) core option if you want, but be aware that the it can have the following issues: Mupen64Plus Next Freezes and Mupen64Plus Next Epona Carrots. Windows Users: the Nintendo - Nintendo 64 (Mupen64Plus-Next GLES3) option should not be chosen. This is a special build of the Mupen64Plus-Next core intended to run on XBox One devices. It will not run on Windows PCs.

Configure RetroArch

From the top menu level of the Main Menu click on the Settings menu below the Main Menu in the sidebar on the left. Scroll down to Saving and change SaveRAM Autosave Interval1 to 10 seconds by clicking it, and the scrolling down to 10 seconds.

Next, go back to the top level menu of Settings. Scroll down and select the option Directory2. In the menu this opens scroll down and select the option called File Browser3. You will be presented with an overview of your system partitions. Navigate through your computer files to the folder you keep your ROMs in. They will not show up yet. Choose Use this directory4 anyway. Most browsers will save your randomizer ROM to your Downloads folder by default5. However, if you are using the downloaded version of the Ocarina of Time Randomizer the default location for your patched ROMs is a folder called Output next to the .exe file you double click to start the randomizer.

Once you have finished configuring RetroArch you must properly restart it. Do not press Esc or the X in the top right corner. Go back to the Main Menu and move all the way down to the option near the bottom Quit RetroArch6. Once you reopen RetroArch go to Load ContentStart directory. You should now see your ROMs7. When you choose one of your ROMs it may ask you which core you want to use if you downloaded more than one of them. It is recommended that you choose Nintendo - Nintendo 64 (ParaLLEl N64)8 for the most stable experience.

Keyboard Configuration

If you are going to use a controller, skip this section.

Head to SettingsInputPort 1 Input Binds. An example of some control binds when using a keyboard can be found here.

Controller Configuration

On Windows you'll want to ensure your controller is properly calibrated. Press the ⊞ Win key to open the start menu, and type USB Controller. Set up USB game controllers should appear and be highlighted. Click on it to launch the Windows controller configuration tool. Choose your controller and press Properties. Move your control stick to ensure you're on the right controller. If you don't see any movement, click Cancel and try going to the properties of another controller.

If it doesn't look like your control stick is reaching the edge of the testing square, switch to the Settings tab. If there is not a Settings tab then your controller's driver may use its own UI here. If so you may not be able to properly calibrate your controller. You may want to try to uninstall your controller driver in that case to try to get the default Windows controller UI.

On the Settings tab, first click Reset to default then click on Calibrate.... Follow the on screen instructions, ensuring that you're trying the correct analog axis on each step. You'll generally test both left stick axes on the first screen. The following will be a mixture of right stick up/down, right stick left/right, left trigger, and right trigger.
Note: If you are using a GameCube Controller, the left trigger and left bumper are combined, and so are the right trigger and right bumper. Ensure you don't accidentally hit the bumper while calibrating the trigger axes. When the GameCube controller clicks is when you have hit the "bumper" button.

If your controls don't feel quite right, while running the ROM press F1 to access the Quick MenuOptions menu. If your stick causes input without you trying to, change the Analog Deadzone to 10 or higher if that is not enough. If you aren't able to both walk and run increase Analog Sensitivity to make it easier to run. Decrease it to make it easier to walk.

Remap Your Controls

You'll probably need to customize your controller inputs by loading your ROM and pressing the F1 key to bring up the RetroArch Quick Menu. Choose Controls ⇒ Port 1 Controls. Highlight the control on your controller on the left side and press and to cycle through the available N64 controller options on the right side.

Make sure C-Buttons Mode is not bound to any of your controls. This is intended for controllers without enough buttons/a right analog stick to map C-Buttons to and usually causes controller issues.

Gamecube Style C-Buttons

If you want to emulate the Gamecube controller's style of C-Buttons, where they are bound to the right analog stick and the the extra face buttons on your controller, you need to enable another setting. Press F1 to open the Quick Menu and scroll down and select Options. Scroll down and switch the Independant C-button Controls from False to True. This will add controls like C-Down and C-Up to the right side of the Controls remappings.

Head back to the Quick Menu and go over to ControlsPort 1 Controls and map your face buttons to the C-* options, and your right analog stick to the C Buttons * analog control values.

GameCube Controller Setup

MayFlash GameCube Adapter

Make sure the switch on the back of your controller is set to PC. If you just downloaded RetroArch the controller should just work. If not, go to Online Updater on the Main Menu and choose Update Joypad Profiles. Once it finishes downloading and extracting the zip file, restart RetroArch.

Your controller should now be working. If it isn't you can try the different controller ports or go to SettingsInputPort 1 Input Binds. Highlight Device Index and press or to choose the correct MAYFLASH Controller number.

Official GameCube Adapter

If you are using the official GameCube adapter by Nintendo you'll have to install the zadig custom driver and vJoy. You can see how to do this over on the Bizhawk guide. Once you have installed this, continue to the section on using the custom drivers with RetroArch.

Third Party GameCube Adapters

It is important to know if you are using the original driver, or the custom drivers that use vJoy to allow you to use the adapter with other software. If you use this adapter with Bizhawk then you probably are using the custom drivers and should skip to the section on using the custom drivers with RetroArch.

These settings will work for the adapters that emulate the official one but do not have the custom zadig driver installed. If it has a switch on the back make sure it is set to Wii U/NS mode.

RetroArch with the hid option selected.

Go to SettingsDrivers and change Joypad Driver to hid. Restart RetroArch and the adapter should just work.

Using Custom Drivers (Zadig)

Make sure the GCN USB Adapter program is running.

Start RetroArch and go to SettingsDrivers and make sure Joypad Driver is set to xinput. Then use the Quit RetroArch option in the main menu to properly close RetroArch and save your new configuration if you changed it.

You'll want to save this configuration file as vJoy_Device_GameCube.cfg in your RetroArch XInput autoconfig directory. You should find this folder by pasting %AppData%\RetroArch\autoconfig\xinput in the Windows Explorer address bar and pressing Enter. Once that file is in place start RetroArch. You should get a message saying something like vJoy device #1 configured in Port #0.

If your controller is not working still, click on the Windows Gamepad Info button to bring up the list of connected controllers on your computer.1 The vJoy gamepads should be in order of what number RetroArch is expecting. Try each one by clicking it's entry, pressing the Properties button and moving the control stick. Whichever on causes the cursor in the square to move is the number you want to remember. Go back to RetroArch and head to SettingsInputPort 1 Input Binds. Highlight Device Index and press or to choose the correct vJoy Device number.2 You may have to do this every time you restart the driver application.

Your controller should now be working.

HiRes Texture Packs

Keep in mind texture packs are not allowed to be active for races. HiRes Texture Packs

Tips

  • To unbind any button/key hit the Delete key on your keyboard in the input settings.
  • Never close RA via it’s top right X, close it from far left Main Menu Quit RetroArch.
  • If you want RetroArch to keep running in the background, go over to the Settings column in the menu, then down to User Interface, hit Enter and set Don’t run in the background to OFF.
  • To enable the FPS display, go to SettingsOn-Screen DisplayOn-Screen Notifications and switch On-Screen Notifications to ON if it is not already. Then, change Display Framerate to ON.
  • To be able to position the FPS counter, go to SettingsOn-Screen DisplayOn-Screen Notifications and set Graphics Widgets to OFF and then restart RetroArch.


If your controller does not have a default profile or you are using a keyboard, the following information may be helpful.

  • Don't alter the Main Menu bindings for controllers that have default profiles. Open the Quick Menu and change the button mapping there instead.
  • Left side user input binds (the Delete key will delete any binding)
    • B button is equivalent to N64 A Button
    • Y button is equivalent to N64 B Button
    • L2 button (trigger) is equivalent to N64 Z Button
    • L1 is equivalent to N64 L
    • R1 is equivalent to N64 R
    • Movement:
      • Left analog X+ = Right
      • Left analog X- = Left
      • Left analog Y+ = Down
      • Left analog Y- = Up
    • C-Buttons/C-Stick:
      • Right analog X+ = C-Right
      • Right analog X- = C-Left
      • Right analog Y+ = C-Down
      • Right analog Y- = C-Up

Common Issues

There are several issues that crop up often when new users try out RetroArch.

My A and B Buttons Are Swapped On The Menu

Go into SettingsInputMenu Controls and change the Menu Swap OK & Cancel Buttons option.

No Audio

Go into the SettingsDrivers menu and change the Audio Driver from xaudio to dsound. Then quit RetroArch properly via the Main Menu and restart it.

RetroArch crash when loading ROM

If using the Nintendo - Nintendo 64 (Mupen64Plus) core, try the Nintendo - Nintendo 64 (ParaLLEl N64) core instead. If using the Nintendo - Nintendo 64 (ParaLLEl N64) core, try the Nintendo - Nintendo 64 (Mupen64Plus) core instead.

Mupen64Plus Next Freezes

This is an issue with certain versions of the Mupen64Plus Next core. To help reduce how often this bug happens you can try changing the CPU core. After loading a ROM press F1 to open the Quick Menu. Under Options Move down to CPU Core and press the arrow key once. The selection should change from dynamic_recompiler to cached_interpreter. If it does not, just press the key again.

Once you have changed the option, choose Restart in the Quick Menu. Your Mupen64Plus Next core should be running with the more stable, albeit slightly slower, cached interpreter.

Mupen64Plus Next Epona Carrots

This is a side-effect of the quick-fix done to solve the above issue in certain versions of Mupen64Plus Next. When this occurs your ability to play the game as normal is slightly hindered, but still playable. To restore normal functionality you will have to save the game, press F1, go down to Close Content and press Enter. This will either close the ROM and emulator core, or crash the emulator. Both outcomes are fine and relaunching the ROM you were playing will no longer have the Epona carrots displaying.

Note: Selecting Restart will not remove the carrot display. This may be due to the core's reset being hardcoded to be a soft reset. You must choose Close Content.

To help reduce how often this bug happens you can try changing the CPU core. After loading a ROM press F1 to open the Quick Menu. Under Options Move down to CPU Core and press the arrow key once. The selection should change from dynamic_recompiler to cached_interpreter. If it does not, just press the key again.

Once you have changed the option, choose Restart in the Quick Menu. Your Mupen64Plus Next core should be running with the more stable, albeit slightly slower, cached interpreter.

Boots are equipped / Ocarina pulled out randomly while walking

Go to the SettingsInputPort 1 Input Binds menu and set Analog to Digital to None

One of My Buttons Won't Work

If you messed with the Main Menu User Input Binds you likely configured something wrong. It is not recommended to ever modify controller binds this way unless your controller doesn't have a built in profile. To reset your controller bindings to their default you have to load the default RetroArch.cfg again.

If you have a ROM loaded, start by pressing F1 to open the Quick Menu then press Backspace to get back to the Main Menu.

Go to the far left menu item, Main Menu. Move down to 'Configurations and press Enter. Select <Parent directory> and hit Enter. Scroll down to the file RetroArch.default.cfg and press Enter.

ParaLLEl Black Screen or Crashes

If you are able to launch the ParaLLEl core but get a black screen, or frequently crash while pausing, try changing the video plugin it is using. Press F1 to open the Quick Menu and move down to Options and press Enter. Next, move down to GFX Plugin and press the arrow key once. Once you have changed the option, press Backspace twice to return to the Main Menu and select Quit RetroArch to close RetroArch. Simply run RetroArch and open the ROM again and your ParaLLEl core should be running the new plugin you selected. Try each one and see if any of them work for you. If they do not, you may want to try the Mupen64Plus Next core instead.

My Remapping in Quick Menu Controls Won't Save

If your remapping won't save even after using Quit RetroArch in the main menu, you may have to explicitly save the reamppings. Open the Quick Menu with F1, go down to Controls and map your controls how you wish. Once you have done so, go back to the Controls menu. Near the top of the menu is a Save Core Remap File option. Select this to save these controller binds for all randomizer ROMs you open in the future.