Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0010075Dwarf FortressDwarf Mode -- Invasionspublic2016-11-18 16:372018-09-23 20:46
Reporteramade 
Assigned Tolethosor 
PrioritynormalSeveritymajorReproducibilitysometimes
Statusneeds feedbackResolutionopen 
PlatformPCOSWindowsOS VersionWindows 10
Product Version0.43.03 
Target VersionFixed in Version 
Summary0010075: Siege doesn't end after all invaders are dead.
Description3 years after my fortress was established the first siege arrived which was a force of 6 Goblins. All 6 were killed, their corpses already collected and placed in the corpse stockpile. However, the "SIEGE" status on the top left of the screen never went away, and there are no invaders listed in the (u)nits screen.

Caravans would not arrive. The only option to abandon the fort was "Succumb to the invasion". However choosing this option would give me a screen stating that my fort has settled into normal day to day life, and embarking to the region again would allow me to unretire (instead of reclaim) the fortress, with all the inhabitants still in place.

Steps To ReproduceGet sieged (probably only happens for the first siege?)
Kill all invaders
Additional InformationRelated bug: 0004122

I tried an old workaround which was to resurrect the dead invaders so I could kill them again and hopefully reset whatever flags, but it did not work as the goblins were nowhere to be found after issuing the full-heal -r command to bring them back so I could not kill them again. The method was described here: http://www.bay12forums.com/smf/index.php?topic=139553.msg7267661#msg7267661 [^]

I also tried patrolling the edges of the embark site to see if I can uncover any hidden invaders, but had no luck finding anything.

Uploaded save: http://dffd.bay12games.com/file.php?id=12574 [^]
(this was before any attempt at ressurecting the goblins were made)

TagsNo tags attached.
Attached Files

- Relationships
related to 0009593needs feedbacklethosor Invisible caravan arrives, no units listed on units list, trade impossible. 
has duplicate 0010758resolvedlethosor Stuck in siege condition three months after last invader was captured 

-  Notes
(0036057)
amade (reporter)
2016-11-21 11:06

I reloaded the fortress from day 1 and basically started again from scratch. The bug recurred again on the summer of the second year when the first siege occurred, but this time only 1 goblin pikeman appeared in the invading party.

Could it be that the rest of the invaders did not spawn above ground or is stuck in the edges? It is on a volcano with steep cliffs after all.

Siege was stuck again.
(0036064)
Homiccus (reporter)
2016-11-25 04:54
edited on: 2016-11-25 06:26

I think I can confirm this. Happened to me during second gobbo siege, early summer, circa 4 years after founding the fortress. A group of 6 goblins turned up, were defeated, their corpses chucked into magma and all of goblinite collected, and yet the 'Siege' notification never dissapeared.
There must have been another, 'invisible' group of invaders, just off the edge of the map. I could see exactly where they were supposed to turn up by going into stock screen and zooming in on one of the 'forbidden' goblin weapons or armour - it would position the cursor exactly at the map's edge.
Just as well I did send a patrol there to see if anything pops up but to no avail.
Eventually, after four-or-so months, the gobbos lifted the siege on their own accord - but I did miss out on 'umies caravan.

(Same version, issued as part of Newb Pack, no mods, Windows 7)

(0036312)
anon575 (reporter)
2017-03-10 16:15

I've encountered the same bug. First goblin siege, used dfhack to make sure all goblins were dead, but seige does not lift. Version 43.03
(0037778)
Doodaa (reporter)
2018-02-10 22:32

Killed all the invaders. Made sure none escaped. Even killed all my prisoners to be absolutely sure. No dice. 44.05
(0037780)
Sarmatian123 (reporter)
2018-02-11 00:06
edited on: 2018-02-11 00:17

Vanilla client version 44.05.

In part that siege didn't end when 50% of invading force was caged, but it still ended after last invader was caged. I noticed this because it was 132 goblin, troll and beak dogs large and it took them sweet time to flee into rest of my cages. Siege left blinking dog causing game to freeze and unpitable troll Snang. I reported about this in here: http://www.bay12games.com/dwarves/mantisbt/view.php?id=10564 [^]

In part of strange item reports from map's edge. I was hit with "masterwork defacement" announcement once. After checking it I noticed 2 tiles away was just killed animal and my hunter was already half way returning it back to fortress. The oaken bolts he was using were master quality and Dwarf suffering defacement could be the one producing those.

This bug, could be some combination of those two parts.

(0038330)
lethosor (manager)
2018-05-17 18:11

Save from 0010758 (0.44.05): http://dffd.bay12games.com/file.php?id=13765 [^]
(0038331)
lethosor (manager)
2018-05-17 18:39
edited on: 2018-05-17 18:52

No progress made on the 0010758 save. All 30 creatures not listed on the 'u' screen are normal cavern dwellers. I killed off every unit in the "other units" tab, and the siege indicator remained.

Edit: killing every unit except for Stodir Nishgan (miner) didn't work either.
Edit: same for another unit, so it's not due to specific units being alive.

(0038332)
PatrikLundell (reporter)
2018-05-18 01:27
edited on: 2018-05-18 01:50

Concerning Greyberyl's save:
The scroll Discovering Personal History cannot be picked up because the Trader flag is set. That's a common problem with written stuff dropped by visitors and siegers. The flag can be removed with DFHack's gui/gm-editor.

Edit:
I suspect the non ending siege is caused by a bugged DFHack function aimed at trimming the "dead" list. Unfortunately, the script removed a bit too many units due to a misunderstanding of the function of a flag.

The following DFHack script copies a bunch of invaders from the "all" list to the "active" list, and also lists all units that probably were removed incorrectly (which includes the invaders). When I ran the script a number of invaders appeared.

function z ()
  for i, unit in ipairs (df.global.world.units.all) do
    if unit.flags1.dead and
       (not unit.flags2.killed and
        not unit.flags2.slaughter) then
      local found = false
      
      for k, active in ipairs (df.global.world.units.active) do
        if unit.id == active.id then
          found = true
        end
      end
      
      if not found then
        dfhack.println (df.global.world.raws.creatures.all [unit.race].name [0], unit.flags1.invades)
        if unit.flags1.invades then
          for k, active in ipairs (df.global.world.units.active) do
            if active.id > unit.id then
              df.global.world.units.active:insert (k, unit)
              break
            end
          end
        end
      end
    end
  end
end

z ()

(0038350)
Greyberyl (reporter)
2018-05-21 11:35

Update: Ran the script that Patrik provided above on save. Returned 49 'lost' units (goblins, trolls and beak dogs). Indeed, said units began entering the map edge for a moment before turning tail and leaving the map altogether. Most importantly, SIEGE flag has been lifted and my save salvaged. Many, many thanks to Patrik and Lethosor for the help.
(0038351)
lethosor (manager)
2018-05-21 15:46

I'll ask the same question as in 0009593: has anyone reproduced this on a save where DFHack has never been used? Many packs appear to run fix/dead-units, which could cause issues such as these, and we need to be positive that this issue is not caused by utilities in order to keep it open. So far, Sarmatian123 is the only person that mentions vanilla in this report, but I'd like to verify that DFHack was not used in that save, ever.
(0038826)
amymist (reporter)
2018-09-23 20:46
edited on: 2018-09-24 02:05

I encountered this on a save which has been modded (added raws), but that's never run DFHack. I was attacked by a siege of necromancers, and once they were all killed and/or driven off the map, the siege tag persisted. Selecting "succumb to the invasion" from the menu gave the normal retire message, and I was able to unretire it without issue.


- Issue History
Date Modified Username Field Change
2016-11-18 16:37 amade New Issue
2016-11-21 11:06 amade Note Added: 0036057
2016-11-25 04:54 Homiccus Note Added: 0036064
2016-11-25 06:25 Homiccus Note Edited: 0036064 View Revisions
2016-11-25 06:26 Homiccus Note Edited: 0036064 View Revisions
2017-03-10 16:15 anon575 Note Added: 0036312
2017-03-10 16:20 anon575 Issue Monitored: anon575
2018-02-10 22:32 Doodaa Note Added: 0037778
2018-02-10 23:52 Sarmatian123 Note Added: 0037779
2018-02-11 00:00 Sarmatian123 Note Deleted: 0037779
2018-02-11 00:06 Sarmatian123 Note Added: 0037780
2018-02-11 00:12 Sarmatian123 Note Edited: 0037780 View Revisions
2018-02-11 00:16 Sarmatian123 Note Edited: 0037780 View Revisions
2018-02-11 00:17 Sarmatian123 Note Edited: 0037780 View Revisions
2018-05-17 18:11 lethosor Relationship added has duplicate 0010758
2018-05-17 18:11 lethosor Note Added: 0038330
2018-05-17 18:39 lethosor Note Added: 0038331
2018-05-17 18:43 lethosor Assigned To => lethosor
2018-05-17 18:43 lethosor Status new => confirmed
2018-05-17 18:43 lethosor Reproducibility unable to reproduce => sometimes
2018-05-17 18:51 lethosor Note Edited: 0038331 View Revisions
2018-05-17 18:52 lethosor Note Edited: 0038331 View Revisions
2018-05-18 01:27 PatrikLundell Note Added: 0038332
2018-05-18 01:49 PatrikLundell Note Edited: 0038332 View Revisions
2018-05-18 01:50 PatrikLundell Note Edited: 0038332 View Revisions
2018-05-21 11:35 Greyberyl Note Added: 0038350
2018-05-21 15:43 lethosor Relationship added related to 0009593
2018-05-21 15:44 lethosor Additional Information Updated View Revisions
2018-05-21 15:46 lethosor Note Added: 0038351
2018-05-21 15:46 lethosor Status confirmed => needs feedback
2018-09-23 20:46 amymist Note Added: 0038826
2018-09-24 02:05 amymist Note Edited: 0038826 View Revisions


Copyright © 2000 - 2010 MantisBT Group
Powered by Mantis Bugtracker