priority-area / group prioritize

Started by stigma, October 25, 2013, 01:06:19 PM

Previous topic - Next topic

stigma

Hey all,

This will be a real short suggestion. For anyone who has played the game, it is a really common thing to experience that your colonist wants to go eat or sleep just before he finishes the last 3 blocks of your mining job, or the last few conduit pieces ect. Then you have to resort to right-clicking and "prioritize" for each and every block of work - basically babysitting the colonist through it. Sometimes this is a matter of survival or death (those missing conduits could be the thing you need to power your defense against the imminent big raider attack) so you are often compelled to do this.

What we need to fix this is very similar to the existing "prioritize X" we already have, but allow it to select a whole area of existing queued jobs. That colonist will do these tasks above all else, including sleeping and eating. This would be a pr. colonist kind of thing.

I think it could also be useful to have a priority category for all colonists combined that works a little different. Let's say there is lots of stuff to haul, but right now I need to grab a load of metal that fell down from orbit. I don't want to let them haul all the other stuff first because I need the metal right now. i don't want to select priority on a single colonist because I need the job done faster than a single man can do it (and it may be too much work to do in one go without sleeping and eating too).

Instead the solution is to set a priority area. Simply put, anything in that area is classed as higher priority, but ONLY higher than other tasks in the same class. Example: a hauling task inside super-priority area is more important than hauling task outside the area, but not more important than mining task outside the area.

Result: I can simply mark the minerals area with super priority and then go do something else. As soon as my colonists have availability to do hauling jobs, they will do that hauling job before any other hauling. Problem solved! :)

-Stigma

Gazz

An easier solution (from a micromanaging point of view) would be turning the mouse pointer into a scaly hand and allowing to *slap* a colonist that wants to interrupt an important job.

Okay, so it doesn't allow to differentiate between similar "important jobs"...

stigma

Quote from: Gazz on October 25, 2013, 01:28:48 PM
An easier solution (from a micromanaging point of view) would be turning the mouse pointer into a scaly hand and allowing to *slap* a colonist that wants to interrupt an important job.

Okay, so it doesn't allow to differentiate between similar "important jobs"...

As much as I like the dungeon-keeper reference, I don't think that would be a solution, as it is basically the same as we have right now and you still have to babysit the colonists which is very tedious. (Maybe you meant it as a joke, sorry if I didn't catch it if so :3 )

I think this is inherrently just a problem with "dumb" algorithms that don't look ahead at all and thus make stupid prioritizations. A lot of this problem can go away if the algorithms just get smarter in planning the execution of tasks, but I feel that there will always be a need for some way to "directly control" when you really need to - and priority-area and groupprioritize seems like it would be a good way to handle it.

-Stigma

Gazz

It's a pretty similar feature to some other "large scale" games where you prioritise "things in that area".

The Populous Magnet/Totem comes to mind.
You don't tell your followers what to do... only go there and do their thing.

Spike

I'm on my lunch break today, so this will be quick.  I'll try to flesh it out later, if needed.

My first thought was a player defined priority list, instead of flat left to right in the overview.  My second thought was some kind of priority list per individual, set by the player.  That could be a headache for Tynan to set up, and the player to manage (especially as you get more).  Going the zone defining option could likewise be messy.

So... why not use features that are already in the game to add variety and to help with this?  Use character backstories and traits to define a "character class" with a specific job priority list.  How would this work?  (Hopefully better than the Chewbacca defense.)

Characters get two backstories - Childhood & Adulthood.  If each backstory would have built-in priorities, then combining the two would give each character an individual priority list that would affect all of the enabled work that they do.

For example (making this up on the fly while looking at the wiki)... 
Snodgart, a Medieval Slave & Navy Scientist.
   Slave - -3 Research, +2 Construction, Growing, Mining
   Scientist - +8 Research
Priority list:
   Slave - Construction, Growing, Mining, Hauling
   Scientist - Research, Doctor, Cleaning
Final:  Firefighting, Research, Doctor, Warden,  Construction, Growing, Plant-cutting, Mining, Cleaning, Hauling.

On the other hand, someone who is, say, an Urbworld Urchin & Deep Space Minor might have a final priority list of Firefighting, Mining, Construction, etc, etc.  So if both had Mining & Research enabled, Snodgart would default to Research first, and the second would default to Mining first.

So that's a very rough idea.  There are multiple ways it could be done - I'd think that Adulthood would be higher priority than Childhood.  Another way would be to simply split the "jobs" in half; one set only comes from Childhood, and the other set only from Adulthood.