So I’ve been working on trying to find a way to do this for most of this afternoon, but I’ve ran into a limitation on the bind command that is probably a show-stopper. I’ve attached my experimental config in case it provides inspiration to anyone to find a solution.
Basically this config works, but when you switch to your action/self-action/grenade it is resetting any keys that you are currently held down. So, if you’re running forward and you hit the grenade key you stop running forward until you lift your finger off the forward button and then press it again. Even while testing I found this to be annoying, so I doubt I’ll end up using this config. I’m pretty sure this is a limitation of the bind command.
If you try the attached config, you’ll probably want to just copy and paste the key binds part of my autoexec file into your own autoexec file. Also, don’t extract the zip file straight into your local/base folder or it may overwrite your existing autoexec file; but do move the bind_*.cfg scripts into your local/base file after you extract them.
Basically this config is set up like this, but you can customize it by editing the scripts:
q = switch mouse1 to self action
f = switch mouse1 to action
e = switch mouse1 back to attack / switch between weapons
mouse4 = switch to grenade
2/3/4 = switch your “action” ability
mouse2 = melee
Also, if you want to use a different key for mouse1 or e, you need to go through the bind_*.cfg scripts and update them as well. Changes to the other keys just require editing the autoexec part.
If anyone is able to come up with a better solution please please post it.