New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow user to add a "priority unit" to production queue #11726
Comments
This idea was heavily discussed and ultimately rejected in #10169, related tickets, and IRC. Effectively managing your production queue is an important part of playing the game (distinguishing between good and bad players), and automating this reduces gameplay depth as well as introducing UI complexity. |
I do think it is somewhat different, but I think you mean the general gist of the discussion applies here too? Namely that managing the buildqueue is part of the game and should not be to 'easy' and should work intuitive? The idea of a priority unit is not to autoproduce it, but to put 1 (or more) units in front the queue. Like in a discotheque: there is a long line, but suddenly a V.I.P. comes and the manager decides to let the V.I.P. in next, and all others in the queue will go after that. |
This is different, almost opposite, in spirit from #10169, which was about putting the queue on autopilot. This one is about giving a player more fine-grained, manual control over an in-progress queue without having to wipe the slate clean and start over. Although a better, long-term solution might be something resembling Starcraft's queue, where items in the pipeline could be visually reordered, a ctrl-click (or whatever) to add units to the front of the queue (letting the current unit finish) seems uncontroversial (to me). It would just be a matter of PushFront() instead of PushBack(), without any new UI. |
The production queue behaviour, warts and all, is one of the core parts of the C&C gameplay. I would be strongly opposed to making OpenRA less like C&C and more like Starcraft over something that I see to be a minor usability issue. |
Also would love this for d2k concrete slates. Although when I thought it through, the only unabusive way was to reset production of item A to 0% and adding Item B at 0% completion before it. |
Okay, it seems there are two alternative proposals here. The "I want it next" proposal:
The "I want it now" proposal:
|
Also rejected in #2997 |
Both options don't seem to collide with the reason of rejection (having two buildings build at the same time) in #2997 though. In "I want it next" the building finishes normally and then the priority build starts, in "I want it now" the current build is cancelled and the priority build starts. A 3rd way of implementing would be: cancel everything AND start my priority build now. In general I think this priority build will not become reality as there are fundamental objections (deviates to much from original) to it in whatever form. A "cancel all" hotkey seems smart though, but that needs a new ticket. |
There already is a "cancel all", just hold Ctrl + Left Click (or right click if you use classic mouse controls like I do) to cancel all in queue. If you're suggesting a "cancel all in entire production tab", I think that would be more annoying than useful. |
Sometimes I want to prioritze a unit in my production queue, while allready having a bunch of units in production. Currently I have to cancel all my other production, then click want I want, and then redo all the stuff I just cancelled. Much easier would be to add a unit with priority to the queue (i.e.: build it next)
Example: I suddenly need to build Tanya, But I allready have 10 rifles and 12 rocketsoldiers queued. If I could ALT-click (or something like that) then Tanya becomes priority. The single rifle infantry that is currently in production will be built, but then Tanya is next, after that production continues with the other 9 rifle + 12 rocket infantry.
Would also be nice to also be able to prioritize using shift (e.g.: prioritize 5 flack trucks before all other tanks)
The text was updated successfully, but these errors were encountered: