Blecki / dwarfcorp

An open-source 3D colony management game for PC, Mac and Linux
http://www.dwarfcorp.com
Other
580 stars 71 forks source link

Redesign: Have hunting dwarf collect meat #791

Open com1clyf3 opened 6 years ago

com1clyf3 commented 6 years ago

Currently, after an animal has been hunted, the hunting dwarf will path back to HQ without gathering meat resource. Then another dwarf will path to meat to collect it. Let's make the current hunting dwarf check for meat resource and gather if there's something there.

27b0c862

mklingen commented 6 years ago

That's simply not true. Dwarfs that hunt do in fact collect meat from hunted animals.

com1clyf3 commented 6 years ago

They don't. Take a look at it in game. If the logic is there, then it's not working for some reason.

mklingen commented 6 years ago

Cannot reproduce. Hunting dwarves gather meat. What are the specific steps taken to reproduce?

com1clyf3 commented 6 years ago

Regressing. This is still occurring on 1fb82458

  1. Select animal to hunt.
  2. Have dwarves kill it.
  3. Observer original killer does not collect the meat resource, but paths away.
  4. Another dwarf paths to resource to collect it.

This happens every time for me.

mklingen commented 6 years ago

The following happens every time for me, I think there's something more to it than you think:

  1. Select animal to hunt.
  2. Dwarf kills animal.
  3. Same dwarf collects animal meat.

Are you selecting multiple animals by chance? If that's the case killing the next animal is higher priority than gathering the meat, in which case it's working as designed.

com1clyf3 commented 6 years ago

Hm. That seems to be mostly it. The end result is pretty much always that the last rabbit gets collected by a dwarf that's far away from it.

Blecki commented 6 years ago

I'm still seeing the occasional item left behind. Not just from hunting, also from harvesting plants.

On Tue, Aug 28, 2018, 3:37 PM com1clyf3 notifications@github.com wrote:

Hm. That seems to be mostly it. The end result is pretty much always that the last rabbit gets collected by a dwarf that's far away from it.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/CompletelyFairGames/dwarfcorp/issues/791#issuecomment-416714003, or mute the thread https://github.com/notifications/unsubscribe-auth/ABPKrHWqUt4goBYM9yBBcsH_YtvLMg-Pks5uVZwLgaJpZM4VIR2G .

mklingen commented 6 years ago

Again, all of that is intentional, because there were a bunch of bugs/complaints about dwarfs spending their time gathering instead of doing other tasks. It used to be that a callback got registered with the object the dwarf was killing, and the callback would result in the dwarf automatically collecting the item -- but we undid that because it was resulting in a memory leak, you remember that right @Blecki? Do we want to find a way to re-enable that callback without triggering a memory leak?

com1clyf3 commented 6 years ago

If there's a quick fix to that, sure. If it takes more than a day, I say let's not worry abut it.

mklingen commented 6 years ago

@Blecki do you want to try this?

Blecki commented 6 years ago

Not really. It seems to work 99% of the time still, so I'd consider it a bug. I think the dwarf is just forgetting the task.

On Sun, Sep 9, 2018, 4:31 PM Matthew Klingensmith notifications@github.com wrote:

@Blecki https://github.com/Blecki do you want to try this?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/CompletelyFairGames/dwarfcorp/issues/791#issuecomment-419742936, or mute the thread https://github.com/notifications/unsubscribe-auth/ABPKrPt_Vg0pYxgEMmcpFH-oXkN_xOWQks5uZXq2gaJpZM4VIR2G .