Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Regarding aborted tasks...  (Read 1281 times)

Skyrage

  • Bay Watcher
    • View Profile
Regarding aborted tasks...
« on: December 20, 2006, 05:51:00 am »

You guys know how it is a lot of the time - a dwarf is in the middle of a task when suddenly he/she/it becomes hungry, thirsty or sleepy and simply abandons the current task at hand. It's really annoying and in some cases even more so.

My suggestion is simple: add some sorts of "buffer" which forces a dwarf to finish a current task before he she goes to sleep or to eat etc. Basically, make it so that the dwarfs gets sleepy or hungry or whatever a bit earlier than usual, but use this extra time to force the current task to be finished no matter what. This way you also won't risk the dwarves falling asleep to soon or end up starving to death or something crazy like that. Sure, this will mean that a dwarf will have a bit less overall productive time, but to be frank - this slight loss will more than compensate the constant task abortions which in the end costs 10 times more time.

Logged

Mechanoid

  • Bay Watcher
  • [INTELLIGENT]
    • View Profile
Re: Regarding aborted tasks...
« Reply #1 on: December 20, 2006, 07:03:00 am »

Agreed.

It has also been suggested that dwarves should check the amount of time they'll spend - both getting to and working on - a job and if that time is greater then the time to the next hunger /drink /sleep, that job is qued as #2, with job #1 being to do that eat /drink /sleep.

A combination of the above with your idea would definitely be good, in the case that the above fails... Maybe it could be a new option under the "O"rders pane?

C: Dwarves consider job completion
C: Dwarves consider job time
C: Dwarves consider self first

C is for "C"onsideration  ;)

Logged
Quote from: Max White
"Have all the steel you want!", says Toady, "It won't save your ass this time!"

Maximus

  • Bay Watcher
    • View Profile
Re: Regarding aborted tasks...
« Reply #2 on: December 20, 2006, 09:24:00 pm »

The walking-time is often a big part of the job, but it could be tough to calculate it.  I'm trying to get some traps set up in a distant part of my fortress by building the mechanisms on-site.  A mechanic will pick up a stone, haul it to the workshop, drop it to go eat, pick up another stone, haul it halfway, go drink, etc.   :roll:

At any rate, the travel-time calculation would have to include encumbrance in the above case.  And if a job requires walking through a narrow crowded hallway, the amount of time it takes to zig and zag and crawl will be unknown.

Logged

Skyrage

  • Bay Watcher
    • View Profile
Re: Regarding aborted tasks...
« Reply #3 on: December 21, 2006, 03:47:00 am »

Well, thing is, walking time should have no real significance whatsoever. All I want is that a task that is started should be completed and not be aborted. As far as I'm concerned the only walking time that should be of any concern is when a dwarf is going to bed and risks falling asleep in some corridor - and this is such an insignificant part anyway since most of the time the dwarf will make it to his bed.

As for fetching items for tasks, I would add that this game would probably be at it's best if dwarves simply fetched the "nearest" fitting material or whatever instead of specific materials. Maybe then one would actually have more usage of certain stockpiles. I suppose that this has been wished for before, right?

Frankly, if you have a bunch of different stone types for instance, you should get a list of all the available types, and not each and every individual stone. So when you construct a building, you simply tag the type you want and the dwarf simply fetches the nearest available stone of that type. If a construction requires several stones, you simply tag whichever stone types you want several times and the selection that you made is listed somewhere.

That way you also won't have to suffer those silly long lists anymore.

Basically this should go for all items - instead of listing them as individual items and getting huge lists, group them "moonstone ring(s)" (maybe also seperate them by quality - the list will be bit bigger but still by far smaller than having everything as individuals), "granite rock(s)" etc, and then simply have the dwarfs fetch the nearest available.

Simple, no?

Logged