feat(hotkey): Enable players to hold down hotkeys to queue multiple units#1935
feat(hotkey): Enable players to hold down hotkeys to queue multiple units#1935Caball009 wants to merge 8 commits intoTheSuperHackers:mainfrom
Conversation
GeneralsMD/Code/GameEngine/Source/GameClient/MessageStream/MetaEvent.cpp
Outdated
Show resolved
Hide resolved
|
It would be really cool if holding multiple hotkeys at once would queue units alternatingly between them. Example: holding A and B could queue units in an A → B → A → B pattern. |
|
This feature would also be really useful if you want to build a unit, but you are out of money. So you just hold down the button and no longer need to spam it. |
|
What is the risk that a player accidentally builds one extra unit due to holding the key too long? |
I think that's fair. I'll look into that. |
I'll check whether this is feasible.
Being able to queue units without paying in advance is not related to this PR and requires a bigger change. |
…key repeat feature.
e.g. for the 'S' button, which can be both a meta event and a hotkey.
e58a8ab to
3273071
Compare
The current code supports this. It appears to work well enough. |
|
This would be a nice feature to have as an option for hosts to enable this. But I feel like it will lower the required macro level to be a pro player if it is enabled by start. So needs to be behind a flag for sure cause not everyone will be happy to have it in the game. Unless the host needs to enable it |
|
I think this should be behind an option in multiplayer.ini for Mod opt-in. My first thought was GameData.ini, but I think for Single Player this feature is always ok, so we could make it opt-in for multiplayer specifically. This would then also be where future Controversial changes go when they should be opt-in or opt-out for Multiplayer. |
QoL improvement to make it more convenient to add units to build queues by holding down hotkeys.
Currently, a hotkey needs to be held down for longer than 200 milliseconds to start queuing multiple units. Next units will take less and less time to queue.
Work in progress.
TODO: