FINAL FANTASY VIII Guide

Controller Mapping with Autohotkey & Sensible Button Inputs in Game for FINAL FANTASY VIII

Controller Mapping with Autohotkey & Sensible Button Inputs in Game

Overview

A guide to using Autohotkey and the provided script for mapping an entire Xbox 360 controller (and some other controllers too) to work with FFVIII And a guide to have sensible button inputs for the 360 controller (instead of seeing B1-10) listed in the game.This makes the Dpad, Triggers, and both Thumbsticks work with the game!The provided script can be configured to suit other games as well!

Get Autohotkey

First we want to get the Autohotkey software that will map the controller buttons and other inputs to keyboard buttons.

Get v1.1 installer (current release is v1.1.16.05 as of creating this guide) of Autohotkey from [link]
v1.0 should work too, but v2.0 (currently in alpha) won’t work without changes to the syntax of my script.

After installing we’re ready to start creating and/or using scripts. Scripts are saved as .ahk

The Script(s)

Now open notepad and copy and paste the text from
[link]
-(right thumbstick as arrow keys and configurable)
or
[link]
-(this one has right thumbstick as mouse and right thumbstick button press as mouse click)
into notepad and save it as a .ahk file. You may name it something like Controller.ahk

If you want to use a button icon mod (MCINDUS has one here) to have a better representation of buttons in game or if you don’t care about seeing B1-10 in game for button names, then here are scripts that only cover controller inputs not used by the game (Dpad, Triggers, Right Thumbstick):
[link]
-(right thumbstick as arrow keys and configurable)
[link]
-(right thumbstick as mouse and right thumbstick button press as mouse click)

If you don’t want to use one of the 2 scripts above, you may skip the rest of this section, If you do want to, you may want to have FFVIII’s keyboard settings set to default to match the script if you want to leave the trigger assignments untouched. (Left Trigger is assigned to Rotate Left and Right Trigger is assigned to Rotate Right/Trigger)

Controller configuration is easier changed in game if using a button icon mod.

This is how I prefer to have my controller settings
(using MCINDUS’ FF8 Controller Button Icon mod – normal version not HID):

This is how it looks outside the game in Controller Settings if you happen to need this:

Going this route, you can skip to the Running the Script section at the end of the guide.

Looking at the Script

Unless you trust my controller mappings are all well and good, right click on the newly created file and select edit script.

Take a look at the button assignments, trigger assignments and maybe the Dpad & Thumbsticks. I have put comments in the script to help find and configure the parts of the controller easier.
(a ; makes the rest of the line in a script not act as code, making it a comment)

I have the buttons assigned to keys with letters that resemble the 360 controller button letters with the exception of LB and RB on the controller being mapped to 1 & 2 respectively and the back/select button being mapped to k. I also have the left trigger set to use F1 (for speed boost) You may wish to change that to l (lowercase L) instead.

The dpad and left and right thumbsticks are mapped to the arrow keys (except the second script has the right thumbstick as mouse), but I made them configurable in case one may want special assignments for them. Just an idea of what you can do, you could make the right thumbstick control the volume (with first script).

One may find how to enter advanced inputs here: [link]

A note about the triggers on a 360 controller: Pressing both triggers at the same time will cause them to act as if neither is being pressed! Both trigger inputs are tied together in a way that causes that unfortunately. There is a way to have them be read separately using Xinput[msdn.microsoft.com], but it’s difficult to use (for me at least).

If any changes to the script were made, save the script.

Changes to Game Settings

This section is for getting the game to recognize the controller as keyboard inputs, and not have the game show B1-B10 for button inputs, but instead show keyboard buttons for inputs.

Now open the game and click on settings, then click on the Keyboard tab. Alternatively, if no changes were made to the script, you could skip to the next section.

Change the inputs to how they are mapped in the script. This is how I have mine:
After hitting ok to save the changes, we’ll want to change a file to disable controller input from being read by the game.

In a file explorer go to:
%USERPROFILE%My DocumentsSquare EnixFINAL FANTASY VIII Steam
Edit the file called ff8input.cfg with something other than notepad, like wordpad or notepad++ if you have it. (notepad doesn’t recognize the returns, making it hard to read)

Change the numbers below the Joystick section to all be 0s so that it looks like this

Joystick 1. “Select” 0 2. “Exit” 0 3. “Misc” 0 4. “Menu” 0 5. “Toggle” 0 6. “Trigger” 0 7. “RotLt” 0 8. “RotRt” 0 9. “Start” 0 10. “Select” 0 11. “Up” 0 12. “Down” 0 13. “Left” 0 14. “Right” 0

Save the file and now the game won’t try to use its own settings for the controller nor show controller buttons (B1-10) in game. Also, the controller can be used to skip the opening screens of the game instead of having to use the keyboard to skip them.

Keep from opening the controller tab in the game settings, but it should still be ok to open the keyboard tab. If you open the controller tab, you may have to resave the 0s to the ff8input.cfg file.

Slightly Quicker Alternative

If you did the section above or changed button assignments in the script, skip this section.

In a file explorer go to:
%USERPROFILE%My DocumentsSquare EnixFINAL FANTASY VIII Steam

Edit the file called ff8input.cfg
Copy the text below

Keyboard 1. “Select” 21 2. “Exit” 30 3. “Misc” 45 4. “Menu” 48 5. “Toggle” 38 6. “Trigger” 19 7. “RotLt” 2 8. “RotRt” 3 9. “Start” 31 10. “Select” 37 11. “Up” 200 12. “Down” 208 13. “Left” 203 14. “Right” 205 Joystick 1. “Select” 0 2. “Exit” 0 3. “Misc” 0 4. “Menu” 0 5. “Toggle” 0 6. “Trigger” 0 7. “RotLt” 0 8. “RotRt” 0 9. “Start” 0 10. “Select” 0 11. “Up” 0 12. “Down” 0 13. “Left” 0 14. “Right” 0

Select all the text in ff8input.cfg (ctrl+a) and paste the above so that it replaces all the old text; then save the file.

Now the game has its keyboard mappings set and won’t try to use its own settings for the controller nor show controller buttons (B1-10) in game. Also, the controller can be used to skip the opening screens of the game instead of having to use the keyboard to skip them.

Keep from opening the controller tab in the game settings, but it should still be ok to open the keyboard tab. If you open the controller tab, you may have to resave the joystick section to the ff8input.cfg file.

Running the Script

To get the script to run, all you have to do is double click on the .ahk file you saved.

While it is running, the script will show in the system tray like this:

When you wish to end the script from running, right click the system tray icon and exit it like this:

Now you may enjoy Final Fantasy VIII with the ultimate controller experience.

SteamSolo.com