Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: my dorfs keeps asking for bones, and wont use the ones I already have  (Read 1002 times)

jaxler

  • Bay Watcher
  • thats not a red mage...
    • View Profile

I've failed the last 4 moods because my dorf keeps demanding bones and wont use the ones I make by killing kats/dogs. wat do? is this a bug or do I need the exact right type of bones?
Logged
I've decided to say "fuck it" and will just implode my fort.

“Ok, Neo ChosenUrist, before you is two levers. Pull the Kimberlite lever -- you wakeup in a random bed and have whatever thoughts you want to think. You pull the Bauxite lever -- you stay in the caverns and I show you how deep the adamantine hole goes.” - psalms

laularukyrumo

  • Bay Watcher
  • Needs More Socks
    • View Profile

There is a bug, but it's not what you probably think.

Bones come in stacks. You know this.

The way this is represented in code is similar to the data type in coding called an "array". Basically, an individual item is an "object" (Specifically a pointer to an object but you don't need to know that), and objects have properties. One of these properties is the fact that it is, in fact, a bone, and allows jobs and such to find those items and use it. An array is a list of objects that you can reference with just one name. So instead of having to declare "bob", "joe", "chelsea", and "adam" individually, you'd declare "bob[4]" and then you can ask for bob[0], bob[1], bob[2], or bob[3]. (Arrays start at 0, and most things in code start at 0, instead of 1 like you'd think. It's weird, but irrelevant.)

A stack of 4 bones from a puppy looks like bone[4], and you can reference specific bones from that list. When a job asks for bones, it goes and finds a stack of bone, and then the job will consume one of those bones. It's been consumed, so the game deletes it from the "array".

What happens is that when you use up all the bones in the stack, you have what's called a null data reference, where the array doesn't actually hold any information at all. It SHOULD delete itself, but for some weird reason, you end up with a stack of zero bones. This object has no use in the game, except to be atom smashed. The problem, however, is that it LOOKS identical to a stack of 1 bone.

Dwarves stockpile stacks of 1 bone differently from stacks of 0 bones. I forget exactly how it works, but I know that it does. What I do is I have every bone stack in the fort forbidden, except for the one I'm working at the moment. When it gets to 1 bone left, I'll have it sent back to the stockpile and then forbidden, so that I know it has a bone left in it. When an artifact asks for bones, I'll unforbid one of these single-bone stacks, because they get wholly consumed by artifacts (but not by other jobs, for some reason.) If all you have in the fort are stacks of 0 bones, then the dwarves won't actually be able to find bones, and will be sad until they kill themselves.
Logged
Quote from: Dwarfotaur
Everytime one of my militia has given birth in the Danger Room, it's lead to instant baby smoothies for everyone.

Gotta Catch 'Em All!

Dat Sig Thread

kingubu

  • Bay Watcher
    • View Profile

I've failed the last 4 moods because my dorf keeps demanding bones and wont use the ones I make by killing kats/dogs. wat do? is this a bug or do I need the exact right type of bones?

Bones don't have types for moods.  In fact bone type makes no difference whatsoever, except to clutter stocks lists.  Because Toady secretly hates us.
Logged

Larix

  • Bay Watcher
    • View Profile

Concerning stacks of 'zero' bones - the game considers them useless items and automatically sends them to the refuse pile. This will happen even if the 'bones' register of refuse is set to 'forbidden' (i generally forbid all potential workshop materials in the refuse pile, the minimal reduction in workshop clutter is 99% unneeded and the hauling keeps mislocating objects needed e.g. by the tanner and spinner, so the overall usefulness is negative). I guess these non-bones are grouped with the various 'items', generally damaged goods like rotten food, instead of the actual creature-sorted 'bones' list. Thankfully, such bones (and also zero-size wool stacks) _will_ rot away on a refuse pile.

As to the bones not accepted by crafters - are those actually 'bones [n]', or skeletons or skulls? Skeletons are still held together by the ligaments and don't disassemble in any reasonable time frame (and your butchers will refuse to pick apart skeletons of tame and sentient creatures) and skulls are just, you know, the skull. Skulls cannot be used for the various 'bone' crafting jobs or moods, they can only be fashioned into totems (which are also spectacularly useless and can only be traded away or used as makeshift projectiles).

Quote
In fact bone type makes no difference whatsoever, except to clutter stocks lists.

Look at my *<*goblin bone helm*>* studded with elephant bone, elephant ivory, cave crocodile tooth and adorned with an image of my broker cringing in dismay over losing her cushy job in rhinoceros horn and say that again.

Individual bone types don't matter for game mechanics, but they do add to the atmosphere. If it's worth the cost is another question.
« Last Edit: July 10, 2013, 06:17:26 am by Larix »
Logged

Laurin

  • Bay Watcher
    • View Profile

Try a bigger animal.
Logged

hiroshi42

  • Bay Watcher
    • View Profile

You could also be running into a different bug where moods treat a stack of bones as a single item.  If your moody dwarf is asking for 3 bones it will need 3 stacks and they will be completely consumed.  If the dwarf is not touching any bones then you might lack something further up on the material list.

Also are you butchering full sized adult animals?  There is a bug that affects fortress grown animals keeping the vast majority at their birth size.  New born cats and I think dogs give only skulls when butchered.
Logged
'Your' jetpack was last seen attached to a nuclear powered science tank on Mars.
It's faster to write "!!science!!" than any of the synonyms: "mad science", "dwarvern science", or "crimes against the laws of god and man".

silhouette

  • Bay Watcher
    • View Profile

Theres also a chance that the moody dwarf needs another item before he can continue.

When you have a moody dwarf that tells you what he wants, it cycles through the list of items. Occassionalyl it wants multiple bones and one of something else.

Perhaps you lacking a certain other item is hampering your dwarfs mood and causing them to go insane?

It may be best to get DFHack and find out what exactly they are askign for.
Logged
# PowerGoal49, SCREAM BALL, (Future): Trolls take the captives and see if they can throw them all the way over the chasm to each other.
---
SCREW EVERYTHING ELSE! I WANT THIS!

ORCACommander

  • Bay Watcher
  • [ETHIC:TORTURE_ELVES: PERSONAL_MATTER]
    • View Profile

i think i have avoided this problem by only using refuse piles for my bones
Logged

VerdantSF

  • Bay Watcher
    • View Profile

Due to the stacking issue, whenever I get a mood, I send an animal or two to the butchers, even if I already have bones.  I can't remember the last time a mood struck that didn't require them.