♥Introduction♥
This guide aims to supply you with information usable to configure your preferred controlling device so that it can operate inside FFXII:TZA as if it were a Natively Supported Controller (steam input disabled). However, details including (but not limited to) installations, configuration details, of which pertain to your specific devices and computers may or may not be present (so please be thorough, and read through steps + the associated resources before following through).
PS: If you have an issue, be sure to be as descriptive as possible, because I will not guarantee this will work for your particular Computer, Operating System, Controller Hardware, etc. [use this as a reference, a step by step troubleshoot with the intent of getting your controller working the way you want it to with the game]
‼Warnings‼
Some things may simply not work. In this case you must do your own research, and look for an appropriate replacement, or functionally similar solution. If and when that may come to happen, it would be great to leave a comment to inform others, or perhaps show this guide as non-functional.
ALSO, there are some technical steps that could cause you issues if you do not follow them correctly. I have not encountered any issues through my journey to the point of my solution that is detailed in this guide, but navigating information such as this is sometimes confusing. Be aware that mistakes, missing information or components, outdated information, and/or unclear instructions may cause unintended issues going forward.
BE THOROUGH
♠Resources♠
The following is a list of resources that may be helpful in relation to this guide.
Copy and paste links into your browser, steam obfuscates the links. Final Fantasy XII: The Zodiac Age (PC)
Device Driver (if needed) for UCRhttps://github.com/Snoothy/UCR#device-support ViGEm Bus Driver (xbox360/ps4 output)https://github.com/nefarius/ViGEmBus/releases vJoy (virtual joystick output)https://github.com/shauleiz/vJoy interception (keyboard&mouse input/output)https://github.com/oblitum/Interception HidHide (control which programs see your controller(s))https://github.com/nefarius/HidHide Universal Controller Remapper (input and output controllers)https://github.com/Snoothy/UCR
◄GUIDE►
The following are generalized steps you may use to configure a controller to work in FFXII:TZA as if it were a Natively Supported Controller.
1) Identify Your Needs.
By default the game has support for xinput(xbox360) and ds4(dualshock4 aka PS4) icons if I am not mistaken, so depending on which you want, you may need to be familiar with what the buttons do on either of those two pieces of supported hardware in order to correctly map your own controller in the way that you want.
In addition to this, you should read through everything first, and then based on your Operating System, Controller Type, Desired Controller Output Type, should then make yourself a text document with all the things you need for stuff to all work out for you. Otherwise, you may end up simply installing something through a resource link, and start wondering where things went wrong. Instead, read the information at those resource links in conjunction with this guide, to better understand what exactly your particular situation requires.
2) Install Your Required Doohickers.
That's a technical term for an or any amount of objects and or tangible concepts of which will provide logistical support to their perceived ends. I jest, but there is some nuance..
The core element here is UCR (Universal Controller Remapper), as it is what feeds the information that tricks the game into thinking you possess hardware that you don't. It also let's you remap controls so long as the names of each controller input don't scare you. From here, your list of required items solely depends on this thing-a-ma-bob (I will not elaborate any definitions for obtusely zany words or phrases any further), so installing them depends on your knowledge of how to get UCR to function correctly.
3) Verify Your Drivers Are Installed. (if Applicable)
Just because Microsoft has native xinput support, doesn't mean UCR does. So for whatever you are trying to achieve, this will be the first item that helps make sure your setup works. The reason I put (if applicable) is because things can change, or other resources may be out there that work better, for the current information in this guide a driver is required for an intended output when using UCR.
4) Configure HidHide. (if Applicable)
Chances are the game or some other thing on your computer might accept input from both your controller and UCR, HidHide when configured properly will enforce what is visible basically. Could also be helpful to simply 'deactivate' your controller in other games you exclusively use M&K with so you can keep your controller plugged in with some peace of mind.
If you are unable to understand how it works just by looking at it, follow the pertaining segment in a section of this guide labeled "_Personal Configuration Walkthrough_". If that doesn't work out for you, then good luck.
5) Configure UCR. (or Equivalent)
For UCR specifically at the time of writing it is straight forward so long as it isn't foreign.
Create a profile (the name of which appears at the top of the process when active in place of "none")
Choose input and output devices.
Edit the profile to the controls you wish to use.
Activate and deactivate the profile(s) as you wish.
Keep the process open while in use.Again if your adventurous side isn't glowing from the trial and error of seeing what buttons are named what, check "_Personal Configuration Walkthrough_" for an example to help conclude your own setup's needs.
6) Play The Game. (it's That Simple)
Is what I would say if I wanted you to fail. Realistically I stumbled upon my own configuration through seeing what worked and what didn't, and even though I understand it, the process of getting there wasn't exactly easy.
If you stop reading here, grats! Otherwise I recommend checking out the info below to get a gist of how the process might look before configuring your controller yourself.
_Personal Configuration Walkthrough_
Here is going to be a highly detailed, step by step, linear how-to, of my exact setup I am using. Do not replicate it.
_components
My controller is what steam input believes is a dualshock1 of all things, even though it looks like it should be dualshock2. Reason for this is because I got it off of an Asian website that ships to the United States, so if you put half-life and three together, you might begin to understand why it wasn't plug and play with steam input (which causes a 90° rotation of the right analogue stick, among other nuisances along the way, but I won't be detailing them unless it's relevant to my 'correct path'). Also, rumble doesn't work for my controller with my own method, but it was fine when the xbox icons were present, so there might be trade-offs depending on what you're after.
Operating System is Windows 10 Professional 64bit Update 22H2. I tried using WSL to self host a dns server before realizing how horrid that idea was (don't ask), and gaming on Ubuntu was an unenjoyable experience for me. It's what works for me, consider yourself superior.
My game is Final Fantasy XII: The Zodiac Age (shocker I know). I am not running it in my 'steam-but-not-steam' environment just to reduce the proverbial noise it causes (socializing is traumatic), this is being launched from steam without any modification (yet). I would like to mod the installation, but haven't gotten around to that little basket of nightmares yet. It's vanilla as of now.
Desired output of PS4 is for the icons alone (controller familiarity). I know I could just wayback machine or go plunging for removed nexusmods, or even do it myself, but admittedly this whole thing was for someone else to have a hassle free experience, and doing it this way ensures they can at least play the game in the worst case scenario, removing the 'game brokeded' vector as a potential issue entirely.
_setup
Installed ViGEm Bus Driver (needed for UCR).
Installed UCR (needed for HidHide).
Installed HidHide.
Opened the "HidHide Configuration Client".
Clicked the Box with a Plus Sign in it.
Navigated to my UCR installation, and selected the UCR.exe to add it to the exempt Applications.
Switched to the "Devices" tab.
In the big white box, I toggled the checkbox within from 'blank' to 'checked' for the desired controller listed there (in my case the only one there).
Below Wilford's Big White Box™, I 'checked' the box named "Enable device hiding".
I congratulate myself for disappearing my controller from the "general public's eye".
I disconnect my controller from PC, and reconnect (changes have taken effect now).
Closed that thing-a-roo so I forget two years down the line what it is for to be sad and confused.
Shatter your hopes and dreams Opened UCR.
Clicked 'add profile' button.
In the 'Profile name' field I entered whatever I liked (Example: Olong Johnson).
Selected the appropriate input device (my adapter for my controller has two slots, both of which show up, one of which has a controller plugged into it, neither of which I know are correct or not, so just YOLO it or put on your investigation cap, you'll get there somehow).
For output I just picked DS4 1, because I was afraid the other numbers might not work.. that said if you have multiple controllers (which I do have a genuine PS4 controller I just don't like using), you might try to pick an unoccupied 'slot' between all of your controllers.
Clicked CREATE because the allcaps button makes me feel important.
Agh ah huh who? Oh hello there profile edit screen (if you close it as a flight or fight response, click the name of the profile in UCR, and hover over the buttons until you find the 'edit profile' one to get back to editing in all of your controls :).
Panic.
Some tips for my controller, and desired output controller..
Axes to Axes didn't work very well, as in one direction at a time (my sticks have vertical and horizontal detection, so two directions), so I used axis to axis and mapped the horizonal&vertical of each stick separately. You may have to experiment which works best for you, which isn't too hard.
Button to Button is the primary one I used for, well, the rest of the buttons, but some things like triggers with sensitivity have certain things you need to use, I can't recall them, you'll find it in documentation for your resource somewhere, trust.
Click to bind is great and all, but for the output I suggest using the triple-dot-vertical button.
the analogue sticks might not show up correctly when using click to bind because it's very emotional, so do it a bunch of times, and see which one is right, otherwise you'll notice something is wrong in game.
For Playstation: LS and RS is left stick and right stick ||| LX and RX are horizontal, and LY and RY are vertical (your controller may not use the same, which is why click to bind is usefull, my RX for example says "Axes, RotationZ", and I have no idea what that means other than it works I guess.
For my controllers sake, I bound the select button not the the ps4 share button (physical similarity), I bound it to the PS4's touchpad click (functional similarity), as that ps4 touchpad click brings up the big map, and it would not have been bound to anything otherwise (why knowing your desired output controller's control scheme is important!).
Clicked the floppy disk in the top left of the editing screen to save my profile, so that all of my hard work manually mapping all of these buttons doesn't incite Thanos to get freaky while listening to slam poetry making my entire universe go poof.
With my work saved, I can exit the editing menu safely.
In UCR I just click the profile I want so that it is selected, and then the activate profile button.
leave UCR open or minimized and it'll do everything I told it to in the profile, HidHide allowing it to do so with the real controller hidden to all but HidHide and UCR, and now the game works with my controller per my preferences.
I can deactivate the profile when I am done no problem, or even while playing just to prove a point, a very unique and meaningless point (what controller game? DO YOU KNOW WHO IS IN CONTR- *ahem*).
It works, if it didn't I would look for another solution to my problem with a search engine like I did a few times before finding these tools and using them together to achieve what I wanted.
Closing Resnarks
Oh, so you are reading me?
ew.
..Anyways, I hope I was successful in abilizing your OCD, or whatever spawned you to wanna do the thing. Authoritatively you should know this guide is a gift*.
*The only thing you shouldn't redistribute is the guide icon.
Other than that it bothers me none, the only goal is to help anyone else struggling to 'just play the game' the way they want to, so if you want to steal the entire guide and add rainbow text be my guest. I grew up with this game, so it is very awkward playing it on PC, not even mentioning all the changes (still researching which motley crew of online posted files will be necessary to PS2ify the game as fully as possible), so if you are in the same boat as me but this guide read like an auditioning script for the new Joker in a Batman movie then ask questions in the comments or something. Can't say I will get back to you promptly, but it's unlikely I'll go missing or die anytime soon, so I can do my best in that regard (just don't expect miracles please).
That should about cover it, don't award this guide I have enough points thanks.
Source: https://steamcommunity.com/sharedfiles/filedetails/?id=3110187921
More FINAL FANTASY XII THE ZODIAC AGE guilds
- All Guilds
- How to Beat Stage 100 of Trial Mode
- Jobs In Plain Sight - Word File Edition
- SpecialK - Dumping and Injecting Textures
- FMV-(Remove black bar).
- Final Fantasy XII: The Zodiac Age - Achievement & Other Saves
- FINAL FANTASY XII THE ZODIAC AGE STEAMDECK (LCD/OLED)
- Fitter Vaan - Texture Replacement
- FFXII TZA Full Story Walkthrough
- Como resetar as classes/Jobs
- Como conseguir bastante Gil no inicio do game.