Thanks
When possible, when the game config file containing key binding assignments for a game is not binarized (or otherwise protected) and can be opened and parsed, we can design systems into public VoiceAttack profiles we share to read these files and use those keys in keypress variables for all the various actions throughout the profile, rather than hard coded constants that may not match what users have set.
Obviously, this is an advanced process, and certainly helps to have some programming experience, but I've been able to do this for my own personal profiles for many games including Red Dead Redemption 2 - having a bit of logic that can watch this file for changes can ensure that the profile keeps up even while the user is playing and edits settings in real time while the VA profile for that game is active. On that note, rather than reading the config file at a set interval and checking if anything changed, it would be more efficient to simply hash the config file, and use that hash to compare to subsequent file hash of the config performed at a set interval to monitor for file changes. In this way, we only perform a more programmatically intensive task of reading and parsing the file to gather altered/changed/new keybindings if it has actually changed.
I just wanted to note that this is often possible depending on the game, given a little work and knowhow. In fact, one of the first such popular public utilities for VA was the BindED plugin by Gary (the developer of VoiceAttack) to allow us Elite Dangerous players to access a number of keypress variables gathered from the users own keyfile for any actions in the VA profile. It is still around and still popular - now forked, improved, and maintained by alterNERDtive.
Hope that gives you some ideas.
Best wishes and good luck!