Generic unit pausing ala Supcom
Moderator: Moderators
-
- Imperial Winter Developer
- Posts: 3742
- Joined: 24 Aug 2004, 08:59
Generic unit pausing ala Supcom
I'd really like it if there was a pause function in Spring similar to the way the pause function works in SupCom. I realise there is a wait function, but it doesn't quite work the way I'm after.
The pause function in supcom:
- Works on everything from factories, to troops to construction units, in the same way that 'repeat' does. (ideally it, too would be a default button in the UI)
- Will stop whatever the action is that is currently being undertaken - but the unit will not forget what it was doing, nor what it was going to do. It will simply wait until you unpause it before continuing with it's job
- Does not need be placed as part of an orders que. I can give my unit 20 different qued tasks, then at any point during that process, give it a pause command, and have it stop whatever it is doing, and then continue whatever it was doing as soon as the pause command is revoked
- Should work with factories, so that you can pause a factory in the middle of construction, but not have it forget your qued units. It should pause the unit in construction, and that construction shouldn't decay (the factory should no longer draw resources)
- Should work with construction units so that pausing a con unit freezes it in the middle of a construction, so that it draws no resources, the construction stops - but also does not decay.
If you have multiple construction units working on one project, pausing one should simply remove their build power from the construction process, the construction itself should not pause (as long as there are still other units working on the project)
This sort of function was incredibly useful when I was playing SupCom, and I do miss it a lot when I'm playing Spring.
Again, apologies if a function like this exists already and I'm just not aware of it. I suspect though that anything with this much impact would really need UI integration - either a button on the UI, or a little pause symbol above the unit (or both).
The pause function in supcom:
- Works on everything from factories, to troops to construction units, in the same way that 'repeat' does. (ideally it, too would be a default button in the UI)
- Will stop whatever the action is that is currently being undertaken - but the unit will not forget what it was doing, nor what it was going to do. It will simply wait until you unpause it before continuing with it's job
- Does not need be placed as part of an orders que. I can give my unit 20 different qued tasks, then at any point during that process, give it a pause command, and have it stop whatever it is doing, and then continue whatever it was doing as soon as the pause command is revoked
- Should work with factories, so that you can pause a factory in the middle of construction, but not have it forget your qued units. It should pause the unit in construction, and that construction shouldn't decay (the factory should no longer draw resources)
- Should work with construction units so that pausing a con unit freezes it in the middle of a construction, so that it draws no resources, the construction stops - but also does not decay.
If you have multiple construction units working on one project, pausing one should simply remove their build power from the construction process, the construction itself should not pause (as long as there are still other units working on the project)
This sort of function was incredibly useful when I was playing SupCom, and I do miss it a lot when I'm playing Spring.
Again, apologies if a function like this exists already and I'm just not aware of it. I suspect though that anything with this much impact would really need UI integration - either a button on the UI, or a little pause symbol above the unit (or both).
-
- Imperial Winter Developer
- Posts: 3742
- Joined: 24 Aug 2004, 08:59
Re: Generic unit pausing ala Supcom
Doesn't really bother me how it's implemented, but it strikes me as something that would be better off hardcoded, like the repeat function.
I have no ability to code with lua whatsoever, so I'm totally at the mercy of whoever thinks this is a functionality worth having.
I have no ability to code with lua whatsoever, so I'm totally at the mercy of whoever thinks this is a functionality worth having.
Re: Generic unit pausing ala Supcom
With the exceptions that decay does occur (and in factories, the decay can cause you to lose a unit from the queue), that is has not default UI button (simple to add with LUA?), and that it may be queued, wait (w) works exactly as you describe.
I guess the question should really be "should objects under construction decay when a builder targeting it but waiting?"
I guess the question should really be "should objects under construction decay when a builder targeting it but waiting?"
Re: Generic unit pausing ala Supcom
A builder could technically balance the nano flow to keep the partially created unit in its current state without decay.
-
- Imperial Winter Developer
- Posts: 3742
- Joined: 24 Aug 2004, 08:59
Re: Generic unit pausing ala Supcom
Hmm, I was under the impression that wait was an order that was given at the end of the que, like the wait order in Rainbow Six (as in, when you reach this point, wait here for my command, don't continue to the next order until I give the 'go' command). If I'm wrong, that's great. But yeah, as you say, it is quite important that things don't decay. You've got a builder there, so you haven't stopped the project, you have just momentarily diverted the resources elsewhere. I don't think a player should be punished for the pause command.
Also, something like this really needs to have some sort of UI visibility, just because you could quite easily hit W by accident and have no idea why your unit has suddenly stopped moving. Further, there is no way to tell if a unit has been given the wait order by just looking at it. It could be just standing around, or it could have a series of orders just waiting it to be unpaused. A UI button is necessary, imo, but a visual que on the screen (a 'pause' symbol next to the healthbar or something) would be great too.
Also, something like this really needs to have some sort of UI visibility, just because you could quite easily hit W by accident and have no idea why your unit has suddenly stopped moving. Further, there is no way to tell if a unit has been given the wait order by just looking at it. It could be just standing around, or it could have a series of orders just waiting it to be unpaused. A UI button is necessary, imo, but a visual que on the screen (a 'pause' symbol next to the healthbar or something) would be great too.
Re: Generic unit pausing ala Supcom
@Zsinj it can be used both ways, queued or instant.
@aegis: Decay occurs when when nothing is sending build power. Decay can be prevented by sending zero build power. This is what happens while a con unit is running its opening animation (which fixed a bug where the frame would decay during that time).
It appears that placing wait on the default build menu is trivial. I'm not worrying about adding a non-shift wait indicator for now.
It also appears preventing decay from a waiting factory is also trivial.
Preventing decay from a construction unit will be slightly more complicated, but shouldn't be overly so.
If anyone doesn't think that this is the correct behavior, or thinks it should have a mod specific tag, speak now or forever ... get less sympathy when you complain later.
Going to bed. Will look at it again tomorrow.
@aegis: Decay occurs when when nothing is sending build power. Decay can be prevented by sending zero build power. This is what happens while a con unit is running its opening animation (which fixed a bug where the frame would decay during that time).
It appears that placing wait on the default build menu is trivial. I'm not worrying about adding a non-shift wait indicator for now.
It also appears preventing decay from a waiting factory is also trivial.
Preventing decay from a construction unit will be slightly more complicated, but shouldn't be overly so.
If anyone doesn't think that this is the correct behavior, or thinks it should have a mod specific tag, speak now or forever ... get less sympathy when you complain later.
Going to bed. Will look at it again tomorrow.
Re: Generic unit pausing ala Supcom
IMO, decay is a stupid holdover from OTA. Did you know that, in Spring, decaying resources go back into your storage? In most cases, it is something that can be worked around with cycling nano power to prevent decay. This is stupid micro. Sometimes it even provides you with free build power when you decided to spend the resources from that half-built bertha on something else. This is a violation of build power logistics. CA just turned off decay and it is better because of it.
-
- Moderator
- Posts: 2464
- Joined: 12 Oct 2007, 09:24
Re: Generic unit pausing ala Supcom
A unit which is waiting has a W floating on it. This can be seen by pressing shift while it's selected or if you have the see all commands widget(which everyone should have). So it's the same function as supcomm except for decay which can be fixed by playing CA.
Re: Generic unit pausing ala Supcom
Only metal goes back into storage, and I disagree that it is 'stupid,' but ofc I don't care what you do in CA.det wrote:IMO, decay is a stupid holdover from OTA. Did you know that, in Spring, decaying resources go back into your storage? In most cases, it is something that can be worked around with cycling nano power to prevent decay. This is stupid micro. Sometimes it even provides you with free build power when you decided to spend the resources from that half-built bertha on something else. This is a violation of build power logistics. CA just turned off decay and it is better because of it.

Re: Generic unit pausing ala Supcom
The metal went back into your storage in OTA...
Re: Generic unit pausing ala Supcom
The issue is not whether decay should exist. There are already mod options to change that. The issue is, where it does exist, should it occur while the builder is waiting.
The other question is is there any reason putting a wait order button on the default gui would be a bad idea.
The other question is is there any reason putting a wait order button on the default gui would be a bad idea.
Re: Generic unit pausing ala Supcom
It might be nice if it did not occur during a specific wait order. And I don't think there is any reason not to put a wait button.
- Tribulexrenamed
- Posts: 775
- Joined: 22 Apr 2008, 19:06
Re: Generic unit pausing ala Supcom
Lol, I have been thinking about that.aegis wrote:A builder could technically balance the nano flow to keep the partially created unit in its current state without decay.
Re: Generic unit pausing ala Supcom
I have committed the previously stated changes.
-
- Imperial Winter Developer
- Posts: 3742
- Joined: 24 Aug 2004, 08:59
Re: Generic unit pausing ala Supcom
Nice, thanks Titan, you're a champ
Re: Generic unit pausing ala Supcom
What we really fucking need is a lua that will create small buttons that operate like the really needed key shortcuts!!like cntrl z cntrl b cntrl w...that way it will be much more noob friendly!!why hasnt anyone done it yet...
would be also very cool if the lua could communicate with all keyshortcuts and u could choose to which keyshortcut to assign buttons and to which not (there should be a few that will be represented wiht a button by default but cal be manually removed as well of course).
would be also very cool if the lua could communicate with all keyshortcuts and u could choose to which keyshortcut to assign buttons and to which not (there should be a few that will be represented wiht a button by default but cal be manually removed as well of course).
Re: Generic unit pausing ala Supcom
ctrl-z? Just doubleclick your units. ctrl-b? there's tons of idlecons widgets. ctrl-w just seems useless.
Ingame binding of ctrlpanel keys is already possible.would be also very cool if the lua could communicate with all keyshortcuts and u could choose to which keyshortcut to assign buttons and to which not
Re: Generic unit pausing ala Supcom
ctrl-Z is map-wide, doubleclick only selects visible units.