diff --git a/Ryujinx-Setup-&-Configuration-Guide.md b/Ryujinx-Setup-&-Configuration-Guide.md new file mode 100644 index 0000000..b26fc9f --- /dev/null +++ b/Ryujinx-Setup-&-Configuration-Guide.md @@ -0,0 +1,361 @@ +# Ryujinx Configuration Guide **(Windows)** + + +This article assumes you have already dumped your Nintendo Switch keys +(prod.keys) and firmware file(s). This guide illustrates using a +properly dumped recent game cartridge as an untrimmed XCI file to +install a firmware directly to Ryujinx. It is also possible to install +firmware from a folder or ZIP file. You may also follow this [firmware dumping guide using Goldleaf](https://github.com/Ryujinx/Ryujinx/wiki/Firmware-Dumping-Guide-(hbmenu-&-Goldleaf)). + +If you haven't already downloaded *Ryujinx*, get the latest version +from: + +## Table of Contents + +[Preface](#preface) + +[System Requirements](#system-requirements) + +[Initial Setup - Placement of prod.keys](#initial-setup---placement-of-prod.keys) + +[Initial Setup Continued - Installation of Firmware](#initial-setup-continued---installation-of-firmware) + +[Adding Your Games to Ryujinx](#adding-your-games-to-ryujinx) + +[Managing Game Updates](#managing-game-updates) + +[Managing DLC](#managing-dlc) + +[Input Configuration](#input-configuration) + +[Profiled Persistent Translation Cache](#profiled-persistent-translation-cache) + +[Graphics Enhancements](#graphics-enhancements) + +Preface +======= + +Ryujinx comes pre-optimized by default. If a particular menu option is +not mentioned in this guide, it should be ignored and should not be +changed unless directly instructed by Ryujinx staff. + +***When requesting support on the Ryujinx official Discord server, you +will usually be asked for your log file. With this in mind, Logging +should be left at default settings (enabled) for everything except debug +logs. Do not enable debug logs unless specifically instructed by Ryujinx +staff.*** + +System Requirements +=================== + +In order to use *Ryujinx* your computer will need: + +- At least 8GB RAM + +- [OpenAL binaries](https://www.openal.org/downloads/oalinst.zip) -- + these only need to be installed if you are experiencing + audio-related crashes + +- Your Switch keys and either your dumped firmware or recent game + cartridge untrimmed XCI + +- Your dumped Nintendo Switch games or homebrew + +Initial Setup - Placement of prod.keys +====================================== + +1. Now that you've downloaded the *Ryujinx* archive, open it and + extract the contents of the publish folder onto your hard drive in + the location of your choice. + +2. Navigate to where you extracted the *Ryujinx* files, and + double-click on *Ryujinx.exe*. This will launch the emulator and you + will be met with the following message (don't worry; this is + normal!):\ + ![image](https://user-images.githubusercontent.com/62343878/86277688-5ee76b80-bb94-11ea-9c51-0f5ba153371b.png) + +3. Click *OK* on the warning box.\ + Now that *Ryujinx* has been launched, the proper folders have been + created for you in your %appdata% folder. + +4. Click *File* at the top left of the *Ryujinx* window, and then click + *Open Ryujinx* *Folder*.\ + ![image](https://user-images.githubusercontent.com/62343878/86277744-7b83a380-bb94-11ea-96c3-83acfbd9b534.png) + +5. Navigate down into the system subfolder and copy your prod.keys file + here. The file/folder structure should look like this (JohnDoe + substituted for your username):\ + ![image](https://user-images.githubusercontent.com/62343878/86277827-9d7d2600-bb94-11ea-9900-b5351364fd14.png) + +6. Close and reopen *Ryujinx* so that the prod.keys file is validated.\ + You're done installing keys! + +Initial Setup Continued - Installation of Firmware +================================================== + +Now that your keys are installed, it's time to install a firmware. Make +sure you have an untrimmed XCI file of a recent game cartridge you +dumped, or have compiled your dumped firmware into a ZIP file. + +1. Open *Ryujinx*. There should be no warning about KEYS.md anymore; if + you still get the warning, go back through the prod.keys steps and + ensure you have placed the file correctly. + +2. Now that *Ryujinx* is open, click *Tools \> Firmware \> Install from + XCI/ZIP*\ + ![image](https://user-images.githubusercontent.com/62343878/86277870-aec63280-bb94-11ea-8932-df14c870e25c.png)\ + This brings up the "Choose the firmware file to open" window.\ + \ + ![image](https://user-images.githubusercontent.com/62343878/86277923-c69db680-bb94-11ea-99ab-2d8c7ea74e0e.png) + +3. Using the *Ryujinx* window, navigate to the location of your dumped + XCI file and click *Open*. You will be asked to confirm whether you + want to install the firmware. Make sure your prod.keys are at least + as new as the firmware you are installing!\ + (Your firmware version number may vary)\ + \ + ![image](https://user-images.githubusercontent.com/62343878/86277970-db7a4a00-bb94-11ea-9142-2616ed6e742b.png) + +4. Click *Yes*. You will see a message that the firmware is + installing:\ + \ + ![image](https://user-images.githubusercontent.com/62343878/86278026-ee8d1a00-bb94-11ea-98ab-a45d9d4ca48c.png) +\ + \ + and was successfully installed:\ + ![image](https://user-images.githubusercontent.com/62343878/86278058-fcdb3600-bb94-11ea-861f-866a13dbefdb.png) + +5. Click *OK*. If all went well, you will now see your firmware version + listed as the "System Version" in the bottom right hand corner of + the main *Ryujinx* window.\ +![image](https://user-images.githubusercontent.com/62343878/86278217-4035a480-bb95-11ea-9803-fabc39dbec5b.png) + +Adding Your Games to Ryujinx +============================ + +You have keys and firmware ready to go. Time to add your games! + +With *Ryujinx* open, click on *Options \> Settings*. This takes you +straight to the *General* tab.\ +![image](https://user-images.githubusercontent.com/62343878/86278362-7c690500-bb95-11ea-9667-cb61e7d45b8e.png) + +There are two different methods in which you can add a Game Directory in this window.\ +\ +**1st Method:**\ +Type the absolute path of the folder containing your games into the path +field and click *Add*.\ +![image](https://user-images.githubusercontent.com/62343878/86278453-a6bac280-bb95-11ea-8bb0-005e89dbb295.png)\ +\ +**2nd Method:**\ +Without typing anything into the path field, click *Add*.\ +![image](https://user-images.githubusercontent.com/62343878/86278489-b76b3880-bb95-11ea-929c-da8b53052406.png)\ + +\ +This brings up the navigation window. Navigate to the folder containing +your games (e.g. D:\\Switch Games) and click *Add*.\ +![image](https://user-images.githubusercontent.com/62343878/86278572-d5d13400-bb95-11ea-98e6-91a58667a538.png) + +1. Whichever method you chose, **click *Save*** to save the game + directory setting. + +2. Your games will now show up in the main *Ryujinx* window.\ + ![image](https://user-images.githubusercontent.com/62343878/86278608-e7b2d700-bb95-11ea-8b2c-f12b1b7f0fcc.png) + +Managing Game Updates +===================== + +Manage game update versions from within Ryujinx + +Now that your games are added, you may wish to update your game for +various reasons e.g. bugfixes, new content, etc. *Ryujinx* has built-in +functionality to manage which version of the game you want to play. + +1. In the main *Ryujinx* game list right-click the game you want to + apply an update to. Then click *Manage Title Updates*.\ + ![image](https://user-images.githubusercontent.com/62343878/86278648-fef1c480-bb95-11ea-8a28-6099f5e0c8bf.png)\ + \ + After clicking *Manage Title Updates*, you will see the *Ryujinx -- + Title Update Manager* menu. + +2. In the *Ryujinx -- Title Update Manager* menu, click *Add*.\ + ![image](https://user-images.githubusercontent.com/62343878/86278688-0d3fe080-bb96-11ea-8aae-f353f2dc952d.png) + +3. Clicking *Add* will bring up the navigation menu. Navigate to the + location of your game's update files and select update you want to + add to *Ryujinx*, and click *Add*.\ + ![image](https://user-images.githubusercontent.com/62343878/86278723-16c94880-bb96-11ea-972f-bb1c8683ed6d.png)\ + This will bring you back to the *Ryujinx -- Title Update Manager* + window. You may repeat this for any other game version update files + you wish to add to *Ryujinx*. + +4. In the *Ryujinx -- Title Update Manager* window, select the version + of the update you wish to be applied to the game and click *Save*.\ + ![image](https://user-images.githubusercontent.com/62343878/86278755-22b50a80-bb96-11ea-9c1c-c4fc13a0e4cb.png) + +5. Verify that the proper version number is shown in the main *Ryujinx* + games list window.\ + ![image](https://user-images.githubusercontent.com/62343878/86278789-2e083600-bb96-11ea-9b55-816a81b53601.png)\ + \ + Your game update has now been applied, and you may repeat the + process for any other games you wish to apply updates to. + +Managing DLC +============ + +Manage Downloadable Content for your games + +Some games have downloadable content available that you may wish to add +to your game. *Ryujinx* has built-in functionality to add & manage your +DLC. + +1. With *Ryujinx* open, right-click on the game you want to add or + manage DLC for and click *Manage DLC* to bring up the *Ryujinx - DLC + Manager* window.\ + ![image](https://user-images.githubusercontent.com/62343878/86278819-37919e00-bb96-11ea-93cb-0a266c0c1b24.png) + +2. Within the *Ryujinx -- DLC Manager* window, click *Add* to open the + DLC navigation screen.\ + ![image](https://user-images.githubusercontent.com/62343878/86278847-40826f80-bb96-11ea-99bf-05c22af2c680.png) + +3. Navigate to the location of the DLC file(s) you wish to apply, then + double-click the file to automatically add it. Or you may select the + file or files, and click *Add*.\ + **Note: you may add more than one DLC file at a time!**\ + ![image](https://user-images.githubusercontent.com/62343878/86278879-5001b880-bb96-11ea-9fb3-859efbd631f9.png) + +4. You will now see your DLC in the *Ryujinx - DLC Manager* window. + **Click *Save*** to save your configuration.\ + ![image](https://user-images.githubusercontent.com/62343878/86278940-6c9df080-bb96-11ea-98e2-d3c871b388f8.png)\ + \ + Repeat this process, if you wish, for any other games you would like + to manage DLC for. + +Input Configuration +=================== + +Setting up your controls: this part requires close attention, so read +carefully! + +1. Plug in the controller(s) that you will be using. + +2. Open *Ryujinx* and navigate to *Options \> Settings*\ + !![image](https://user-images.githubusercontent.com/62343878/86278975-7aec0c80-bb96-11ea-897f-9a4ed393f3b0.png) + +3. You will now see the *Ryujinx - Settings* window. Click on the + *Input* tab.\ + ![image](https://user-images.githubusercontent.com/62343878/86278991-82abb100-bb96-11ea-9a00-adacae14b34c.png) + +Before proceeding to configure anything, the options on the Input page +need some explanation: + +*Direct Keyboard Access*: checking this box emulates a real, physical +keyboard being directly connected to a Nintendo Switch via USB. ***Do +not check this box unless you have a specific reason*** + +*Enable Docked Mode*: checking this box emulates the Nintendo Switch +being docked. Docked Mode enables higher resolution, higher FPS, and +better graphical fidelity on games that support these features.\ +**If you check this box, you will need to click configure under Player** +**1 (top left menu item)**\ +**If you leave this box unchecked, you will need to click configure under** +**Handheld (bottom right menu item)**\ + + +4. Click *Configure* under *Player 1* if you have enabled *Docked + Mode*, or click configure *Handheld* if you have not enabled *Docked + Mode*.\ + ![image](https://user-images.githubusercontent.com/62343878/86279008-8d664600-bb96-11ea-9ed3-32034ad9f53a.png) + +5. You should now be in the *Ryujinx -- Controller Settings* screen. + Click on the *Input Device* dropdown and choose the *Xinput + controller*. If you have connected multiple controllers, choose the + one you want to be configured to be P1 in game. **If you do not see** + **any Xinput controllers in the list, you will need to use an Xinput** + **wrapper/translator such as** + [x360ce](https://www.x360ce.com/).\ + ![image](https://user-images.githubusercontent.com/62343878/86279068-a969e780-bb96-11ea-913c-6da064e6d7a6.png) + + +6. After selecting your Xinput controller you should now see a full + mapping UI. If you want to map the buttons in a standard + Xinput-compatible fashion, there is no need to individually map the + buttons. Simply click on the empty *Profile* dropdown, select + *Default*, and click *Load*. This populates the buttons with preset + mappings for your Xinput-compatible (or Xinput wrapped/translated) + controller. Otherwise, click on "*Unbound*" for each button you want + to map, then press the actual button on your controller that you + want for the Nintendo Switch controller button you've + chosen. +![image](https://user-images.githubusercontent.com/62343878/86279165-d1f1e180-bb96-11ea-9d77-b9c029ce5b3a.png) + \ + You may continue tweaking the settings to your liking, or binding + each button from scratch if you want a fully custom button layout.\ + **NOTE: while the default *Deadzones* are 0.10, we recommend + increasing your *Deadzones* to at least 0.20 in order to avoid + unwanted joystick drift.** + +If you are in *Docked Mode* and have additional controllers to +configure, configure them now under Player 2, Player 3, and so on. + +7. ***Click Save to save your configuration.*** + +Alternately, you may skip the input UI and edit your config.json file +found in %appdata%\\ryujinx\\ + +Profiled Persistent Translation Cache +===================================== + +Speed up game loading times with PPTC + +In a nutshell, this feature caches translated functions so that they do +not need to be translated every time the game loads. This results in a +significant reduction of load times \--the amount of time between +launching a game and arriving at the title screen\-- for nearly every +game. + +**NOTE: You must launch the game at least twice and let it load** +**to the title screen or beyond before performance improvements are** +**unlocked on the third launch! These improvements are permanent and do** +**not require any extra launches going forward.** + +To enable *Profiled Persistent Translation Cache*: + +1. With *Ryujinx* open, click on *Options \> Settings*\ + ![image](https://user-images.githubusercontent.com/62343878/86279303-082f6100-bb97-11ea-92bc-68f24612d7e2.png) + + +2. Then navigate to the *System* tab and **check the box** marked + *Enable Profiled Persistent Translation Cache*\ + ![image](https://user-images.githubusercontent.com/62343878/86279433-3b71f000-bb97-11ea-8bd2-0435ba8ece33.png) + +Graphics Enhancements +===================== + +Currently, the only enhancement *Ryujinx* offers to rendered graphics is +*Anisotropic Filtering,* which can visibly improve graphic quality. +*Ryujinx* **does not have** a disk shader cache at this time, though +this functionality may be added sometime in the future.\ +[Wikipedia says](https://en.wikipedia.org/wiki/Anisotropic_filtering):\ +_In layman\'s terms, anisotropic filtering retains the \"sharpness\" of_ +_a texture normally lost by MIP map texture\'s attempts to avoid_ +_aliasing. Anisotropic filtering can therefore be said to maintain crisp_ +_texture detail at all viewing orientations while providing fast_ +_anti-aliased texture filtering._ + + +**Note: enabling this feature may cause graphical glitches on some** +**games.** + +**To enable _Anisotropic Filtering_:** + +1. With *Ryujinx* open, click on *Options \> Settings*\ + ![image](https://user-images.githubusercontent.com/62343878/86279490-547aa100-bb97-11ea-97ad-549534e9d635.png) + + +2. Navigate to the *Graphics* tab and click the dropdown next to + *Anisotropic Filtering*. Set it to your desired level.\ + ![image](https://user-images.githubusercontent.com/62343878/86279552-6ceabb80-bb97-11ea-8b88-1e19983ed890.png) + \ + **Click *Save*** to save the enhancement setting. + +