BenLubar / df-ai

Dwarf Fortress + Artificial Intelligence
https://benlubar.github.io/df-ai/
zlib License
245 stars 26 forks source link

Soft-lock - Assigning targets during siege? #52

Closed mattregul closed 5 years ago

mattregul commented 5 years ago

Ran the AI over night and woke up to a soft-lock, at a 7th year goblin siege . Deleted save and started a new world, and hit soft-lock again, on the 7th year, goblin invasion.

image

Console Log

00007-10-02:0990 found next cavern
00007-10-03:0001 Ordering squad The Frills of Working to kill Smunstu Aslotsaslu, Goblin Spearman: marauder
00007-10-03:0001 Ordering squad The Fenced Fortifications to kill Osta Urarstato, Goblin Pikeman: marauder
00007-10-03:0001 Ordering squad The Frills of Working to kill Ngoso Urarangot, Goblin Lasher: marauder
00007-10-03:0001 Ordering squad The Fenced Fortifications to kill Strodno Ultaslaxu, Goblin Bowman: marauder
00007-10-03:0001 Ordering squad The Frills of Working to kill Tode Omospostest, Goblin Hammerman: marauder
00007-10-03:0001 Ordering squad The Fenced Fortifications to kill Nako Utesdusmun, Goblin Axeman: marauder
00007-10-03:0001 Ordering squad The Mechanical Champions to kill Ngokang Uksosmugub, Goblin Axeman: marauder
00007-10-03:0001 Ordering squad The Frills of Working to kill Smunstu Spubtastosbûb, Goblin Bowman: marauder
00007-10-03:0001 Ordering squad The Fenced Fortifications to kill Atu Okalsong, Goblin Spearman: marauder
00007-10-03:0001 Ordering squad The Mechanical Champions to kill Quelge Ejedatkil, Goblin Hammerman: marauder

ai status

(df-ai from 7/20/18 build master)

[DFHack]# ai
Dwarf Fortress 0.44.12
  Windows 64-bit
df-ai 0.44.12-r1-7-g4f1caba0
  code 4f1caba055d0b53f839557707b9a326d9daf94a7
DFHack 0.44.12-r1-0-gc2a64b35
  library c2a64b3573abbee549761f5c1c2626eec7a6e81c
  structures 23500e4e9bd1885365d0a2ef1746c321c1dd5094
Plan: check_furnish: 55, check_idle: 1, check_rooms: 1, construct_activityzone: 1, construct_farmplot: 120, dig_room: 3, furnish: 503, monitor_farm_irrigation: 120, setup_farmplot: 34, want_dig: 92, waiting to dig: bedroom (plan)
furnishing: archery_target: 5, armor_stand: 56, bed: 54, bookcase: 1, cabinet: 62, cage: 24, chair: 5, chest: 63, coffin: 72, door: 107, hatch: 32, restraint: 10, table: 1, traction_bench: 7, weapon_rack: 9
Pop: 94 citizen, 5 military, 21 pet, 0 visitor, 0 resident
Stocks: need: armor_feet, armor_hands, armor_head, armor_legs, armor_shield, armor_stand, armor_torso, backpack, barrel, bed, bin, cabinet, cage_metal, chair, chest, clothes_feet, clothes_hands, clothes_head, clothes_legs, clothes_torso, coal, coffin, door, dye, dye_seeds, flask, food_storage, gypsum, hatch_cover, paper, plaster_powder, quire, raw_coke, rope, slurry, table, thread_seeds, traction_bench, weapon_rack, weapon_ranged; use: clay, cloth_nodye, drink_fruit, drink_plant, food_ingredients, metal_ore, mill_plant, rough_gem, tallow, wool
Camera: inactive (previously: Inod Rigòthsat, hammerer; Sigun Rigòthnåzom, Weaponsmith; Etur Lolorònul, Miller)
[DFHack]#
BenLubar commented 5 years ago

Yeah, I've been trying to figure out why this is happening for the last few days. It seems like it happens whenever multiple squads are being assigned targets at the same time.

BenLubar commented 5 years ago

By the way, the bug that causes ai version's output to be merged with the next command's output was fixed in e409f8c0de234834584c4a3ca322d7116786ca34.

mattregul commented 5 years ago

Uneducated guess: Perhaps you need to delay a little between each squad? Maybe the game is still iterating the list for squad 1 while you're attempting to assign squad 2's targets?