I worked on the hotkey-layout (based on Tirili's branch), the building sidebar, new acoustic announcements, new speech-voices and some other stuff for several weeks now.
-------------
My goals were
1) playability, i. e. make a really useful user interface that improves playing instead of just throwing a ton of new options at the user that he will never use
2) make it intuitive, so the user won't have to think about it or look at the building menu (which distracts from combat).
3) it does not require the user to look on the keyboard, which distracts him again. The left hand must rest on they keyboard on ASDF and so a ton of keys can be reached comfortably and he can type in the keys the same way he does when 10-finger typing. No thinking/looking involved!
4) The RA-Mod is the only one i care about, so it wont work/make sense for the other mods (or maybe it will, i dont know and honestly, i dont care).
*************
Heres a list of the changes that i made, hope i did not forget anything:
- Default Layout for the production queues changed - i put a lot of thought into this for a long time and i think i got it perfect now:
a = air units
s = ships
d = defense
f = foot units
v = vehicles
Easy hm?
This is the best setup i came up with, and its also very comfortable to reach. Makes sense!
Pressing one of these keys selects the corresponding production queue. Pressing any other key (exept one of these five) after this starts production/training of a certain unit/building. First select Foot units with F, then press R for Rocketman.
- To build the corresponding producion building (airfield, shipyard, barracks, war factory) instead of selecting its queue, i kept Tirili's modifier, the alt-key (also quite comfortably to reach): Alt + F builds Barracks/Tent.
So, why not make the alt key the key to select the buildings-queue altogether, instead of having a seperate key from the modifier-key for that? Why use C to select the queue to produce buildings, when the ALT-key serves for a building purpose already? Saves one key, and is far less confusing. Done.
I also made two other keys Tirili introduced redundant: They keys to place a finished building/defense structure immediately without using the mouse to click and place it.
When you have a building ready, just press alt, this selects the buildings tab and and you got the finished building immediately on your cursor to place it. (Same for "D" for defense structures). This is always the desired behavior, so i just used the normal select-queue-keys for this, its less confusing then having two other keys for this, and it leaves two more keys free for other things.
So, you can always build a production-building by ALT+Key, as alt automatically selects the buildings-queue.
Examples:
If you wanna build a power plant, just type alt, q (or alt + q).
If you wanna build three rocketmen, you type f, r,r,r.
If you want a transport ship, press s, t.
If you want a war fact to produce vehicles, press alt + v.
To build two tesla coils/turrets, press D, t, t.
- no need for the tab-key to cycle through building tabs anymore, as you select the tabs directly. Saves another key for other things!
- In Tirili's original branch, pressing one of the above keys once selects the tab, pressing it twice cycles selection through the buildings, and pressing it three times cycles and also centers the view around it.
I changed this to the following:
Pressing it once not only selects the tab, but also selects the building, so you can immideately select the spawn point. I observed myself using this all the time while playing, definitely makes sense!
This has also the nice side effect that this way, it wont interfere with unit commands (stop, cycle stances, deploy and so on).
Pressing it a second time (no quick double press) cycles to the next building, so you can set the next rally point. Its quite intuitive, you can see it if you try.
A quick double-press does the same as the single-press, but also centers the view around the first/primary building. The next double press selects the next production building.
I think this is better then a triple-press for this function, as this way its the same behaviour as double-pressing a number key to center view. far less confusing.
This saves another key, as backspace is not necessary anymore: double pressing alt does this function way more effective, as you dont need to lift your hand and/or look on the keyboard to press backspace.
- Scott did not like my use of the alt-key, he wants to reserve it for force-move.
This should not be a problem, as all keys could be changed by the user to his preference. Alt makes more sense for building/mcv functions, i would use another key for force-move (tab is free now, for example)
- fixed the bug when cycling through an even number of buildings. On a double press, the second press does not cycle to the next building anymore, as the first already does that. Now the view centers around the correct building.
- included a cancel-key on the keyboard to ged rid of the tiresome (and laggy!) (shift+)right-clicking a thousand times to cancel all your queued buildings.
Remember, we wanna look at the building menu as rarely as possible, and better not look away from the battle at all.
So i made the G-Key (easy to reach!) do the following:
Pressing it once holds the building. Pressing it once again cancels all (or one if shift is pressed) of its type.
double-pressing it cancels all buildings in the selected building queue (for example, all queued riflemen and all queued rocket troopers)!
pressing it three times cancels every buildings in every queue.
I found this key very, very useful in game, saves a lot of time when you need to change your plan to a new condition and you need to build something totally different. Just cancel everything in production, get all your money back and start a new construction.
- We talked about the hotkeys for production queues(=production buildings) and the cancel-key.
I also changed the layout for all the other units/buildings, so you dont have to think what to press anymore. Some of it is based on Tirilis Thoughts, the rest is made to be as consistent as possible.
Pressing Q alwasy trains the first available light scout unit, pressing R has anything with Rockets, T has anyhing related to transport (helis, transport ships, APCs etc), and so on.
- added a "direct building"-mode.
With this, you can map your favourite single units/buildings to a mouse button, a keyboard macro-key and so on, and just build this one in the background while doing other things.
No building tabs are changed, no unit selections are canceled, you just press that key/button and a destroyer or ore truck is training.
- included 5 new voices, each with his set of announcement speeches, one for each building queue (I kept the default voice for buildings and added one for each Defense, Vehicles, Foot units, Ships and Air units).
Again, the purpose of this was to make it more intuitive:
Each type of Production Queue now has a unique "feel" to it, as if the speaker was your personal assistant, responsible his queue.
When a happy Japanese guy (remember pearl harbor?) shouts "Ship ready!", you know that you have to double press S to see it immediately.
When a sexy erotic female voice says "Tank lost

