ASSERT(!invalid_monster(mon_act)) in 'state.cc' at line 443 failed. Version: Dungeon Crawl Stone Soup 0.34.0 Platform: unix Bits: 64 Game mode: normal Tiles: online Seed: 10207473426261896008, deterministic pregen: 1 Command line: /usr/games/crawl-0.34 -name grumposus -rc /dgldir/rcfiles/crawl-0.34/grumposus.rc -macro /dgldir/rcfiles/crawl-0.34/grumposus.macro -morgue /dgldir/morgue/grumposus/ -webtiles-socket /crawl-master/webserver/sockets/grumposus:2026-02-08.11:26:48.sock -await-connection RC options: restart_after_game = false Crash caused by signal #6: Aborted Obtained 28 stack frames. /usr/games/crawl-0.34(_Z17write_stack_traceP8_IO_FILE+0x3e) [0x556b668b9a1e]: write_stack_trace(_IO_FILE*) /usr/games/crawl-0.34(_Z13do_crash_dumpv+0x43a) [0x556b668c7c5a]: do_crash_dump() /usr/games/crawl-0.34(_Z20crash_signal_handleri+0x1fa) [0x556b668b9efa]: crash_signal_handler(int) /lib/x86_64-linux-gnu/libc.so.6(+0x42910) [0x7f5af6e42910]: /lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x11b) [0x7f5af6e9999b]: /lib/x86_64-linux-gnu/libc.so.6(raise+0x16) [0x7f5af6e42866]: /usr/games/crawl-0.34(+0x50202d) [0x556b668c702d]: /usr/games/crawl-0.34(_Z12AssertFailedPKcS0_iS0_z+0x1c7) [0x556b668c7537]: AssertFailed(char const*, char const*, int, char const*, ...) /usr/games/crawl-0.34(+0xb4f519) [0x556b66f14519]: /usr/games/crawl-0.34(_Z11monster_dieR7monster11killer_typeibb+0x164f) [0x556b66c9745f]: monster_die(monster&, killer_type, int, bool, bool) /usr/games/crawl-0.34(_Z8tag_readR6reader8tag_type+0x313a) [0x556b66f5705a]: tag_read(reader&, tag_type) /usr/games/crawl-0.34(+0x6048b7) [0x556b669c98b7]: /usr/games/crawl-0.34(_Z10load_level20dungeon_feature_type14load_mode_typeRK8level_id+0x1507) [0x556b669d4df7]: load_level(dungeon_feature_type, load_mode_type, level_id const&) /usr/games/crawl-0.34(_ZN15level_excursion5go_toERK8level_id+0xd1) [0x556b669d6fd1]: level_excursion::go_to(level_id const&) /usr/games/crawl-0.34(+0x656493) [0x556b66a1b493]: /usr/games/crawl-0.34(_Z25beogh_resurrect_followersb+0x40c) [0x556b66a20dac]: beogh_resurrect_followers(bool) /usr/games/crawl-0.34(_Z18fire_final_effectsv+0x38) [0x556b669dc6d8]: fire_final_effects() /usr/games/crawl-0.34(_ZN12melee_attack22run_monster_attack_setEv+0x259) [0x556b66c0d0f9]: melee_attack::run_monster_attack_set() /usr/games/crawl-0.34(_Z11fight_meleeP5actorS0_bPbb+0xc0) [0x556b669bf5c0]: fight_melee(actor*, actor*, bool, bool*, bool) /usr/games/crawl-0.34(_Z19handle_monster_moveP7monster+0x2882) [0x556b66c48132]: handle_monster_move(monster*) /usr/games/crawl-0.34(_Z15handle_monstersb+0xaf8) [0x556b66c48fc8]: handle_monsters(bool) /usr/games/crawl-0.34(_Z12world_reactsv+0x135) [0x556b67082c15]: world_reacts() /usr/games/crawl-0.34(+0xcc0484) [0x556b67085484]: /usr/games/crawl-0.34(+0xcc1085) [0x556b67086085]: /usr/games/crawl-0.34(main+0x1f7) [0x556b667eb477]: /lib/x86_64-linux-gnu/libc.so.6(+0x280d0) [0x7f5af6e280d0]: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x89) [0x7f5af6e28189]: /usr/games/crawl-0.34(_start+0x25) [0x556b667ebf65]: Trying to run gdb. GNU gdb (Ubuntu 14.0.50.20230907-0ubuntu1) 14.0.50.20230907-git Copyright (C) 2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: . Find the GDB manual and other documentation resources online at: . For help, type "help". Type "apropos word" to search for commands related to "word". [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". 0x00007f5af6f0fbf7 in __GI___wait4 (pid=1235517, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30 #0 0x00007f5af6f0fbf7 in __GI___wait4 (pid=1235517, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30 sc_ret = -512 sc_ret = #1 0x0000556b668ba0cc in call_gdb (file=0x7f5af6fff6c0 <_IO_2_1_stderr_>) at crash.cc:438 gdb = attach_cmd = "attach 1235265\000\000\000\000\000" #2 0x0000556b668c7c78 in do_crash_dump () at dbg-asrt.cc:673 t = 1770550327 dir = "/dgldir/morgue/grumposus/" name = "/dgldir/morgue/grumposus/crash-grumposus-20260208-113207.txt", '\000' signal_info = "Crash caused by signal #6: Aborted" cause_msg = "ASSERT(!invalid_monster(mon_act)) in 'state.cc' at line 443 failed." file = 0x7f5af6fff6c0 <_IO_2_1_stderr_> #3 0x0000556b668b9efa in crash_signal_handler (sig_num=6) at crash.cc:198 No locals. #4 No locals. #5 __pthread_kill_implementation (no_tid=0, signo=6, threadid=) at ./nptl/pthread_kill.c:44 tid = ret = 0 pd = old_mask = {__val = {443}} ret = pd = old_mask = ret = tid = ret = resultvar = resultvar = __arg3 = __arg2 = __arg1 = _a3 = _a2 = _a1 = __futex = resultvar = __arg3 = __arg2 = __arg1 = _a3 = _a2 = _a1 = __futex = __private = __oldval = #6 __pthread_kill_internal (signo=6, threadid=) at ./nptl/pthread_kill.c:78 No locals. #7 __GI___pthread_kill (threadid=, signo=signo@entry=6) at ./nptl/pthread_kill.c:89 No locals. #8 0x00007f5af6e42866 in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26 ret = #9 0x0000556b668c702d in _BreakStrToDebugger (mesg=mesg@entry=0x7fff06697f80 "ASSERT(!invalid_monster(mon_act)) in 'state.cc' at line 443 failed.", assert=true) at dbg-asrt.cc:807 No locals. #10 0x0000556b668c7537 in AssertFailed (expr=expr@entry=0x556b670f0fc3 "!invalid_monster(mon_act)", file=file@entry=0x556b670f0f0e "state.cc", line=line@entry=443, text=text@entry=0x0) at dbg-asrt.cc:845 mesg = "ASSERT(!invalid_monster(mon_act)) in 'state.cc' at line 443 failed.\000\377\177", '\000' , "\033[ikU\000\000\v\000\000\000\000\000\000\000\360\177i\006\377\177", '\000' , " \"u\345L\230\320\020\200i\006\377\177\000\000\006\000\000\000\000\000\000\000dlveto\000\000\363\207\352\366Z\177\000\000\377\377\377\377\377\377\377\3778\200i\006\377\177", '\000' , "\342\217hkU\000\000\020\201i\006\377\177\000\000"... args = {{gp_offset = 1635150948, fp_offset = 1633970540, overflow_arg_area = 0x6574, reg_save_area = 0xffffffffffffffff}} fileName = #11 0x0000556b66f14519 in game_state::dec_mon_acting (this=0x556b67656ec0 , mon=mon@entry=0x556b676d4dd8 ) at state.cc:443 size = #12 0x0000556b66c9745f in monster_die (mons=..., killer=, killer_index=, silent=, mount_death=) at mon-death.cc:3647 was_visible = spectralised = summoned = duration = monster_killed = hard_reset = timeout = gives_player_xp = drop_items = in_transit = was_banished = mons_reset = leaves_corpse = real_death = pet_kill = did_death_message = death_message = exploded = anon = targ_holy = destroyed = corpse_consumed = corpse = 0x0 player_xp = 0 mwhere = {x = 68, y = 33} #13 0x0000556b66f5705a in _tag_read_level_monsters (th=...) at tags.cc:8203 m = @0x556b676d4dd8: { = {_vptr.actor = 0x556b6744b108 , type = MONS_ORC_APOSTLE, mid = 4218, position = {x = 68, y = 33}, props = {, std::allocator >, CrawlStoreValue, std::less, std::allocator > >, std::allocator, std::allocator > const, CrawlStoreValue> > >> = std::map with 8 elements = {["always_corpse"] = {type = SV_BOOL, flags = 0 '\000', val = {boolean = true, byte = 1 '\001', _short = 1, _int = 1, _float = 1.40129846e-45, _int64 = 1, ptr = 0x1}}, ["apostle_band_power"] = {type = SV_INT, flags = 0 '\000', val = {boolean = 55, byte = 55 '7', _short = 55, _int = 55, _float = 7.70714155e-44, _int64 = 55, ptr = 0x37}}, ["apostle_power"] = {type = SV_INT, flags = 0 '\000', val = {boolean = 68, byte = 68 'D', _short = 68, _int = 68, _float = 9.52882956e-44, _int64 = 68, ptr = 0x44}}, ["apostle_type"] = {type = SV_INT, flags = 0 '\000', val = {boolean = 2, byte = 2 '\002', _short = 2, _int = 2, _float = 2.80259693e-45, _int64 = 2, ptr = 0x2}}, ["dbname"] = {type = SV_STR, flags = 0 '\000', val = {boolean = 96, byte = 96 '`', _short = -32160, _int = 1759085152, _float = 8.21726817e+24, _int64 = 93919808946784, ptr = 0x556b68d98260}}, ["mon_gender"] = {type = SV_INT, flags = 0 '\000', val = {boolean = true, byte = 1 '\001', _short = 1, _int = 1, _float = 1.40129846e-45, _int64 = 1, ptr = 0x1}}, ["poly_set"] = {type = SV_VEC, flags = 0 '\000', val = {boolean = 224, byte = -32 '\340', _short = -28960, _int = 1767542496, _float = 1.65137835e+25, _int64 = 93919817404128, ptr = 0x556b695a8ee0}}, ["tile_num"] = {type = SV_SHORT, flags = 0 '\000', val = {boolean = 100, byte = 100 'd', _short = 100, _int = 100, _float = 1.40129846e-43, _int64 = 100, ptr = 0x64}}}, }, shield_blocks = 0, triggered_spectral = false, constricted_by = 0, constricted_type = CONSTRICT_NONE, escape_attempts = 0, constricting = 0x0, move_needs_finalisation = false, last_move_pos = {x = 0, y = 0}, last_move_flags = {<_enum_bitfield_exponent_base<6, true>> = {static last_exponent = 6}, flags = 0}}, mname = "Hilgar", hit_points = -1, max_hit_points = 131, exp = 0, speed = 10, speed_increment = 70, target = {x = 67, y = 35}, firing_pos = {x = 0, y = 0}, patrol_point = {x = 0, y = 0}, travel_target = MTRAV_NONE, travel_path = std::vector of length 0, capacity 2, inv = {mData = {27000 }}, spells = std::vector of length 3, capacity 4 = {{spell = SPELL_SMITING, freq = 37 '%', flags = {<_enum_bitfield_exponent_base<12, true>> = {static last_exponent = 12}, flags = 32}}, {spell = SPELL_STICKS_TO_SNAKES, freq = 23 '\027', flags = {<_enum_bitfield_exponent_base<12, true>> = {static last_exponent = 12}, flags = 32}}, {spell = SPELL_AGONY, freq = 23 '\027', flags = {<_enum_bitfield_exponent_base<12, true>> = {static last_exponent = 12}, flags = 32}}}, attitude = ATT_FRIENDLY, behaviour = BEH_SEEK, foe = 27001, ench_countdown = 8 '\b', enchantments = std::map with 0 elements, ench_cache = {_vptr.FixedBitVector = 0x556b67418f98 +16>, data = std::bitset}, flags = {<_enum_bitfield_exponent_base<-1, false>> = {}, flags = 274879087761}, xp_tracking = XP_NON_VAULT, base_monster = MONS_NO_MONSTER, {number = 0, blob_size = 0, num_heads = 0, ballisto_activity = 0, spore_cooldown = 0, mangrove_pests = 0, prism_charge = 0, battlecharge = 0, move_spurt = 0, steps_remaining = 0, blazeheart_heat = 0, tentacle_connect = 0}, colour = -1, summoner = 0, foe_memory = 910, god = GOD_BEOGH, ghost = std::unique_ptr = {get() = 0x556b696a18b0}, damage_friendly = 0, damage_total = 131, client_id = 0, static last_client_id = 232, revealed_this_turn = false, revealed_at_pos = {x = 0, y = 0}, origin_level = {branch = BRANCH_DEPTHS, depth = 1}, hit_dice = 14} dup_m = 0x0 i = 2 dont_scan = count = 36 dont_scan = count = i = i = i = i = m = dup_m = mi = old_midx = old_midx = #14 tag_read (inf=..., tag_id=tag_id@entry=TAG_LEVEL) at tags.cc:1563 buf = std::vector of length 181361, capacity 181361 = {15 '\017', 68 'D', 0 '\000', 8 '\b', 108 'l', 77 'M', 0 '\000', 0 '\000', 0 '\000', 67 'C', 0 '\000', 0 '\000', 0 '\000', 35 '#', 0 '\000', 80 'P', 0 '\000', 70 'F', 0 '\000', 0 '\000', 4 '\004', 37 '%', 171 '\253', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000', 0 '\000', 129 '\201', 0 '\000', 7 '\a', 0 '\000', 0 '\000'...} data_size = th = {_filename = "", _file = 0x0, _chunk = 0x0, opened_file = false, _pbuf = 0x7fff06698e00, _read_offset = 101907, _minorVersion = 316, _safe_read = false} #15 0x0000556b669c98b7 in _restore_tagged_chunk (save=, name="Elf:1", tag=tag@entry=TAG_LEVEL, complaint=complaint@entry=0x556b670ccbec "Level file is invalid.") at files.cc:3720 inf = {_filename = "", _file = 0x0, _chunk = 0x556b69ac1110, opened_file = false, _pbuf = 0x0, _read_offset = 0, _minorVersion = 316, _safe_read = false} reason = "" #16 0x0000556b669d4df7 in load_level (stair_taken=stair_taken@entry=DNGN_STONE_STAIRS_DOWN_I, load_mode=load_mode@entry=LOAD_VISITOR, old_level=...) at files.cc:2217 level_name = "Elf:1" make_changes = return_pos = {x = 0, y = 0} hatch_name = "" popped = false stair = {val = , oldval = DNGN_UNSEEN} ylev = {val = , oldval = false} dest_pos = just_created_level = descent_downclimb = descent_peek = #17 0x0000556b669d6fd1 in _load_level (level=...) at files.cc:3377 No locals. #18 level_excursion::go_to (this=this@entry=0x7fff066993e4, next=...) at files.cc:3481 No locals. #19 0x0000556b66a1b493 in _cleanup_apostle_corpse (slot=) at god-companions.cc:753 floor = {branch = BRANCH_ELF, depth = 1} le = {original = {branch = BRANCH_ELF, depth = 2}, ever_changed_levels = true, allow_unvisited = 127} mid = #20 0x0000556b66a20dac in beogh_resurrect_followers (end_ostracism_only=) at /usr/include/c++/13/bits/stl_vector.h:1123 i = 0 dead_apostles = std::vector of length 1, capacity 1 = {2} revived_names = std::vector of length 1, capacity 1 = {"Garatoth"} was_banished = #21 0x0000556b669dc6d8 in fire_final_effects () at fineff.cc:1825 eff = #22 0x0000556b66c0d0f9 in melee_attack::run_monster_attack_set (this=0x7fff066998a0) at melee-attack.cc:1662 melee_attk = { = {_vptr.attack = 0x556b67449e80 , attacker = 0x556b676d9fc8 , defender = 0x556b676d5330 , responsible = 0x556b676d9fc8 , cancel_attack = false, did_hit = true, needs_message = true, attacker_visible = true, defender_visible = true, perceived_attack = true, obvious_effect = false, to_hit = 35, damage_done = 1, special_damage = 0, aux_damage = 0, special_damage_flavour = BEAM_NONE, stab_attempt = false, stab_bonus = 0, ev_margin = 17, attk_type = AT_HIT, attk_flavour = AF_PLAIN, attk_damage = 12, weapon = 0x556b676994c8 , damage_brand = SPWPN_PROTECTION, wpn_skill = SK_MACES_FLAILS, unrand_entry = 0x0, attacker_to_hit_penalty = 0, attack_verb = "bug", verb_degree = "", no_damage_message = "", special_damage_message = "", aux_attack = "", aux_verb = "", defender_shield = 0x0, simu = false, aux_source = "", kill_type = KILLED_BY_MONSTER}, attack_number = 0, effective_attack_number = 0, total_damage_done = 1, cleave_targets = empty std::__cxx11::list, cleaving = false, is_followup = false, is_riposte = false, is_projected = false, is_bestial_takedown = false, is_sunder = false, charge_pow = 0, never_cleave = false, dmg_mult = 0, flat_dmg_bonus = 0, to_hit_bonus = 0, is_involuntary = false, wu_jian_attack = WU_JIAN_ATTACK_NONE, wu_jian_number_of_targets = 1, attack_position = {x = 55, y = 46}, mutable_wpn = 0x556b676994c8 , is_attacking_hostiles = true, damage_type = DVORP_CRUSHING, is_special_mon_stab = false} attack_succeeded = mon = 0x556b676d9fc8 nrounds = pos = {x = 55, y = 47} was_hostile = true success = effective_attack_num = 0 attack_num = 0 charge_sunder = false #23 0x0000556b66c0a6e7 in melee_attack::launch_attack_set (this=, skip_player_post_attack=) at melee-attack.cc:1555 success = #24 0x0000556b669bf5c0 in fight_melee (attacker=attacker@entry=0x556b676d9fc8 , defender=defender@entry=0x556b676d5330 , is_rampage=is_rampage@entry=false, did_hit=did_hit@entry=0x0, simu=simu@entry=false) at fight.cc:553 attk = { = {_vptr.attack = 0x556b67449e80 , attacker = 0x556b676d9fc8 , defender = 0x556b676d5330 , responsible = 0x556b676d9fc8 , cancel_attack = false, did_hit = true, needs_message = true, attacker_visible = true, defender_visible = true, perceived_attack = false, obvious_effect = false, to_hit = 11, damage_done = 0, special_damage = 0, aux_damage = 0, special_damage_flavour = BEAM_NONE, stab_attempt = false, stab_bonus = 0, ev_margin = 0, attk_type = AT_HIT, attk_flavour = AF_PLAIN, attk_damage = 12, weapon = 0x556b676994c8 , damage_brand = SPWPN_PROTECTION, wpn_skill = SK_MACES_FLAILS, unrand_entry = 0x0, attacker_to_hit_penalty = 0, attack_verb = "bug", verb_degree = "", no_damage_message = "", special_damage_message = "", aux_attack = "", aux_verb = "", defender_shield = 0x0, simu = false, aux_source = "", kill_type = KILLED_BY_MONSTER}, attack_number = 0, effective_attack_number = 0, total_damage_done = 0, cleave_targets = empty std::__cxx11::list, cleaving = false, is_followup = false, is_riposte = false, is_projected = false, is_bestial_takedown = false, is_sunder = false, charge_pow = 0, never_cleave = false, dmg_mult = 0, flat_dmg_bonus = 0, to_hit_bonus = 0, is_involuntary = false, wu_jian_attack = WU_JIAN_ATTACK_NONE, wu_jian_number_of_targets = 1, attack_position = {x = 55, y = 46}, mutable_wpn = 0x556b676994c8 , is_attacking_hostiles = false, damage_type = DVORP_CRUSHING, is_special_mon_stab = false} energy = delay = #25 0x0000556b66c48132 in handle_monster_move (mons=mons@entry=0x556b676d9fc8 ) at mon-act.cc:2372 targ = 0x556b676d5330 entry = mmov = {x = 0, y = 1} disabled = old_energy = 82 non_move_energy = old_pos = mact = {mon = 0x556b676d9fc8 } skip_turn = 0 new_pos = {x = 55, y = 47} #26 0x0000556b66c48fc8 in handle_monsters (with_noise=true) at mon-act.cc:2790 mon = 0x556b676d9fc8 oldspeed = tries = #27 0x0000556b67082c15 in world_reacts () at main.cc:2648 No locals. #28 0x0000556b67085484 in _input () at main.cc:1329 player_disabled = {was_disabled = false} #29 0x0000556b67086085 in _launch_game () at main.cc:498 game_start = ccon = {cstate = false} #30 0x0000556b667eb477 in _launch_game_loop () at main.cc:397 game_ended = false game_ended = ge = fe = #31 main (argc=12, argv=0x7fff0669a7a8) at main.cc:343 echo = {prev_state = {value = maybe_bool::mbool_t::maybe, static maybe =