Construction Delay #19

Open
opened 2016-02-04 21:24:54 +00:00 by MegaBaconFamily · 1 comment
MegaBaconFamily commented 2016-02-04 21:24:54 +00:00 (Migrated from gitlab.com)

[Taken from DF forums all words by bobucles]

The whole construction task system in general is done in a fairly backwards way. Construction jobs are given to builders, so when they go off duty it will take between 2 to 20 minutes (or more!) before the job actually gets done. This is frustrating and can be lethal because critical tasks like building life support won’t get done in a timely manner. It really should have been done the other way around. Construction jobs go up to a “job board”, which builders only accept when they are happy and ready to do the job (I.E. “looking for work”). This leaves a very narrow window of failure between when the job is accepted, when the builder is walking directly to the site, and when it is finished. If the job still manages to fail for whatever reason, it just stays on the board for the next guy to grab.

The job board can be simply arranged as some kind of list. Priority is best given to interior decorating/hull breaches, while new rooms and dismantling tasks are best kept low.

Now there are no more bugs with vanishing jobs, invisible structures or money exploits (cancel a job multiple times when it is given to multiple workers). The job board is easily maintained by workers crossing off their finished work, and bad entries can be deleted when the guys attempt to perform a bad job (already done, no resources, cancelled, cluttered space, etc.). Cancelled jobs simply get removed from the board, and the guy can be notified to give up if you care or not. Either way when he reaches the site he’ll notice his job is gone.

[Taken from DF forums all words by bobucles] The whole construction task system in general is done in a fairly backwards way. Construction jobs are given to builders, so when they go off duty it will take between 2 to 20 minutes (or more!) before the job actually gets done. This is frustrating and can be lethal because critical tasks like building life support won’t get done in a timely manner. It really should have been done the other way around. Construction jobs go up to a “job board”, which builders only accept when they are happy and ready to do the job (I.E. “looking for work”). This leaves a very narrow window of failure between when the job is accepted, when the builder is walking directly to the site, and when it is finished. If the job still manages to fail for whatever reason, it just stays on the board for the next guy to grab. The job board can be simply arranged as some kind of list. Priority is best given to interior decorating/hull breaches, while new rooms and dismantling tasks are best kept low. Now there are no more bugs with vanishing jobs, invisible structures or money exploits (cancel a job multiple times when it is given to multiple workers). The job board is easily maintained by workers crossing off their finished work, and bad entries can be deleted when the guys attempt to perform a bad job (already done, no resources, cancelled, cluttered space, etc.). Cancelled jobs simply get removed from the board, and the guy can be notified to give up if you care or not. Either way when he reaches the site he’ll notice his job is gone.
cxsquared commented 2016-02-13 16:43:35 +00:00 (Migrated from gitlab.com)

Added ~154860 label

Added ~154860 label
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ald_productions/spacebase-v2-updated-code#19
No description provided.