They also announce several new events, always in "their" department: The aircraft guy informs you that your plane is rearmed, and the vehicles lady tells you that your harvester is under attack or that your mammoth tank is repaired, and so on.
You should always know what is going on!
Nice side effect:
All their announcements start with the letter for the corresponding production building, so its easy to learn/remember what to press to get to the building and/or production queue immediately!
That was a lot of work. Nevertheless, although these voices are quite fine with me and do their job well, but there might be cooler voices to find.
As i said, my goal was playability, not style or beauty above all else.
- fixed two bugs regarding finished buildings:
When you select a finished building with your mouse to place it (so you have it on your mouse cursor), and then again right click it in the building palette to cancel it (before you placed it), you still got it on your cursor, even if that building has been canceled and does not exist! Fixed.
Same for pressing that buildings hotkey while the building animation is still in progress, you dont have a "ghost" building on your cursor anymore.
- changed the middleclick-scrolling behaviour:
When you use the default type (scrolling not inverted) and you reached your wrist movement limit while moving the mouse, where you usually would lift it up (or release the middle button, move the cursor and then hold middle button again), it makes sense to just continue with edge scrolling, so you can finish scrolling to the maps boarder without lifting your mouse.
This works in inverted scrolling mode, but in normal scrolling mode, touching the edge in the direction where you move your cursor, would take you to the opposite direction of what you want.
So i reversed edge scrolling while (and only while) the middle button is held down, you can extend your scrolling now as far as you want.
Might sound confusing in theory, but in practise you will quickly find out that this helps a lot!
- Rewrote the building-sidebar for large Ultra-HD Monitors (3840x2160 resolution).
No more first clicking a tab to select a certain production queue - all production queues are always displayed, and you can always see whats is training/bulding or what is finished.
You see the progress of your cruiser ship, while you can see your service depot in construction.
This makes especially sense together with the Hotkeys for the building-Tabs (remember: A S D F V and Alt), as the corresponding Letter for the hotkey is now displayed left of the buildinging segment it relates to.
(It definitely makes still sense to keep the hotkeys for each production queue and keep those separated, as otherwise there were not nearly enough keys in reach to build everything).
Now you always see what to press and what is in construction.
To make it even easier to see if the right queue is selected, a red frame is drawn around the selected segment.
Remember, pressing q trains a light tank when you select the vehicles tab, but it builds a power plant in the building-tab. The frame makes it easier to see where you are and what the keys will do.
- Added mouse hover-over for each production queue segment.
So for example, to select the "Vehicles"-production segment, you just hover the vehicles-segment with the mouse. Remember, all production queues are visible (as long as its production building exists, of course). You just click the ore truck to build it, as you normaly would, and then you click Tanya. Easy.
When a building/unit is in construction, its icon is highlighted by a blue frame, when its ready, it is highlighted with a green frame. Makes it easier to spot on high resolutions.
I tested everything for bugs in single and multiplayer for many weeks, and got rid of every bug i could find.
******************
To do:
- Clean up the code!
My code is very (!) dirty, as i have not learned any programming language and never read a book or anything. Make the code more adaptable.
- make all the keys user-configurable (so far only a few are, but it should not be hard to do that)
- make the sidebar detect automatically when a large Ultra HD monitor is used; otherwise, the default tabbed sidebar interface is used.
- important: improve inverted middle-click-scrolling, so the cursor stays on its position on the map as it does in non-inverted scrolling-mode.
Need help for this!
*****************
Now, i'm not sure if i should release this, thats why i wanted your opinions. What do you think?
Most people i talked to dont wanna learn new hotkeys and just stick with what they are used to do for so many years back til '95 when the original game came out.
It seems there are only a handfull of people who use Tirilis (very useful) hotkey layout, Tirili and myself included.
The reason for this is, its not easy to learn and even more difficult to use this to your advantage in the heat of battle. Even i sometimes revert back to the mouse clicking when too many things are going on.
Next, there might be some copyright-issues with my voices. Im not sure. Might be a problem. So if someone has really cool voices to use, let me know.
Third, this is only tested for the RA-Mod.
There may be bugs when using one of the other mods (which i do not care about), so this will probably never get merged to the main branch.
pchote informed me he probably wants to rewrite the sidebar code and/or use more of the CNC mod-code, so the future of this branch is unclear.
I understand that no one wants to put efford into learning an interface, when it may not be included in future versions of the game.
Most of the Devs i talked to dont like the changes much.
For example, chris would like to have the bottom row of keys reserved to unit commands, and scott woudl like the alt key for force-move.
The unit-command problem has already been adressed (they are only used for unit-commands when actually units are selected, and all other keys including those to switch production queues work normally!), and the force move-key could be changed to something else, and it can be made user configurable.
But its not my decicion and there are always different opinions on what is best (and that also depends on your equipment, too).
PS
In the future, i will post some questions regarding my coding problems here. It would be nice if some of you could help me out a bit.