View Issue Details

IDProjectCategoryView StatusLast Update
0006358Dwarf FortressDwarf Mode -- Itemspublic2014-08-04 15:01
ReporterButton Assigned Touser6 
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionno change required 
OSWindowsOS Version7 
Product Version0.34.11 
Summary0006358: Eggs do not update their position when moved
DescriptionOK, this happens with other items too sometimes, but I've never seen it NOT happen with eggs. Farm plants and clothing are also common culprits.

An item is moved, and its block is moved for the purposes of display and all obvious interactions, but if you inspect the item itself, it is holding its previous position.

On non-egg items it's fairly rare, and will only become really noticeable after a decade of play or so - with the exception of high-item-on-the-ground-count areas like dump zones and trading posts.
Steps To ReproduceCreate a nest box and an egg stockpile. Let dwarf pick up eggs and move them to stockpile. Check eggs' item.pos.
Additional InformationI found this when trying to write a DFHack script to fix 0000895. (This is not the cause of 0000895 , though they may be related.)

Items which exhibit this problem seem to have in_inventory=true and on_ground=false.

I suspect this behavior may be attributable to hauling logic, where an item goes from being in a dwarf's inventory to being in a stockpile's inventory without ever touching the ground. If pos is only recalculated when an item hits the ground, that could create this situation.

I'm not 100% sure that this is a bug or is causing bugs, but I can see where it could really trip you up in pathfinding, clutter, etc if you rely on item position.
TagsNo tags attached.

Activities

ag

2013-07-19 23:07

reporter   ~0024070

The position field is meaningless when in inventory - that's why there is dfhack.items.getPosition(). Also, this is not the place to ask dfhack questions.

Button

2013-07-23 13:20

reporter   ~0024075

They aren't actually in inventory anymore, though. They retain the in_inventory flag, but they're in stockpiles. And it's only a subset of 'items in stockpiles', so if it's intended for items in stockpiles to be in_inventory, then the bug is that not all stockpile items are in_inventory.

I'm not asking a DFHack question, I am noting an inconsistent behavior of the base game which I was only able to discover through the use of DFHack.

ag

2013-07-24 10:11

reporter   ~0024076

Inventory also applies to items in containers. This behavior is perfectly known.

Button

2013-07-25 11:03

reporter   ~0024077

While this is good to know, I had barrels and bins disabled in my stockpiles due to the quantum dump bin cycling bug.

user6

2013-09-22 17:45

  ~0024119

Okay, so is there a DF bug here?

user6

2014-07-28 09:41

  ~0027781

Please reopen if there's a DF bug.

Issue History

Date Modified Username Field Change
2013-07-19 06:45 Button New Issue
2013-07-19 23:07 ag Note Added: 0024070
2013-07-23 13:20 Button Note Added: 0024075
2013-07-24 10:11 ag Note Added: 0024076
2013-07-25 11:03 Button Note Added: 0024077
2013-09-22 17:45 user6 Note Added: 0024119
2013-09-22 17:45 user6 Tag Attached: AWAITING UPDATE
2014-07-28 09:41 user6 Note Added: 0027781
2014-07-28 09:41 user6 Status new => resolved
2014-07-28 09:41 user6 Resolution open => no change required
2014-07-28 09:41 user6 Assigned To => user6
2014-08-04 15:01 user6 Tag Detached: AWAITING UPDATE