It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
Hi, does anybody know how to change the game's keybindings (hotkeys)?
My laptop does not have a "Pause" key (!!!), and I'm desperately trying to remap "pause" to something else, anything actually...

Yes, there is a \Profiles\Profile1\dxp2\KEYDEFAULTS.LUA file, but whatever I put in there is ignored in-game, so I must be either doing something wrong, or I missed a step. There is a cryptic comment inside the file saying it is only there in case "the user screws up the key bindings file in Root/KeyBindings/", but there is no \KeyBindings\ folder either, and even if I create it myself it is ignored...

An extensive Internet search showed I'm not the only one wondering, and apparently this KEYDEFAULTS.LUA file (which apparently isn't always there) is not really used. Or maybe only on full moons.
My only hope is that a DoW veteran has saved some forgotten lore about this issue.

Thanks in advance.
Post edited May 30, 2023 by Bq2zf
No posts in this topic were marked as the solution yet. If you can help, add your reply
UPD: There is workaround by creating AUTOEXEC.LUA in root folder (with games installed in Games/). Some "function" functions, same as optionally bind console commands/cheats to some F# keys.
But such solution described only on some specific sites and forums like Steam Guides/forums for 4 hubs, DoW Wiki, old DoW Wiki backups archives, old forums which one archived or alive.
There is at least two guides on Steam where examples of binding provided and in case you have question how bind pause you can ask in those guides comments.

If pause itself not possible there is simrate console command which one present on those guides. You just can use them by copy-paste no edition to provided text required. Simrate (0) pause game speed to 0 (digits slow or speed up game speed).

-------
Hmm... Maybe it was indeed never worling... Anyway not all functions.
Hm. I guess shouldnt be used default from root folder anyway, if exist. If console/log report itw as missing - it is normal for some "errors".
I think if there is keys file in /profiles/ must be used this one. I dont remember if it is happen in that way. If not must be created manually in root or edit in root. I missremember it with Warcraft maybe. In one of them it was in root indeed. If there in in profiles - so in profiles.

Anyway one or another from some subfolders of game folder. Issue possible come from non D/Games/Game-name-1/ installaion path. In program files or some else (or localised/umlauts variations for some games unreleated to UAC issues) files from game folder partially doubled to VirtualStore(+registry) or ignored. Important files too sometimes. Disabling UAC make it worse cause by default do not disable VirtualStore.
Config exe must be in admin run anyway.
Game itself from /Games/ (and if used Steam/Galaxy too! or it get limited argument from galaxy.exe same as it will get adminrun argument from galaxy started in admin) never require adminrun for even once (only first for steam/galaxy or if you didnt start Config Utility as admin first before game which usually bring it automatically for first launch but not always)
(even with admin Steam also redirect files by his own to own steamroot/userdata/…/12345/ folders
GOG Galaxy redirect them to some own subfolder in user AppData!)
(some games here even in GOG (offline) variant also changed to use GOG APPDATA!!! Most likely Dawn of War same as Space Marines do - they use AppData location for some contig files!)
(so go find AppData Local GOG galaxy userdata gameID user0 or userID folder - something like that, some files will be there!)

There is 3 articles (cause it is 3 differ games) on PCGW for DoW and links to some general articles - Troubleshooting guide and Glossary:KeyMapping (also InstallLocation explanations and many usually good useful info)
[url=http://www.pcgamingwiki.com/wiki/Series:Warhammer_40,000:_Dawn_of_War]http://www.pcgamingwiki.com/wiki/Series:Warhammer_40,000:_Dawn_of_War[/url]
Look to keymapping entry for solutions or workarounds.

Sometimes direct links to games articles provided in Library by -Games-gamename-MORE-GamenameSupportarticle-PCGW.

Keyboards itself can be an issue. Not all are correct work with Fn/Cmnd keys. Or combine wrong keys to same buttons. If you able to edit lua file but it is ignored - it is VirtualStore issue or keyboard issue. Use [Fn/Cmnd]+[] or bind another ones.

There is alot of key functions. Im not sure it was working for most functions and/or have limitations. Better stay at default for letters keys. Some F# keys can be used in case they are not bind to something else. There is F# for Obj, Allies, Menu and Screenshots functions.
Do not use [P]
Post edited May 30, 2023 by QWEEDDYZ
I'll try to keep this succinct - keydefaults.lua does work, gridkeys is based on it and I've spent literal hours in the damned thing. That said I have never tried altering the system keys and a quick look suggests that does not work so this bit may be hard coded.

I assume that this is for singleplayer, in which case the autoexec method will work, assuming you can't just tap F10 to bring up a menu. You will need to run the game in dev mode for this, which will involve either running via Mod Manager or making a shortcut for the soulstorm.exe, then right clicking on this and going to Properties, then the Shortcut tab, then on the field labelled Target, you should see a file path. After the quotation marks at the end, put -dev.

In your soulstorm folder make a blank text file called autoexec.lua and paste the code at the end of this post and save it. Pressing Shift+F1 will stop the game, shift 2-6 will make it quicker (4 is normal) and then shift+f7 will put it into screenshot mode. This will not work online as you cannot use dev mode online.

Paste the below into your autoexec.lua:



bind("shift+F1","setsimrate(0)")
bind("shift+F2","setsimrate(2)")
bind("shift+F3","setsimrate(5)")
bind("shift+F4","setsimrate(8)")
bind("shift+F5","setsimrate(20)")
bind("shift+F6","setsimrate(60)")
bind("shift+F7", "toggle_screenmode()")



screenmode = 0
function toggle_screenmode()
if screenmode == 0 then
taskbar_hide()
message_hide()
ingame_select_ui_toggle()
ingame_stats_toggle()
screenmode = 1
fog_toggle()
else
taskbar_show()
message_show()
ingame_select_ui_toggle()
ingame_stats_toggle()
screenmode = 0

end
end
Thanks guys, for some reason (must have missed a setting) the forum didn't alert me there were replies.

Anyway, my issue was finding a way to pause the game without having a "Pause" key, and neither of your solutions fixes that specific problem... Thanks for trying though.

I did fix it, and for the record, in case somebody else needs it, I did so simply by remapping the keyboard. It's easier that one would expect using Microsoft's "Powertoys", a (free) program suite enhancing Windows with useful utilities.
avatar
Bq2zf: Thanks guys, for some reason (must have missed a setting) the forum didn't alert me there were replies.

Anyway, my issue was finding a way to pause the game without having a "Pause" key, and neither of your solutions fixes that specific problem... Thanks for trying though.

I did fix it, and for the record, in case somebody else needs it, I did so simply by remapping the keyboard. It's easier that one would expect using Microsoft's "Powertoys", a (free) program suite enhancing Windows with useful utilities.
No, if you read the above then press shift+F1 stops the game dead as well as giving all the other functions, but glad you fixed it all the same.