Crash caused by signal #11: Segmentation fault Version: Dungeon Crawl Stone Soup 0.35-a0-345-gb3cffbe06b Platform: unix Bits: 64 Game mode: tutorial Tiles: online Seed: 9171115087142182499, deterministic pregen: 1 Command line: /usr/games/crawl-git-b3cffbe06b -name aiden -rc /dgldir/rcfiles/crawl-git/aiden.rc -macro /dgldir/rcfiles/crawl-git/aiden.macro -morgue /dgldir/morgue/aiden/ -tutorial -webtiles-socket /crawl-master/webserver/sockets/aiden:2026-05-07.02:14:15.sock -await-connection RC options: restart_after_game = false Crash caused by signal #11: Segmentation fault Obtained 24 stack frames. /usr/games/crawl-git-b3cffbe06b(_Z17write_stack_traceP8_IO_FILE+0x3e) [0x5fe9f63b9a8e]: write_stack_trace(_IO_FILE*) /usr/games/crawl-git-b3cffbe06b(_Z13do_crash_dumpv+0x43a) [0x5fe9f63c7cea]: do_crash_dump() /usr/games/crawl-git-b3cffbe06b(_Z20crash_signal_handleri+0x1fa) [0x5fe9f63b9f6a]: crash_signal_handler(int) /lib/x86_64-linux-gnu/libc.so.6(+0x45330) [0x7ba181ef9330]: /lib/x86_64-linux-gnu/libc.so.6(isspace+0x12) [0x7ba181eef6a2]: /usr/games/crawl-git-b3cffbe06b(_Z18prompt_invent_itemPKc9menu_typei15operation_types13enum_bitfieldI14invprompt_flagLin1EEc+0x2a0) [0x5fe9f65d4a20]: prompt_invent_item(char const*, menu_type, int, operation_types, enum_bitfield, char) /usr/games/crawl-git-b3cffbe06b(_Z11adjust_itemiP8item_def+0x79) [0x5fe9f6327949]: adjust_item(int, item_def*) /usr/games/crawl-git-b3cffbe06b(_Z13describe_itemR8item_defSt8functionIFvRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEb+0x311) [0x5fe9f640f871]: describe_item(item_def&, std::function, std::allocator >&)>, bool) /usr/games/crawl-git-b3cffbe06b(_ZN7InvMenu13examine_indexEi+0x108) [0x5fe9f65d2a38]: InvMenu::examine_index(int) /usr/games/crawl-git-b3cffbe06b(_ZN4Menu15process_commandE12command_type+0x6e8) [0x5fe9f671fca8]: Menu::process_command(command_type) /usr/games/crawl-git-b3cffbe06b(+0x85808b) [0x5fe9f671408b]: /usr/games/crawl-git-b3cffbe06b(_ZN2ui6Widget8on_eventERKNS_5EventE+0x74) [0x5fe9f6ac4cd4]: ui::Widget::on_event(ui::Event const&) /usr/games/crawl-git-b3cffbe06b(_ZN2ui6UIRoot13deliver_eventERNS_5EventE+0x20a) [0x5fe9f6ac899a]: ui::UIRoot::deliver_event(ui::Event&) /usr/games/crawl-git-b3cffbe06b(_ZN2ui6UIRoot8on_eventER8wm_event+0x77) [0x5fe9f6ac8cc7]: ui::UIRoot::on_event(wm_event&) /usr/games/crawl-git-b3cffbe06b(_ZN2ui11pump_eventsEi+0x83) [0x5fe9f6acdf53]: ui::pump_events(int) /usr/games/crawl-git-b3cffbe06b(_ZN4Menu7do_menuEv+0x43a) [0x5fe9f671911a]: Menu::do_menu() /usr/games/crawl-git-b3cffbe06b(_ZN4Menu4showEb+0xa8) [0x5fe9f6720528]: Menu::show(bool) /usr/games/crawl-git-b3cffbe06b(_Z17display_inventoryv+0xec) [0x5fe9f65d3b0c]: display_inventory() /usr/games/crawl-git-b3cffbe06b(+0xccf642) [0x5fe9f6b8b642]: /usr/games/crawl-git-b3cffbe06b(+0xcd00b5) [0x5fe9f6b8c0b5]: /usr/games/crawl-git-b3cffbe06b(main+0x1f7) [0x5fe9f62eb8a7]: /lib/x86_64-linux-gnu/libc.so.6(+0x2a1ca) [0x7ba181ede1ca]: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x8b) [0x7ba181ede28b]: /usr/games/crawl-git-b3cffbe06b(_start+0x25) [0x5fe9f62ec395]: 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". 0x00007ba181fc47d7 in __GI___wait4 (pid=2491528, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30 #0 0x00007ba181fc47d7 in __GI___wait4 (pid=2491528, stat_loc=0x0, options=0, usage=0x0) at ../sysdeps/unix/sysv/linux/wait4.c:30 sc_ret = -512 sc_ret = #1 0x00005fe9f63ba13c in call_gdb (file=0x7ba1820b84e0 <_IO_2_1_stderr_>) at crash.cc:434 gdb = attach_cmd = "attach 2419391\000\000\000\000\000" #2 0x00005fe9f63c7d08 in do_crash_dump () at dbg-asrt.cc:682 t = 1778120779 dir = "/dgldir/morgue/aiden/" name = "/dgldir/morgue/aiden/crash-aiden-20260507-022619.txt", '\000' signal_info = "Crash caused by signal #11: Segmentation fault" cause_msg = "Crash caused by signal #11: Segmentation fault" file = 0x7ba1820b84e0 <_IO_2_1_stderr_> #3 0x00005fe9f63b9f6a in crash_signal_handler (sig_num=11) at crash.cc:195 No locals. #4 No locals. #5 0x00007ba181eef6a2 in isspace (c=-1006) at ./ctype/ctype.c:34 Compilation info: <<<<<<<<<<< Compiled with GCC 13.3.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 contrib/install/x86_64-linux-gnu/include -g -DWIZARD -DASSERTS -DREGEX_PCRE -DCLUA_BINDINGS -DDGAMELAUNCH -DSAVE_DIR_PATH="/crawl-master/crawl-git-b3cffbe06b/saves" -DSHARED_DIR_PATH="/crawl-master/crawl-git/saves" -DDATA_DIR_PATH="/crawl-master/crawl-git-b3cffbe06b/data/" -DWEB_DIR_PATH="/crawl-master/crawl-git-b3cffbe06b/data/web/" -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 LDFLAGS: -rdynamic -fuse-ld=gold -O2 >>>>>>>>>>> Place info: branch = 0, depth = 1 Level id: D:1 Level build method = random_map_for_place, level layout type = encompass, absdepth0 = 0 Level vaults: tutorial_lesson4 Markers: <<<<<<<<<<<<<<<<<<<<<< Marker #6, type 0 at (37, 23): feature (stone_stairs_up_i) >>>>>>>>>>>>>>>>>>>>>> Messages: <<<<<<<<<<<<<<<<<<<<<< In this lesson you're going to learn how to memorise and cast spells. You can reread all messages at any time with [Ctrl-P]. Also, press [Space] to clear the --more-- prompts. Found a staircase leading out of the dungeon. Unknown command. There is a staircase leading out of the dungeon here. There is a staircase leading out of the dungeon here. Okay, then. Okay, then. Unknown command. There are no items here. Found aiden's Tome of Introductory Spellcasting. You can memorise a spell from your spell library with [M]. At experience level 1, only level 1 spells are available to you. This will change as you gain experience. To find new spells, find and pick up spellbooks, and the spells will be added to your library. You pick up aiden's Tome of Introductory Spellcasting and begin reading... You add the spells Magic Dart and Mephitic Cloud to your library. You can memorise a spell from your spell library with [M]. At experience level 1, only level 1 spells are available to you. This will change as you gain experience. To find new spells, find and pick up spellbooks, and the spells will be added to your library. Unknown command. To cast a spell, first memorise it with [M]. You can then cast it with [z]. Press [z], then press [?] to get a list of your spells. You don't know any spells. Spells, like ammo, are shown in the quiver slot, so you can use [Q] to ready a spell in the quiver. Use [f] or [shift-tab] to fire the currently quivered spell. Once you are out of magic points, retreat and rest to regain them with [5]. Found a glowing coral ring. Nothing quivered! You aren't carrying any potions. You have nothing to quiver. Nothing quivered! The training dummy throws a stone. The stone closely misses you. Why would you want to do that? Why would you want to do that? Why would you want to do that? There are no items here. The training dummy throws a stone. The stone closely misses you. The training dummy throws a stone. The stone hits you but does no damage. Put on this ring with [e], and then rest up to your new full potential. b - a ring of magical power The training dummy throws a stone. The stone completely misses you. The training dummy throws a stone. The stone hits you. The training dummy throws a stone. The stone hits you but does no damage. You feel your magic capacity increase. b - a ring of magical power (worn) Okay, then. Why would you want to do that? Okay, then. Why would you want to do that? The training dummy throws a stone. The stone hits you but does no damage. Put on this ring with [e], and then rest up to your new full potential. The training dummy throws a stone. The stone misses you. You remove your ring of magical power. You feel your magic capacity decrease. The training dummy throws a stone. The stone barely misses you. You feel your magic capacity increase. b - a ring of magical power (worn) The training dummy throws a stone. The stone barely misses you. Put on this ring with [e], and then rest up to your new full potential. Okay, then. Why would you want to do that? The training dummy throws a stone. The stone hits you. Why would you want to do that? Unknown command. Unknown command. Unknown command. Unknown command. The training dummy throws a stone. The stone hits you. The training dummy throws a stone. The stone hits you but does no damage. The training dummy throws a stone. The stone hits you. The training dummy throws a stone. The stone closely misses you. The training dummy throws a stone. The stone hits you but does no damage. The training dummy throws a stone. The stone closely misses you. Why would you want to do that? The training dummy throws a stone. The stone closely misses you. The training dummy throws a stone. The stone misses you. The training dummy throws a stone. The stone closely misses you. The training dummy throws a stone. The stone hits you but does no damage. Why would you want to do that? Why would you want to do that? Why would you want to do that? Why would you want to do that? Why would you want to do that? Why would you want to do that? Why would you want to do that? The training dummy throws a stone. The stone hits you but does no damage. The training dummy throws a stone. The stone closely misses you. Spells, like ammo, are shown in the quiver slot, so you can use [Q] to ready a spell in the quiver. Use [f] or [shift-tab] to fire the currently quivered spell. Once you are out of magic points, retreat and rest to regain them with [5]. The training dummy throws a stone. The stone hits you. Spells, like ammo, are shown in the quiver slot, so you can use [Q] to ready a spell in the quiver. Use [f] or [shift-tab] to fire the currently quivered spell. Once you are out of magic points, retreat and rest to regain them with [5]. To cast a spell, first memorise it with [M]. You can then cast it with [z]. Press [z], then press [?] to get a list of your spells. You can memorise a spell from your spell library with [M]. At experience level 1, only level 1 spells are available to you. This will change as you gain experience. To find new spells, find and pick up spellbooks, and the spells will be added to your library. You start resting. Magic restored. To cast a spell, first memorise it with [M]. You can then cast it with [z]. Press [z], then press [?] to get a list of your spells. You don't know any spells. Spells, like ammo, are shown in the quiver slot, so you can use [Q] to ready a spell in the quiver. Use [f] or [shift-tab] to fire the currently quivered spell. Once you are out of magic points, retreat and rest to regain them with [5]. Nothing quivered! Nothing quivered! You have nothing to quiver. Nothing quivered! Why would you want to do that? Nothing quivered! Nothing quivered! The training dummy throws a stone. The stone hits you. Spells, like ammo, are shown in the quiver slot, so you can use [Q] to ready a spell in the quiver. Use [f] or [shift-tab] to fire the currently quivered spell. Once you are out of magic points, retreat and rest to regain them with [5]. Spells, like ammo, are shown in the quiver slot, so you can use [Q] to ready a spell in the quiver. Use [f] or [shift-tab] to fire the currently quivered spell. Once you are out of magic points, retreat and rest to regain them with [5]. The training dummy throws a stone. The stone hits you but does no damage. To cast a spell, first memorise it with [M]. You can then cast it with [z]. Press [z], then press [?] to get a list of your spells. There is a staircase leading out of the dungeon here. You don't know any spells. You can memorise a spell from your spell library with [M]. At experience level 1, only level 1 spells are available to you. This will change as you gain experience. To find new spells, find and pick up spellbooks, and the spells will be added to your library. You don't know any spells. To cast a spell, first memorise it with [M]. You can then cast it with [z]. Press [z], then press [?] to get a list of your spells. You don't know any spells. Spells, like ammo, are shown in the quiver slot, so you can use [Q] to ready a spell in the quiver. Use [f] or [shift-tab] to fire the currently quivered spell. Once you are out of magic points, retreat and rest to regain them with [5]. Nothing quivered! You start waiting. The training dummy throws a stone. The stone barely misses you. The training dummy throws a stone. The stone hits you but does no damage. The training dummy throws a stone. The stone hits you. Why would you want to do that? You start resting. The training dummy throws a stone. The stone hits you. Spells, like ammo, are shown in the quiver slot, so you can use [Q] to ready a spell in the quiver. Use [f] or [shift-tab] to fire the currently quivered spell. Once you are out of magic points, retreat and rest to regain them with [5]. Spells, like ammo, are shown in the quiver slot, so you can use [Q] to ready a spell in the quiver. Use [f] or [shift-tab] to fire the currently quivered spell. Once you are out of magic points, retreat and rest to regain them with [5]. You start resting. The training dummy throws a stone. The stone hits you. To cast a spell, first memorise it with [M]. You can then cast it with [z]. Press [z], then press [?] to get a list of your spells. You don't know any spells. You can memorise a spell from your spell library with [M]. At experience level 1, only level 1 spells are available to you. This will change as you gain experience. To find new spells, find and pick up spellbooks, and the spells will be added to your library. You don't know any spells. Sorry, you're not good enough to have a special ability. Press: ? - help, . - travel You can't see that place. [the floor.] Sorry, I don't know how to get there. To cast a spell, first memorise it with [M]. You can then cast it with [z]. Press [z], then press [?] to get a list of your spells. Spells, like ammo, are shown in the quiver slot, so you can use [Q] to ready a spell in the quiver. Use [f] or [shift-tab] to fire the currently quivered spell. Once you are out of magic points, retreat and rest to regain them with [5]. Nothing quivered! Okay, then. Okay, then. The training dummy throws a stone. The stone hits you but does no damage. Put on this ring with [e], and then rest up to your new full potential. Unlike most monsters, zombies and skeletons do not regenerate health. You encounter a bat zombie. The bat zombie hits you. x2; The bat zombie barely misses you. You hit the bat zombie. The bat zombie is heavily damaged. The bat zombie hits you but does no damage. The bat zombie barely misses you. You closely miss the bat zombie. The bat zombie is heavily damaged. The bat zombie hits you but does no damage. The bat zombie hits you. The bat zombie closely misses you. You hit the bat zombie. You destroy the bat zombie! You encounter a bat zombie. You start waiting. Done waiting. The bat zombie completely misses you. You closely miss the bat zombie. The bat zombie closely misses you. x2 The bat zombie barely misses you. You barely miss the bat zombie. The bat zombie misses you. The bat zombie completely misses you. The bat zombie hits you but does no damage. You closely miss the bat zombie. The bat zombie hits you but does no damage. x2 You hit the bat zombie. The bat zombie is moderately damaged. The bat zombie barely misses you. The bat zombie hits you. The bat zombie hits you but does no damage. You hit the bat zombie. The bat zombie is moderately damaged. The bat zombie closely misses you. x2; The bat zombie barely misses you. You hit the bat zombie but do no damage. The bat zombie is moderately damaged. The bat zombie hits you. The bat zombie barely misses you. You hit the bat zombie. The bat zombie is severely damaged. The bat zombie hits you. The bat zombie hits you but does no damage. The bat zombie closely misses you. You hit the bat zombie. You destroy the bat zombie! Found a runed marble ring. To check your spell proficiency, press [I]. Compare your spell failure rates before and after wearing this ring. c - a ring of wizardry c - a ring of wizardry (worn) Adjust to which letter? (? for menu, Esc to quit) Huh? Adjust to which letter? (? for menu, Esc to quit) Huh? Adjust to which letter? (? for menu, Esc to quit) >>>>>>>>>>>>>>>>>>>>>> Version history: Game started: 0.35-a0-345-gb3cffbe06b 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: 1, map_stat_gen: 0, type: 2, arena_suspended: 0 prev_cmd = CMD_DISPLAY_INVENTORY repeat_cmd = CMD_NO_CMD Player: {{{{{{{{{{{ Name: [aiden] Species: Human Job: Fighter HP: 18/18; mods: 0/0 MP: 13/13; mod: 2 Stats: 16 8 12 Position: (49, 28), god: No God (0), turn_is_over: 0, banished: 0 Standing on/in/over feature: floor Skills (mode: auto) Name | can_currently_train | train | training | level | points | progress Fighting | X | 1 | 34 | 3 | 301 | 1/200 Short Blades | X | 1 | 0 | 0 | 0 | 0/50 Long Blades | X | 1 | 0 | 0 | 0 | 0/50 Axes | X | 1 | 0 | 0 | 0 | 0/50 Maces & Flails | X | 1 | 0 | 0 | 0 | 0/50 Polearms | X | 1 | 0 | 0 | 0 | 0/50 Staves | X | 1 | 0 | 0 | 0 | 0/50 Ranged Weapons | X | 1 | 0 | 0 | 0 | 0/50 Throwing | X | 1 | 0 | 0 | 0 | 0/50 Armour | X | 1 | 36 | 3 | 321 | 21/200 Dodging | X | 1 | 7 | 0 | 0 | 0/50 Stealth | X | 1 | 5 | 0 | 0 | 0/42 Shields | X | 1 | 0 | 0 | 0 | 0/50 Unarmed Combat | X | 1 | 16 | 2 | 151 | 1/150 Spellcasting | X | 1 | 2 | 1 | 60 | 1/119 Conjurations | X | 1 | 0 | 0 | 0 | 0/50 Hexes | X | 1 | 0 | 0 | 0 | 0/50 Summonings | X | 1 | 0 | 0 | 0 | 0/50 Necromancy | X | 1 | 0 | 0 | 0 | 0/50 Translocations | X | 1 | 0 | 0 | 0 | 0/50 Forgecraft | X | 1 | 0 | 0 | 0 | 0/50 Fire Magic | X | 1 | 0 | 0 | 0 | 0/50 Ice Magic | X | 1 | 0 | 0 | 0 | 0/50 Air Magic | X | 1 | 0 | 0 | 0 | 0/50 Earth Magic | X | 1 | 0 | 0 | 0 | 0/50 Alchemy | X | 1 | 0 | 0 | 0 | 0/50 Invocations | X | 1 | 0 | 0 | 0 | 0/42 Evocations | X | 1 | 0 | 0 | 0 | 0/50 Shapeshifting | X | 1 | 0 | 0 | 0 | 0/59 Spell bugs: Durations: Attributes: Mutations: explore regen: 1 (innate) Inventory bugs: Equipment: eq slot #3, inv slot #0: +0 robe eq slot #9, inv slot #1: ring of magical power eq slot #9, inv slot #2: ring of wizardry }}}}}}}}}}} Webtiles message buffer: Webtiles JSON stack: Screenshot: ##### ###...# ....<.# ###...# ##### ######### ##...#...##### #.....###..@.# #....## #####.....# ##....# ####. ###.##### ###..## #..### .### ## dlua errors: clua stack: dlua stack: Lua persistent data: <<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>> Lua marker contents: <<<<<<<<<<<<<<<<<<<<<< Lua marker 0 at (27, 23): {{{{ CLASS: TriggerableFunction activating: false listeners: repeated: true data: exit: false text: tutorial4 spellbook onetime: false dgn_trigs_by_type: 4: 1: 1 func: CLASS: FunctionWrapper name: tutorial_messenger_db fn: [type function] triggerers: 1: CLASS: DgnTriggerer type: player_move props: activated: true}}}} Lua marker 1 at (27, 26): {{{{ CLASS: TriggerableFunction activating: false listeners: repeated: true data: exit: false text: tutorial4 spellcasting onetime: false dgn_trigs_by_type: 4: 1: 1 func: CLASS: FunctionWrapper name: tutorial_messenger_db fn: [type function] triggerers: 1: CLASS: DgnTriggerer type: player_move props: activated: true}}}} Lua marker 2 at (27, 29): {{{{ CLASS: TriggerableFunction activating: false listeners: repeated: true data: exit: false text: tutorial4 spellquivering onetime: false dgn_trigs_by_type: 4: 1: 1 func: CLASS: FunctionWrapper name: tutorial_messenger_db fn: [type function] triggerers: 1: CLASS: DgnTriggerer type: player_move props: activated: true}}}} Lua marker 3 at (32, 34): {{{{ CLASS: TriggerableFunction activating: false listeners: repeated: true data: exit: false text: tutorial4 ring_power onetime: false dgn_trigs_by_type: 4: 1: 1 func: CLASS: FunctionWrapper name: tutorial_messenger_db fn: [type function] triggerers: 1: CLASS: DgnTriggerer type: player_move props: activated: true}}}} Lua marker 4 at (35, 33): {{{{ CLASS: TriggerableFunction activating: false listeners: repeated: true data: exit: false text: tutorial4 undead onetime: false dgn_trigs_by_type: 4: 1: 1 func: CLASS: FunctionWrapper name: tutorial_messenger_db fn: [type function] triggerers: 1: CLASS: DgnTriggerer type: player_move props: activated: true}}}} Lua marker 5 at (37, 23): {{{{ CLASS: OneWayStair props: onclimb: CLASS: FunctionWrapper name: tutorial4.exit fn: [type function] dst: tutorial_lesson4 }}}} Lua marker 7 at (49, 28): {{{{ CLASS: TriggerableFunction activating: false listeners: repeated: true data: exit: false text: tutorial4 spell_success onetime: false dgn_trigs_by_type: 4: 1: 1 func: CLASS: FunctionWrapper name: tutorial_messenger_db fn: [type function] triggerers: 1: CLASS: DgnTriggerer type: player_move props: activated: true}}}} Lua marker 8 at (56, 45): {{{{ CLASS: TriggerableFunction activating: false listeners: repeated: true data: exit: false text: tutorial4 aiming_clouds onetime: false dgn_trigs_by_type: 4: 1: 1 func: CLASS: FunctionWrapper name: tutorial_messenger_db fn: [type function] triggerers: 1: CLASS: DgnTriggerer type: player_move props: activated: true}}}} Lua marker 9 at (58, 41): {{{{ CLASS: TriggerableFunction activating: false listeners: repeated: true data: exit: false text: tutorial4 meph_reminder onetime: false dgn_trigs_by_type: 4: 1: 1 func: CLASS: FunctionWrapper name: tutorial_messenger_db fn: [type function] triggerers: 1: CLASS: DgnTriggerer type: player_move props: activated: true}}}} Lua marker 10 at (59, 34): {{{{ CLASS: TriggerableFunction activating: false listeners: repeated: true data: exit: false text: tutorial4 mephitic_cloud onetime: false dgn_trigs_by_type: 4: 1: 1 func: CLASS: FunctionWrapper name: tutorial_messenger_db fn: [type function] triggerers: 1: CLASS: DgnTriggerer type: player_move props: activated: true}}}} >>>>>>>>>>>>>>>>>>>>>>