I know this is maybe not the right time to bring this up since I havent even played the game yet... but I want to mention what a pita some games have been with assigning keybindings. Just to give a heads up if it hasnt been thought about yet.
I use a programmers dvorak layout, just for reference my number row looks like this from '~' to '=' on a normal keyboard:
$&[{}(=*)+]!#
I mainly run into two problems
1) some games just wont let me bind certain keys like '}' or something like that. Usually the best solution I can think for this is to just switch to a different layout, however when I do this I cant really communicate effectivly in game anymore
2) when re-assigning keys games will often erase any conflicting binding. This turns into a hassle when trying to remap everything at once to get an equivalent default binding setup for my layout since I can no longer tell what a key should be.
I have seen some games do either/both:
1) do not erase overwritten keys right away, only complain if there are multiple bindings when you actually try to save the bindings (this has downsides that I see however)
2) the keys are assigned by the actual key code and not the char value of the key. So as a user even if it says 'w' my equivalent key ',' will still work correctly.
Im sure their are other better ways of handling this too. Anyway I know this is not much of a priority right now but wanted to share my experience since I have seen this been a real pain before.