Author Topic: Engineer priorities  (Read 3929 times)

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Engineer priorities
« on: October 03, 2012, 01:25:36 pm »
Ok, so "Unit behavior: change engineer prioritization to repair low-hp expensive stuff, quicker at switching from a full dock, etc." did really well in the 6.0 poll, so I'm taking a look at what to do there.

This was the bit from the nominator in the nomination thread:

"
Ever have a stack of docks in a location because you've either run out of build-space in one or because you're micro-managing your build queues to make sure, for example, bombers ALWAYS have 5+ Engineers assigned to them?  Your free floating engineers are morons.  They'll continue to attempt to support 'full' lines for far too long, they won't switch to a building line (mind, you have to have say 60+ of them to see this, multi-HW) for a full minute on occassion as the queue eventually gets around to them.  Add to that when the fleet comes in they repair in one of the strangest selection orders I've ever seen.  Oh, that limping 3% hp no engine cruiser?  Nah, ignore that, we're gonna do paint touch-ups on the fighter squadron... oh, look, a butterfly... anyone see that smoke?  No?  Alright, start on the Infiltrators.  Couple this with constantly trying to repair a unit that's being shot at while there's, oh, 50 or so NOT being shot at right there, and they can get downright frustrating.
"

So, when autotargeting for repairs, in order of priority:
- don't pick stuff that's not repairable due to recent damage (it already pays attention to that, my guess is that the dissatisfaction is with how long they keep trying if the thing takes damage during the repairs, before retargeting)
- prioritize low-hp-percentage stuff over high-hp-percentage stuff when repairing (say, if target 1 has X% health left, and target 2 has (X/2)% health left, prefer target 2)
- prioritize high-metal/crystal stuff over low-metal/crystal stuff when repairing (say, if target 1 has X m+c, and target 2 has 2*X m+c, prefer target 2)
- prioritize stuff with engine damage in addition to hull damage

And when autotargeting for build-queue-assistance:
- don't pick stuff that can't make progress on its build queue due to hitting ship cap, etc (it already pays attention to that, my guess is that it's taking longer than desired to retarget)
- don't pick stuff that already has so many engineers helping that its hitting the limit of how many ships a single dock can produce per second (is it really piling that many on? or did I just misread the above?)

And do you want repairs to take priority over build-queue-assistance?  Or vice versa?


So:
- Is there anything above that should not be done?
- Is there anything that should be done (with engineer priorities) and is not above?
- Do you have saves demonstrating the frustrating engineer behavior so I can test if the changes actually help?

One note: in the past there have been requests for a bunch of controls for setting engineer priorities.  I don't mind doing a little of that (like the existing engineers-prefer-non-military toggle) but in general I don't think optional controls are going to adequately deal with a widespread dissatisfaction with the default behavior.  Nor do I want the controls to be very complex as I'm already hearing about the recently added per-control-group stuff being too complex, etc.

Thanks for the feedback :)
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Diazo

  • Master Member Mark II
  • *****
  • Posts: 1,717
  • I love/hate Diff 10
Re: Engineer priorities
« Reply #1 on: October 03, 2012, 01:34:18 pm »
I just want to chime in and make sure that directly right-clicking a dock will keep that engineer at the dock.

If the dock is sitting there doing nothing, I don't want that engineer wandering off because its build job is complete, if I right-click a dock that engineer stays at that dock.

I believe that is how it is in the game right now and I want to make sure that does not change as a part of this.

As for the thread topic itself, I'm not sure. This was not a big deal for me and it's not something I've seen as an issue in my games. If it takes a few second longer for something to be repaired/built because the engineer was not there as fast as it possibly could be I have not worried about it. I've got minutes before the next attack wave and I'm not giving the attack order to my fleet until the repairs finish anyway.

D.

Offline TechSY730

  • Core Member Mark V
  • *****
  • Posts: 4,570
Re: Engineer priorities
« Reply #2 on: October 03, 2012, 01:36:42 pm »
Repairing command stations (if it can) should be top priority, especially home command stations (both human and AI).

After that, repairing forcefields should have a pretty strong priority boost.

Another high priority (though not necessarily #2) should be repairing (but NOT constructing) irreplacibles/hard to replace items. In a rough order of priority, advanced factories and other capturable unit making stuff, champions (including assisting module construction), golems, Z trader goodies, spirecraft, fallen spire special structures, and probably others.

EDIT:
Also, there should be a minor priority boost (for both repair and construction) of the economic structures, harvesters and energy producers. Preferably, boosting priority quite a bit if the corresponding resource gets low.

After this, the (new) normal prioritization logic can apply.
« Last Edit: October 03, 2012, 01:56:19 pm by TechSY730 »

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: Engineer priorities
« Reply #3 on: October 03, 2012, 02:00:13 pm »
I just want to chime in and make sure that directly right-clicking a dock will keep that engineer at the dock.
Right, I should clarify that here we're only talking about an engineer looking for a target. 

It does not apply to an engineer with an explicit order from the player.
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline dotjd

  • Jr. Member
  • **
  • Posts: 65
Re: Engineer priorities
« Reply #4 on: October 03, 2012, 02:01:38 pm »
My most recent engineer frustration is that, if they're assisting at the docks or some longer project and my champion dies, I have to manually break one of them off to rebuild its modules.

Offline Wanderer

  • Master Member Mark II
  • *****
  • Posts: 1,579
  • If you're not drunk you're doing it wrong.
Re: Engineer priorities
« Reply #5 on: October 03, 2012, 02:30:59 pm »
I suppose since I'm the one with the big mouth and probably am one of the few who have just sat there and stared at my engineers in real time waiting for refleets, I should chime in here...  :D

So, when autotargeting for repairs, in order of priority:
- don't pick stuff that's not repairable due to recent damage (it already pays attention to that, my guess is that the dissatisfaction is with how long they keep trying if the thing takes damage during the repairs, before retargeting)
- prioritize low-hp-percentage stuff over high-hp-percentage stuff when repairing (say, if target 1 has X% health left, and target 2 has (X/2)% health left, prefer target 2)
- prioritize high-metal/crystal stuff over low-metal/crystal stuff when repairing (say, if target 1 has X m+c, and target 2 has 2*X m+c, prefer target 2)
- prioritize stuff with engine damage in addition to hull damage

In general, I agree with this.  I've sent the Engi squad over to an area to start 'cleanup' of the assault team and they tend to leave the engine damaged folks til last, a small frustration as the Engis get picked off during reinforcements and I end up scrapping those units anyway.  But yes, my personal preference is basically A) Get everything moving again, B) get everything expensive combat worthy again before it gets hit, C) Fix everything else, in order of damage taken.  These problems come less into play during home defenses as they do when you're in the field and your transport is dropping off engineers to do fleet repairs instead of trying to come all the way home.

Quote
And when autotargeting for build-queue-assistance:
- don't pick stuff that can't make progress on its build queue due to hitting ship cap, etc (it already pays attention to that, my guess is that it's taking longer than desired to retarget)
- don't pick stuff that already has so many engineers helping that its hitting the limit of how many ships a single dock can produce per second (is it really piling that many on? or did I just misread the above?)

And do you want repairs to take priority over build-queue-assistance?  Or vice versa?
Saving what you have should almost always be ahead of continuing to build new equipment.  Under most circumstances you (alright, I) have two sets of engineers... constructors and repairs.  They rarely occupy the same planet for long except on the whipping boy.

It IS piling on WAY more constructors than it can actually use for construction in some cases.  Fighters are a prime example, as are other small/speedy ships to build.  Most of these build circumstances are probably due to queue optimizations.  I usually only see them when I have a plethora of engineers at my disposal due to multi-homeworld.   However, it is something you can witness even in single player games as the dock switches between 'long build' and 'short build' items.  Again, I think it's due to the queue delay.  I've found that the optimal build pattern is to actually build a different dock for each type of ship.  Eventually, not usually an option in the first 20 minutes while you fight the famine econ.

Quote
So:
- Is there anything above that should not be done?
No, that seems about right.  It should help with medic/MRS decisions too, which should help make the MRS more viable.

Quote
- Is there anything that should be done (with engineer priorities) and is not above?
Don't have the engineers go haring off to do repairs constantly in the middle of an alert on the planet.  As amusing as it is to have to constantly replace your engineers because they're too stupid to see the 500 enemy ships right outside the CC's FF, it gets to be a bit silly... particularly when there's turrets RIGHT THERE that they can repair from safety...

Quote
- Do you have saves demonstrating the frustrating engineer behavior so I can test if the changes actually help?
Offhand... no.  The times when engineers come into play are usually right AFTER the game breaking battles that make/fail your attacks, so your saves are usually right before the brawls, not after during cleanup.

Quote
One note: in the past there have been requests for a bunch of controls for setting engineer priorities.  I don't mind doing a little of that (like the existing engineers-prefer-non-military toggle) but in general I don't think optional controls are going to adequately deal with a widespread dissatisfaction with the default behavior.  Nor do I want the controls to be very complex as I'm already hearing about the recently added per-control-group stuff being too complex, etc.
While being able to custom tailor a set of options in a list would be a nice to have, I'd like to see the default queue itself get itself an upgrade/optimization pass.  I believe a lot of this is due to them being 'low priority' in terms of how often they're checked for being 'on the ball'.  Only one of my initial complaints, where it does paint-job fixes first (or SEEMS like it, not the easiest thing in the world to track) is an actual queue prioritization fix.  Most of this seems to simply be the engineers are red-headed step children in the queue... and they're one of the primary main affectors of your economy.

Quote
Thanks for the feedback :)

Sorry if this is a bit disjointed, I'm loaded up with Day/Nyquil and home sick today.  If anything was horribly unclear please let me know.
... and then we'll have cake.

Offline Draco18s

  • Resident Velociraptor
  • Core Member Mark V
  • *****
  • Posts: 4,251
Re: Engineer priorities
« Reply #6 on: October 03, 2012, 03:11:44 pm »
My only comment at this point is that when I tell a bunch of engineers to move, they'll then auto-target things to repair/build.

In the case of space docks, on average they'll spread themselves fairly evenly.

Occasionally they will not and trying to fix it (other than manually assigning the lone dissenter to the particular dock, which I don't want to do, because I'd like it free to assist other things when the time comes) doesn't help.

Basically if I have two docks and 2 Engie 1s and 2 Engie 2s, they should split 1-and-1 (1 of each mark) between the docks.  Frequently they'll split so that the two engie 1s are aiding an engie 2 at one dock, while the other engie 2 solos the second dock.

Offline Bossman

  • Newbie Mark III
  • *
  • Posts: 31
Re: Engineer priorities
« Reply #7 on: October 03, 2012, 05:11:00 pm »
  • Repair should take priority over build assisting.
  • Repairing units with regen (Fortresses, forcefield modules) should be lower priority than units without.
  • Fixing a broken Golem should be at the bottom of the queue. Focus on the stuff that can fight now, not thirty minutes from now.

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: Engineer priorities
« Reply #8 on: October 03, 2012, 07:43:11 pm »
Ok, 5.089 changes engineer priorities quite a bit.  The problems that weren't related to engineer priority I'm not sure how to fix so I wanted to see if these changes help that indirectly.

If you see a situation in 5.089+ where the engineers are being morons, please post a save and steps to reproduce.  That makes it a lot easier to try targeted changes :)
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Volatar

  • Hero Member Mark III
  • *****
  • Posts: 1,055
  • Patient as a rock
