Crash caused by signal #15: Terminated Version: Dungeon Crawl Stone Soup 0.25-a0-294-gea9b1ad378 Platform: unix Bits: 64 Game mode: normal Tiles: online Seed: 12887004378196890029, deterministic pregen: 1 Version history: Game started: 0.25-a0-292-gaa31f046c4 0.25-a0-294-gea9b1ad378 Command line: /usr/games/crawl-git-ea9b1ad378 -name Luthien -rc /dgldir/rcfiles/crawl-git/Luthien.rc -macro /dgldir/rcfiles/crawl-git/Luthien.macro -morgue /dgldir/morgue/Luthien/ -webtiles-socket /crawl-master/webserver/sockets/Luthien:2019-12-16.22:14:17.sock -await-connection RC options: restart_after_game = false Crash caused by signal #15: Terminated Obtained 30 stack frames. /usr/games/crawl-git-ea9b1ad378(_Z17write_stack_traceP8_IO_FILE+0x3b) [0x558b1e3b479b]: write_stack_trace(_IO_FILE*) /usr/games/crawl-git-ea9b1ad378(_Z13do_crash_dumpv+0x47a) [0x558b1e3bcb7a]: do_crash_dump() /usr/games/crawl-git-ea9b1ad378(_Z20crash_signal_handleri+0xae) [0x558b1e3b4b0e]: crash_signal_handler(int) /lib/x86_64-linux-gnu/libc.so.6(+0x3ef20) [0x7f5b09d0ef20]: /lib/x86_64-linux-gnu/libc.so.6(nanosleep+0x14) [0x7f5b09db49a4]: /lib/x86_64-linux-gnu/libc.so.6(usleep+0x57) [0x7f5b09de7877]: /usr/games/crawl-git-ea9b1ad378(+0x32f107) [0x558b1e39c107]: /usr/games/crawl-git-ea9b1ad378(+0x99a4c3) [0x558b1ea074c3]: /usr/games/crawl-git-ea9b1ad378(+0x9a446d) [0x558b1ea1146d]: /usr/games/crawl-git-ea9b1ad378(+0x99acbd) [0x558b1ea07cbd]: /usr/games/crawl-git-ea9b1ad378(+0x9a4070) [0x558b1ea11070]: /usr/games/crawl-git-ea9b1ad378(+0x999fde) [0x558b1ea06fde]: /usr/games/crawl-git-ea9b1ad378(lua_resume+0x5f) [0x558b1ea07d4f]: /usr/games/crawl-git-ea9b1ad378(+0x9a71cc) [0x558b1ea141cc]: /usr/games/crawl-git-ea9b1ad378(+0x9a7441) [0x558b1ea14441]: /usr/games/crawl-git-ea9b1ad378(+0x99a810) [0x558b1ea07810]: /usr/games/crawl-git-ea9b1ad378(+0x9a4202) [0x558b1ea11202]: /usr/games/crawl-git-ea9b1ad378(+0x99acbd) [0x558b1ea07cbd]: /usr/games/crawl-git-ea9b1ad378(+0x999fde) [0x558b1ea06fde]: /usr/games/crawl-git-ea9b1ad378(+0x99ae2b) [0x558b1ea07e2b]: /usr/games/crawl-git-ea9b1ad378(lua_pcall+0x58) [0x558b1ea05548]: /usr/games/crawl-git-ea9b1ad378(_ZN4CLua9calltopfnEP9lua_StatePKcP13__va_list_tagiPA1_S4_+0x57) [0x558b1e39f7d7]: CLua::calltopfn(lua_State*, char const*, __va_list_tag*, int, __va_list_tag (*) [1]) /usr/games/crawl-git-ea9b1ad378(_ZN4CLua14callmbooleanfnEPKcS1_P13__va_list_tag+0x11c) [0x558b1e3a044c]: CLua::callmbooleanfn(char const*, char const*, __va_list_tag*) /usr/games/crawl-git-ea9b1ad378(_ZN4CLua13callbooleanfnEbPKcS1_z+0x93) [0x558b1e3a0633]: CLua::callbooleanfn(bool, char const*, char const*, ...) /usr/games/crawl-git-ea9b1ad378(_Z9run_macroPKc+0x6b) [0x558b1e3d5b5b]: run_macro(char const*) /usr/games/crawl-git-ea9b1ad378(+0x9189fb) [0x558b1e9859fb]: /usr/games/crawl-git-ea9b1ad378(+0x918f85) [0x558b1e985f85]: /usr/games/crawl-git-ea9b1ad378(main+0x323) [0x558b1e316133]: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) [0x7f5b09cf1b97]: /usr/games/crawl-git-ea9b1ad378(_start+0x2a) [0x558b1e31685a]: gdb not executable. Compilation info: <<<<<<<<<<< Compiled with GCC 7.4.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. -Irltiles -isystem contrib/install/x86_64-linux-gnu/include -g -DWIZARD -DASSERTS -DREGEX_PCRE -DCLUA_BINDINGS -DDGAMELAUNCH -DSAVE_DIR_PATH="/crawl-master/crawl-git-ea9b1ad378/saves" -DSHARED_DIR_PATH="/crawl-master/crawl-git/saves" -DDATA_DIR_PATH="/crawl-master/crawl-git-ea9b1ad378/data/" -DWEB_DIR_PATH="/crawl-master/crawl-git-ea9b1ad378/data/web/" -D_GNU_SOURCE -D_DEFAULT_SOURCE -isystem /usr/include/ncursesw LDFLAGS: -rdynamic -fuse-ld=gold -O2 >>>>>>>>>>> Place info: branch = 0, depth = 12 Level id: D:12 Level build method = , level layout type = rooms, absdepth0 = 11 Level vaults: layout_basic Markers: <<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>> Messages: <<<<<<<<<<<<<<<<<<<<<< Lua error: /dgldir/rcfiles/crawl-git/Luthien.rc:405: 'end' expected (to close 'if' at line 2) near 'return' Welcome back, Luthien the Deep Elf Conjurer. Vehumet says: Let it end in hellfire! Press ? for a list of commands and other information. Ready() Save game and exit? Welcome back, Luthien the Deep Elf Conjurer. Vehumet says: Let it end in hellfire! Press ? for a list of commands and other information. Ready() Unknown command. Ready() Unknown command. Ready() Unknown command. Ready() Unknown command. Ready() Unknown command. Ready() Enabled persistent across stairs automagic Ready() Enabled all automagic; Ready() Casting Iskenderun's Battlesphere. Lua error: attempt to yield across metamethod/C-call boundary Cast which spell? (? or * to list) You miscast Iskenderun's Battlesphere. You are very lightly contaminated with residual magic. Ready() Not allow general x2; Max_cost_auto_spell()=0 (should_channel_mp and you_have_staff_of_energy and no_food_issues) = false Should_channel_mp=false; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=false; (max_mp>mp)=true; DEBUG: return false - no rest Rested 0 time(s); Ready() Ready() Ready() Save game and exit? [Y]es or [N]o only, please. Save game and exit? Lua error: /dgldir/rcfiles/crawl-git/Luthien.rc:615: ')' expected (to close '(' at line 9) near 'return' Welcome back, Luthien the Deep Elf Conjurer. Vehumet says: Let it end in hellfire! Press ? for a list of commands and other information. Ready() Unknown command. Ready() Ready() Save game and exit? Welcome back, Luthien the Deep Elf Conjurer. Vehumet says: Let it end in hellfire! Press ? for a list of commands and other information. Ready() Unknown command. Ready() Unknown command. Ready() Unknown command. Ready() Unknown command. Ready() Enabled persistent across stairs automagic Ready() Enabled all automagic; Ready() Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. Nothing appears to happen. Ready() ->auto_rest; Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. Lua error: attempt to yield across metamethod/C-call boundary Nothing appears to happen. Ready() ->auto_rest; Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. Lua error: attempt to yield across metamethod/C-call boundary Nothing appears to happen. Ready() ->auto_rest; Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. Lua error: attempt to yield across metamethod/C-call boundary Nothing appears to happen. A centaur warrior comes into view. Ready() ->auto_rest; Rested 0 time(s) Lua error: attempt to yield across metamethod/C-call boundary A centaur warrior is nearby! Ready() Ready() Unknown command. Ready() Cast which spell? (? or * to list) You conjure a globe of magical energy. The centaur warrior shouts! The centaur warrior wields a +0 longbow. The centaur warrior shoots an arrow. You block the arrow. Ready() Casting: Iskenderun's Battlesphere (safe; 3% risk of failure) Confirm with . or Enter, or press ? or * to list all spells. Aiming: Magic Dart (safe; 1% risk of failure) Press: ? - help, Shift-Dir - straight line, f - centaur warrior Aim: a centaur warrior, wielding a +0 longbow and quivering 22 arrows The magic dart hits the centaur warrior. The centaur warrior is lightly wounded. Your battlesphere fires! The barrage of energy hits the centaur warrior! The centaur warrior is moderately wounded. The centaur warrior shoots an arrow. The arrow hits your battlesphere! Ready() Casting: Magic Dart (safe; 1% risk of failure) Confirm with . or Enter, or press ? or * to list all spells. Aiming: Magic Dart (safe; 1% risk of failure) Press: ? - help, Shift-Dir - straight line, f/p - centaur warrior Aim: a centaur warrior, wielding a +0 longbow and quivering 21 arrows (moderately wounded) The magic dart hits the centaur warrior. The centaur warrior is moderately wounded. Your battlesphere fires! The barrage of energy hits the centaur warrior. The centaur warrior is moderately wounded. An ogre comes into view. It is wielding a +0 giant club. The centaur warrior shoots an arrow. The arrow hits your battlesphere! Your battlesphere is destroyed! Ready() Unknown command. Ready() Casting: Magic Dart (safe; 1% risk of failure) Confirm with . or Enter, or press ? or * to list all spells. Aiming: Fulminant Prism (safe; 1% risk of failure) Press: ? - help, Dir - move target cursor, p - centaur warrior You conjure a prism of explosive energy! A fulminant prism comes into view. The centaur warrior shoots an arrow. The arrow hits your fulminant prism!! Your fulminant prism detonates feebly. Ready() Casting: Fulminant Prism (safe; 1% risk of failure) Confirm with . or Enter, or press ? or * to list all spells. Aiming: Fulminant Prism (safe; 1% risk of failure) Press: ? - help, Dir - move target cursor You conjure a prism of explosive energy! A fulminant prism comes into view. The centaur warrior shoots an arrow. The arrow completely misses you. The ogre hits your fulminant prism with a +0 giant club!! Your fulminant prism detonates feebly. Ready() Casting: Fulminant Prism (safe; 1% risk of failure) Confirm with . or Enter, or press ? or * to list all spells. Aiming: Fulminant Prism (safe; 1% risk of failure) Press: ? - help, Dir - move target cursor You conjure a prism of explosive energy! A fulminant prism comes into view. The centaur warrior shoots an arrow. The arrow hits your fulminant prism! Ready() The centaur warrior shoots an arrow. The arrow closely misses you. Your fulminant prism crackles loudly. Ready() Unknown command. Ready() Unknown command. Ready() Unknown command. Ready() Casting: Fulminant Prism (safe; 1% risk of failure) Confirm with . or Enter, or press ? or * to list all spells. Aiming: Fulminant Prism (safe; 1% risk of failure) Press: ? - help, Dir - move target cursor You miscast Fulminant Prism. Nothing appears to happen. The centaur warrior shoots an arrow. You block the arrow. Your fulminant prism explodes! The blast of energy engulfs the centaur warrior!!! You kill the centaur warrior! Vehumet accepts your kill. You feel your power returning. The blast of energy engulfs the ogre!! The ogre is severely wounded. You hear a howl! Ready() Casting: Fulminant Prism (safe; 1% risk of failure) Confirm with . or Enter, or press ? or * to list all spells. Aiming: Searing Ray (safe; 1% risk of failure) Press: ? - help, Shift-Dir - straight line, f - ogre Aim: an ogre, wielding a +0 giant club (severely wounded) The searing ray hits the ogre! You kill the ogre! Vehumet accepts your kill. (Press . to maintain the ray.) Ready() There is a stone staircase leading up here. Ready() You climb upwards. There is a stone staircase leading down here. Ready() Save game and exit? Welcome back, Luthien the Deep Elf Conjurer. Vehumet says: Let it end in hellfire! Press ? for a list of commands and other information. Ready() Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true (should_channel_mp and you_have_staff_of_energy and no_food_issues) = true Should_channel_mp=true; You_have_staff_of_energy=true; No_food_issues=true Need_to_recover=true; (max_mp>mp)=true Autochanneling using staff of energy. DEBUG: return true - something done Not allow general x2; Max_cost_auto_spell()=0; Not allow general Should_rest_magic_after_cast(mp, mp, max_cost_auto_spell() )=true >>>>>>>>>>>>>>>>>>>>>> Version history: Game started: 0.25-a0-292-gaa31f046c4 0.25-a0-294-gea9b1ad378 Game state: mouse_enabled: 0, waiting_for_command: 1, terminal_resized: 0 io_inited: 1, need_save: 1, saving_game: 0, updating_scores: 0: seen_hups: 1, map_stat_gen: 0, type: 1, arena_suspended: 0 prev_cmd = CMD_NO_CMD repeat_cmd = CMD_NO_CMD Player: {{{{{{{{{{{ Name: [Luthien] Species: Deep Elf Job: Conjurer HP: 79/79; mods: 0/0 MP: 8/32; mod: 0 Stats: 5 (5) 26 (26) 15 (15) Position: (23, 21), god: Vehumet (6), turn_is_over: 0, banished: 0 Standing on/in/over feature: stone staircase leading down Skills (mode: manual) Name | can_currently_train | train | training | level | points | progress Fighting | X | 1 | 33 | 8 | 2997 | 452/636 Short Blades | | 0 | 0 | 0 | 0 | 0/50 Long Blades | | 0 | 0 | 0 | 0 | 0/59 Axes | | 0 | 0 | 0 | 0 | 0/70 Maces & Flails | | 0 | 0 | 0 | 0 | 0/84 Polearms | X | 0 | 0 | 0 | 0 | 0/84 Staves | X | 0 | 0 | 0 | 0 | 0/50 Slings | | 0 | 0 | 0 | 0 | 0/70 Bows | | 0 | 0 | 0 | 0 | 0/42 Crossbows | | 0 | 0 | 0 | 0 | 0/59 Throwing | X | 0 | 0 | 0 | 0 | 0/50 Armour | X | 0 | 0 | 0 | 0 | 0/70 Dodging | X | 0 | 0 | 9 | 1590 | 0/389 Stealth | X | 0 | 0 | 10 | 1696 | 32/387 Shields | X | 1 | 33 | 2 | 356 | 144/212 Unarmed Combat | X | 0 | 0 | 0 | 0 | 0/70 Spellcasting | X | 0 | 0 | 13 | 3183 | 181/565 Conjurations | X | 0 | 0 | 14 | 5059 | 14/883 Hexes | X | 0 | 0 | 8 | 1070 | 0/267 Charms | X | 0 | 0 | 6 | 534 | 9/175 Summonings | | 0 | 0 | 0 | 0 | 0/42 Necromancy | | 0 | 0 | 0 | 0 | 0/35 Translocations | X | 0 | 0 | 4 | 420 | 0/210 Transmutations | | 0 | 0 | 0 | 0 | 0/42 Fire Magic | | 0 | 0 | 0 | 0 | 0/42 Ice Magic | | 0 | 0 | 0 | 0 | 0/42 Air Magic | | 0 | 0 | 0 | 0 | 0/50 Earth Magic | | 0 | 0 | 0 | 0 | 0/42 Poison Magic | | 0 | 0 | 0 | 0 | 0/42 Invocations | | 0 | 0 | 0 | 0 | 0/42 Evocations | X | 1 | 33 | 3 | 356 | 104/168 Spell bugs: Durations: #114: 11 Attributes: #12: 1171 #13: 817 #23: 10576 #24: -2022177656 #27: 54301 #49: 1955 #59: 1 Mutations: Inventory bugs: Equipment: eq slot #0, inv slot #0: staff of energy {@w1} eq slot #2, inv slot #43: +2 helmet of see invisible eq slot #3, inv slot #3: +0 pair of gloves eq slot #4, inv slot #10: +0 pair of boots eq slot #5, inv slot #14: +0 large shield eq slot #6, inv slot #41: +2 robe of cold resistance eq slot #7, inv slot #12: ring of protection from fire eq slot #8, inv slot #25: ring of wizardry }}}}}}}}}}} Webtiles message buffer: Webtiles JSON stack: Screenshot: ######....................####.#. #.......####..............## #.#. #.......# ##.#####........# #.#. #.......# #.# #........# #.## #.......# #.# #........# #.# #.......# #.# #........# #.# #.......# #.#####........# #.# #.......#####............#####.## #.......#.....##@................ ######.##.....##.##....#######.## #.##.....##.#####.........## #.........#................. ####......#.#####.#...#.<... #....###.#.#.....#.#....#.# #....# #.#.#.##..#......... #....# #.#.#.#............# #....# #.#.#.#.#....)...... clua stack: [C], function resume, line -1 macro.lua, function (null), line 25 (tail call), function , line -1 dlua stack: Lua persistent data: <<<<<<<<<<<<<<<<<<<<<< ice_cave_hard: false bailey_type: bailey_polearm >>>>>>>>>>>>>>>>>>>>>> Lua marker contents: <<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>>