Changes to unboost and renew will cause issues.

  • On a private test server (But I assume the current behavior is the same on live.) I get these errors:

    [4:17:24 PM]Using StructureSpawn.renewCreep on a boosted creep is deprecated and will throw an error soon. Please remove boosts using StructureLab.unboostCreep before renewing.

    Ok, sure... I'm renewing a lot of creeps in that room. I started by trying to unboostCreep() them before renewing them, but that ran into a wall pretty quick as a level 7 room has only 6 labs, even cycling through ALL the labs to use them all to absorb the unboost prior to renewing (And subsequently re-boosting.) the creeps hits that bottleneck at somewhere around 3 20 WORK part upgraders.

    Am I trying to "abuse the system" or is the cooldown for the unboostCreep() command unreasonably high? I'm not even using the max boost, just the T2 Upgrade (GH2O) one. I would think I should be able to do one of those (With 20 WORK.) for each lab I dedicate to the unboosting.


  • I started looking at unboosting but I abandoned it because it was just too expensive on lab time. At least we can ignore it at the moment, but as you point out, this will be a major problem if they change renew so it outright refuses.

    I think renewing/unboosting needs reworking. The idea that you can't sanely renew creeps that have been boosted just seems confusing and nonsensical.

    Why should it be so difficult to renew a creep just because it has been boosted?

    My suggestion would be to not boost individual parts, but instead have boosts apply an effect to the entire creep for a period of time (obviously the duration is relative to the size of the creep). You can renew the creep whenever you like, but that doesn't renew the boost. If you want to renew the boost time as well you go to a lab and boost the creep a bit more, but this is entirely independent from renewing TTL.

    The other advantage of this system is that it allows you to apply short-term boosts, which is a much-requested feature. For example, to boost MOVE so a creep can get to a destination quickly but doesn't need to move after that.

  • Boosts could even re-use the existing power effects. That would simplify a lot of damage code in the processor.

  • I love that idea @SystemParadox. That unlocks a lot of complexity in behavior with no complexity in code. Now you can temporarily boost, partial boost, etc.

    I'd say that the ability to boost on 2 axis, # parts and # ticks, would by itself be awesome.

  • I use the two input labs to unboost creeps. Those never have a cooldown timer so they work well for unboosting. You won't save all of your boosts but you will save some.

  • I have had unboosting built into my bot all year. A recent development is a container next to labs to catch the boosts so that I don't have to find a porter creep to get there ASAP after the unboost and pick up the boosts as they tick down. I expect to be typically unboosting 1 or 2 creeps per lifetime so the energy cost of the container is justified if it saves a few 10s of boosts per creep lifetime.

    To me, unboosting is a way of getting hold of complicated boosts for "free"-ish. If you only produce into 8 labs then you have 2 labs you can unboost into at no cost. Even if those two labs are on cooldown (which sometimes happens for my bot), paying the lab cooldown cost of building the boosts without having to pay for the minerals seems like a good swap to me.

    There may be people with perfect mineral set-up, but I find that there are some minerals that I obtain more than my empire can use, and there are some minerals that my empire is to an extent gated by. Particularly if the boost contains one of these gated minerals, unboosting seems like a massive win for me - it either leads to me producing more of the bottleneck boosts, or it leads to me obtaining more credits.

    I haven't run into the issue with a level 7 room that you've experienced, but at RCL8 where you're only running 1 upgrader I have close to no issue with the cooldown time, even using T3 boosts for upgraders.