Fix: Ship of Harkinian does not recognize controller, but Windows does


tl;dr:

  • Download the latest community SDL gamecontrollersdb and replace gamecontrollersdb.txt at the root of your installation directory.
  • OR: If it is still not recognized, use the SDL2 Gamepad Tool to generate a mapping for your controller and copy/paste it into gamecontrollersdb.txt.

Ship of Harkinian/SoH/OOT PC Port uses SDL for reading controller inputs. It uses the gamecontrollersdb.txt file at installation root to identify controllers by their GUID and define input mappings.

Each release of SoH comes with a recent version of the community sourced gamecontrollerdb.txt which is managed by the SDL_GameControllerDB repo. However, new controllers may have been added to the DB since the last SoH release.

If your controller was recently released (such as the 8bitdo N64 controller), try downloading the latest gamecontrollerdb.txt from here (right-click, save as...) and replacing the one at the root of your SoH installation.

If your controller is still not recognized, it may not be in the DB, but you can add it yourself:

  1. Download and run the SDL2 Gamepad Tool.
  2. Select your controller from the dropdown at the top. If you don't see it, make sure your controller is plugged in before you start the tool.
  3. Click "Create A New Mapping" button.
  4. Follow the UI to map each button and joystick. If your controller has more buttons than the UI controller, not all of them will be usable and you must decide which ones you will ignore. Remember that you can always re-map the inputs from within SoH settings.
  5. When you are done, hit the "Copy Mapping String" button.
  6. Open the gamecontrollerdb.txt file at the root of your SoH installation with any text editor and paste onto a new line at the bottom of the file.

Mike Moore

Read more posts by this author.

Austin, TX yo1.dog
comments powered by Disqus