ZeroK-RTS / Zero-K

Open source RTS game running on the Spring/Recoil engine
https://zero-k.info
GNU General Public License v2.0
676 stars 203 forks source link

Ctrl automorph: disable when dragging rectangle with ctrl+shift #4806

Open sprunk opened 1 year ago

sprunk commented 1 year ago

Apparently people do make ctrl+shift blocks of shields after all (and mind the morph despite this).

Licho1 commented 1 year ago

Whats automorph in this context?

sprunk commented 1 year ago

If you build a morphable building (geo, cloaker or shield) when holding Ctrl, it will morph as soon as it is ready. This is because you often want to build cloaker or shield just to get a mobile version, or upgrade geo asap.

The problem is that Shift+Ctrl is also used to drag rectangles of buildings, so now when you make (for example) 15 shields in a 3x5 rectangle they will each start morphing as they finish because the combination involves Ctrl. I originally thought this conflict is not a problem, because shield and cloaker buildings are never viable to make in a rectangle and geo can only be placed on single spots, so I didn't request a toggle with the PR that added the feature. But some player did make a grid of shields after all in a co-op game and complained. So this should have a settings option to turn off.

GoogleFrog commented 1 year ago

Having a setting to turn it off isn't going to stop the player complaining. Perhaps Ctrl should only automorph if a single command is issued.

sprunk commented 1 year ago

Having a setting to turn it off isn't going to stop the player complaining.

That sounds fine as long as they can be directed towards the setting upon a complaint.

Perhaps Ctrl should only automorph if a single command is issued.

So essentially change the hotkey from [Ctrl] to [Ctrl and NOT Shift]? Sounds good.

GoogleFrog commented 1 year ago

That sounds fine as long as they can be directed towards the setting upon a complaint. No it doesn't. Only a fraction of players with an issue will complain, and even then they still had the issue. The aim is to have no issues. An obscure setting barely does anything.

So essentially change the hotkey from [Ctrl] to [Ctrl and NOT Shift]? Sounds good. No, not that at all. Shift is used to queue structures, not just drag rectangles. The Ctrl automorph hotkey should be disabled when a rectangle is dragged.

Licho1 commented 1 year ago

Yes, for individual unit it still makes sense to keep ctrl. For multiple units, you can just select nanoframes and mass click morph on them if you want to morph a box of them, right?

GoogleFrog commented 1 year ago

Yes. Or really, just click a bunch of times when placing. The whole point of Ctrl is to give orders at a single time, then come back to find morphed units waiting.