ASSERT(wpn && (wpn->base_type == OBJ_MISSILES || is_range_weapon(*wpn))) in 'ranged-attack.cc' at line 37 failed. Version: Dungeon Crawl Stone Soup 0.34-a0-1992-g2e14fdc65b Platform: unix Bits: 64 Game mode: normal Tiles: online Seed: 14759806505319202609, deterministic pregen: 1 Version history: Game started: 0.34-a0-1975-g332d4de64d 0.34-a0-1983-g2595f5352e 0.34-a0-1991-g43051b6e75 0.34-a0-1992-g2e14fdc65b Command line: /usr/games/crawl-git-2e14fdc65b -name hellgot -rc /dgldir/rcfiles/crawl-git/hellgot.rc -macro /dgldir/rcfiles/crawl-git/hellgot.macro -morgue /dgldir/morgue/hellgot/ -webtiles-socket /crawl-master/webserver/sockets/hellgot:2026-01-13.05:49:22.sock -await-connection RC options: restart_after_game = false Crash caused by signal #6: Aborted Obtained 22 stack frames. /usr/games/crawl-git-2e14fdc65b(_Z17write_stack_traceP8_IO_FILE+0x3e) [0x651fda47be0e]: write_stack_trace(_IO_FILE*) /usr/games/crawl-git-2e14fdc65b(_Z13do_crash_dumpv+0x43a) [0x651fda48a04a]: do_crash_dump() /usr/games/crawl-git-2e14fdc65b(_Z20crash_signal_handleri+0x1fa) [0x651fda47c2ea]: crash_signal_handler(int) /lib/x86_64-linux-gnu/libc.so.6(+0x42910) [0x785df0842910]: /lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x11b) [0x785df089999b]: /lib/x86_64-linux-gnu/libc.so.6(raise+0x16) [0x785df0842866]: /usr/games/crawl-git-2e14fdc65b(+0x4fe41d) [0x651fda48941d]: /usr/games/crawl-git-2e14fdc65b(_Z12AssertFailedPKcS0_iS0_z+0x1c7) [0x651fda489927]: AssertFailed(char const*, char const*, int, char const*, ...) /usr/games/crawl-git-2e14fdc65b(_ZN13ranged_attackC1EP5actorS1_PK8item_defbS1_+0x4a2) [0x651fda9d6742]: ranged_attack::ranged_attack(actor*, actor*, item_def const*, bool, actor*) /usr/games/crawl-git-2e14fdc65b(_ZN18ranged_attack_beamC1ER5actorR8item_def+0x39) [0x651fdab3b9b9]: ranged_attack_beam::ranged_attack_beam(actor&, item_def&) /usr/games/crawl-git-2e14fdc65b(_Z22dithmenos_shadow_shootRK9coord_defPK8item_def+0x42b) [0x651fda5f43db]: dithmenos_shadow_shoot(coord_def const&, item_def const*) /usr/games/crawl-git-2e14fdc65b(+0xbb37a7) [0x651fdab3e7a7]: /usr/games/crawl-git-2e14fdc65b(_Z24aim_player_ranged_attackRN6quiver6actionE+0x1ef) [0x651fdab3e9ff]: aim_player_ranged_attack(quiver::action&) /usr/games/crawl-git-2e14fdc65b(_ZN6quiver11ammo_action7triggerER4dist+0x1f3) [0x651fda9bce03]: quiver::ammo_action::trigger(dist&) /usr/games/crawl-git-2e14fdc65b(_ZN6quiver13action_cycler9do_targetEv+0xf4) [0x651fda9b56f4]: quiver::action_cycler::do_target() /usr/games/crawl-git-2e14fdc65b(_ZN6quiver13action_cycler6targetEv+0x9c) [0x651fda9ba05c]: quiver::action_cycler::target() /usr/games/crawl-git-2e14fdc65b(+0xcb6472) [0x651fdac41472]: /usr/games/crawl-git-2e14fdc65b(+0xcb6eb5) [0x651fdac41eb5]: /usr/games/crawl-git-2e14fdc65b(main+0x1f7) [0x651fda3ade07]: /lib/x86_64-linux-gnu/libc.so.6(+0x280d0) [0x785df08280d0]: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x89) [0x785df0828189]: /usr/games/crawl-git-2e14fdc65b(_start+0x25) [0x651fda3ae8f5]: 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". 0x0000785df090fbf7 in __GI___wait4 (pid=2025028, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30 #0 0x0000785df090fbf7 in __GI___wait4 (pid=2025028, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30 sc_ret = -512 sc_ret = #1 0x0000651fda47c4bc in call_gdb (file=0x785df09ff6c0 <_IO_2_1_stderr_>) at crash.cc:438 gdb = attach_cmd = "attach 2023922\000\000\000\000\000" #2 0x0000651fda48a068 in do_crash_dump () at dbg-asrt.cc:673 t = 1768285944 dir = "/dgldir/morgue/hellgot/" name = "/dgldir/morgue/hellgot/crash-hellgot-20260113-063224.txt", '\000' signal_info = "Crash caused by signal #6: Aborted" cause_msg = "ASSERT(wpn && (wpn->base_type == OBJ_MISSILES || is_range_weapon(*wpn))) in 'ranged-attack.cc' at line 37 failed." file = 0x785df09ff6c0 <_IO_2_1_stderr_> #3 0x0000651fda47c2ea 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 = {37}} 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 0x0000785df0842866 in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26 ret = #9 0x0000651fda48941d in _BreakStrToDebugger (mesg=mesg@entry=0x7ffcf19d8530 "ASSERT(wpn && (wpn->base_type == OBJ_MISSILES || is_range_weapon(*wpn))) in 'ranged-attack.cc' at line 37 failed.", assert=true) at dbg-asrt.cc:807 No locals. #10 0x0000651fda489927 in AssertFailed (expr=expr@entry=0x651fdad29318 "wpn && (wpn->base_type == OBJ_MISSILES || is_range_weapon(*wpn))", file=file@entry=0x651fdaca67e7 "ranged-attack.cc", line=line@entry=37, text=text@entry=0x0) at dbg-asrt.cc:845 mesg = "ASSERT(wpn && (wpn->base_type == OBJ_MISSILES || is_range_weapon(*wpn))) in 'ranged-attack.cc' at line 37 failed.\000\235\361\374\177\000\000\300\206\235\361\374\177\000\000\020\212\235\361\374\177\000\000Ęż\211\332\037e\000\000@\206\235\361\374\177\000\000\270\212\235\361\374\177\000\000\002\000\000\000\000\000\000\000`\206\235\361\374\177\000\000p\206\235\361\374\177\000\000\\\212\235\361\374\177\000\000\000\212\235\361\374\177\000\000\370"... args = {{gp_offset = 3705521648, fp_offset = 25887, overflow_arg_area = 0x651fdcddc5f0, reg_save_area = 0x651fdcddc6f0}} fileName = #11 0x0000651fda9d6742 in ranged_attack::ranged_attack (this=this@entry=0x7ffcf19d9268, attk=attk@entry=0x651fdb28d878 , defn=defn@entry=0x0, wpn=wpn@entry=0x0, tele=tele@entry=false, blame=blame@entry=0x0) at ranged-attack.cc:37 No locals. #12 0x0000651fdab3b9b9 in ranged_attack_beam::ranged_attack_beam (this=this@entry=0x7ffcf19d8ff0, agent=..., item=...) at throw.cc:438 No locals. #13 0x0000651fda5f43db in dithmenos_shadow_shoot (targ=..., thrown_projectile=thrown_projectile@entry=0x0) at god-passive.cc:1494 aim = {x = 71, y = 14} target = pos = existing_target = mon = 0x651fdb28d878 launcher = 0x0 throwable = fake_proj = {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, tithe_state = 0}, {plus2 = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 0 '\000', quantity = 0, flags = 0, pos = {x = 0, y = 0}, link = 27000, slot = 0, orig_place = {branch = BRANCH_DUNGEON, depth = -1}, orig_monnum = 0, inscription = "", props = {, std::allocator >, CrawlStoreValue, std::less, std::allocator > >, std::allocator, std::allocator > const, CrawlStoreValue> > >> = std::map with 0 elements, }} missile = atk = {beam = {origin_spell = SPELL_NO_SPELL, range = -2, glyph = 42 U'*', colour = 0 '\000', flavour = BEAM_MAGIC, real_flavour = BEAM_MAGIC, drop_item = false, source = {x = 0, y = 0}, target = {x = 0, y = 0}, damage = {num = 0, size = 0}, ench_power = 0, hit = 0, thrower = KILL_NON_ACTOR, ex_size = 0, source_id = 0, source_name = "", name = "", short_name = "", hit_verb = "", loudness = 0, hit_noise_msg = "", explode_noise_msg = "", pierce = false, is_explosion = false, is_death_effect = false, aimed_at_spot = false, stop_at_allies = false, safe_to_user = false, aux_source = "", affects_nothing = false, effect_known = true, effect_wanton = false, no_saving_throw = false, draw_delay = 15, explode_delay = 50, redraw_per_cell = true, special_explosion = 0x0, animate = true, ac_rule = ac_type::normal, obvious_effect = false, seen = false, heard = false, path_taken = std::vector of length 0, capacity 0, extra_range_used = 0, aimed_at_feet = false, msg_generated = false, noise_generated = false, passed_target = false, in_explosion_phase = false, attitude = ATT_HOSTILE, foe_ratio = 0, hit_count = std::map with 0 elements, foes_hurt = 0, foes_helped = 0, friends_hurt = 0, friends_helped = 0, ranged_atk = 0x0, tracer = 0x0, chose_ray = false, overshoot_prompt = true, friendly_past_target = false, bounces = 0, bounce_pos = {x = 0, y = 0}, last_affected_actor_pos = {x = 0, y = 0}, reflections = 0, reflector = 0, use_target_as_pos = false, ray = {r = {start = {x = 0, y = 0}, dir = {x = 0, y = 0}}, on_corner = false, cycle_idx = -1}, tile_beam = 0, tile_explode = 0, can_see_invis = false, nightvision = false, can_trigger_bullseye = false, message_cache = std::set with 0 elements}, atk = { = {_vptr.attack = 0x651fdb006200 , attacker = 0x651fdb28d878 , defender = 0x0, responsible = 0x651fdb28d878 , cancel_attack = false, did_hit = false, needs_message = false, attacker_visible = false, defender_visible = false, perceived_attack = false, obvious_effect = false, to_hit = 0, 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 = 3702994272, attk_flavour = 25887, attk_damage = -241331712, weapon = 0x0, damage_brand = SPWPN_NORMAL, wpn_skill = SK_UNARMED_COMBAT, 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}, range_used = 0, reflected = false, will_mulch = false, proj_name = "", teleport = false, _did_net = false}} #14 0x0000651fdab3e7a7 in _fire_player_ranged_attacks (atks=std::vector of length 1, capacity 1 = {...}) at throw.cc:644 missile = shot_at_enemy = true #15 0x0000651fdab3e9ff in aim_player_ranged_attack (a=...) at throw.cc:698 item = throwing = atks = std::vector of length 1, capacity 1 = {{beam = {origin_spell = SPELL_NO_SPELL, range = 7, glyph = 40 U'(', colour = 15 '\017', flavour = BEAM_MISSILE, real_flavour = BEAM_MISSILE, drop_item = true, source = {x = 65, y = 9}, target = {x = 71, y = 14}, damage = {num = 10, size = 10}, ench_power = 0, hit = 0, thrower = KILL_YOU_MISSILE, ex_size = 0, source_id = 4294967295, source_name = "", name = "dart", short_name = "", hit_verb = "", loudness = 0, hit_noise_msg = "", explode_noise_msg = "", pierce = false, is_explosion = false, is_death_effect = false, aimed_at_spot = false, stop_at_allies = false, safe_to_user = false, aux_source = "", affects_nothing = false, effect_known = true, effect_wanton = false, no_saving_throw = false, draw_delay = 15, explode_delay = 50, redraw_per_cell = true, special_explosion = 0x0, animate = true, ac_rule = ac_type::normal, obvious_effect = false, seen = true, heard = false, path_taken = std::vector of length 7, capacity 8 = {{x = 66, y = 10}, {x = 67, y = 11}, {x = 68, y = 11}, {x = 69, y = 12}, {x = 70, y = 13}, {x = 71, y = 14}, {x = 72, y = 14}}, extra_range_used = 1, aimed_at_feet = false, msg_generated = false, noise_generated = false, passed_target = true, in_explosion_phase = false, attitude = ATT_FRIENDLY, foe_ratio = 0, hit_count = std::map with 1 element = {[270] = 1}, foes_hurt = 1, foes_helped = 0, friends_hurt = 0, friends_helped = 0, ranged_atk = 0x0, tracer = 0x0, chose_ray = true, overshoot_prompt = false, friendly_past_target = false, bounces = 0, bounce_pos = {x = 0, y = 0}, last_affected_actor_pos = {x = 71, y = 14}, reflections = 0, reflector = 0, use_target_as_pos = false, ray = {r = {start = {x = 72.285714285714292, y = 14.714285714285706}, dir = {x = 0.80000000000000004, y = 0.60000000000000009}}, on_corner = false, cycle_idx = 0}, tile_beam = 3842, tile_explode = 0, can_see_invis = true, nightvision = false, can_trigger_bullseye = false, message_cache = std::set with 0 elements}, atk = { = {_vptr.attack = 0x651fdb006200 , attacker = 0x651fdb20f520 , defender = 0x0, responsible = 0x651fdb20f520 , cancel_attack = false, did_hit = false, needs_message = false, attacker_visible = true, defender_visible = false, perceived_attack = false, obvious_effect = false, to_hit = 4, 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 = -241331376, weapon = 0x651fdb210d30 , damage_brand = SPWPN_NORMAL, wpn_skill = SK_THROWING, 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 = "dart", kill_type = KILLED_BY_SELF_AIMED}, range_used = 0, reflected = false, will_mulch = false, proj_name = "dart", teleport = false, _did_net = false}}} #16 0x0000651fda9bce03 in quiver::ammo_action::trigger (t=..., this=0x651fdc332610) at quiver.cc:905 No locals. #17 quiver::ammo_action::trigger (this=0x651fdc332610, t=...) at quiver.cc:892 No locals. #18 0x0000651fda9b56f4 in quiver::action_cycler::do_target (this=this@entry=0x651fdb219250 ) at quiver.cc:233 a = std::shared_ptr (use count 3, weak count 1) = {get() = 0x651fdc332610} #19 0x0000651fda9ba05c in quiver::action_cycler::target (this=0x651fdb219250 ) at quiver.cc:2846 a = std::shared_ptr (use count 608471880, weak count 726164519) = {get() = 0x7ffcf19d9c10} initial = std::shared_ptr (use count 3, weak count 1) = {get() = 0x651fdc332610} tmp = {previous = false} force_restore_initial = false what_happened = #20 0x0000651fdac41472 in _input () at main.cc:1293 cmd = CMD_FIRE real_prev_cmd = CMD_EXPLORE player_disabled = {was_disabled = false} #21 0x0000651fdac41eb5 in _launch_game () at main.cc:498 game_start = ccon = {cstate = false} #22 0x0000651fda3ade07 in _launch_game_loop () at main.cc:397 game_ended = false game_ended = ge = fe = #23 main (argc=12, argv=0x7ffcf19da1f8) at main.cc:343 echo = {prev_state = {value = maybe_bool::mbool_t::maybe, static maybe =