Re: Engineer priorities
« Reply #9 on: October 03, 2012, 08:16:29 pm »
I just want to chime in and make sure that directly right-clicking a dock will keep that engineer at the dock.

If the dock is sitting there doing nothing, I don't want that engineer wandering off because its build job is complete, if I right-click a dock that engineer stays at that dock.


Uhhhh, I actually don't want that behavior. It has always bothered me when me engineers sit at a dock. If I had a loop build setup but it has capped out I want the engineers to be able to roam around and do other things but return to the dock when done.

Do I smell another addition to the CTRL menu?

Offline Diazo

  • Master Member Mark II
  • *****
  • Posts: 1,717
  • I love/hate Diff 10
Re: Engineer priorities
« Reply #10 on: October 03, 2012, 08:39:58 pm »
I just want to chime in and make sure that directly right-clicking a dock will keep that engineer at the dock.

If the dock is sitting there doing nothing, I don't want that engineer wandering off because its build job is complete, if I right-click a dock that engineer stays at that dock.


Uhhhh, I actually don't want that behavior. It has always bothered me when me engineers sit at a dock. If I had a loop build setup but it has capped out I want the engineers to be able to roam around and do other things but return to the dock when done.

Do I smell another addition to the CTRL menu?

Just leaving the engineer parked next to the dock does not work for you then? If you don't give it a specific order it will assist the dock unless something else comes up.

