RA hotkey config by @TiriliPiitPiit #2501

wants to merge 4 commits into


None yet
2 participants

Mailaender commented Dec 11, 2012

This is TiriliPiitPiit-master20121019.+.HotkeyAddons4.-.ClassicMouseStyle merged onto bleed with a little cleanup. The unused *Building.cs tag traits have been removed and the building palette hotkeys are not hard-coded to RA buildings anymore, but user-configurable via the GUI, too.


chrisforbes commented Dec 11, 2012

Someone needs to rebase this down into a tidy set of patches. All the
tried to do X stuff doesn't want to live in the history forever.

On Tue, Dec 11, 2012 at 9:57 PM, Matthias Mailänder <
notifications@github.com> wrote:

This is TiriliPiitPiit-master20121019.+.HotkeyAddons4.-.ClassicMouseStyle
merged onto bleed with a little cleanup. The unused *Building.cs tag traits
have been removed and the building palette hotkeys are not hard-coded to RA

buildings anymore, but user-configurable via the GUI, too.

You can merge this Pull Request by running:

git pull https://github.com/Mailaender/OpenRA hotkey-config

Or view, comment on, or merge it at:

Commit Summary

  • Moved KeyConfig into Settings.cs
  • removed changes in mainmenu.yaml
  • Added a new tap Keys in Settings menu to access the key configuration
  • Replaced huge block of code by chrisf's code reduction snippet.
  • Tried to add CycleBarracks function, but just broke CycleBases.
  • Added cycle functions and key settings entries for barracks, war
  • Merged all new traits into one named ProductionBuilding with a
  • removed a useless commented line
  • Added ctrl+someOtherKeyName - Hotkeys and configured a new hotkey
  • Cycle ProductionBuildings hotkeys are now on KeyInputEvent.Down.
  • Unit commands only work, when units are selected, production hotkeys
  • Cleaned up old settings and comments.
  • Applied hamb's correction to make the menu work.
  • Added a bool InvertCtrlBehaviour and changed infantry hotkeys.
  • Added an option to change the Hotkey-Modifier.
  • Changed modifier editor to dropdown menu.
  • These dropdown menus are broken.
  • Made the underlying variables work in game at least.
  • Testing...
  • Made it finally work.
  • A start, but something is wrong at issuing orders.
  • Cleaned up, but still doesn't work.
  • Improved the key settings menu and implemented hamb's tips.
  • Made double click on unit work for classic mouse style. - At least 3
  • Removed bug with orders on second mouse button down at a double click
  • Made right mouse button work correctly.
  • Backup commit
  • Swapped hbox and brik hotkeys
  • Backup commit
  • Backup Commit
  • Cleaned up.
  • Cleaned up and simplified WorldInteractionControllerWidget.cs
  • Merge completed
  • Added all functions by Hacklex
  • Changed the Keys-Menu
  • Added all changeable entries to keys-menu - scrollbar is missing
  • Added scrollbars to the keys-tab of the settings menu
  • Changed defence to defense - typo
  • Completed merge, but GoToBase is still to be fixed.
  • Fixed GoToLastEvent function.
  • Some little map changes
  • Completed merge.
  • No real, only map things, which shouldn't be here.
  • Updated version name
  • Merge completed.
  • Merge completed
  • Merge remote-tracking branch 'upstream/master' into
  • Version fixed
  • Added PrimaryBuilding to HPAD and AFLD, fixed .csproj file
  • Merge remote-tracking branch 'upstream/master' into
  • Version Nr. changed
  • Cleaned up mess with mapbuilding in this branch
  • Clean up commit
  • Version number changed
  • Doubletap on groups centers viewport & other gimmicks
  • Production Buildings selection/cycling-start set to primary building
  • Cleand up maps
  • Added hotkey 'o' for gap generator
  • Cleaned up maps
  • Cleaned up maps
  • Merge completed
  • Removed Classic Mouse Style
  • add Tirili to AUTHORS
  • Merge branch 'master20121019.+.HotkeyAddons4.-.ClassicMouseStyle' of
  • made RA production and pause hotkey user-configurable

File Changes

  • M AUTHORS (3)
  • M OpenRA.Game/GameRules/Settings.cs (33)
  • M OpenRA.Game/Selection.cs (6)
  • M OpenRA.Game/Widgets/WorldInteractionControllerWidget.cs (6)
  • M OpenRA.Mods.RA/OpenRA.Mods.RA.csproj (3)
  • A OpenRA.Mods.RA/ProductionBuilding.cs (22)
  • M OpenRA.Mods.RA/Widgets/BuildPaletteWidget.cs (13)
  • M OpenRA.Mods.RA/Widgets/Logic/SettingsMenuLogic.cs (197)
  • M OpenRA.Mods.RA/Widgets/WorldCommandWidget.cs (188)
  • M OpenRA.Renderer.SdlCommon/MultiTapDetection.cs (21)
  • M OpenRA.Renderer.SdlCommon/SdlInput.cs (16)
  • M mods/ra/chrome/settings.yaml (139)
  • M mods/ra/rules/aircraft.yaml (2)
  • M mods/ra/rules/infantry.yaml (2)
  • M mods/ra/rules/structures.yaml (76)
  • M mods/ra/rules/vehicles.yaml (6)

Patch Links


Mailaender commented Dec 14, 2012

Cleaned up version available at https://github.com/chrisforbes/OpenRA/commits/hotkeys New proposed default hotkeys for English language keyboards: http://dpaste.com/844283/ by @TiriliPiitPiit. Discussion at http://www.sleipnirstuff.com/forum/viewtopic.php?f=83&t=15384

chrisforbes was assigned Dec 22, 2012


Mailaender commented Jan 12, 2013

This is now all commits squashed into one, rebased onto latest bleed and I also re-integrated the defaults as set up by @TiriliPiitPiit that were discussed in the forums. Also removed the IDs from chrome yaml as they are not needed anymore.

chrisforbes was assigned Jan 12, 2013


chrisforbes commented Jan 17, 2013

Needs rebase too.


Mailaender commented Jan 19, 2013

Okay I made things simpler and removed the hard-coded RA queue names. Note that CnC handles its palette widget hotkeys differently (and better...), but this is part of issue #2243. Rebased and fixed PascalCase issues.

Mailaender added some commits Jan 19, 2013

@Mailaender Mailaender reduce code complexity of hotkey configuration
- merge cycle and select tab keys
- generic names for tab keys as d2k reuses the widgets
- make tab cycler key configurable
- remove redundant ProdcutionBuilding tab trait
@Mailaender Mailaender add demo truck explode hotkey 18f3cd6

Can you explain what you're trying to do here? I don't follow.

I think we can pull all the copies of this out into a helper function which just maps a Modifiers value to these strings.

Double-tap anything => deselect?

In what order? Nothing is guaranteed here

.Any() rather than .Count() > 0


Mailaender commented Feb 9, 2013

I don't know how to solve this elegantly at the moment so I created a simplified version at #2675.

Mailaender closed this Feb 9, 2013

Mailaender deleted the Mailaender:hotkey-config branch May 25, 2013

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment