ASSERT((duration[DUR_MESMERISED] > 0) == !beholders.empty()) in 'behold.cc' at line 66 failed. Version: Dungeon Crawl Stone Soup 0.33-a0-40-g6fe00ff5d4 Platform: unix Bits: 64 Game mode: normal Tiles: online Seed: 7250487116393465159, deterministic pregen: 1 Command line: /usr/games/crawl-git-6fe00ff5d4 -name seohee -rc /dgldir/rcfiles/crawl-git/seohee.rc -macro /dgldir/rcfiles/crawl-git/seohee.macro -morgue /dgldir/morgue/seohee/ -webtiles-socket /crawl-master/webserver/sockets/seohee:2024-08-30.11:58:44.sock -await-connection RC options: restart_after_game = false Crash caused by signal #6: Aborted Obtained 31 stack frames. /usr/games/crawl-git-6fe00ff5d4(_Z17write_stack_traceP8_IO_FILE+0x3e) [0x5bd4f140654e]: write_stack_trace(_IO_FILE*) /usr/games/crawl-git-6fe00ff5d4(_Z13do_crash_dumpv+0x43a) [0x5bd4f141469a]: do_crash_dump() /usr/games/crawl-git-6fe00ff5d4(_Z20crash_signal_handleri+0x1fa) [0x5bd4f1406a2a]: crash_signal_handler(int) /lib/x86_64-linux-gnu/libc.so.6(+0x45320) [0x72d675b13320]: /lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x11c) [0x72d675b6cb1c]: /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x1e) [0x72d675b1326e]: /usr/games/crawl-git-6fe00ff5d4(+0x4a59bd) [0x5bd4f14139bd]: /usr/games/crawl-git-6fe00ff5d4(_Z12AssertFailedPKcS0_iS0_z+0x1c7) [0x5bd4f1413f77]: AssertFailed(char const*, char const*, int, char const*, ...) /usr/games/crawl-git-6fe00ff5d4(+0x45a4c2) [0x5bd4f13c84c2]: /usr/games/crawl-git-6fe00ff5d4(+0x45a72b) [0x5bd4f13c872b]: /usr/games/crawl-git-6fe00ff5d4(_Z16fill_status_infoiR11status_info+0xfda) [0x5bd4f1a15eca]: fill_status_info(int, status_info&) /usr/games/crawl-git-6fe00ff5d4(_ZN14TilesFramework12_send_playerEb+0x1df3) [0x5bd4f1b59ad3]: TilesFramework::_send_player(bool) /usr/games/crawl-git-6fe00ff5d4(_ZN14TilesFramework6redrawEv+0x72) [0x5bd4f1b5d862]: TilesFramework::redraw() /usr/games/crawl-git-6fe00ff5d4(_ZN14TilesFramework17update_input_modeE10mouse_modeb+0x178) [0x5bd4f1b5db38]: TilesFramework::update_input_mode(mouse_mode, bool) /usr/games/crawl-git-6fe00ff5d4(_ZN13mouse_controlC1E10mouse_mode+0x1d) [0x5bd4f16c5d3d]: mouse_control::mouse_control(mouse_mode) /usr/games/crawl-git-6fe00ff5d4(+0x7f6a93) [0x5bd4f1764a93]: /usr/games/crawl-git-6fe00ff5d4(_ZN14message_window4moreEbb+0x208) [0x5bd4f17660b8]: message_window::more(bool, bool) /usr/games/crawl-git-6fe00ff5d4(_ZN14message_window8add_itemENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE11prefix_typeb+0x3cb) [0x5bd4f176668b]: message_window::add_item(std::__cxx11::basic_string, std::allocator >, prefix_type, bool) /usr/games/crawl-git-6fe00ff5d4(_ZN13message_store10flush_prevEv+0x3fd) [0x5bd4f17674dd]: message_store::flush_prev() /usr/games/crawl-git-6fe00ff5d4(+0x7f3076) [0x5bd4f1761076]: /usr/games/crawl-git-6fe00ff5d4(_Z16do_message_print16msg_channel_typeibbPKcP13__va_list_tag+0xd6) [0x5bd4f1761946]: do_message_print(msg_channel_type, int, bool, bool, char const*, __va_list_tag*) /usr/games/crawl-git-6fe00ff5d4(_Z4mprf16msg_channel_typePKcz+0xb1) [0x5bd4f1761ed1]: mprf(msg_channel_type, char const*, ...) /usr/games/crawl-git-6fe00ff5d4(+0x95bd15) [0x5bd4f18c9d15]: /usr/games/crawl-git-6fe00ff5d4(_Z13player_reactsv+0x71f) [0x5bd4f18cba5f]: player_reacts() /usr/games/crawl-git-6fe00ff5d4(_Z12world_reactsv+0x7b5) [0x5bd4f1b6ddf5]: world_reacts() /usr/games/crawl-git-6fe00ff5d4(+0xc01ae6) [0x5bd4f1b6fae6]: /usr/games/crawl-git-6fe00ff5d4(+0xc027e5) [0x5bd4f1b707e5]: /usr/games/crawl-git-6fe00ff5d4(main+0x1f7) [0x5bd4f1340657]: /lib/x86_64-linux-gnu/libc.so.6(+0x2a1ca) [0x72d675af81ca]: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x8b) [0x72d675af828b]: /usr/games/crawl-git-6fe00ff5d4(_start+0x25) [0x5bd4f1341075]: Trying to run gdb. GNU gdb (Ubuntu 15.0.50.20240403-0ubuntu1) 15.0.50.20240403-git Copyright (C) 2024 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". 0x000072d675bde7a7 in __GI___wait4 (pid=2991664, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30 #0 0x000072d675bde7a7 in __GI___wait4 (pid=2991664, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30 sc_ret = -512 sc_ret = #1 0x00005bd4f1406bfc in call_gdb (file=0x72d675cd24e0 <_IO_2_1_stderr_>) at crash.cc:438 gdb = attach_cmd = "attach 2983499\000\000\000\000\000" #2 0x00005bd4f14146b8 in do_crash_dump () at dbg-asrt.cc:692 t = 1725020764 dir = "/dgldir/morgue/seohee/" name = "/dgldir/morgue/seohee/crash-seohee-20240830-122604.txt", '\000' signal_info = "Crash caused by signal #6: Aborted" cause_msg = "ASSERT((duration[DUR_MESMERISED] > 0) == !beholders.empty()) in 'behold.cc' at line 66 failed." file = 0x72d675cd24e0 <_IO_2_1_stderr_> #3 0x00005bd4f1406a2a 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 = {8286760960333062772}} 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 0x000072d675b1326e in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26 ret = #9 0x00005bd4f14139bd in _BreakStrToDebugger (mesg=mesg@entry=0x7ffc9c5f4de0 "ASSERT((duration[DUR_MESMERISED] > 0) == !beholders.empty()) in 'behold.cc' at line 66 failed.", assert=true) at dbg-asrt.cc:818 No locals. #10 0x00005bd4f1413f77 in AssertFailed (expr=expr@entry=0x5bd4f1bf6428 "(duration[DUR_MESMERISED] > 0) == !beholders.empty()", file=file@entry=0x5bd4f1b8537e "behold.cc", line=line@entry=66, text=text@entry=0x0) at dbg-asrt.cc:856 mesg = "ASSERT((duration[DUR_MESMERISED] > 0) == !beholders.empty()) in 'behold.cc' at line 66 failed.\000\271\220S_\234\374\177\000\000\200N_\234\374\177\000\000\371)\270\361\324[\000\000\371)\270\361\324[", '\000' , "1\016c\t(\374\271@O_\234\374\177\000\000\260N_\234\374\177\000\000\371)\270\361\324[\000\000\224\\_\234\374\177\000\000\000\000\000\000\000\000\000\000\260Y_\234\374\177\000\000pO_\234\374\177\000\000"... args = {{gp_offset = 1974694140, fp_offset = 29398, overflow_arg_area = 0x0, reg_save_area = 0x7ffc9c5f4e20}} fileName = #11 0x00005bd4f13c84c2 in player::beheld (this=) at behold.cc:66 No locals. #12 0x00005bd4f13c872b in player::beheld (this=) at behold.cc:65 No locals. #13 0x00005bd4f1a15eca in fill_status_info (status=status@entry=192, inf=...) at status.cc:310 found = false #14 0x00005bd4f1b59ad3 in _update_statuses (c=...) at tileweb.cc:1009 status = 192 changed = false counter = inf = {light_colour = 0, light_text = "", short_text = "", long_text = ""} changed = counter = inf = status = #15 TilesFramework::_send_player (this=this@entry=0x5bd4f206ae20 , force_full=, force_full@entry=false) at tileweb.cc:1202 c = @0x5bd4f2097198: {_state_ever_synced = true, name = "seohee", job_title = "the Blood Saint", wizard = false, explore = false, species = "Demonspawn", god = "Makhleb", under_penance = false, piety_rank = 6, form = 0 '\000', hp = 57, hp_max = 108, real_hp_max = 108, poison_survival = 57, mp = 31, mp_max = 31, dd_real_mp_max = 0, contam = 0, noise = -1, adjusted_noise = 140, armour_class = 9, evasion = 13, shield_class = 0, strength = 12 '\f', strength_max = 12 '\f', intel = 11 '\v', intel_max = 11 '\v', dex = 24 '\030', dex_max = 24 '\030', experience_level = 14, exp_progress = 49 '1', gold = 711, zot_points = 0, elapsed_time = 154367, num_turns = 15419, lives = 0, deaths = 0, place = "Lair", depth = 5, position = {x = 52, y = 18}, status = std::vector of length 3, capacity 4 = {{light_colour = 4, light_text = "Mesm", short_text = "mesmerised", long_text = "You are mesmerised."}, {light_colour = 0, light_text = "", short_text = "glowing", long_text = "You are glowing."}, {light_colour = 1, light_text = "Aug", short_text = "", long_text = ""}}, inv = {mData = {{base_type = OBJ_POTIONS, sub_type = 1 '\001', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 22, unrand_idx = 22, subtype_rnd = 22, brand = 22, freshness = 22}, rnd = 105 'i', quantity = 5, flags = 15, pos = {x = -1, y = -1}, link = 0, slot = 97, 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, }}, {base_type = OBJ_SCROLLS, sub_type = 13 '\r', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 363309, unrand_idx = 363309, subtype_rnd = 363309, brand = 363309, freshness = 363309}, rnd = 168 '\250', quantity = 7, flags = 2, pos = {x = -1, y = -1}, link = 1, slot = 98, 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, }}, {base_type = OBJ_POTIONS, sub_type = 13 '\r', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 255, unrand_idx = 255, subtype_rnd = 255, brand = 255, freshness = 255}, rnd = 164 '\244', quantity = 2, flags = 15, pos = {x = -1, y = -1}, link = 2, slot = 99, orig_place = {branch = BRANCH_DUNGEON, depth = -1}, orig_monnum = -102, inscription = "", props = {, std::allocator >, CrawlStoreValue, std::less, std::allocator > >, std::allocator, std::allocator > const, CrawlStoreValue> > >> = std::map with 0 elements, }}, {base_type = OBJ_ARMOUR, sub_type = 42 '*', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 29, unrand_idx = 29, subtype_rnd = 29, brand = 29, freshness = 29}, rnd = 195 '\303', quantity = 1, flags = 262159, pos = {x = -1, y = -1}, link = 3, slot = 100, orig_place = {branch = BRANCH_DUNGEON, depth = -1}, orig_monnum = -102, inscription = "", props = {, std::allocator >, CrawlStoreValue, std::less, std::allocator > >, std::allocator, std::allocator > const, CrawlStoreValue> > >> = std::map with 0 elements, }}, {base_type = OBJ_POTIONS, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 15, unrand_idx = 15, subtype_rnd = 15, brand = 15, freshness = 15}, rnd = 108 'l', quantity = 12, flags = 15, pos = {x = -1, y = -1}, link = 4, slot = 101, 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, }}, {base_type = OBJ_POTIONS, sub_type = 2 '\002', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 7, unrand_idx = 7, subtype_rnd = 7, brand = 7, freshness = 7}, rnd = 24 '\030', quantity = 2, flags = 15, pos = {x = -1, y = -1}, link = 5, slot = 102, 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, }}, {base_type = OBJ_JEWELLERY, sub_type = 6 '\006', {plus = 4, mon_type = MONS_KOMODO_DRAGON, skill = SK_MACES_FLAILS, charges = 4, net_durability = 4, tithe_state = 4}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 158, unrand_idx = 158, subtype_rnd = 158, brand = 158, freshness = 158}, rnd = 165 '\245', quantity = 1, flags = 15, pos = {x = -1, y = -1}, link = 6, slot = 103, 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, }}, {base_type = OBJ_MISSILES, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 4, unrand_idx = 4, subtype_rnd = 4, brand = 4, freshness = 4}, rnd = 41 ')', quantity = 4, flags = 2, pos = {x = -1, y = -1}, link = 7, slot = 104, 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, }}, {base_type = OBJ_SCROLLS, sub_type = 1 '\001', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 343927, unrand_idx = 343927, subtype_rnd = 343927, brand = 343927, freshness = 343927}, rnd = 205 '\315', quantity = 8, flags = 2, pos = {x = -1, y = -1}, link = 8, slot = 105, 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, }}, {base_type = OBJ_WEAPONS, sub_type = 15 '\017', {plus = 7, mon_type = MONS_FIRE_BAT, skill = SK_SLINGS, charges = 7, net_durability = 7, tithe_state = 7}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 2, unrand_idx = 2, subtype_rnd = 2, brand = 2, freshness = 2}, rnd = 134 '\206', quantity = 1, flags = 131087, pos = {x = -1, y = -1}, link = 9, slot = 106, 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, }}, {base_type = OBJ_SCROLLS, sub_type = 8 '\b', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 353638, unrand_idx = 353638, subtype_rnd = 353638, brand = 353638, freshness = 353638}, rnd = 114 'r', quantity = 1, flags = 15, pos = {x = -1, y = -1}, link = 10, slot = 107, 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, }}, {base_type = OBJ_POTIONS, sub_type = 14 '\016', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 17, unrand_idx = 17, subtype_rnd = 17, brand = 17, freshness = 17}, rnd = 55 '7', quantity = 3, flags = 15, pos = {x = -1, y = -1}, link = 11, slot = 108, 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, }}, {base_type = OBJ_JEWELLERY, sub_type = 47 '/', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 222, unrand_idx = 222, subtype_rnd = 222, brand = 222, freshness = 222}, rnd = 56 '8', quantity = 1, flags = 15, pos = {x = -1, y = -1}, link = 12, slot = 109, 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, }}, {base_type = OBJ_SCROLLS, sub_type = 15 '\017', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 355177, unrand_idx = 355177, subtype_rnd = 355177, brand = 355177, freshness = 355177}, rnd = 115 's', quantity = 2, flags = 15, pos = {x = -1, y = -1}, link = 13, slot = 110, 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, }}, {base_type = OBJ_POTIONS, sub_type = 32 ' ', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 233, unrand_idx = 233, subtype_rnd = 233, brand = 233, freshness = 233}, rnd = 35 '#', quantity = 1, flags = 0, pos = {x = -1, y = -1}, link = 14, slot = 111, 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, }}, {base_type = OBJ_SCROLLS, sub_type = 26 '\032', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 347695, unrand_idx = 347695, subtype_rnd = 347695, brand = 347695, freshness = 347695}, rnd = 223 '\337', quantity = 4, flags = 15, pos = {x = -1, y = -1}, link = 15, slot = 112, 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, }}, {base_type = OBJ_POTIONS, sub_type = 25 '\031', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 12, unrand_idx = 12, subtype_rnd = 12, brand = 12, freshness = 12}, rnd = 136 '\210', quantity = 2, flags = 15, pos = {x = -1, y = -1}, link = 16, slot = 113, 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, }}, {base_type = OBJ_SCROLLS, sub_type = 14 '\016', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 360550, unrand_idx = 360550, subtype_rnd = 360550, brand = 360550, freshness = 360550}, rnd = 96 '`', quantity = 6, flags = 15, pos = {x = -1, y = -1}, link = 17, slot = 114, 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, }}, {base_type = OBJ_ARMOUR, sub_type = 6 '\006', {plus = 2, mon_type = MONS_LEOPARD_GECKO, skill = SK_LONG_BLADES, charges = 2, net_durability = 2, tithe_state = 2}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 53 '5', quantity = 1, flags = 131087, pos = {x = -1, y = -1}, link = 18, slot = 115, 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, }}, {base_type = OBJ_POTIONS, sub_type = 29 '\035', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 231, unrand_idx = 231, subtype_rnd = 231, brand = 231, freshness = 231}, rnd = 201 '\311', quantity = 2, flags = 15, pos = {x = -1, y = -1}, link = 19, slot = 116, 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, }}, {base_type = OBJ_MISSILES, sub_type = 8 '\b', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 133 '\205', quantity = 2, flags = 2, pos = {x = -1, y = -1}, link = 20, slot = 117, 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, }}, {base_type = OBJ_WANDS, sub_type = 24 '\030', {plus = 18, mon_type = MONS_LABORATORY_RAT, skill = SK_SPELLCASTING, charges = 18, net_durability = 18, tithe_state = 18}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 56, unrand_idx = 56, subtype_rnd = 56, brand = 56, freshness = 56}, rnd = 79 'O', quantity = 1, flags = 6, pos = {x = -1, y = -1}, link = 21, slot = 118, 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, }}, {base_type = OBJ_WANDS, sub_type = 19 '\023', {plus = 10, mon_type = MONS_WATER_MOCCASIN, skill = SK_THROWING, charges = 10, net_durability = 10, tithe_state = 10}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 4, unrand_idx = 4, subtype_rnd = 4, brand = 4, freshness = 4}, rnd = 248 '\370', quantity = 1, flags = 6, pos = {x = -1, y = -1}, link = 22, slot = 119, 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, }}, {base_type = OBJ_SCROLLS, sub_type = 2 '\002', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 328081, unrand_idx = 328081, subtype_rnd = 328081, brand = 328081, freshness = 328081}, rnd = 206 '\316', quantity = 2, flags = 15, pos = {x = -1, y = -1}, link = 23, slot = 120, 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, }}, {base_type = OBJ_JEWELLERY, sub_type = 16 '\020', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 164, unrand_idx = 164, subtype_rnd = 164, brand = 164, freshness = 164}, rnd = 110 'n', quantity = 1, flags = 15, pos = {x = -1, y = -1}, link = 24, slot = 121, 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, }}, {base_type = OBJ_SCROLLS, sub_type = 24 '\030', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 365643, unrand_idx = 365643, subtype_rnd = 365643, brand = 365643, freshness = 365643}, rnd = 89 'Y', quantity = 4, flags = 15, pos = {x = -1, y = -1}, link = 25, slot = 122, 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, }}, {base_type = OBJ_POTIONS, sub_type = 32 ' ', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 13, unrand_idx = 13, subtype_rnd = 13, brand = 13, freshness = 13}, rnd = 196 '\304', quantity = 3, flags = 0, pos = {x = -1, y = -1}, link = 26, slot = 65, 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, }}, {base_type = OBJ_POTIONS, sub_type = 32 ' ', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 70, unrand_idx = 70, subtype_rnd = 70, brand = 70, freshness = 70}, rnd = 3 '\003', quantity = 3, flags = 0, pos = {x = -1, y = -1}, link = 27, slot = 66, 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, }}, {base_type = OBJ_SCROLLS, sub_type = 7 '\a', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 358791, unrand_idx = 358791, subtype_rnd = 358791, brand = 358791, freshness = 358791}, rnd = 54 '6', quantity = 3, flags = 2, pos = {x = -1, y = -1}, link = 28, slot = 67, 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, }}, {base_type = OBJ_JEWELLERY, sub_type = 18 '\022', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 24, unrand_idx = 24, subtype_rnd = 24, brand = 24, freshness = 24}, rnd = 148 '\224', quantity = 1, flags = 15, pos = {x = -1, y = -1}, link = 29, slot = 68, 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, }}, {base_type = OBJ_SCROLLS, sub_type = 12 '\f', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 334387, unrand_idx = 334387, subtype_rnd = 334387, brand = 334387, freshness = 334387}, rnd = 114 'r', quantity = 1, flags = 2, pos = {x = -1, y = -1}, link = 30, slot = 69, 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, }}, {base_type = OBJ_POTIONS, sub_type = 32 ' ', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 61, unrand_idx = 61, subtype_rnd = 61, brand = 61, freshness = 61}, rnd = 95 '_', quantity = 3, flags = 0, pos = {x = -1, y = -1}, link = 31, slot = 70, 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, }}, {base_type = OBJ_SCROLLS, sub_type = 18 '\022', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 353678, unrand_idx = 353678, subtype_rnd = 353678, brand = 353678, freshness = 353678}, rnd = 217 '\331', quantity = 2, flags = 15, pos = {x = -1, y = -1}, link = 32, slot = 71, orig_place = {branch = BRANCH_DUNGEON, depth = -1}, orig_monnum = -103, inscription = "", props = {, std::allocator >, CrawlStoreValue, std::less, std::allocator > >, std::allocator, std::allocator > const, CrawlStoreValue> > >> = std::map with 0 elements, }}, {base_type = OBJ_POTIONS, sub_type = 32 ' ', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 2, unrand_idx = 2, subtype_rnd = 2, brand = 2, freshness = 2}, rnd = 144 '\220', quantity = 1, flags = 0, pos = {x = -1, y = -1}, link = 33, slot = 72, 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, }}, {base_type = OBJ_ARMOUR, sub_type = 18 '\022', {plus = 3, mon_type = MONS_IGUANA, skill = SK_AXES, charges = 3, net_durability = 3, tithe_state = 3}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 74 'J', quantity = 1, flags = 15, pos = {x = -1, y = -1}, link = 34, slot = 73, orig_place = {branch = BRANCH_DUNGEON, depth = -1}, orig_monnum = 0, inscription = "Snorg", props = {, std::allocator >, CrawlStoreValue, std::less, std::allocator > >, std::allocator, std::allocator > const, CrawlStoreValue> > >> = std::map with 0 elements, }}, {base_type = OBJ_WANDS, sub_type = 0 '\000', {plus = 24, mon_type = MONS_WOLF, skill = SK_TRANSLOCATIONS, charges = 24, net_durability = 24, tithe_state = 24}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 181 '\265', quantity = 1, flags = 6, pos = {x = -1, y = -1}, link = 35, slot = 74, 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, }}, {base_type = OBJ_JEWELLERY, sub_type = 44 ',', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 352, unrand_idx = 352, subtype_rnd = 352, brand = 352, freshness = 352}, rnd = 142 '\216', quantity = 1, flags = 2, pos = {x = -1, y = -1}, link = 36, slot = 75, 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, }}, {base_type = OBJ_JEWELLERY, sub_type = 8 '\b', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 234, unrand_idx = 234, subtype_rnd = 234, brand = 234, freshness = 234}, rnd = 17 '\021', quantity = 1, flags = 4111, pos = {x = -1, y = -1}, link = 37, slot = 76, 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 4 elements = {["artefact_appearance"] = {type = SV_STR, flags = 0 '\000', val = {boolean = 208, byte = -48 '\320', _short = -23600, _int = -185883696, _float = -1.49354526e+32, _int64 = 100970200277968, ptr = 0x5bd4f4eba3d0}}, ["artefact_known_props"] = {type = SV_VEC, flags = 0 '\000', val = {boolean = 112, byte = 112 'p', _short = 25968, _int = -212245136, _float = -1.72239047e+31, _int64 = 100970173916528, ptr = 0x5bd4f3596570}}, ["artefact_name"] = {type = SV_STR, flags = 0 '\000', val = {boolean = 240, byte = -16 '\360', _short = 8944, _int = -203152656, _float = -3.61496674e+31, _int64 = 100970183009008, ptr = 0x5bd4f3e422f0}}, ["artefact_props"] = {type = SV_VEC, flags = 0 '\000', val = {boolean = 80, byte = 80 'P', _short = -1968, _int = -181077936, _float = -2.29406692e+32, _int64 = 100970205083728, ptr = 0x5bd4f534f850}}}, }}, {base_type = OBJ_WANDS, sub_type = 15 '\017', {plus = 7, mon_type = MONS_FIRE_BAT, skill = SK_SLINGS, charges = 7, net_durability = 7, tithe_state = 7}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 51, unrand_idx = 51, subtype_rnd = 51, brand = 51, freshness = 51}, rnd = 105 'i', quantity = 1, flags = 6, pos = {x = -1, y = -1}, link = 38, slot = 77, 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, }}, {base_type = OBJ_WANDS, sub_type = 16 '\020', {plus = 5, mon_type = MONS_BASILISK, skill = SK_POLEARMS, charges = 5, net_durability = 5, tithe_state = 5}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 166, unrand_idx = 166, subtype_rnd = 166, brand = 166, freshness = 166}, rnd = 145 '\221', quantity = 1, flags = 6, pos = {x = -1, y = -1}, link = 39, slot = 78, 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, }}, {base_type = OBJ_MISCELLANY, sub_type = 27 '\033', {plus = 2, mon_type = MONS_LEOPARD_GECKO, skill = SK_LONG_BLADES, charges = 2, net_durability = 2, tithe_state = 2}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 152 '\230', quantity = 1, flags = 2, pos = {x = -1, y = -1}, link = 40, slot = 79, 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, }}, {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 7 '\a', quantity = 0, flags = 2, pos = {x = -1, y = -1}, link = 41, slot = 80, 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, }}, {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 1 '\001', 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, }}, {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 1 '\001', 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, }}, {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 1 '\001', 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, }}, {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 1 '\001', 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, }}, {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 1 '\001', 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, }}, {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 1 '\001', 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, }}, {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 1 '\001', 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, }}, {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 1 '\001', 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, }}, {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 1 '\001', 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, }}, {base_type = OBJ_UNASSIGNED, sub_type = 0 '\000', {plus = 0, mon_type = MONS_PROGRAM_BUG, skill = SK_FIGHTING, charges = 0, net_durability = 0, tithe_state = 0}, {plus2 = 0, net_placed = 0, skill_points = 0, stash_freshness = 0}, {special = 0, unrand_idx = 0, subtype_rnd = 0, brand = 0, freshness = 0}, rnd = 1 '\001', 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, }}}}, inv_uselessness = {mData = {false , true, false , true, false, false, true, false }}, equip = {mData = "\t\022\377\377\377\003\"\006\030\f", '\377' }, offhand_weapon = false, quiver_item = 7 '\a', quiver_desc = "Throw: 4 darts (curare)", unarmed_attack = "Claws", unarmed_attack_colour = 7 '\a', quiver_available = true} spectator = false god = "Makhleb" prank = max_max_hp = place = short_name = "Lair" pos = #16 0x00005bd4f1b5d862 in TilesFramework::redraw (this=this@entry=0x5bd4f206ae20 ) at tileweb.cc:2209 No locals. #17 0x00005bd4f1b5db38 in TilesFramework::update_input_mode (this=0x5bd4f206ae20 , mode=mode@entry=MOUSE_MODE_MORE, force=force@entry=false) at tileweb.cc:947 prev_mode = #18 0x00005bd4f16c5d3d in mouse_control::mouse_control (this=this@entry=0x7ffc9c5f5c94, mode=mode@entry=MOUSE_MODE_MORE) at libutil.cc:492 No locals. #19 0x00005bd4f1764a93 in readkey_more (user_forced=user_forced@entry=false) at message.cc:1890 keypress = 0 unwind_more = {val = @0x5bd4f200aa41, oldval = false} mc = {m_previous_mode = 32764} #20 0x00005bd4f17660b8 in message_window::more (this=this@entry=0x5bd4f2014700 , full=full@entry=true, user=user@entry=false) at message.cc:729 rng = {previous = rng::UI} last_row = 7 #21 0x00005bd4f176668b in message_window::make_space (n=1, this=0x5bd4f2014700 ) at message.cc:480 space = s = space = s = #22 message_window::add_item (this=this@entry=0x5bd4f2014700 , text="The obsidian statue is almost destroyed.", first_col=first_col@entry=prefix_type::none, temporary=temporary@entry=false) at message.cc:631 line = {ops = std::vector of length 2524253555698, capacity 3518073299545 = { nl = @0x5bd4f50bc800: {ops = std::vector of length 3, capacity 4 = {{type = FSOP_COLOUR, colour = 12, text = ""}, {type = FSOP_TEXT, colour = -1, text = "The obsidian statue is almost destroyed."}, {type = FSOP_COLOUR, colour = 7, text = ""}}} __for_range = std::vector of length 1, capacity 1 = {{ops = std::vector of length 3, capacity 4 = {{type = FSOP_COLOUR, colour = 12, text = ""}, {type = FSOP_TEXT, colour = -1, text = "The obsidian statue is almost destroyed."}, {type = FSOP_COLOUR, colour = 7, text = ""}}}} __for_begin = __for_end = newlines = std::vector of length 1, capacity 1 = {{ops = std::vector of length 3, capacity 4 = {{type = FSOP_COLOUR, colour = 12, text = ""}, {type = FSOP_TEXT, colour = -1, text = "The obsidian statue is almost destroyed."}, {type = FSOP_COLOUR, colour = 7, text = ""}}}} #23 0x00005bd4f17674dd in message_store::store_msg (msg=..., this=0x5bd4f200aa60 ) at message.cc:821 p = prefix_type::none dontsend = p = dontsend = #24 message_store::flush_prev (this=0x5bd4f200aa60 ) at message.cc:851 msg = {channel = MSGCH_MONSTER_DAMAGE, param = 5, messages = std::vector of length 1, capacity 1 = {{text = "The obsidian statue is almost destroyed.", repeats = 1}}, turn = 15419, join = false} #25 0x00005bd4f1761076 in message_store::add (msg=..., this=0x5bd4f200aa60 ) at message.cc:785 orig_full_text = "You break out of your daze." orig_full_text = #26 _mpr (text="You break out of your daze.", channel=channel@entry=MSGCH_RECOVERY, param=, param@entry=0, nojoin=nojoin@entry=false, cap=, cap@entry=true) at message.cc:1595 _doing_c_message_hook = false rng = {previous = rng::GAMEPLAY} colour = col = "lightgreen" domore = do_flash_screen = false join = 255 fs = {ops = std::vector of length 3, capacity 4 = {{type = FSOP_COLOUR, colour = 10, text = ""}, {type = FSOP_TEXT, colour = -1, text = "You break out of your daze."}, {type = FSOP_COLOUR, colour = 7, text = ""}}} msg = {channel = MSGCH_RECOVERY, param = 0, messages = std::vector of length 1, capacity 1 = {{text = "You break out of your daze.", repeats = 1}}, turn = 15419, join = true} #27 0x00005bd4f1761946 in do_message_print (channel=, param=0, cap=, nojoin=, format=, argp=) at /usr/include/c++/13/bits/basic_string.tcc:242 Compilation info: <<<<<<<<<<< Compiled with GCC 13.2.0 Build platform: x86_64-linux-gnu Platform: x86_64-linux-gnu CFLAGS: -O2 -pipe -DUSE_TILE -DUSE_TILE_WEB -Wall -Wformat-security -Wundef -Wextra -Wno-missing-field-initializers -Wno-implicit-fallthrough -Wno-type-limits -Wno-uninitialized -Wno-array-bounds -Wno-format-zero-length -Wmissing-declarations -Wredundant-decls -Wno-parentheses -Wwrite-strings -Wshadow -pedantic -Wuninitialized -Iutil -I. -isystem /usr/include/lua5.1 -g -DWIZARD -DASSERTS -DREGEX_PCRE -DCLUA_BINDINGS -DDGAMELAUNCH -DSAVE_DIR_PATH="/crawl-master/crawl-git-6fe00ff5d4/saves" -DSHARED_DIR_PATH="/crawl-master/crawl-git/saves" -DDATA_DIR_PATH="/crawl-master/crawl-git-6fe00ff5d4/data/" -DWEB_DIR_PATH="/crawl-master/crawl-git-6fe00ff5d4/data/web/" -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 LDFLAGS: -rdynamic -fuse-ld=gold -O2 >>>>>>>>>>> Place info: branch = 5, depth = 5 Level id: Lair:5 Level build method = random_map_for_place, level layout type = city, absdepth0 = 14 Level vaults: due_jungle_book layout_regular_city pond lemuel_fruit_fields Markers: <<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>> Messages: <<<<<<<<<<<<<<<<<<<<<< The flurry of cold hits the seven-headed hydra!!! The seven-headed hydra is severely wounded. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - seven-headed hydra Aim: a seven-headed hydra (severely wounded, 93% to hit) The flurry of cold hits the skyshark!! The skyshark is almost dead. The flurry of cold hits the seven-headed hydra!! The seven-headed hydra is almost dead. The flurry of cold hits the death yak!! The death yak is almost dead. The skyshark closely misses you. The skyshark tail-slaps you. The skyshark closely misses you. Unknown command. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - death yak, p - seven-headed hydra Aim: a death yak (severely wounded, 93% to hit) The flurry of cold hits the skyshark!!! You kill the skyshark! Makhleb accepts your kill. You feel better. The flurry of cold hits the death yak!! The death yak is heavily wounded. The flurry of cold hits the death yak!! You kill the death yak! Makhleb accepts your kill. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - death yak Aim: a death yak (almost dead, weak-willed, haloed, 95% to hit) The bolt of devastation hits the death yak!! You kill the death yak! Makhleb accepts your kill. You feel better. The bolt of devastation hits the death yak!!! The death yak's willpower is stripped away! You kill the death yak! Makhleb accepts your kill. You feel better. The bolt of devastation hits the seven-headed hydra!!! The seven-headed hydra's willpower is stripped away! You kill the seven-headed hydra! Makhleb accepts your kill. You feel better. You have reached level 14! Your demonic ancestry asserts itself... You feel power flowing into your body. You start resting. HP restored. You now have 563 gold pieces (gained 16). You now have 584 gold pieces (gained 21). You now have 607 gold pieces (gained 23). An elephant comes into view. Found 24 gold pieces. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - elephant Aim: an elephant (asleep, 100% to hit) The flurry of cold hits the elephant! The elephant is lightly wounded. You hear a trumpeting! An elephant comes into view. x2 Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - elephant Aim: an elephant (lightly wounded, 100% to hit) The flurry of cold hits the elephant!! The elephant is severely wounded. The flurry of cold hits the elephant!! The elephant is heavily wounded. The elephant trumpets! Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - elephant Aim: an elephant (severely wounded, 100% to hit) The wail of negative energy hits the elephant!! The elephant is drained! You kill the elephant! Makhleb accepts your kill. You feel better. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - elephant Aim: an elephant (heavily wounded, 100% to hit) The bolt of devastation hits the elephant!! The elephant's willpower is stripped away! The elephant is almost dead. The bolt of devastation hits the elephant!!! The elephant's willpower is stripped away! The elephant is almost dead. An elephant comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - elephant Aim: an elephant (almost dead, weak-willed, 100% to hit) The bolt of devastation hits the elephant!! You kill the elephant! Makhleb accepts your kill. Unknown command. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - elephant Aim: an elephant (almost dead, weak-willed, 100% to hit) The gout of fire hits the elephant!!! You kill the elephant! Makhleb accepts your kill. You feel better. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - elephant Aim: an elephant (100% to hit) The bolt of devastation hits the elephant!! The elephant's willpower is stripped away! The elephant is moderately wounded. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - elephant Aim: an elephant (moderately wounded, weak-willed, 100% to hit) The flurry of cold hits the elephant!! The elephant is severely wounded. You hear a bellow! Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - elephant Aim: an elephant (severely wounded, weak-willed, 100% to hit) The flurry of cold hits the elephant!!! You kill the elephant! Makhleb accepts your kill. You feel better. You have mastered Invocations! 2 wolves come into view. A wolf comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - wolf Aim: a wolf (68% to hit) The gout of fire misses the wolf. The gout of fire hits the wolf!! The wolf is almost dead. The wolf howls! x2 A wolf comes into view. You hear a bellow! x2 Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - wolf Aim: a wolf (haloed, 76% to hit) The gout of fire misses the wolf. Unknown command. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - wolf, p - wolf Aim: a wolf (68% to hit) The flurry of cold hits the wolf!! The wolf is almost dead. The flurry of cold hits the wolf!! You kill the wolf! Makhleb accepts your kill. You feel better. The flurry of cold hits the wolf!! You kill the wolf! Makhleb accepts your kill. You feel better. The flurry of cold hits the wolf!! You kill the wolf! Makhleb accepts your kill. You feel better. You hear a bellow! The wolf misses you. The wolf bites you but does no damage. You hit the wolf. You freeze the wolf. The wolf is almost dead. The wolf bites you but does no damage. The wolf bites you. You barely miss the wolf. The wolf is almost dead. The wolf bites you! You slash the wolf! You freeze the wolf. You kill the wolf! Makhleb accepts your kill. You feel better. A yak comes into view. Found a scroll of teleportation. You see here a wolf corpse. A yak is nearby! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - yak Aim: a yak (88% to hit) The wail of negative energy hits the yak!!! The yak is drained! You kill the yak! Makhleb accepts your kill. You feel better. You hear a croak. Your Fighting skill increases to level 8! Unknown command. Unknown command. A yak comes into view. A yak is nearby! A yak is nearby! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - yak Aim: a yak (88% to hit) The bolt of devastation hits the yak!! The yak's willpower is stripped away! The yak is severely wounded. You hear a bellow! Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - yak Aim: a yak (severely wounded, weak-willed, 88% to hit) The wail of negative energy hits the yak!! The yak is drained! You kill the yak! Makhleb accepts your kill. You feel better. A yak comes into view. A yak is nearby! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - yak Aim: a yak (wandering, hasn't noticed you, 88% to hit) The flurry of cold hits the yak!! The yak is severely wounded. You hear an angry hiss. You hear a howl! A yak comes into view. x2 Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - yak Aim: a yak (severely wounded, 88% to hit) The gout of fire hits the yak!!! You kill the yak! Makhleb accepts your kill. You feel better. The gout of fire hits the yak!! The yak is severely wounded. The yak bellows! A yak comes into view. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - yak Aim: a yak (severely wounded, 88% to hit) The gout of fire hits the yak!! You kill the yak! Makhleb accepts your kill. You feel better. The gout of fire hits the yak!! The yak is heavily wounded. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - yak Aim: a yak (heavily wounded, 88% to hit) The gout of fire hits the yak!!! You kill the yak! Makhleb accepts your kill. You feel better. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - yak Aim: a yak (88% to hit) The flurry of cold hits the yak!!! You kill the yak! Makhleb accepts your kill. You feel better. You hear a croak. A komodo dragon comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - komodo dragon Aim: a komodo dragon (wandering, hasn't noticed you, 86% to hit) The bolt of devastation hits the komodo dragon!!! The komodo dragon's willpower is stripped away! You kill the komodo dragon! Makhleb accepts your kill. You feel better. A cane toad comes into view. A cane toad is nearby! A cane toad is nearby! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - cane toad Aim: a cane toad (83% to hit) The gout of fire hits the cane toad!!! You kill the cane toad! Makhleb accepts your kill. Unknown command. A wolf comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - wolf Aim: a wolf (wandering, hasn't noticed you, 68% to hit) The bolt of devastation hits the wolf!! The wolf's willpower is stripped away! You kill the wolf! Makhleb accepts your kill. You feel better. A rime drake comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - rime drake Aim: a rime drake (wandering, hasn't noticed you, 76% to hit) The gout of fire misses the rime drake. The rime drake hisses angrily. The rime drake breathes ice at you. The icy flash freeze hits you!! You are encased in ice. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - rime drake Aim: a rime drake (catching its breath, 76% to hit) The flurry of cold hits the rime drake! The rime drake resists. The rime drake is heavily wounded. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - rime drake Aim: a rime drake (heavily wounded, 76% to hit) The gout of fire hits the rime drake!!! You kill the rime drake! Makhleb accepts your kill. You feel better. The ice encasing you melts away. A komodo dragon comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - komodo dragon Aim: a komodo dragon (wandering, hasn't noticed you, 86% to hit) The gout of fire hits the komodo dragon!! The komodo dragon is severely wounded. The komodo dragon hisses angrily. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - komodo dragon Aim: a komodo dragon (severely wounded, 86% to hit) The wail of negative energy hits the komodo dragon!!! The komodo dragon is drained! You kill the komodo dragon! Makhleb accepts your kill. You feel better. Unknown command. You now have 631 gold pieces (gained 24). A wolf comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - wolf Aim: a wolf (wandering, hasn't noticed you, 68% to hit) The gout of fire hits the wolf! The wolf is severely wounded. The wolf howls! Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - wolf Aim: a wolf (severely wounded, 68% to hit) The gout of fire hits the wolf!! You kill the wolf! Makhleb accepts your kill. Unknown command. i - 8 scrolls of teleportation (gained 1) 2 blink frogs come into view. The blink frog croaks. The blink frog gives a loud, deep croak! A blink frog comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - blink frog Aim: a blink frog (66% to hit) The flurry of cold hits the blink frog!! The blink frog is almost dead. You hear a loud, deep croak! A blink frog comes into view. Something hits the fungus!! The fungus begins to die. The blink frog moves out of view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - blink frog Aim: a blink frog (almost dead, 66% to hit) The bolt of devastation hits the blink frog!! The blink frog's willpower is stripped away! You kill the blink frog! Makhleb accepts your kill. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - blink frog Aim: a blink frog (haloed, 74% to hit) The wail of negative energy misses the blink frog. The blink frog hits you but does no damage. A blink frog comes into view. Unknown command. You slice the blink frog!! The blink frog seems to slow down. You freeze the blink frog. The blink frog is severely wounded. The blink frog blinks! A nearby fungus withers and dies. The blink frog is no longer moving slowly. The blink frog blinks! The blink frog hits you. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - blink frog Aim: a blink frog (severely wounded, 66% to hit) The gout of fire hits the blink frog!! The blink frog is almost dead. The gout of fire hits the blink frog!!! You kill the blink frog! Makhleb accepts your kill. You feel better. The blink frog hits you. The blink frog blinks! Okay, then. You hit the blink frog. The blink frog seems to slow down. You freeze the blink frog. The blink frog is lightly wounded. You slash the blink frog! You freeze the blink frog. The blink frog is heavily wounded. The blink frog is no longer moving slowly. The blink frog closely misses you. x2 You slice the blink frog!! The blink frog seems to slow down. You freeze the blink frog! You kill the blink frog! Makhleb accepts your kill. You feel better. The blink frog hits you. You slash the blink frog! The blink frog seems to slow down. You freeze the blink frog. You kill the blink frog! Makhleb accepts your kill. You feel better. The blink frog misses you. The blink frog blinks! Found a potion of curing. The blink frog hits you. You slice the blink frog!! You freeze the blink frog. The blink frog is almost dead. The blink frog closely misses you. The blink frog barely misses you. You slash the blink frog! You freeze the blink frog. You kill the blink frog! Makhleb accepts your kill. You feel better. No target in view! You see here a blink frog corpse. A lindwurm comes into view. The lindwurm roars! A lindwurm is nearby! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - lindwurm Aim: a lindwurm (91% to hit) The wail of negative energy hits the lindwurm!!!! The lindwurm is drained! You kill the lindwurm! Makhleb accepts your kill. e - 9 potions of curing (gained 1) G - 2 scrolls of brand weapon (gained 1) e - 10 potions of curing (gained 1) Found a stone staircase leading up. A water moccasin comes into view. The water moccasin hisses angrily. You hear an angry hiss. A water moccasin comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - water moccasin Aim: a water moccasin (68% to hit) The bolt of devastation hits the water moccasin!!! The water moccasin's willpower is stripped away! You kill the water moccasin! Makhleb accepts your kill. You feel better. The bolt of devastation hits the water moccasin!!! The water moccasin's willpower is stripped away! You kill the water moccasin! Makhleb accepts your kill. Okay, then. You now have 649 gold pieces (gained 18). You open the gate. The necromancer shouts! The dire elephant trumpets! You hear a trumpeting! The dire elephant tramples the withered plant!!! The withered plant begins to crumble. The withered plant begins to die. The dire elephant trunk-slaps the withered plant! The dire elephant tramples the withered plant!! The dire elephant trunk-slaps the withered plant! An elephant and a death yak simulacrum come into view. Found 13 gold pieces and a short smoking staff. The dire elephant tramples the withered plant. The dire elephant trunk-slaps the withered plant! The dire elephant tramples the withered plant!! The dire elephant trunk-slaps the withered plant! There is an open gate here. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - death yak simulacrum Aim: a death yak simulacrum (dormant, 100% to hit) The bolt of devastation hits the elephant! The elephant's willpower is stripped away! The elephant is lightly wounded. The elephant trumpets! The bolt of devastation hits the death yak simulacrum!! The death yak simulacrum's willpower is stripped away! The death yak simulacrum is severely damaged. The dire elephant tramples the withered plant. The dire elephant trunk-slaps the withered plant. The dire elephant tramples the withered plant! The dire elephant completely misses the withered plant. The dire elephant tramples the withered plant!! The dire elephant trunk-slaps the withered plant. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - death yak simulacrum Aim: a death yak simulacrum (severely damaged, weak-willed, 100% to hit) The gout of fire hits the elephant!! The elephant is heavily wounded. The gout of fire hits the death yak simulacrum!!!! The death yak simulacrum melts! The death yak simulacrum vaporises! Makhleb accepts your kill. You feel better. You hear a sizzling sound! The dire elephant tramples the withered plant. The withered plant begins to crumble. The withered plant begins to die. The dire elephant trunk-slaps the withered plant. The dire elephant tramples the withered plant!! The dire elephant trunk-slaps the withered plant! The withered plant is destroyed! You slash the elephant! You freeze the elephant. The elephant is severely wounded. The elephant tramples you but does no damage. The elephant trunk-slaps you. An elephant simulacrum comes into view. You slash the elephant! You freeze the elephant. The elephant is almost dead. The elephant tramples you! You hold your ground! The elephant trunk-slaps you but does no damage. You hit the elephant. You freeze the elephant. The elephant is almost dead. The elephant tramples you. You stumble backwards! The dire elephant tramples the withered plant! The dire elephant trunk-slaps the withered plant! You slice the elephant!! You freeze the elephant. You kill the elephant! Makhleb accepts your kill. You feel better. The withered plant crumbles away. There is an open gate here. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - elephant simulacrum Aim: an elephant simulacrum (100% to hit) The flurry of cold hits the elephant simulacrum. The elephant simulacrum completely resists. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - elephant simulacrum Aim: an elephant simulacrum (100% to hit) The gout of fire hits the elephant simulacrum!!!! The elephant simulacrum melts! The elephant simulacrum vaporises! Makhleb accepts your kill. You hear a sizzling sound! You start resting. HP restored. A cane toad simulacrum comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - cane toad simulacrum Aim: a cane toad simulacrum (dormant, 100% to hit) The bolt of devastation hits the cane toad simulacrum!!! The cane toad simulacrum's willpower is stripped away! The cane toad simulacrum vaporises! Makhleb accepts your kill. You feel better. Okay, then. You start resting. HP restored. A necromancer comes into view. It is wielding a +0 dagger. Found 2 potions of curing and 24 gold pieces. The elephant trumpets! The necromancer shouts! The elephant trumpets! The necromancer hits the withered plant with a +0 dagger. The withered plant begins to crumble. The withered plant begins to die. A necromancer is nearby! Unknown command. A necromancer is nearby! Found a tin of tremorstones (2/2) and a runed flail. The necromancer hits the withered plant with a +0 dagger! The elephant tramples the withered plant! The elephant trunk-slaps the withered plant. The elephant tramples the withered plant. The elephant trunk-slaps the withered plant. The elephant tramples the withered plant!! The elephant trunk-slaps the withered plant. An elephant comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - elephant Aim: an elephant (asleep, 100% to hit) The wail of negative energy hits the withered plant. The withered plant completely resists. The wail of negative energy hits the elephant!!! The elephant is drained! The elephant is almost dead. The elephant trumpets! You hear a shout! An elephant comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - elephant, p - elephant Aim: an elephant (100% to hit) The bolt of devastation hits the elephant!! The elephant's willpower is stripped away! You kill the elephant! Makhleb accepts your kill. You feel better. The bolt of devastation hits the elephant!!! The elephant's willpower is stripped away! The elephant is severely wounded. Your Long Blades skill increases to level 9! Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - elephant Aim: an elephant (severely wounded, weak-willed, 100% to hit) The wail of negative energy hits the elephant!!! The elephant is drained! You kill the elephant! Makhleb accepts your kill. You feel better. You start resting. HP restored. A necromancer comes into view. It is wielding a +0 dagger. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - necromancer Aim: a necromancer, wielding a +0 dagger and wearing a +0 robe (wandering, hasn't noticed you, haloed, 80% to hit) The wail of negative energy hits the necromancer!!! The necromancer is drained! You kill the necromancer! Makhleb accepts your kill. You feel better. You open the door. A spectral dire elephant comes into view. Found a scroll of enchant armour. There is an open door here. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - spectral dire elephant Aim: a spectral dire elephant (haloed, 100% to hit) The wail of negative energy hits the withered plant. The withered plant completely resists. The wail of negative energy hits the spectral dire elephant. The spectral dire elephant completely resists. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - spectral dire elephant Aim: a spectral dire elephant (haloed, 100% to hit) The flurry of cold hits the withered plant!!! The withered plant begins to crumble. The withered plant begins to die. The withered plant is lightly damaged. The flurry of cold hits the spectral dire elephant! The spectral dire elephant resists. The spectral dire elephant is lightly damaged. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - spectral dire elephant Aim: a spectral dire elephant (lightly damaged, haloed, 100% to hit) The flurry of cold hits the withered plant!!! The withered plant is moderately damaged. The flurry of cold hits the spectral dire elephant. The spectral dire elephant resists. The spectral dire elephant is lightly damaged. The flurry of cold hits the withered plant!! The withered plant begins to crumble. The withered plant begins to die. The withered plant is lightly damaged. You slash the spectral dire elephant! You freeze the spectral dire elephant. The spectral dire elephant is moderately damaged. The spectral dire elephant tramples you!! You stumble backwards! You hit the spectral dire elephant but do no damage. The spectral dire elephant is moderately damaged. The spectral dire elephant barely misses you. The spectral dire elephant trunk-slaps you but does no damage. You hit the spectral dire elephant. You freeze the spectral dire elephant. The spectral dire elephant is moderately damaged. The withered plant crumbles away. x2 The spectral dire elephant barely misses you. x2 You slice the spectral dire elephant!! You freeze the spectral dire elephant. The spectral dire elephant is heavily damaged. The spectral dire elephant tramples you! You stumble backwards! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - spectral dire elephant Aim: a spectral dire elephant (heavily damaged, haloed, 100% to hit) The wail of negative energy hits the spectral dire elephant. The spectral dire elephant completely resists. The spectral dire elephant is heavily damaged. The wail of negative energy hits the withered plant. The withered plant completely resists. You consecrate your suffering and invoke the rites of blood! The blood arrow hits the spectral dire elephant!!! You destroy the spectral dire elephant! Makhleb accepts your kill. You feel better. The blood arrow hits the withered plant!!! The withered plant begins to crumble. The withered plant begins to die. The withered plant is moderately damaged. Your Dodging skill increases to level 3! Unknown command. The withered plant crumbles away. There is an open door, spattered with blood here. You start resting. HP restored. You are ready to perform a blood rite again. C - 3 scrolls of enchant armour (gained 1) You aren't carrying any armour which can be enchanted further. There is an open door, spattered with blood here. You open the door. There are monsters nearby! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - elephant Aim: an elephant (wandering, hasn't noticed you, 100% to hit) The wail of negative energy hits the elephant!!!! The elephant is drained! You kill the elephant! Makhleb accepts your kill. You feel better. The elephant trumpets! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - elephant Aim: an elephant (100% to hit) The gout of fire hits the elephant! The elephant is moderately wounded. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - elephant Aim: an elephant (lightly wounded, 100% to hit) The bolt of devastation hits the elephant!!! The elephant's willpower is stripped away! The elephant is almost dead. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - elephant Aim: an elephant (almost dead, weak-willed, haloed, 100% to hit) The gout of fire hits the elephant!! You kill the elephant! Makhleb accepts your kill. Unknown command. The necromancer gestures at you while chanting. You struggle to resist. There is an open door here. You see here an elephant corpse. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - necromancer Aim: a necromancer, wielding a +0 dagger and wearing a +0 robe (haloed, 80% to hit) The flurry of cold misses the necromancer. The necromancer hits you but does no damage. Unknown command. You slice the necromancer!! You freeze the necromancer. The necromancer is severely wounded. The necromancer gestures at you while chanting. Your body is wracked with pain! You consecrate your suffering and invoke the rites of blood! The blood arrow misses the necromancer. The blood arrow hits the necromancer!!! You kill the necromancer! Makhleb accepts your kill. You feel better. The blood arrow hits the withered plant!! The withered plant begins to crumble. The withered plant begins to die. The withered plant is lightly damaged. Things that are here: a +0 dagger; a +0 robe You start resting. The withered plant crumbles away. HP restored. You are ready to perform a blood rite again. Things that are here: a +0 dagger; a +0 robe You now have 673 gold pieces (gained 24). e - 12 potions of curing (gained 2) O - a tin of tremorstones (2/2) You see here a +3 flail of holy wrath. There is an open door here. The dire elephant trumpets! You hear a trumpeting! x2 There is an open gate, spattered with blood here. Found a flail. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - you Okay, then. A boulder beetle comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - boulder beetle Aim: a boulder beetle (asleep, haloed, 100% to hit) The flurry of cold hits the boulder beetle!! The boulder beetle is moderately wounded. You hear a bellow! A yak comes into view. A catoblepas comes into view. The yak bellows! You hear a bellow! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - boulder beetle Aim: a boulder beetle (moderately wounded, haloed, 100% to hit) The wail of negative energy hits the boulder beetle!!! The boulder beetle is drained! The boulder beetle is almost dead. The boulder beetle leaps! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - boulder beetle Aim: a boulder beetle (almost dead, lightly drained, 100% to hit) The bolt of devastation hits the boulder beetle!!! The boulder beetle's willpower is stripped away! You kill the boulder beetle! Makhleb accepts your kill. You feel better. A yak comes into view. The catoblepas roars fiercely, eyes lowered. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - catoblepas Aim: a catoblepas (100% to hit) The gout of fire hits the catoblepas!!! The catoblepas is heavily wounded. You hear a bellow! Unknown command. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - catoblepas Aim: a catoblepas (heavily wounded, 100% to hit) The gout of fire hits the catoblepas! The catoblepas is severely wounded. You hear a bellow! A yak comes into view. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - catoblepas Aim: a catoblepas (severely wounded, haloed, 100% to hit) The flurry of cold hits the catoblepas!! The catoblepas is almost dead. The yak bellows! The catoblepas breathes a plume of calcifying dust at you. The blast of calcifying dust hits you. A yak comes into view. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - catoblepas Aim: a catoblepas (calcifying dust, almost dead, haloed, 100% to hit) The wail of negative energy hits the yak!!! The yak is drained! You kill the yak! Makhleb accepts your kill. You feel better. The wail of negative energy hits the catoblepas!! The catoblepas is drained! You kill the catoblepas! Makhleb accepts your kill. You feel better. The wail of negative energy hits the yak!!! The yak is drained! You kill the yak! Makhleb accepts your kill. You feel better. You hear a bellow! A yak comes into view. Your Fighting skill increases to level 9! Unknown command. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - yak Aim: a yak (88% to hit) The bolt of devastation hits the yak!!! The yak's willpower is stripped away! You kill the yak! Makhleb accepts your kill. Unknown command. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - yak Aim: a yak (88% to hit) The wail of negative energy hits the yak!!!! The yak is drained! You kill the yak! Makhleb accepts your kill. You feel better. The wail of negative energy hits the yak!!!! The yak is drained! You kill the yak! Makhleb accepts your kill. You feel better. You start resting. HP restored. q - 2 potions of mutation (gained 1) You now have 692 gold pieces (gained 19). Things that are here: an elephant skeleton; an elephant skeleton You see here a wolf skeleton. A komodo dragon comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - komodo dragon Aim: a komodo dragon (wandering, hasn't noticed you, 86% to hit) The bolt of devastation hits the komodo dragon!! The komodo dragon's willpower is stripped away! The komodo dragon is severely wounded. The komodo dragon hisses angrily. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - komodo dragon Aim: a komodo dragon (severely wounded, weak-willed, 86% to hit) The gout of fire hits the komodo dragon!! You kill the komodo dragon! Makhleb accepts your kill. Unknown command. A komodo dragon comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - komodo dragon Aim: a komodo dragon (water, wandering, hasn't noticed you, 86% to hit) The wail of negative energy hits the komodo dragon!!! The komodo dragon is drained! You kill the komodo dragon! Makhleb accepts your kill. You feel better. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - you That would be overly suicidal. Okay, then. You now have 711 gold pieces (gained 19). P - a scroll of identify A water moccasin comes into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - water moccasin Aim: a water moccasin (wandering, hasn't noticed you, 68% to hit) The bolt of devastation hits the water moccasin!!! The water moccasin's willpower is stripped away! You kill the water moccasin! Makhleb accepts your kill. You feel better. As you read the scroll of identify, it crumbles to dust. a - 5 potions of heal wounds A black mamba comes into view. A black mamba is nearby! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - black mamba Aim: a black mamba (wandering, hasn't noticed you, 68% to hit) The bolt of devastation misses the black mamba. The black mamba hisses angrily. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - black mamba Aim: a black mamba (68% to hit) The wail of negative energy hits the black mamba!!! The black mamba is drained! You kill the black mamba! Makhleb accepts your kill. You feel better. The necromancer shouts! You hear a trumpeting! The dire elephant trumpets! There is an open gate, spattered with blood here. You open the large door. An elephant skeleton and a dire elephant simulacrum come into view. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - dire elephant simulacrum Aim: a dire elephant simulacrum (dormant, 100% to hit) The flurry of cold hits the elephant skeleton. The elephant skeleton resists. The elephant skeleton is lightly damaged. The flurry of cold hits the dire elephant simulacrum. The dire elephant simulacrum completely resists. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - dire elephant simulacrum Aim: a dire elephant simulacrum (100% to hit) The gout of fire hits the elephant skeleton!! The elephant skeleton is heavily damaged. The gout of fire hits the dire elephant simulacrum!! The dire elephant simulacrum melts! The dire elephant simulacrum is severely damaged. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - dire elephant simulacrum Aim: a dire elephant simulacrum (severely damaged, 100% to hit) The gout of fire hits the elephant skeleton!! The elephant skeleton is almost destroyed. The gout of fire hits the dire elephant simulacrum!!! The dire elephant simulacrum melts! The dire elephant simulacrum vaporises! Makhleb accepts your kill. You feel better. You hear a sizzling sound! Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - elephant skeleton Aim: an elephant skeleton (almost destroyed, haloed, 100% to hit) The flurry of cold hits the elephant skeleton! The elephant skeleton resists. You destroy the elephant skeleton! Makhleb accepts your kill. You start resting. HP restored. There is a large open door here. An obsidian statue comes into view. The obsidian statue's eyes glow briefly. The obsidian statue attempts to bespell you! You are mesmerised by the obsidian statue! Marking area around an obsidian statue as unsafe for travelling. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f - obsidian statue Aim: an obsidian statue (mesmerising, 100% to hit) The wail of negative energy hits the withered plant. The withered plant completely resists. The wail of negative energy hits the obsidian statue. The obsidian statue completely resists. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - obsidian statue Aim: an obsidian statue (mesmerising, 100% to hit) The gout of fire hits the withered plant!! The withered plant begins to crumble. The withered plant begins to die. The withered plant is lightly damaged. The gout of fire hits the obsidian statue. The obsidian statue resists. The obsidian statue is lightly damaged. The tree burns like a torch! Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - obsidian statue Aim: an obsidian statue (lightly damaged, mesmerising, 100% to hit) The bolt of devastation hits the withered plant!!! The withered plant is moderately damaged. The bolt of devastation hits the obsidian statue!!! The obsidian statue is severely damaged. The obsidian statue's eyes glow briefly. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - obsidian statue Aim: an obsidian statue (severely damaged, mesmerising, 100% to hit) The wail of negative energy hits the withered plant. The withered plant completely resists. The withered plant is moderately damaged. The wail of negative energy hits the obsidian statue. The obsidian statue completely resists. The obsidian statue is severely damaged. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - obsidian statue Aim: an obsidian statue (severely damaged, mesmerising, 100% to hit) The bolt of devastation hits the withered plant!! The withered plant is heavily damaged. The bolt of devastation hits the obsidian statue! The obsidian statue is almost destroyed. The withered plant crumbles away. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - obsidian statue Aim: an obsidian statue (almost destroyed, mesmerising, 100% to hit) The wail of negative energy hits the obsidian statue. The obsidian statue completely resists. The obsidian statue is almost destroyed. Unknown command. Unknown command. Aiming: Unleash Destruction (0% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - obsidian statue Aim: an obsidian statue (almost destroyed, mesmerising, 100% to hit) The flurry of cold hits the ice devil. The ice devil completely resists. The flurry of cold hits the obsidian statue! The obsidian statue resists. The obsidian statue is almost destroyed. >>>>>>>>>>>>>>>>>>>>>> Version history: Game started: 0.33-a0-40-g6fe00ff5d4 Game state: mouse_enabled: 0, waiting_for_command: 0, terminal_resized: 0 io_inited: 1, need_save: 1, saving_game: 0, updating_scores: 0: seen_hups: 0, map_stat_gen: 0, type: 1, arena_suspended: 0 prev_cmd = CMD_USE_ABILITY repeat_cmd = CMD_NO_CMD Player: {{{{{{{{{{{ Name: [seohee] Species: Demonspawn Job: Monk HP: 57/108; mods: 0/0 MP: 31/31; mod: 0 Stats: 12 (12) 11 (11) 24 (24) Position: (76, 54), god: Makhleb (8), turn_is_over: 1, banished: 0 Standing on/in/over feature: floor Skills (mode: auto) Name | can_currently_train | train | training | level | points | progress Fighting | X | 1 | 36 | 9 | 2345 | 95/525 Short Blades | X | 0 | 0 | 0 | 0 | 0/59 Long Blades | X | 1 | 47 | 9 | 3063 | 388/625 Axes | X | 0 | 0 | 0 | 0 | 0/59 Maces & Flails | X | 0 | 0 | 0 | 0 | 0/59 Polearms | X | 0 | 0 | 0 | 0 | 0/59 Staves | X | 0 | 0 | 0 | 0 | 0/59 Ranged Weapons | X | 0 | 0 | 0 | 0 | 0/59 Throwing | X | 0 | 0 | 0 | 0 | 0/59 Armour | X | 0 | 0 | 0 | 0 | 0/59 Dodging | X | 1 | 17 | 3 | 468 | 112/238 Stealth | X | 0 | 0 | 0 | 0 | 0/50 Shields | X | 0 | 0 | 0 | 0 | 0/59 Unarmed Combat | X | 0 | 0 | 0 | 0 | 0/59 Spellcasting | X | 0 | 0 | 0 | 0 | 0/59 Conjurations | X | 0 | 0 | 0 | 0 | 0/50 Hexes | X | 0 | 0 | 0 | 0 | 0/50 Summonings | X | 0 | 0 | 0 | 0 | 0/50 Necromancy | X | 0 | 0 | 0 | 0 | 0/42 Translocations | X | 0 | 0 | 0 | 0 | 0/59 Fire Magic | X | 0 | 0 | 0 | 0 | 0/59 Ice Magic | X | 0 | 0 | 0 | 0 | 0/59 Air Magic | X | 0 | 0 | 0 | 0 | 0/59 Earth Magic | X | 0 | 0 | 0 | 0 | 0/59 Alchemy | X | 0 | 0 | 0 | 0 | 0/50 Invocations | X | 0 | 0 | 27 | 14477 | 14/0 Evocations | X | 0 | 0 | 0 | 0 | 0/50 Shapeshifting | X | 0 | 0 | 0 | 0 | 0/70 Spell bugs: Durations: Attributes: #12: 962 #13: 251 #23: 5356 #24: 837547941 #49: 1139 Mutations: claws: 3 (innate) thin skeletal structure: 2 (innate) powered by pain: 2 (innate) augmentation: 1 (innate) demonic magic: 1 (innate) Tartarus destruction: 1 (innate) Mark of the Celebrant: 1 (innate) Inventory bugs: Equipment: eq slot #0, inv slot #9: +7 long sword of freezing eq slot #1, inv slot #18: +2 cloak eq slot #5, inv slot #3: orb of light eq slot #6, inv slot #34: +3 troll leather armour {Snorg} eq slot #7, inv slot #6: +4 ring of slaying eq slot #8, inv slot #24: ring of wizardry eq slot #9, inv slot #12: amulet of regeneration }}}}}}}}}}} Webtiles message buffer: {"msg":"player" Webtiles JSON stack: start: 0 end: 15 type: } Screenshot: ......P##.## ### .......♣#..# ..# .......♣##.# .P## .......♣ #.#####.P# ......♣# #P...'...# ......# ###..'...## .....♣# +..ß#....# .....♣ #####P...# .....# ##@P.# ..†..# #4P## .....# ...♣ .....# ♣..♣♣ .....# ..♣♣ .....♣# I.. ......## §.# .......## ### ##P#P...# clua stack: dlua stack: Lua persistent data: <<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>> Lua marker contents: <<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>> ASSERT((duration[DUR_MESMERISED] > 0) == !beholders.empty()) in 'behold.cc' at line 66 failed. Recursive crash.