This scenario has come up for me in the past: I want to bind certain functions in a game to my mouse buttons/other keys, game X doesn't support that in its menu or config file. What can I do, what should I do?
An easy option is to use something like autohotkey to bind any key to any other key. There are obvious questionable ethics in doing something like that, however, especially if others have already speedrun game X without that. But what if it were a game that I'm routing and can make up 'the rules' for?