For me, I want the engineer to stay put because I have that dock dedicated to younglings. I want those things spammed ASAP and quickly when they start dying so I dedicate engineers to the docks.

In most cases I don't do this but for younglings and other short lived ships it makes a big difference to me.

D.

Offline Lancefighter

  • Core Member
  • *****
  • Posts: 2,440
Re: Engineer priorities
« Reply #11 on: October 03, 2012, 08:40:26 pm »
Did we get around to 'force engineers to stay under forcefields while enemies are present' yet? I feel like that is really important.

But otherwise, Id rather high hp things repaired primarily (starships, certain buildings), then dock queues, then fleet ships. (but ignoring that possibly, repair then docks.

On the other hand, I would like, due to the top statement, for engineers to prioritize docks when there are many enemies present - Instead they like to fly around dieing trying to rebuild turrets and such.
Ideas? Suggestions? Concerns? Bugs to be squashed? Report them on the Mantis Bugtracker!

Author of the Dyson Project and the Spire Gambit

Offline Volatar

  • Hero Member Mark III
  • *****
  • Posts: 1,055
  • Patient as a rock
Re: Engineer priorities
« Reply #12 on: October 03, 2012, 08:52:55 pm »
I just want to chime in and make sure that directly right-clicking a dock will keep that engineer at the dock.

If the dock is sitting there doing nothing, I don't want that engineer wandering off because its build job is complete, if I right-click a dock that engineer stays at that dock.


Uhhhh, I actually don't want that behavior. It has always bothered me when me engineers sit at a dock. If I had a loop build setup but it has capped out I want the engineers to be able to roam around and do other things but return to the dock when done.

Do I smell another addition to the CTRL menu?

Just leaving the engineer parked next to the dock does not work for you then? If you don't give it a specific order it will assist the dock unless something else comes up.

For me, I want the engineer to stay put because I have that dock dedicated to younglings. I want those things spammed ASAP and quickly when they start dying so I dedicate engineers to the docks.

In most cases I don't do this but for younglings and other short lived ships it makes a big difference to me.

D.

There are often two docks running, and I have to manually make the majority of my engineers focus on the most important one (fleet), rather than splitting evenly with the starship constructor. And if I am producing farther towards the front with my stations next to a spire city... things get even messier.

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: Engineer priorities
« Reply #13 on: October 03, 2012, 08:57:49 pm »
Did we get around to 'force engineers to stay under forcefields while enemies are present' yet? I feel like that is really important.
The simple solution to that is to not put those engineers in FRD.

It could suppress their FRD behavior while enemies are present, but remember how often people get annoyed by the "harvesters don't rebuild while enemies are present" logic?  Do you really want that to get more widespread?
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline chemical_art

  • Core Member Mark IV
  • *****
  • Posts: 3,952
  • Fabulous
Re: Engineer priorities
« Reply #14 on: October 03, 2012, 09:00:30 pm »
The "engineers prefer docks" ctrl prefers docks above all.

Using this controls, if I want my engineers to focus on docks, especially during combat, I turn the docks on.

If I want them to focus on repairs, I turn the docks off, while maybe leaving docks on elsewhere in my empire.
Life is short. Have fun.