aboutsummaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
Diffstat (limited to 'data')
-rw-r--r--data/.admin_history.json2
-rw-r--r--data/rooms/1001.yaml85
-rw-r--r--data/rooms/example_unused/agility2/99999200.yaml (renamed from data/rooms/example_unused/agility/99999200.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999201.yaml (renamed from data/rooms/example_unused/agility/99999201.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999202.yaml (renamed from data/rooms/example_unused/agility/99999202.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999203.yaml (renamed from data/rooms/example_unused/agility/99999203.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999204.yaml (renamed from data/rooms/example_unused/agility/99999204.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999205.yaml (renamed from data/rooms/example_unused/agility/99999205.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999210.yaml (renamed from data/rooms/example_unused/agility/99999210.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999211.yaml (renamed from data/rooms/example_unused/agility/99999211.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999212.yaml (renamed from data/rooms/example_unused/agility/99999212.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999213.yaml (renamed from data/rooms/example_unused/agility/99999213.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999214.yaml (renamed from data/rooms/example_unused/agility/99999214.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999215.yaml (renamed from data/rooms/example_unused/agility/99999215.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999220.yaml (renamed from data/rooms/example_unused/agility/99999220.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999221.yaml (renamed from data/rooms/example_unused/agility/99999221.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999222.yaml (renamed from data/rooms/example_unused/agility/99999222.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999223.yaml (renamed from data/rooms/example_unused/agility/99999223.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999224.yaml (renamed from data/rooms/example_unused/agility/99999224.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999225.yaml (renamed from data/rooms/example_unused/agility/99999225.yaml)0
-rw-r--r--data/rooms/example_unused/agility2/99999226.yaml (renamed from data/rooms/example_unused/agility/99999226.yaml)0
-rw-r--r--data/rooms/example_unused/player_housing/99999300.yaml17
-rw-r--r--data/rooms/example_unused/underground/9999950.yaml6
-rw-r--r--data/rooms/example_unused/underground2/9999950.yaml16
-rw-r--r--data/rooms/example_unused/underground2/9999951.yaml (renamed from data/rooms/example_unused/underground/9999951.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999952.yaml (renamed from data/rooms/example_unused/underground/9999952.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999953.yaml (renamed from data/rooms/example_unused/underground/9999953.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999954.yaml (renamed from data/rooms/example_unused/underground/9999954.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999955.yaml (renamed from data/rooms/example_unused/underground/9999955.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999956.yaml (renamed from data/rooms/example_unused/underground/9999956.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999957.yaml (renamed from data/rooms/example_unused/underground/9999957.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999958.yaml (renamed from data/rooms/example_unused/underground/9999958.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999959.yaml (renamed from data/rooms/example_unused/underground/9999959.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999960.yaml (renamed from data/rooms/example_unused/underground/9999960.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999961.yaml (renamed from data/rooms/example_unused/underground/9999961.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999962.yaml (renamed from data/rooms/example_unused/underground/9999962.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999963.yaml (renamed from data/rooms/example_unused/underground/9999963.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999964.yaml (renamed from data/rooms/example_unused/underground/9999964.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999965.yaml (renamed from data/rooms/example_unused/underground/9999965.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999966.yaml (renamed from data/rooms/example_unused/underground/9999966.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999967.yaml (renamed from data/rooms/example_unused/underground/9999967.yaml)0
-rw-r--r--data/rooms/example_unused/underground2/9999968.yaml (renamed from data/rooms/example_unused/underground/9999968.yaml)0
-rw-r--r--data/rooms/test222/1.yaml2
43 files changed, 32 insertions, 96 deletions
diff --git a/data/.admin_history.json b/data/.admin_history.json
index 6aac68c..c68eab4 100644
--- a/data/.admin_history.json
+++ b/data/.admin_history.json
@@ -1 +1 @@
-{"history":[{"time":"2026-07-01T04:08:26-04:00","description":"update room 2001","file_path":"data/rooms/intro/2001.yaml","old_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs: []\nname: Test Room\nobjects:\n - id: tree\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\nname: Test Room\nobjects:\n - id: tree\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:08:32-04:00","description":"update room 2001","file_path":"data/rooms/intro/2001.yaml","old_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\nname: Test Room\nobjects:\n - id: tree\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\nname: Test Room\nobjects:\n - id: tree\n - aliases: []\n description:\n - text: \"\"\n hidden: false\n name: \"\"\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:08:37-04:00","description":"update room 2001","file_path":"data/rooms/intro/2001.yaml","old_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\nname: Test Room\nobjects:\n - id: tree\n - aliases: []\n description:\n - text: \"\"\n hidden: false\n name: \"\"\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\nname: Test Room\nobjects:\n - aliases: []\n description: []\n hidden: false\n name: hidden guy\n - id: tree\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:08:43-04:00","description":"update room 2001","file_path":"data/rooms/intro/2001.yaml","old_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\nname: Test Room\nobjects:\n - aliases: []\n description: []\n hidden: false\n name: hidden guy\n - id: tree\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\nname: Test Room\nobjects:\n - aliases: []\n description:\n - text: YOU FOUND HIM\n hidden: false\n name: hidden guy\n - id: tree\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:08:44-04:00","description":"update room 2001","file_path":"data/rooms/intro/2001.yaml","old_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\nname: Test Room\nobjects:\n - aliases: []\n description:\n - text: YOU FOUND HIM\n hidden: false\n name: hidden guy\n - id: tree\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\nname: Test Room\nobjects:\n - aliases: []\n description:\n - text: YOU FOUND HIM\n hidden: true\n name: hidden guy\n - id: tree\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:41-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"id: 2003\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:41-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:44-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:44-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:47-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:47-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:49-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:49-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:51-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: \"00\"\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:53-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:55-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:56-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:58-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:09:58-04:00","description":"update room 2003","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:10:01-04:00","description":"update room 2003 (add exit northeast to 1005)","file_path":"data/rooms/intro/2003.yaml","old_content":"block_transport: false\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nhazard: \"\"\nid: 2003\nitem_spawns: []\nmobs: []\nname: Test Room\nobjects: []\non_enter: []\ntriggers: []\n","new_content":"id: 2003\nname: Test Room\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n northeast:\n room: 1005\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:10:01-04:00","description":"create room 1005","file_path":"data/rooms/intro/1005.yaml","old_content":"","new_content":"color: A5\nexits:\n southwest: 2003\nid: 1005\nname: 'Room #1005'\n","is_delete":false,"is_create":true},{"time":"2026-07-01T04:10:03-04:00","description":"delete room 1005 (cleaned 1 exits)","file_path":"data/rooms/intro/1005.yaml","old_content":"color: A5\nexits:\n southwest: 2003\nid: 1005\nname: 'Room #1005'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/intro/2003.yaml","old_content":"id: 2003\nname: Test Room\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n northeast:\n room: 1005\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 2003\nname: Test Room\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-01T04:11:43-04:00","description":"update room 2003 (add exit north to 1005)","file_path":"data/rooms/intro/2003.yaml","old_content":"id: 2003\nname: Test Room\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 2003\nname: Test Room\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n north:\n room: 1005\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:22:38-04:00","description":"Update drop credit_stick_drop","file_path":"data/drops/credit_stick_drop.yaml","old_content":"drops:\n - item_id: credits\n weight: 40\n quantity: 15\n - item_id: credits\n weight: 30\n quantity: 30\n - item_id: credits\n weight: 20\n quantity: 50\n - item_id: credits\n weight: 8\n quantity: 100\n - item_id: credits\n weight: 2\n quantity: 250","new_content":"drops:\n - item_id: credits\n quantity: 14\n weight: 40\n - item_id: credits\n quantity: 30\n weight: 30\n - item_id: credits\n quantity: 50\n weight: 20\n - item_id: credits\n quantity: 100\n weight: 8\n - item_id: credits\n quantity: 250\n weight: 2\nid: credit_stick_drop\n","is_delete":false,"is_create":false},{"time":"2026-07-01T04:22:42-04:00","description":"Update drop credit_stick_drop","file_path":"data/drops/credit_stick_drop.yaml","old_content":"drops:\n - item_id: credits\n quantity: 14\n weight: 40\n - item_id: credits\n quantity: 30\n weight: 30\n - item_id: credits\n quantity: 50\n weight: 20\n - item_id: credits\n quantity: 100\n weight: 8\n - item_id: credits\n quantity: 250\n weight: 2\nid: credit_stick_drop\n","new_content":"drops:\n - item_id: credits\n quantity: 15\n weight: 40\n - item_id: credits\n quantity: 30\n weight: 30\n - item_id: credits\n quantity: 50\n weight: 20\n - item_id: credits\n quantity: 100\n weight: 8\n - item_id: credits\n quantity: 250\n weight: 2\nid: credit_stick_drop\n","is_delete":false,"is_create":false},{"time":"2026-07-01T13:06:32-04:00","description":"Create mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"","new_content":"id: flight_attendant_copy\n","is_delete":false,"is_create":true},{"time":"2026-07-01T13:06:32-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"id: flight_attendant_copy\n","new_content":"description: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nname: flight attendant\nprotected: true\ntalk:\n nodes:\n sign_reminder:\n sequence:\n - '\"Yeah, just us two! Not a lot of people heading into the belt these days.\"'\n - '\"But we''ll be landing shortly! Please be sure {0B bold}look{/} at the information {0B bold}sign{/} so you''ll be all set for your final destination.\"'\n start:\n condition:\n not: true\n player_flag: 1001_look_sign\n goto: thanks\n message: '\"Hi there, how can I help?\"'\n options:\n - goto: sign_reminder\n text: '\"Oh, nothing... Small crowd on this ship. Just looking for conversation.\"'\n - text: '\"Goodbye.\"'\n thanks:\n message: '\"Thank for flying with Denali. Watch your step on the way out please.\"'\n options:\n - text: '\"Thank you.\"'\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T13:07:46-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"description: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nname: flight attendant\nprotected: true\ntalk:\n nodes:\n sign_reminder:\n sequence:\n - '\"Yeah, just us two! Not a lot of people heading into the belt these days.\"'\n - '\"But we''ll be landing shortly! Please be sure {0B bold}look{/} at the information {0B bold}sign{/} so you''ll be all set for your final destination.\"'\n start:\n condition:\n not: true\n player_flag: 1001_look_sign\n goto: thanks\n message: '\"Hi there, how can I help?\"'\n options:\n - goto: sign_reminder\n text: '\"Oh, nothing... Small crowd on this ship. Just looking for conversation.\"'\n - text: '\"Goodbye.\"'\n thanks:\n message: '\"Thank for flying with Denali. Watch your step on the way out please.\"'\n options:\n - text: '\"Thank you.\"'\nunique: false\n","new_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: flight attendant\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n sign_reminder:\n sequence:\n - '\"Yeah, just us two! Not a lot of people heading into the belt these days.\"'\n - '\"But we''ll be landing shortly! Please be sure {0B bold}look{/} at the information {0B bold}sign{/} so you''ll be all set for your final destination.\"'\n start:\n condition:\n not: true\n player_flag: 1001_look_sign\n goto: thanks\n message: '\"Hi there, how can I help?\"'\n options:\n - goto: sign_reminder\n text: '\"Oh, nothing... Small crowd on this ship. Just looking for conversation.\"'\n - text: '\"Goodbye.\"'\n sequence:\n - Test\n thanks:\n message: '\"Thank for flying with Denali. Watch your step on the way out please.\"'\n options:\n - text: '\"Thank you.\"'\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T13:08:04-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: flight attendant\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n sign_reminder:\n sequence:\n - '\"Yeah, just us two! Not a lot of people heading into the belt these days.\"'\n - '\"But we''ll be landing shortly! Please be sure {0B bold}look{/} at the information {0B bold}sign{/} so you''ll be all set for your final destination.\"'\n start:\n condition:\n not: true\n player_flag: 1001_look_sign\n goto: thanks\n message: '\"Hi there, how can I help?\"'\n options:\n - goto: sign_reminder\n text: '\"Oh, nothing... Small crowd on this ship. Just looking for conversation.\"'\n - text: '\"Goodbye.\"'\n sequence:\n - Test\n thanks:\n message: '\"Thank for flying with Denali. Watch your step on the way out please.\"'\n options:\n - text: '\"Thank you.\"'\nunique: false\n","new_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: flight attendant\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n sign_reminder:\n sequence:\n - '\"Yeah, just us two! Not a lot of people heading into the belt these days.\"'\n - '\"But we''ll be landing shortly! Please be sure {0B bold}look{/} at the information {0B bold}sign{/} so you''ll be all set for your final destination.\"'\n start:\n condition:\n not: true\n player_flag: 1001_look_sign\n goto: thanks\n message: '\"Hi there, how can I help?\"'\n options:\n - goto: sign_reminder\n text: '\"Oh, nothing... Small crowd on this ship. Just looking for conversation.\"'\n - text: '\"Goodbye.\"'\n sequence:\n - Test\n thanks:\n message: '\"Thank for flying with Denali. Watch your step on the way out please.\"'\n options:\n - text: '\"Thank you.\"'\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T13:09:12-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: flight attendant\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n sign_reminder:\n sequence:\n - '\"Yeah, just us two! Not a lot of people heading into the belt these days.\"'\n - '\"But we''ll be landing shortly! Please be sure {0B bold}look{/} at the information {0B bold}sign{/} so you''ll be all set for your final destination.\"'\n start:\n condition:\n not: true\n player_flag: 1001_look_sign\n goto: thanks\n message: '\"Hi there, how can I help?\"'\n options:\n - goto: sign_reminder\n text: '\"Oh, nothing... Small crowd on this ship. Just looking for conversation.\"'\n - text: '\"Goodbye.\"'\n sequence:\n - Test\n thanks:\n message: '\"Thank for flying with Denali. Watch your step on the way out please.\"'\n options:\n - text: '\"Thank you.\"'\nunique: false\n","new_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: flight attendant\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n sign_reminder:\n sequence:\n - '\"Yeah, just us two! Not a lot of people heading into the belt these days.\"'\n - '\"But we''ll be landing shortly! Please be sure {0B bold}look{/} at the information {0B bold}sign{/} so you''ll be all set for your final destination.\"'\n start:\n condition:\n not: true\n player_flag: 1001_look_sign\n goto: thanks\n message: '\"Hi there, how can I help?\"'\n options:\n - goto: sign_reminder\n text: '\"Oh, nothing... Small crowd on this ship. Just looking for conversation.\"'\n - text: '\"Goodbye.\"'\n thanks:\n message: '\"Thank for flying with Denali. Watch your step on the way out please.\"'\n options:\n - goto: Test\n text: '\"Thank you.\"'\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T13:16:15-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: flight attendant\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n sign_reminder:\n sequence:\n - '\"Yeah, just us two! Not a lot of people heading into the belt these days.\"'\n - '\"But we''ll be landing shortly! Please be sure {0B bold}look{/} at the information {0B bold}sign{/} so you''ll be all set for your final destination.\"'\n start:\n condition:\n not: true\n player_flag: 1001_look_sign\n goto: thanks\n message: '\"Hi there, how can I help?\"'\n options:\n - goto: sign_reminder\n text: '\"Oh, nothing... Small crowd on this ship. Just looking for conversation.\"'\n - text: '\"Goodbye.\"'\n thanks:\n message: '\"Thank for flying with Denali. Watch your step on the way out please.\"'\n options:\n - goto: Test\n text: '\"Thank you.\"'\nunique: false\n","new_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: flight attendant\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n sign_reminder:\n sequence:\n - '\"Yeah, just us two! Not a lot of people heading into the belt these days.\"'\n - '\"But we''ll be landing shortly! Please be sure {0B bold}look{/} at the information {0B bold}sign{/} so you''ll be all set for your final destination.\"'\n start:\n condition:\n not: true\n player_flag: 1001_look_sign\n goto: thanks\n message: '\"Hi there, how can I help?\"'\n options:\n - goto: sign_reminder\n text: '\"Oh, nothing... Small crowd on this ship. Just looking for conversation.\"'\n - text: '\"Goodbye.\"'\n thanks:\n message: '\"Thank for flying with Denali. Watch your step on the way out please.\"'\n options:\n - goto: Test\n text: '\"Thank you.\"'\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T13:16:46-04:00","description":"Update item adamant_arrow","file_path":"data/items/ammo/adamant_arrow.yaml","old_content":"color: \"78\"\ncraft:\n ingredients:\n - items:\n - headless_arrow\n quantity: 15\n - items:\n - adamant_arrowtips\n quantity: 15\n level: 60\n output_qty: 15\n type: fletching\n ticks_per_cycle: 2\n xp: 10\ndescription: An adamant-tipped arrow.\nequipment:\n other:\n ranged: 31\n slot: ammo\n type: ammo\nname: adamant arrow\nrecoverable: true\nstackable: true\nvalue: 20\n","new_content":"color: \"78\"\ncraft:\n - end_message: \"\"\n fail: \"\"\n ingredients:\n - items:\n - headless_arrow\n quantity: 15\n - items:\n - adamant_arrowtips\n quantity: 15\n level: 60\n output_qty: 15\n start_message: \"\"\n station: []\n subtype: \"\"\n success_message: \"\"\n ticks_per_cycle: 2\n tool: \"\"\n type: fletching\n xp: 10\ndescription: An adamant-tipped arrow.2\nequipment:\n other:\n ranged: 31\n slot: ammo\n type: ammo\nid: adamant_arrow\nmax_quality: 0\nname: adamant arrow\nquality: 0\nrecoverable: true\nstackable: true\nvalue: 20\n","is_delete":false,"is_create":false},{"time":"2026-07-01T13:16:50-04:00","description":"Update item adamant_arrow","file_path":"data/items/ammo/adamant_arrow.yaml","old_content":"color: \"78\"\ncraft:\n - end_message: \"\"\n fail: \"\"\n ingredients:\n - items:\n - headless_arrow\n quantity: 15\n - items:\n - adamant_arrowtips\n quantity: 15\n level: 60\n output_qty: 15\n start_message: \"\"\n station: []\n subtype: \"\"\n success_message: \"\"\n ticks_per_cycle: 2\n tool: \"\"\n type: fletching\n xp: 10\ndescription: An adamant-tipped arrow.2\nequipment:\n other:\n ranged: 31\n slot: ammo\n type: ammo\nid: adamant_arrow\nmax_quality: 0\nname: adamant arrow\nquality: 0\nrecoverable: true\nstackable: true\nvalue: 20\n","new_content":"color: \"78\"\ncraft:\n - end_message: \"\"\n fail: \"\"\n ingredients:\n - items:\n - headless_arrow\n quantity: 15\n - items:\n - adamant_arrowtips\n quantity: 15\n level: 60\n output_qty: 15\n start_message: \"\"\n station: []\n subtype: \"\"\n success_message: \"\"\n ticks_per_cycle: 2\n tool: \"\"\n type: fletching\n xp: 10\ndescription: An adamant-tipped arrow.\nequipment:\n other:\n ranged: 31\n slot: ammo\n type: ammo\nid: adamant_arrow\nmax_quality: 0\nname: adamant arrow\nquality: 0\nrecoverable: true\nstackable: true\nvalue: 20\n","is_delete":false,"is_create":false},{"time":"2026-07-01T15:41:47-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: flight attendant\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n sign_reminder:\n messages:\n - '\"Yeah, just us two! Not a lot of people heading into the belt these days.\"'\n - '\"But we''ll be landing shortly! Please be sure {0B bold}look{/} at the information {0B bold}sign{/} so you''ll be all set for your final destination.\"'\n start:\n condition:\n not: true\n player_flag: 1001_look_sign\n goto: thanks\n messages: ['\"Hi there, how can I help?\"']\n options:\n - goto: sign_reminder\n text: '\"Oh, nothing... Small crowd on this ship. Just looking for conversation.\"'\n - text: '\"Goodbye.\"'\n thanks:\n messages: ['\"Thank for flying with Denali. Watch your step on the way out please.\"']\n options:\n - goto: Test\n text: '\"Thank you.\"'\nunique: false\n","new_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: flight attendant\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\n - condition:\n min_credits: 500000\n goto: \"\"\n text: 500000!!\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T15:41:55-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: flight attendant\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\n - condition:\n min_credits: 500000\n goto: \"\"\n text: 500000!!\nunique: false\n","new_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: Credit Checker!\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\n - condition:\n min_credits: 500000\n goto: \"\"\n text: 500000!!\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T15:42:56-04:00","description":"update room 2001","file_path":"data/rooms/intro/2001.yaml","old_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\nname: Test Room\nobjects:\n - aliases: []\n description:\n - text: YOU FOUND HIM\n hidden: true\n name: hidden guy\n - id: tree\non_enter: []\ntriggers: []\n","new_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\n - id: flight_attendant_copy\nname: Test Room\nobjects:\n - aliases: []\n description:\n - text: YOU FOUND HIM\n hidden: true\n name: hidden guy\n - id: tree\non_enter: []\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-01T15:47:02-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: Credit Checker!\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\n - condition:\n min_credits: 500000\n goto: \"\"\n text: 500000!!\nunique: false\n","new_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: Credit Checker!\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\n - action:\n shop:\n items:\n - buy_price: 1\n item_id: bronze_pickaxe\n sell_price: 1\n message: SHOP SHOP\n goto: \"\"\n text: 500000!!\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T15:47:37-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: Credit Checker!\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\n - action:\n shop:\n items:\n - buy_price: 1\n item_id: bronze_pickaxe\n sell_price: 1\n message: SHOP SHOP\n goto: \"\"\n text: 500000!!\nunique: false\n","new_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: Credit Checker!\nprotected: true\nrespawn_ticks: 0\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\n - action:\n shop:\n items:\n - buy_price: 1\n item_id: bronze_pickaxe\n sell_price: 1\n message: SHOP SHOP\n goto: \"\"\n text: 500000!!\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T17:16:00-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: Credit Checker!\nprotected: true\nrespawn_ticks: 0\nshop:\n message: SHOP SHOP\n items:\n - item_id: bronze_pickaxe\n stock: 5\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\nunique: false\n","new_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: Credit Checker!\nprotected: true\nrespawn_ticks: 0\nshop:\n buy_percentage: 0\n buys_anything: false\n change_percentage: 0\n items:\n - item_id: bronze_pickaxe\n restock_ticks: 0\n stock: 5\n message: SHOP SHOP\n restock_ticks: 0\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T17:16:36-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: Credit Checker!\nprotected: true\nrespawn_ticks: 0\nshop:\n buy_percentage: 0\n buys_anything: false\n change_percentage: 0\n items:\n - item_id: bronze_pickaxe\n restock_ticks: 0\n stock: 5\n message: SHOP SHOP\n restock_ticks: 0\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\nunique: false\n","new_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: Credit Checker!\nprotected: true\nrespawn_ticks: 0\nshop:\n buy_percentage: 0\n buys_anything: true\n change_percentage: 0\n items:\n - item_id: bronze_pickaxe\n restock_ticks: 0\n stock: 5\n message: SHOP SHOP\n restock_ticks: 0\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T18:04:00-04:00","description":"Update mob flight_attendant_copy","file_path":"data/mobs/flight_attendant_copy.yaml","old_content":"aggressive: false\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: Credit Checker!\nprotected: true\nrespawn_ticks: 0\nshop:\n message: SHOP SHOP\n items:\n - item_id: bronze_pickaxe\n stock: 5\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\nunique: false\n","new_content":"aggressive: false\nattack: 0\nbonuses:\n attack_bonus: 0\n attack_type: stab\n strength_bonus: 0\ndefense: 0\ndefenses:\n crush_defense: 0\n ranged_defense: 0\n science_defense: 0\n slash_defense: 0\n stab_defense: 0\ndescription: A smiling flight attendant in a crisp uniform, ready to assist passengers.\nhp: 0\nid: flight_attendant_copy\nidle_descriptions:\n - adjusts her name badge\n - smiles politely at you\nkind: combat\nname: Credit Checker!\nprotected: true\nranged: 0\nrespawn_ticks: 0\nscience: 0\nshop:\n buy_percentage: 0\n buys_anything: true\n change_percentage: 0\n items:\n - item_id: bronze_pickaxe\n restock_ticks: 0\n stock: 5\n message: SHOP SHOP\nspeed: 0\nstrength: 0\ntalk:\n nodes:\n start:\n options:\n - goto: \"\"\n text: None!\n - text: None\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T18:37:34-04:00","description":"Update mob bandit","file_path":"data/mobs/examples/bandit.yaml","old_content":"name: bandit\ndescription: \"A scrappy outlaw with a cybernetic arm and patched armor. He eyes you with predatory intent.\"\nattack: 10\nstrength: 12\ndefense: 12\nhp: 28\nspeed: 5\naggressive: true\nrespawn_ticks: 30\nattack_type: slash\nattack_bonus: 5\nstrength_bonus: 5\nstab_defense: 10\nslash_defense: 15\ncrush_defense: 8\nscience_defense: -5\nranged_defense: 12\nidle_descriptions:\n - \"scans the horizon for targets\"\n - \"wipes a blade on his sleeve\"\n - \"spits on the ground\"\n - \"adjusts a cybernetic knuckle\"\ncombat_descriptions:\n - \"slashes at %s with a serrated blade\"\n - \"delivers a crushing punch with a cybernetic fist\"\n - \"lunges at %s with a battle cry\"\nsize: medium\ndrops:\n remains: bones\n loot:\n - item_id: credits\n weight: 70\n quantity: 30\n - item_id: credits\n weight: 20\n quantity: 80\n - table: herb_table_low\n weight: 10\n","new_content":"aggressive: true\nassassin_level: 0\nattack: 10\nbonuses:\n attack_bonus: 0\n attack_type: stab\n strength_bonus: 0\ncombat_descriptions:\n - slashes at %s with a serrated blade\n - delivers a crushing punch with a cybernetic fist\n - lunges at %s with a battle cry\ndefense: 12\ndefenses:\n crush_defense: 0\n ranged_defense: 0\n science_defense: 0\n slash_defense: 0\n stab_defense: 0\ndescription: A scrappy outlaw with a cybernetic arm and patched armor. He eyes you with predatory intent.\ndrops:\n loot:\n - item_id: credits\n quantity: 30\n weight: 70\n - item_id: credits\n quantity: 80\n weight: 20\n - quantity: 0\n table: herb_table_low\n weight: 10\n remains: bones\nhp: 28\nid: bandit\nidle_descriptions:\n - scans the horizon for targets\n - wipes a blade on his sleeve\n - spits on the ground\n - adjusts a cybernetic knuckle\nkind: combat\nname: bandit\nprotected: false\nranged: 0\nrespawn_ticks: 30\nscience: 0\nsize: medium\nspeed: 5\nstrength: 12\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-01T18:39:27-04:00","description":"Update mob bandit","file_path":"data/mobs/examples/bandit.yaml","old_content":"aggressive: true\nassassin_level: 0\nattack: 10\nbonuses:\n attack_bonus: 0\n attack_type: stab\n strength_bonus: 0\ncombat_descriptions:\n - slashes at %s with a serrated blade\n - delivers a crushing punch with a cybernetic fist\n - lunges at %s with a battle cry\ndefense: 12\ndefenses:\n crush_defense: 0\n ranged_defense: 0\n science_defense: 0\n slash_defense: 0\n stab_defense: 0\ndescription: A scrappy outlaw with a cybernetic arm and patched armor. He eyes you with predatory intent.\ndrops:\n loot:\n - item_id: credits\n quantity: 30\n weight: 70\n - item_id: credits\n quantity: 80\n weight: 20\n - quantity: 0\n table: herb_table_low\n weight: 10\n remains: bones\nhp: 28\nid: bandit\nidle_descriptions:\n - scans the horizon for targets\n - wipes a blade on his sleeve\n - spits on the ground\n - adjusts a cybernetic knuckle\nkind: combat\nname: bandit\nprotected: false\nranged: 0\nrespawn_ticks: 30\nscience: 0\nsize: medium\nspeed: 5\nstrength: 12\nunique: false\n","new_content":"aggressive: true\nassassin_level: 0\nattack: 10\nbonuses:\n attack_bonus: 0\n attack_type: stab\n strength_bonus: 0\ncombat_descriptions:\n - slashes at %s with a serrated blade\n - delivers a crushing punch with a cybernetic fist\n - lunges at %s with a battle cry\ndefense: 12\ndefenses:\n crush_defense: 0\n ranged_defense: 0\n science_defense: 0\n slash_defense: 0\n stab_defense: 0\ndescription: A scrappy outlaw with a cybernetic arm and patched armor. He eyes you with predatory intent.\ndrops:\n loot:\n - item_id: credits\n quantity: 30\n weight: 70\n - item_id: credits\n quantity: 80\n weight: 20\n - quantity: 0\n table: herb_table_low\n weight: 10\n remains: bones\nhp: 28\nid: bandit\nidle_descriptions:\n - scans the horizon for targets\n - wipes a blade on his sleeve\n - spits on the ground\n - adjusts a cybernetic knuckle\nkind: task\nname: bandit\nprotected: false\nranged: 0\nrespawn_ticks: 30\nscience: 0\nsize: medium\nspeed: 5\nstrength: 12\nunique: false\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:51:59-04:00","description":"unlink 2003 north 1005","file_path":"data/rooms/intro/2003.yaml","old_content":"id: 2003\nname: Test Room\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n north:\n room: 1005\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 2003\nname: Test Room\ncolor: A5\ndescription:\n - text: It's a test room\nexits:\n south:\n room: 2004\n southwest:\n room: 2005\n west:\n room: 2002\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:52:31-04:00","description":"unlink 999991 up 9999930","file_path":"data/rooms/example_unused/town/999991.yaml","old_content":"name: \"Town Square\"\ndescription: \"The central square of Lumbridge. A fountain gurgles peacefully in the center. Paths lead west toward the gathering grounds and east toward the production district.\"\nexits:\n east: 999992\n west: 9999922\n up: 9999930\n down: 9999931\nobjects:\n - id: lumby_fountain\n - id: charging_station\n - id: bank_booth\n - id: aps_tower\nmobs:\n - \"newbie_trainer\"\n - \"general_store_clerk\"\nitem_spawns:\n - id: cape_of_agility\n quantity: 1\n respawn_ticks: 60\n - id: graceful_hat\n quantity: 1\n respawn_ticks: 60\n - id: graceful_torso\n quantity: 1\n respawn_ticks: 60\n - id: graceful_legs\n quantity: 1\n respawn_ticks: 60\n - id: graceful_gloves\n quantity: 1\n respawn_ticks: 60\n - id: graceful_boots\n quantity: 1\n respawn_ticks: 60\n - id: graceful_cape\n quantity: 1\n respawn_ticks: 60\n - id: basic_deck\n quantity: 1\n respawn_ticks: 60\n - id: solar_identifier\n quantity: 1\n respawn_ticks: 60\n - id: hydro_identifier\n quantity: 1\n respawn_ticks: 60\n - id: cosmic_identifier\n quantity: 1\n respawn_ticks: 60\n - id: eco_identifier\n quantity: 1\n respawn_ticks: 60\n - id: chaos_identifier\n quantity: 1\n respawn_ticks: 60\n - id: bio_identifier\n quantity: 1\n respawn_ticks: 60\n - id: nature_identifier\n quantity: 1\n respawn_ticks: 60\n - id: law_identifier\n quantity: 1\n respawn_ticks: 60\n - id: death_identifier\n quantity: 1\n respawn_ticks: 60\n - id: blood_identifier\n quantity: 1\n respawn_ticks: 60\n - id: grimy_guam\n quantity: 5\n respawn_ticks: 60\n - id: vial_of_water\n quantity: 5\n respawn_ticks: 60\n - id: eye_of_newt\n quantity: 5\n respawn_ticks: 60\n","new_content":"id: 999991\nname: Town Square\ncolor: \"\"\ndescription:\n - text: The central square of Lumbridge. A fountain gurgles peacefully in the center. Paths lead west toward the gathering grounds and east toward the production district.\nexits:\n down:\n room: 9999931\n east:\n room: 999992\n west:\n room: 9999922\nobjects:\n - id: lumby_fountain\n - id: charging_station\n - id: bank_booth\n - id: aps_tower\nitem_spawns:\n - id: cape_of_agility\n quantity: 1\n respawn_ticks: 60\n - id: graceful_hat\n quantity: 1\n respawn_ticks: 60\n - id: graceful_torso\n quantity: 1\n respawn_ticks: 60\n - id: graceful_legs\n quantity: 1\n respawn_ticks: 60\n - id: graceful_gloves\n quantity: 1\n respawn_ticks: 60\n - id: graceful_boots\n quantity: 1\n respawn_ticks: 60\n - id: graceful_cape\n quantity: 1\n respawn_ticks: 60\n - id: basic_deck\n quantity: 1\n respawn_ticks: 60\n - id: solar_identifier\n quantity: 1\n respawn_ticks: 60\n - id: hydro_identifier\n quantity: 1\n respawn_ticks: 60\n - id: cosmic_identifier\n quantity: 1\n respawn_ticks: 60\n - id: eco_identifier\n quantity: 1\n respawn_ticks: 60\n - id: chaos_identifier\n quantity: 1\n respawn_ticks: 60\n - id: bio_identifier\n quantity: 1\n respawn_ticks: 60\n - id: nature_identifier\n quantity: 1\n respawn_ticks: 60\n - id: law_identifier\n quantity: 1\n respawn_ticks: 60\n - id: death_identifier\n quantity: 1\n respawn_ticks: 60\n - id: blood_identifier\n quantity: 1\n respawn_ticks: 60\n - id: grimy_guam\n quantity: 5\n respawn_ticks: 60\n - id: vial_of_water\n quantity: 5\n respawn_ticks: 60\n - id: eye_of_newt\n quantity: 5\n respawn_ticks: 60\nmobs:\n - id: newbie_trainer\n - id: general_store_clerk\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:52:31-04:00","description":"unlink 9999930 down 999991 (reverse)","file_path":"data/rooms/example_unused/town/9999930.yaml","old_content":"name: \"Above Town Square\"\ndescription: \"The central square of Lumbridge. A fountain gurgles peacefully in the center. Paths lead west toward the gathering grounds and east toward the production district.\"\nexits:\n down: 999991\n","new_content":"id: 9999930\nname: Above Town Square\ncolor: \"\"\ndescription:\n - text: The central square of Lumbridge. A fountain gurgles peacefully in the center. Paths lead west toward the gathering grounds and east toward the production district.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:52:44-04:00","description":"unlink 99999150 north 15","file_path":"data/rooms/example_unused/wilderness/99999150.yaml","old_content":"name: \"Hydroponics Bay\"\ndescription: \"A large enclosed area with climate-controlled growing stations. {34}Lush green patches{/} of soil are laid out in neat rows under artificial UV lamps. A {94}tool shed{/} stands near the entrance. Exits lead to specialized growing areas.\"\nexits:\n north: 15\n east: 151\n south: 152\nobjects:\n - id: tool_shed\nitem_spawns:\n - id: rake\n quantity: 1\n respawn_ticks: 120\n - id: spade\n quantity: 1\n respawn_ticks: 120\n - id: watering_can\n quantity: 1\n respawn_ticks: 120\n - id: plant_cure\n quantity: 3\n respawn_ticks: 200\n - id: guam_seed\n quantity: 5\n respawn_ticks: 300\n - id: potato_seed\n quantity: 10\n respawn_ticks: 300\n - id: onion_seed\n quantity: 10\n respawn_ticks: 300\n","new_content":"id: 99999150\nname: Hydroponics Bay\ncolor: \"\"\ndescription:\n - text: A large enclosed area with climate-controlled growing stations. {34}Lush green patches{/} of soil are laid out in neat rows under artificial UV lamps. A {94}tool shed{/} stands near the entrance. Exits lead to specialized growing areas.\nexits:\n east:\n room: 151\n south:\n room: 152\nobjects:\n - id: tool_shed\nitem_spawns:\n - id: rake\n quantity: 1\n respawn_ticks: 120\n - id: spade\n quantity: 1\n respawn_ticks: 120\n - id: watering_can\n quantity: 1\n respawn_ticks: 120\n - id: plant_cure\n quantity: 3\n respawn_ticks: 200\n - id: guam_seed\n quantity: 5\n respawn_ticks: 300\n - id: potato_seed\n quantity: 10\n respawn_ticks: 300\n - id: onion_seed\n quantity: 10\n respawn_ticks: 300\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:52:50-04:00","description":"unlink 99999151 west 150","file_path":"data/rooms/example_unused/wilderness/99999151.yaml","old_content":"name: \"Herb Garden\"\ndescription: \"A dedicated section of the hydroponics bay for growing herbs. {28}Herb patches{/} are arranged in two rows under specialized grow lights. The air here smells faintly of fresh vegetation.\"\nexits:\n west: 150\nobjects:\n - id: herb_patch\n - id: herb_patch\n - id: herb_patch\n - id: herb_patch\n","new_content":"id: 99999151\nname: Herb Garden\ncolor: \"\"\ndescription:\n - text: A dedicated section of the hydroponics bay for growing herbs. {28}Herb patches{/} are arranged in two rows under specialized grow lights. The air here smells faintly of fresh vegetation.\nexits: {}\nobjects:\n - id: herb_patch\n - id: herb_patch\n - id: herb_patch\n - id: herb_patch\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:53:08-04:00","description":"unlink 9999915 south 99999150","file_path":"data/rooms/example_unused/town/9999915.yaml","old_content":"name: \"Pharmacy Lab\"\ndescription: \"Shelves lined with glass vials, dried herbs, and bubbling cauldrons. This area is not yet accessible.\"\nexits:\n east: 9999916\n west: 9999914\n south: 99999150\nmobs:\n - id: lesser_drone\n - id: lesser_drone\n","new_content":"id: 9999915\nname: Pharmacy Lab\ncolor: \"\"\ndescription:\n - text: Shelves lined with glass vials, dried herbs, and bubbling cauldrons. This area is not yet accessible.\nexits:\n east:\n room: 9999916\n west:\n room: 9999914\nobjects: []\nitem_spawns: []\nmobs:\n - id: lesser_drone\n - id: lesser_drone\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:53:08-04:00","description":"unlink 99999150 north 9999915 (reverse)","file_path":"data/rooms/example_unused/wilderness/99999150.yaml","old_content":"id: 99999150\nname: Hydroponics Bay\ncolor: \"\"\ndescription:\n - text: A large enclosed area with climate-controlled growing stations. {34}Lush green patches{/} of soil are laid out in neat rows under artificial UV lamps. A {94}tool shed{/} stands near the entrance. Exits lead to specialized growing areas.\nexits:\n east:\n room: 151\n south:\n room: 152\nobjects:\n - id: tool_shed\nitem_spawns:\n - id: rake\n quantity: 1\n respawn_ticks: 120\n - id: spade\n quantity: 1\n respawn_ticks: 120\n - id: watering_can\n quantity: 1\n respawn_ticks: 120\n - id: plant_cure\n quantity: 3\n respawn_ticks: 200\n - id: guam_seed\n quantity: 5\n respawn_ticks: 300\n - id: potato_seed\n quantity: 10\n respawn_ticks: 300\n - id: onion_seed\n quantity: 10\n respawn_ticks: 300\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999150\nname: Hydroponics Bay\ncolor: \"\"\ndescription:\n - text: A large enclosed area with climate-controlled growing stations. {34}Lush green patches{/} of soil are laid out in neat rows under artificial UV lamps. A {94}tool shed{/} stands near the entrance. Exits lead to specialized growing areas.\nexits:\n east:\n room: 151\n south:\n room: 152\nobjects:\n - id: tool_shed\nitem_spawns:\n - id: rake\n quantity: 1\n respawn_ticks: 120\n - id: spade\n quantity: 1\n respawn_ticks: 120\n - id: watering_can\n quantity: 1\n respawn_ticks: 120\n - id: plant_cure\n quantity: 3\n respawn_ticks: 200\n - id: guam_seed\n quantity: 5\n respawn_ticks: 300\n - id: potato_seed\n quantity: 10\n respawn_ticks: 300\n - id: onion_seed\n quantity: 10\n respawn_ticks: 300\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:53:30-04:00","description":"unlink 99999170 south 16","file_path":"data/rooms/example_unused/wilderness/99999170.yaml","old_content":"name: \"Local Neighborhood\"\ndescription: \"A quiet cul-de-sac of modest homes, each with a small garden plot. An estate directory terminal glows in the center, listing residents and property information.\"\nexits:\n south: 16\nobjects:\n - id: estate_directory\n","new_content":"id: 99999170\nname: Local Neighborhood\ncolor: \"\"\ndescription:\n - text: A quiet cul-de-sac of modest homes, each with a small garden plot. An estate directory terminal glows in the center, listing residents and property information.\nexits: {}\nobjects:\n - id: estate_directory\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:53:33-04:00","description":"unlink 99999171 west 16","file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"name: \"Lumberyard\"\ndescription: \"Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\"\nexits:\n west: 16\nmobs:\n - id: sawmill_operator\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:57:05-04:00","description":"create room 1005","file_path":"data/rooms/intro/1005.yaml","old_content":"","new_content":"exits:\n south: 2001\nid: 1005\nname: 'Room #1005'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/intro/2001.yaml","old_content":"block_transport: false\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nhazard: \"\"\nid: 2001\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\n - id: flight_attendant_copy\nname: Test Room\nobjects:\n - aliases: []\n description:\n - text: YOU FOUND HIM\n hidden: true\n name: hidden guy\n - id: tree\non_enter: []\ntriggers: []\n","new_content":"id: 2001\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n north:\n room: 1005\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nobjects:\n - name: hidden guy\n hidden: true\n description:\n - text: YOU FOUND HIM\n - id: tree\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\n - id: flight_attendant_copy\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T16:57:06-04:00","description":"delete room 1005 (cleaned 1 exits)","file_path":"data/rooms/intro/1005.yaml","old_content":"exits:\n south: 2001\nid: 1005\nname: 'Room #1005'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/intro/2001.yaml","old_content":"id: 2001\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n north:\n room: 1005\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nobjects:\n - name: hidden guy\n hidden: true\n description:\n - text: YOU FOUND HIM\n - id: tree\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\n - id: flight_attendant_copy\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 2001\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2002\n south:\n room: 2006\n southeast:\n room: 2005\n west:\n room: 1001\nobjects:\n - name: hidden guy\n hidden: true\n description:\n - text: YOU FOUND HIM\n - id: tree\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 1\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 1\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 1\nmobs:\n - id: man\n - id: flight_attendant_copy\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T16:57:08-04:00","description":"unlink 2004 northwest 2002","file_path":"data/rooms/intro/2004.yaml","old_content":"id: 2004\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n north:\n room: 2003\n northwest:\n room: 2002\n west:\n room: 2005\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 2004\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n north:\n room: 2003\n west:\n room: 2005\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:57:08-04:00","description":"unlink 2002 southeast 2004 (reverse)","file_path":"data/rooms/intro/2002.yaml","old_content":"id: 2002\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2003\n southeast:\n room: 2004\n west:\n room: 2001\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 2002\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2003\n west:\n room: 2001\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:57:09-04:00","description":"link 2004 northwest 2002","file_path":"data/rooms/intro/2004.yaml","old_content":"id: 2004\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n north:\n room: 2003\n west:\n room: 2005\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 2004\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n north:\n room: 2003\n northwest:\n room: 2002\n west:\n room: 2005\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:57:09-04:00","description":"link 2002 southeast 2004 (reverse)","file_path":"data/rooms/intro/2002.yaml","old_content":"id: 2002\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2003\n west:\n room: 2001\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 2002\nname: Test Room\ncolor: \"\"\ndescription:\n - text: It's a test room\nexits:\n east:\n room: 2003\n southeast:\n room: 2004\n west:\n room: 2001\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:58:04-04:00","description":"unlink 999994 north 999995","file_path":"data/rooms/example_unused/town/999994.yaml","old_content":"name: \"Woodcutting Glade\"\ndescription: \"A sunny glade at the edge of the forest. A sturdy tree stands here, perfect for practicing woodcutting. A solid rock formation near the edge of the glade looks like it could provide cover.\"\nexits:\n east: 999996\n north: 999995\n west: 999992\nobjects:\n - id: tree\n - id: tree\n - id: tree\n - id: tree\n - id: simple_rock\n - id: tutorial_lever\nmobs:\n - id: rat\n - id: rat\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 60\n - id: matches\n quantity: 100\n respawn_ticks: 120\n - id: firesteel\n quantity: 1\n respawn_ticks: 120\n - id: lighter\n quantity: 1\n respawn_ticks: 120\n - id: shortbow\n quantity: 1\n respawn_ticks: 60\n - id: bronze_arrow\n quantity: 100\n respawn_ticks: 60\n","new_content":"id: 999994\nname: Woodcutting Glade\ncolor: \"\"\ndescription:\n - text: A sunny glade at the edge of the forest. A sturdy tree stands here, perfect for practicing woodcutting. A solid rock formation near the edge of the glade looks like it could provide cover.\nexits:\n east:\n room: 999996\n west:\n room: 999992\nobjects:\n - id: tree\n - id: tree\n - id: tree\n - id: tree\n - id: simple_rock\n - id: tutorial_lever\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 60\n - id: matches\n quantity: 100\n respawn_ticks: 120\n - id: firesteel\n quantity: 1\n respawn_ticks: 120\n - id: lighter\n quantity: 1\n respawn_ticks: 120\n - id: shortbow\n quantity: 1\n respawn_ticks: 60\n - id: bronze_arrow\n quantity: 100\n respawn_ticks: 60\nmobs:\n - id: rat\n - id: rat\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:58:04-04:00","description":"unlink 999995 south 999994 (reverse)","file_path":"data/rooms/example_unused/town/999995.yaml","old_content":"name: \"Oak Grove\"\ndescription: \"A stand of young oak trees. The wood here is tougher but more valuable.\"\nexits:\n south: 999994\nobjects:\n - id: oak_tree\nitem_spawns:\n - id: iron_axe\n quantity: 1\n respawn_ticks: 60\n","new_content":"id: 999995\nname: Oak Grove\ncolor: \"\"\ndescription:\n - text: A stand of young oak trees. The wood here is tougher but more valuable.\nexits: {}\nobjects:\n - id: oak_tree\nitem_spawns:\n - id: iron_axe\n quantity: 1\n respawn_ticks: 60\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:58:18-04:00","description":"link 999995 south 999994","file_path":"data/rooms/example_unused/town/999995.yaml","old_content":"id: 999995\nname: Oak Grove\ncolor: \"\"\ndescription:\n - text: A stand of young oak trees. The wood here is tougher but more valuable.\nexits: {}\nobjects:\n - id: oak_tree\nitem_spawns:\n - id: iron_axe\n quantity: 1\n respawn_ticks: 60\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 999995\nname: Oak Grove\ncolor: \"\"\ndescription:\n - text: A stand of young oak trees. The wood here is tougher but more valuable.\nexits:\n south:\n room: 999994\nobjects:\n - id: oak_tree\nitem_spawns:\n - id: iron_axe\n quantity: 1\n respawn_ticks: 60\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:58:18-04:00","description":"link 999994 north 999995 (reverse)","file_path":"data/rooms/example_unused/town/999994.yaml","old_content":"id: 999994\nname: Woodcutting Glade\ncolor: \"\"\ndescription:\n - text: A sunny glade at the edge of the forest. A sturdy tree stands here, perfect for practicing woodcutting. A solid rock formation near the edge of the glade looks like it could provide cover.\nexits:\n east:\n room: 999996\n west:\n room: 999992\nobjects:\n - id: tree\n - id: tree\n - id: tree\n - id: tree\n - id: simple_rock\n - id: tutorial_lever\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 60\n - id: matches\n quantity: 100\n respawn_ticks: 120\n - id: firesteel\n quantity: 1\n respawn_ticks: 120\n - id: lighter\n quantity: 1\n respawn_ticks: 120\n - id: shortbow\n quantity: 1\n respawn_ticks: 60\n - id: bronze_arrow\n quantity: 100\n respawn_ticks: 60\nmobs:\n - id: rat\n - id: rat\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 999994\nname: Woodcutting Glade\ncolor: \"\"\ndescription:\n - text: A sunny glade at the edge of the forest. A sturdy tree stands here, perfect for practicing woodcutting. A solid rock formation near the edge of the glade looks like it could provide cover.\nexits:\n east:\n room: 999996\n north:\n room: 999995\n west:\n room: 999992\nobjects:\n - id: tree\n - id: tree\n - id: tree\n - id: tree\n - id: simple_rock\n - id: tutorial_lever\nitem_spawns:\n - id: bronze_axe\n quantity: 1\n respawn_ticks: 60\n - id: matches\n quantity: 100\n respawn_ticks: 120\n - id: firesteel\n quantity: 1\n respawn_ticks: 120\n - id: lighter\n quantity: 1\n respawn_ticks: 120\n - id: shortbow\n quantity: 1\n respawn_ticks: 60\n - id: bronze_arrow\n quantity: 100\n respawn_ticks: 60\nmobs:\n - id: rat\n - id: rat\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T16:58:57-04:00","description":"create room 99999153","file_path":"data/rooms/example_unused/wilderness/99999153.yaml","old_content":"","new_content":"exits:\n north: 99999171\nid: 99999153\nname: 'Room #99999153'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n south:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T16:58:58-04:00","description":"delete room 99999153 (cleaned 1 exits)","file_path":"data/rooms/example_unused/wilderness/99999153.yaml","old_content":"exits:\n north: 99999171\nid: 99999153\nname: 'Room #99999153'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n south:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:27:58-04:00","description":"create room 99999153","file_path":"data/rooms/example_unused/wilderness/99999153.yaml","old_content":"","new_content":"exits:\n west: 99999171\nid: 99999153\nname: 'Room #99999153'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:28:04-04:00","description":"create room 99999154","file_path":"data/rooms/example_unused/wilderness/99999154.yaml","old_content":"","new_content":"exits:\n southeast: 99999153\nid: 99999154\nname: 'Room #99999154'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999153.yaml","old_content":"exits:\n west: 99999171\nid: 99999153\nname: 'Room #99999153'\n","new_content":"id: 99999153\nname: 'Room #99999153'\ncolor: \"\"\ndescription: []\nexits:\n northwest:\n room: 99999154\n west:\n room: 99999171\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:31:35-04:00","description":"unlink 99999154 southeast 99999153","file_path":"data/rooms/example_unused/wilderness/99999154.yaml","old_content":"exits:\n southeast: 99999153\nid: 99999154\nname: 'Room #99999154'\n","new_content":"id: 99999154\nname: 'Room #99999154'\ncolor: \"\"\ndescription: []\nexits: {}\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T17:31:35-04:00","description":"unlink 99999153 northwest 99999154 (reverse)","file_path":"data/rooms/example_unused/wilderness/99999153.yaml","old_content":"id: 99999153\nname: 'Room #99999153'\ncolor: \"\"\ndescription: []\nexits:\n northwest:\n room: 99999154\n west:\n room: 99999171\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999153\nname: 'Room #99999153'\ncolor: \"\"\ndescription: []\nexits:\n west:\n room: 99999171\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T17:33:11-04:00","description":"create room 99999155","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"","new_content":"exits:\n north: 99999171\nid: 99999155\nname: 'Room #99999155'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\n south:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:33:13-04:00","description":"delete room 99999155 (cleaned 1 exits)","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"exits:\n north: 99999171\nid: 99999155\nname: 'Room #99999155'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\n south:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:34:04-04:00","description":"create room 99999155","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"","new_content":"exits:\n north: 99999171\nid: 99999155\nname: 'Room #99999155'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\n south:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:34:06-04:00","description":"delete room 99999155 (cleaned 1 exits)","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"exits:\n north: 99999171\nid: 99999155\nname: 'Room #99999155'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\n south:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:41:30-04:00","description":"rename duplicate room data/rooms/1002.yaml to ID 123","file_path":"/home/workhorse/projects/thehouseoficarus/data/rooms/1002.yaml","new_file_path":"/home/workhorse/projects/thehouseoficarus/data/rooms/123.yaml","old_content":"name: \"Landing Pad\"\ndescription:\n - condition:\n player_flag: 1002_intro_done\n not: true\n text: \"A large, circular, concrete landing pad sits in the middle of a blue ocean with a transport shuttle taking up nearly all of the walkable area. A crowd of perhaps a dozen people are shambling out of a squat, doorless building to the north. A sign above the entryway reads \\\"Processing\\\"\"\n - text: \"A large, circular, concrete landing pad sits empty in the middle of a blue ocean that stretches to the horizon. North is a concrete path through a squat, doorless building with sign above the entryway reading \\\"Processing\\\"\"\nobjects:\n - name: crowd of people\n aliases: [line, group, passengers]\n hidden: true\n description:\n - condition:\n all_of:\n - player_flag: 1002_intro_done\n not: true\n - player_flag: 1002_lined_up\n text: \"A mass of people still onto the crowded platform, blocking your exit!\"\n - condition:\n all_of:\n - player_flag: 1002_intro_done\n not: true\n - player_flag: 1002_lined_up\n not: true\n text: \"A dozen or so passengers ready to leave, all with luggage. Their eyes are a mix of impatience, anxiety, and perhaps suspicion.\"\n - name: landing craft\n aliases: [shuttle, ship]\n hidden: true\n description:\n - condition:\n player_flag: 1002_intro_done\n not: true\n text: \"The small white craft has short, cute wings, a wide snub-nosed cockpit, and the rear hatch opened into a staircase. The low hum of its power plant vibrates the platform as it idles. You might guess it's a 95 ton Type-QS Passenger Shuttle. Just a guess though.\"\n - name: pilot\n hidden: true\n description:\n - condition:\n all_of:\n - player_flag: 1002_intro_done\n not: true\n - player_flag: 1002_lined_up\n text: \"The pilot stands straight as if about to escort royalty looking down his nose a bit at the passengers. He is quickly and professionally checking tickets.\"\n - name: building\n aliases: [processing]\n description: \"A building with no door on this side that looks like a giant cup of tea spilled towards you. It's built from large chunks of gray rock that must've come from the surface of Vesta.\"\n - name: sign\n description: \"The sign simply says 'Processing' in bold red letters. Beneath in smaller text it says 'Welcome to Vesta', seemingly added afterwards to try to give the sign some warmth.\"\nexits:\n up:\n room: 1001\n condition:\n player_flag: always_false\n blocked_message: \"You have no ticket, or reason, to leave Vesta.\"\n north:\n room: 1003\n condition:\n player_flag: 1002_lined_up\n blocked_message: \"A mass of people is still pouring out of the building!\"\n set_player_flags:\n 1002_intro_done: true\non_enter:\n - condition:\n player_flag: 1002_lined_up\n not: true\n delay: 7\n message: \"A young boy the crowd openly look you up and down a little bemused, as if you're heading the wrong direction.\"\n - condition:\n player_flag: 1002_lined_up\n not: true\n delay: 7\n message: \"The pilot pops out of the hatch of the craft and calls out \\\"Shuttle to Passenger Barge Denali. Tickets out, please! Nice and orderly!\\\"\"\n - condition:\n player_flag: 1002_lined_up\n not: true\n delay: 7\n message: \"The people all shuffle into a line, dragging their luggage out of the path to clear the way for you.\"\n set_player_flags:\n 1002_lined_up: true\n","new_content":"description:\n - condition:\n not: true\n player_flag: 1002_intro_done\n text: A large, circular, concrete landing pad sits in the middle of a blue ocean with a transport shuttle taking up nearly all of the walkable area. A crowd of perhaps a dozen people are shambling out of a squat, doorless building to the north. A sign above the entryway reads \"Processing\"\n - text: A large, circular, concrete landing pad sits empty in the middle of a blue ocean that stretches to the horizon. North is a concrete path through a squat, doorless building with sign above the entryway reading \"Processing\"\nexits:\n north:\n blocked_message: A mass of people is still pouring out of the building!\n condition:\n player_flag: 1002_lined_up\n room: 1003\n set_player_flags:\n 1002_intro_done: true\n up:\n blocked_message: You have no ticket, or reason, to leave Vesta.\n condition:\n player_flag: always_false\n room: 1001\nid: 123\nname: Landing Pad\nobjects:\n - aliases:\n - line\n - group\n - passengers\n description:\n - condition:\n all_of:\n - not: true\n player_flag: 1002_intro_done\n - player_flag: 1002_lined_up\n text: A mass of people still onto the crowded platform, blocking your exit!\n - condition:\n all_of:\n - not: true\n player_flag: 1002_intro_done\n - not: true\n player_flag: 1002_lined_up\n text: A dozen or so passengers ready to leave, all with luggage. Their eyes are a mix of impatience, anxiety, and perhaps suspicion.\n hidden: true\n name: crowd of people\n - aliases:\n - shuttle\n - ship\n description:\n - condition:\n not: true\n player_flag: 1002_intro_done\n text: The small white craft has short, cute wings, a wide snub-nosed cockpit, and the rear hatch opened into a staircase. The low hum of its power plant vibrates the platform as it idles. You might guess it's a 95 ton Type-QS Passenger Shuttle. Just a guess though.\n hidden: true\n name: landing craft\n - description:\n - condition:\n all_of:\n - not: true\n player_flag: 1002_intro_done\n - player_flag: 1002_lined_up\n text: The pilot stands straight as if about to escort royalty looking down his nose a bit at the passengers. He is quickly and professionally checking tickets.\n hidden: true\n name: pilot\n - aliases:\n - processing\n description: A building with no door on this side that looks like a giant cup of tea spilled towards you. It's built from large chunks of gray rock that must've come from the surface of Vesta.\n name: building\n - description: The sign simply says 'Processing' in bold red letters. Beneath in smaller text it says 'Welcome to Vesta', seemingly added afterwards to try to give the sign some warmth.\n name: sign\non_enter:\n - condition:\n not: true\n player_flag: 1002_lined_up\n delay: 7\n message: A young boy the crowd openly look you up and down a little bemused, as if you're heading the wrong direction.\n - condition:\n not: true\n player_flag: 1002_lined_up\n delay: 7\n message: The pilot pops out of the hatch of the craft and calls out \"Shuttle to Passenger Barge Denali. Tickets out, please! Nice and orderly!\"\n - condition:\n not: true\n player_flag: 1002_lined_up\n delay: 7\n message: The people all shuffle into a line, dragging their luggage out of the path to clear the way for you.\n set_player_flags:\n 1002_lined_up: true\n","is_delete":false,"is_create":false},{"time":"2026-07-03T17:41:44-04:00","description":"delete duplicate room file data/rooms/1001.yaml","file_path":"/home/workhorse/projects/thehouseoficarus/data/rooms/1001.yaml","old_content":"block_transport: true\ncolor: \"\"\ndescription:\n - text: |-\n A dim, windowless shuttle interior with a few uncomfortable rows of steel seats facing forward. A large framed sign hangs next to the closed cockpit door. The piston-powered staircase is firmly closed at the rear of the craft.\n\n A dim, windowless shuttle interior with a few uncomfortable rows of steel seats facing forward. A large {11}framed sign{/} hangs next to the closed cockpit door. A piston-powered staircase leads down out the back of the small craft with a smiling attendant ready to help disembark.\nexits:\n down:\n blocked_message: The piston-powered staircase is firmly closed.\n condition:\n all_of: []\n any_of: []\n flag: \"\"\n has_item: \"\"\n min_credits: 0\n not: false\n player_flag: 1001_touchdown\n value: null\n room: 1002\n east:\n room: 2001\nhazard: \"\"\nid: 1001\nitem_spawns: []\nmobs:\n - id: flight_attendant\nname: Inside Transport Shuttle\nobjects:\n - description:\n - text: \"We hope you enjoy your trip on our shuttle! Your pilot is [TYLER].\\n\\nWhen you arrive at your final destination, please be aware of the following basic commands:\\n\\n{0B bold}Movement:{/} {0A}north{/}, {0A}south{/}, {0A}east{/}, {0A}west{/}, {0A}up{/}, {0A}down{/}\\n{0B bold}Look:{/} {0A}look{/}, {0A}look \u003citem/object/mob\u003e{/}, and {0A}map{/}\\n{0B bold}Items:{/} {0A}inv{/} to see your 28-slot inventory\\n {0A}get \u003citem\u003e{/}, {0A}drop \u003citem\u003e{/}, {0A}wear \u003citem\u003e{/}, {0A}remove \u003citem\u003e{/}\\n {0A}use \u003citem\u003e on \u003citem/object\u003e{/}\\n {0A}eq{/} for equiped gear\\n{0B bold}Comms:{/} {0A}talk \u003cmob\u003e{/} for NPC chat\\n {0A}say \u003cmsg\u003e{/} and {0A}global \u003cmsg\u003e{/} for human chat\\n{0B bold}Character:{/} {0A}score{/} and {0A}skills{/} for stats. \\n{0B bold}Combat{/} {0A}attack \u003cmob\u003e{/}\\n{0B bold}Skills{/} Many skills have shortcuts like {0A}mine{/}, {0A}fish{/}, or {0A}chop{/}\\n{0B bold}Options{/} {0A}options{/} for a list of account options\\n {0A}options \u003copt\u003e \u003cvalue\u003e{/} to change an option\\n\\nType {0C bold}what{/} for a list of possible common actions\\n\\nMake sure to check the {0A}help{/} pages, especially {0A}help newplayer{/}!\"\n hidden: true\n name: framed sign\n on_look:\n credits: 0\n give_item: \"\"\n heal: 0\n reputation_cost: 0\n set_flags: {}\n set_player_flags:\n 1001_look_sign: true\n take_item: \"\"\n teleport: 0\n - description:\n - text: A sturdy, locked steel door that keeps passengers out of the cockpit. There is a tiny, thin window at eye level.\n hidden: true\n name: door\n - description:\n - text: A thick trim with rounded bolt heads frames the tiny window. It looks like it was cut into the door at some point, potentially as a simple replacement to computerized security systems. Inside the cockpit there's a pilot finishing up landing procedures on a large panel of analog instruments.\n hidden: true\n name: window\n - aliases:\n - cockpit\n description:\n - text: The cramped cockpit is surrounded by buttons, swiches, dials, and analog gauges. The parts are a mix of technologies from the last century. Part of the panel is obscured by a draped cloth as if to hide it from view. Odd.\n hidden: true\n name: instrument panel\n - aliases: []\n description:\n - text: That's the guy who took you from the Passenger Barge Denali down here to Vesta. A middle-aged man in a neat white jumpsuit with a matching white sort of conductor's hat. He's following a written procedure checklist and seems to take his job seriously.\n hidden: true\n name: pilot\non_enter:\n - broadcast: \"\"\n broadcast_global: \"\"\n condition:\n all_of: []\n any_of: []\n flag: \"\"\n has_item: \"\"\n min_credits: 0\n not: true\n player_flag: 1001_welcome\n value: null\n delay: 5\n despawn_mob: \"\"\n give_item: \"\"\n heal: 0\n message: '{0B bold}Welcome to The House of Icarus{/}'\n set_flags: {}\n set_player_flags: {}\n spawn_mob: null\n take_item: \"\"\n teleport: 0\n - broadcast: \"\"\n broadcast_global: \"\"\n condition:\n all_of: []\n any_of: []\n flag: \"\"\n has_item: \"\"\n min_credits: 0\n not: true\n player_flag: 1001_welcome\n value: null\n delay: 7\n despawn_mob: \"\"\n give_item: \"\"\n heal: 0\n message: '{0B}Type{/} {0A}look sign{/} {0B}or{/} {0A}talk attendant{/} {0B}to get started{/}'\n set_flags: {}\n set_player_flags:\n 1001_welcome: true\n spawn_mob: null\n take_item: \"\"\n teleport: 0\n - broadcast: \"\"\n broadcast_global: \"\"\n condition:\n all_of: []\n any_of: []\n flag: \"\"\n has_item: \"\"\n min_credits: 0\n not: true\n player_flag: 1001_welcome\n value: null\n delay: 7\n despawn_mob: \"\"\n give_item: \"\"\n heal: 0\n message: '{0B}Type{/} {0A}help newplayer{/} {0B}for the new player''s guide. That''s it. Explore and have fun.{/}'\n set_flags: {}\n set_player_flags: {}\n spawn_mob: null\n take_item: \"\"\n teleport: 0\ntriggers:\n - id: \"\"\n on_flag: \"\"\n on_player_flag: 1001_look_sign\n room: 0\n steps:\n - broadcast: \"\"\n broadcast_global: \"\"\n delay: 5\n despawn_mob: \"\"\n give_item: \"\"\n heal: 0\n message: The cabin shakes as the small craft touches down\n set_flags: {}\n set_player_flags: {}\n spawn_mob: null\n take_item: \"\"\n teleport: 0\n - broadcast: \"\"\n broadcast_global: \"\"\n delay: 5\n despawn_mob: \"\"\n give_item: \"\"\n heal: 0\n message: The pistons hiss as the rear staircase opens\n set_flags: {}\n set_player_flags: {}\n spawn_mob: null\n take_item: \"\"\n teleport: 0\n - broadcast: \"\"\n broadcast_global: \"\"\n delay: 0\n despawn_mob: \"\"\n give_item: \"\"\n heal: 0\n message: \"\"\n set_flags: {}\n set_player_flags:\n 1001_touchdown: true\n spawn_mob: null\n take_item: \"\"\n teleport: 0\n value: null\n","new_content":"","is_delete":true,"is_create":false},{"time":"2026-07-03T17:43:10-04:00","description":"create room 99999155","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"","new_content":"exits:\n north: 99999171\nid: 99999155\nname: 'Room #99999155'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\n south:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:43:15-04:00","description":"delete room 99999155 (cleaned 1 exits)","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"exits:\n north: 99999171\nid: 99999155\nname: 'Room #99999155'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\n south:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:43:37-04:00","description":"create room 99999155","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"","new_content":"exits:\n north: 99999171\nid: 99999155\nname: 'Room #99999155'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\n south:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:43:38-04:00","description":"delete room 99999155 (cleaned 1 exits)","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"exits:\n north: 99999171\nid: 99999155\nname: 'Room #99999155'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\n south:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:45:07-04:00","description":"unlink 99999150 south 152","file_path":"data/rooms/example_unused/wilderness/99999150.yaml","old_content":"id: 99999150\nname: Hydroponics Bay\ncolor: \"\"\ndescription:\n - text: A large enclosed area with climate-controlled growing stations. {34}Lush green patches{/} of soil are laid out in neat rows under artificial UV lamps. A {94}tool shed{/} stands near the entrance. Exits lead to specialized growing areas.\nexits:\n east:\n room: 151\n south:\n room: 152\nobjects:\n - id: tool_shed\nitem_spawns:\n - id: rake\n quantity: 1\n respawn_ticks: 120\n - id: spade\n quantity: 1\n respawn_ticks: 120\n - id: watering_can\n quantity: 1\n respawn_ticks: 120\n - id: plant_cure\n quantity: 3\n respawn_ticks: 200\n - id: guam_seed\n quantity: 5\n respawn_ticks: 300\n - id: potato_seed\n quantity: 10\n respawn_ticks: 300\n - id: onion_seed\n quantity: 10\n respawn_ticks: 300\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999150\nname: Hydroponics Bay\ncolor: \"\"\ndescription:\n - text: A large enclosed area with climate-controlled growing stations. {34}Lush green patches{/} of soil are laid out in neat rows under artificial UV lamps. A {94}tool shed{/} stands near the entrance. Exits lead to specialized growing areas.\nexits:\n east:\n room: 151\nobjects:\n - id: tool_shed\nitem_spawns:\n - id: rake\n quantity: 1\n respawn_ticks: 120\n - id: spade\n quantity: 1\n respawn_ticks: 120\n - id: watering_can\n quantity: 1\n respawn_ticks: 120\n - id: plant_cure\n quantity: 3\n respawn_ticks: 200\n - id: guam_seed\n quantity: 5\n respawn_ticks: 300\n - id: potato_seed\n quantity: 10\n respawn_ticks: 300\n - id: onion_seed\n quantity: 10\n respawn_ticks: 300\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T17:45:09-04:00","description":"unlink 99999150 east 151","file_path":"data/rooms/example_unused/wilderness/99999150.yaml","old_content":"id: 99999150\nname: Hydroponics Bay\ncolor: \"\"\ndescription:\n - text: A large enclosed area with climate-controlled growing stations. {34}Lush green patches{/} of soil are laid out in neat rows under artificial UV lamps. A {94}tool shed{/} stands near the entrance. Exits lead to specialized growing areas.\nexits:\n east:\n room: 151\nobjects:\n - id: tool_shed\nitem_spawns:\n - id: rake\n quantity: 1\n respawn_ticks: 120\n - id: spade\n quantity: 1\n respawn_ticks: 120\n - id: watering_can\n quantity: 1\n respawn_ticks: 120\n - id: plant_cure\n quantity: 3\n respawn_ticks: 200\n - id: guam_seed\n quantity: 5\n respawn_ticks: 300\n - id: potato_seed\n quantity: 10\n respawn_ticks: 300\n - id: onion_seed\n quantity: 10\n respawn_ticks: 300\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999150\nname: Hydroponics Bay\ncolor: \"\"\ndescription:\n - text: A large enclosed area with climate-controlled growing stations. {34}Lush green patches{/} of soil are laid out in neat rows under artificial UV lamps. A {94}tool shed{/} stands near the entrance. Exits lead to specialized growing areas.\nexits: {}\nobjects:\n - id: tool_shed\nitem_spawns:\n - id: rake\n quantity: 1\n respawn_ticks: 120\n - id: spade\n quantity: 1\n respawn_ticks: 120\n - id: watering_can\n quantity: 1\n respawn_ticks: 120\n - id: plant_cure\n quantity: 3\n respawn_ticks: 200\n - id: guam_seed\n quantity: 5\n respawn_ticks: 300\n - id: potato_seed\n quantity: 10\n respawn_ticks: 300\n - id: onion_seed\n quantity: 10\n respawn_ticks: 300\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T17:51:12-04:00","description":"create room 99999155","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"","new_content":"exits:\n north: 99999171\nid: 99999155\nname: 'Room #99999155'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\n south:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:51:13-04:00","description":"delete room 99999155 (cleaned 1 exits)","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"exits:\n north: 99999171\nid: 99999155\nname: 'Room #99999155'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\n south:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T17:59:42-04:00","description":"unlink 99999170 99999171","file_path":"data/rooms/example_unused/wilderness/99999170.yaml","old_content":"id: 99999170\nname: Local Neighborhood\ncolor: \"\"\ndescription:\n - text: A quiet cul-de-sac of modest homes, each with a small garden plot. An estate directory terminal glows in the center, listing residents and property information.\nexits: {}\nobjects:\n - id: estate_directory\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999170\nname: Local Neighborhood\ncolor: \"\"\ndescription:\n - text: A quiet cul-de-sac of modest homes, each with a small garden plot. An estate directory terminal glows in the center, listing residents and property information.\nexits: {}\nobjects:\n - id: estate_directory\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T17:59:42-04:00","description":"unlink 99999171 99999170 (reverse)","file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T17:59:43-04:00","description":"unlink 99999171 east 99999153","file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999153\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T17:59:43-04:00","description":"unlink 99999153 west 99999171 (reverse)","file_path":"data/rooms/example_unused/wilderness/99999153.yaml","old_content":"id: 99999153\nname: 'Room #99999153'\ncolor: \"\"\ndescription: []\nexits:\n west:\n room: 99999171\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999153\nname: 'Room #99999153'\ncolor: \"\"\ndescription: []\nexits: {}\nobjects: []\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T18:28:11-04:00","description":"create room 1000000","file_path":"data/rooms/example_unused/town/1000000.yaml","old_content":"","new_content":"exits:\n southeast: 999993\nid: 1000000\nname: 'Room #1000000'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/town/999993.yaml","old_content":"name: \"Fly Fishing Pool\"\ndescription: \"A calm pool where insects hover over the water. Perfect for fly fishing.\"\nexits:\n south: 999992\nobjects:\n - id: fly_fishing_spot\nitem_spawns:\n - id: fly_fishing_rod\n quantity: 1\n respawn_ticks: 30\n - id: feather\n quantity: 15\n respawn_ticks: 60\n","new_content":"id: 999993\nname: Fly Fishing Pool\ncolor: \"\"\ndescription:\n - text: A calm pool where insects hover over the water. Perfect for fly fishing.\nexits:\n northwest:\n room: 1000000\n south:\n room: 999992\nobjects:\n - id: fly_fishing_spot\nitem_spawns:\n - id: fly_fishing_rod\n quantity: 1\n respawn_ticks: 30\n - id: feather\n quantity: 15\n respawn_ticks: 60\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T18:28:23-04:00","description":"delete room 1000000 (cleaned 1 exits)","file_path":"data/rooms/example_unused/town/1000000.yaml","old_content":"exits:\n southeast: 999993\nid: 1000000\nname: 'Room #1000000'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/town/999993.yaml","old_content":"id: 999993\nname: Fly Fishing Pool\ncolor: \"\"\ndescription:\n - text: A calm pool where insects hover over the water. Perfect for fly fishing.\nexits:\n northwest:\n room: 1000000\n south:\n room: 999992\nobjects:\n - id: fly_fishing_spot\nitem_spawns:\n - id: fly_fishing_rod\n quantity: 1\n respawn_ticks: 30\n - id: feather\n quantity: 15\n respawn_ticks: 60\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 999993\nname: Fly Fishing Pool\ncolor: \"\"\ndescription:\n - text: A calm pool where insects hover over the water. Perfect for fly fishing.\nexits:\n south:\n room: 999992\nobjects:\n - id: fly_fishing_spot\nitem_spawns:\n - id: fly_fishing_rod\n quantity: 1\n respawn_ticks: 30\n - id: feather\n quantity: 15\n respawn_ticks: 60\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T18:28:32-04:00","description":"create room 1000000","file_path":"data/rooms/example_unused/town/1000000.yaml","old_content":"","new_content":"exits:\n north: 9999914\nid: 1000000\nname: 'Room #1000000'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/town/9999914.yaml","old_content":"name: \"Fletching Bench\"\ndescription: \"A workbench covered in wood shavings, feathers, and arrowheads. Racks of unfinished bows line the walls, and a pile of bowstrings sits in the corner.\"\nexits:\n east: 9999915\n west: 9999913\nmobs:\n - id: moss_giant\nitem_spawns:\n - id: bowstring\n quantity: 5\n respawn_ticks: 50\n - id: knife\n quantity: 1\n respawn_ticks: 50\n - id: chisel\n quantity: 1\n respawn_ticks: 50\n","new_content":"id: 9999914\nname: Fletching Bench\ncolor: \"\"\ndescription:\n - text: A workbench covered in wood shavings, feathers, and arrowheads. Racks of unfinished bows line the walls, and a pile of bowstrings sits in the corner.\nexits:\n east:\n room: 9999915\n south:\n room: 1000000\n west:\n room: 9999913\nobjects: []\nitem_spawns:\n - id: bowstring\n quantity: 5\n respawn_ticks: 50\n - id: knife\n quantity: 1\n respawn_ticks: 50\n - id: chisel\n quantity: 1\n respawn_ticks: 50\nmobs:\n - id: moss_giant\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T18:28:35-04:00","description":"delete room 1000000 (cleaned 1 exits)","file_path":"data/rooms/example_unused/town/1000000.yaml","old_content":"exits:\n north: 9999914\nid: 1000000\nname: 'Room #1000000'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/town/9999914.yaml","old_content":"id: 9999914\nname: Fletching Bench\ncolor: \"\"\ndescription:\n - text: A workbench covered in wood shavings, feathers, and arrowheads. Racks of unfinished bows line the walls, and a pile of bowstrings sits in the corner.\nexits:\n east:\n room: 9999915\n south:\n room: 1000000\n west:\n room: 9999913\nobjects: []\nitem_spawns:\n - id: bowstring\n quantity: 5\n respawn_ticks: 50\n - id: knife\n quantity: 1\n respawn_ticks: 50\n - id: chisel\n quantity: 1\n respawn_ticks: 50\nmobs:\n - id: moss_giant\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 9999914\nname: Fletching Bench\ncolor: \"\"\ndescription:\n - text: A workbench covered in wood shavings, feathers, and arrowheads. Racks of unfinished bows line the walls, and a pile of bowstrings sits in the corner.\nexits:\n east:\n room: 9999915\n west:\n room: 9999913\nobjects: []\nitem_spawns:\n - id: bowstring\n quantity: 5\n respawn_ticks: 50\n - id: knife\n quantity: 1\n respawn_ticks: 50\n - id: chisel\n quantity: 1\n respawn_ticks: 50\nmobs:\n - id: moss_giant\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T18:28:38-04:00","description":"unlink 99999170 99999171","file_path":"data/rooms/example_unused/wilderness/99999170.yaml","old_content":"id: 99999170\nname: Local Neighborhood\ncolor: \"\"\ndescription:\n - text: A quiet cul-de-sac of modest homes, each with a small garden plot. An estate directory terminal glows in the center, listing residents and property information.\nexits: {}\nobjects:\n - id: estate_directory\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999170\nname: Local Neighborhood\ncolor: \"\"\ndescription:\n - text: A quiet cul-de-sac of modest homes, each with a small garden plot. An estate directory terminal glows in the center, listing residents and property information.\nexits: {}\nobjects:\n - id: estate_directory\nitem_spawns: []\nmobs: []\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T18:28:38-04:00","description":"unlink 99999171 99999170 (reverse)","file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","is_delete":false,"is_create":false},{"time":"2026-07-03T18:29:14-04:00","description":"create room 99999155","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"","new_content":"exits:\n south: 99999171\nid: 99999155\nname: 'Room #99999155'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n north:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T18:29:17-04:00","description":"delete room 99999155 (cleaned 1 exits)","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"exits:\n south: 99999171\nid: 99999155\nname: 'Room #99999155'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n north:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T18:29:17-04:00","description":"create room 99999155","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"","new_content":"exits:\n west: 99999171\nid: 99999155\nname: 'Room #99999155'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T18:29:18-04:00","description":"delete room 99999155 (cleaned 1 exits)","file_path":"data/rooms/example_unused/wilderness/99999155.yaml","old_content":"exits:\n west: 99999171\nid: 99999155\nname: 'Room #99999155'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/wilderness/99999171.yaml","old_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits:\n east:\n room: 99999155\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 99999171\nname: Lumberyard\ncolor: \"\"\ndescription:\n - text: Stacks of fresh-cut timber fill the air with the scent of pine. A massive industrial sawmill hums in the background, operated by a burly worker.\nexits: {}\nobjects: []\nitem_spawns: []\nmobs:\n - id: sawmill_operator\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T18:29:20-04:00","description":"create room 1000000","file_path":"data/rooms/example_unused/town/1000000.yaml","old_content":"","new_content":"exits:\n south: 9999911\nid: 1000000\nname: 'Room #1000000'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/town/9999911.yaml","old_content":"name: \"Kitchen\"\ndescription: \"A warm kitchen with a stone hearth and wooden counters. A large iron cooking range dominates one wall, and shelves are stocked with ingredients.\"\nexits:\n east: 9999912\n west: 9999910\nobjects:\n - id: cooking_range\nmobs:\n - id: zombie\nitem_spawns:\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 200\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 200\n","new_content":"id: 9999911\nname: Kitchen\ncolor: \"\"\ndescription:\n - text: A warm kitchen with a stone hearth and wooden counters. A large iron cooking range dominates one wall, and shelves are stocked with ingredients.\nexits:\n east:\n room: 9999912\n north:\n room: 1000000\n west:\n room: 9999910\nobjects:\n - id: cooking_range\nitem_spawns:\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 200\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 200\nmobs:\n - id: zombie\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T18:29:21-04:00","description":"delete room 1000000 (cleaned 1 exits)","file_path":"data/rooms/example_unused/town/1000000.yaml","old_content":"exits:\n south: 9999911\nid: 1000000\nname: 'Room #1000000'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/town/9999911.yaml","old_content":"id: 9999911\nname: Kitchen\ncolor: \"\"\ndescription:\n - text: A warm kitchen with a stone hearth and wooden counters. A large iron cooking range dominates one wall, and shelves are stocked with ingredients.\nexits:\n east:\n room: 9999912\n north:\n room: 1000000\n west:\n room: 9999910\nobjects:\n - id: cooking_range\nitem_spawns:\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 200\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 200\nmobs:\n - id: zombie\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 9999911\nname: Kitchen\ncolor: \"\"\ndescription:\n - text: A warm kitchen with a stone hearth and wooden counters. A large iron cooking range dominates one wall, and shelves are stocked with ingredients.\nexits:\n east:\n room: 9999912\n west:\n room: 9999910\nobjects:\n - id: cooking_range\nitem_spawns:\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 200\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 200\nmobs:\n - id: zombie\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T18:29:23-04:00","description":"create room 1000000","file_path":"data/rooms/example_unused/town/1000000.yaml","old_content":"","new_content":"exits:\n south: 9999911\nid: 1000000\nname: 'Room #1000000'\n","is_delete":false,"is_create":true,"extra_files":[{"file_path":"data/rooms/example_unused/town/9999911.yaml","old_content":"id: 9999911\nname: Kitchen\ncolor: \"\"\ndescription:\n - text: A warm kitchen with a stone hearth and wooden counters. A large iron cooking range dominates one wall, and shelves are stocked with ingredients.\nexits:\n east:\n room: 9999912\n west:\n room: 9999910\nobjects:\n - id: cooking_range\nitem_spawns:\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 200\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 200\nmobs:\n - id: zombie\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 9999911\nname: Kitchen\ncolor: \"\"\ndescription:\n - text: A warm kitchen with a stone hearth and wooden counters. A large iron cooking range dominates one wall, and shelves are stocked with ingredients.\nexits:\n east:\n room: 9999912\n north:\n room: 1000000\n west:\n room: 9999910\nobjects:\n - id: cooking_range\nitem_spawns:\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 200\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 200\nmobs:\n - id: zombie\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]},{"time":"2026-07-03T18:29:24-04:00","description":"delete room 1000000 (cleaned 1 exits)","file_path":"data/rooms/example_unused/town/1000000.yaml","old_content":"exits:\n south: 9999911\nid: 1000000\nname: 'Room #1000000'\n","new_content":"","is_delete":true,"is_create":false,"extra_files":[{"file_path":"data/rooms/example_unused/town/9999911.yaml","old_content":"id: 9999911\nname: Kitchen\ncolor: \"\"\ndescription:\n - text: A warm kitchen with a stone hearth and wooden counters. A large iron cooking range dominates one wall, and shelves are stocked with ingredients.\nexits:\n east:\n room: 9999912\n north:\n room: 1000000\n west:\n room: 9999910\nobjects:\n - id: cooking_range\nitem_spawns:\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 200\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 200\nmobs:\n - id: zombie\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n","new_content":"id: 9999911\nname: Kitchen\ncolor: \"\"\ndescription:\n - text: A warm kitchen with a stone hearth and wooden counters. A large iron cooking range dominates one wall, and shelves are stocked with ingredients.\nexits:\n east:\n room: 9999912\n west:\n room: 9999910\nobjects:\n - id: cooking_range\nitem_spawns:\n - id: bucket_of_water\n quantity: 1\n respawn_ticks: 200\n - id: pot_of_flour\n quantity: 1\n respawn_ticks: 200\nmobs:\n - id: zombie\non_enter: []\nhazard: \"\"\nblock_transport: false\ntriggers: []\n"}]}],"redo":null} \ No newline at end of file
+{"history":[{"time":"2026-07-03T20:51:13-04:00","description":"create room 2","file_path":"data/rooms/22222/2.yaml","old_content":"","new_content":"description: An empty room.\nname: New Room\n","is_delete":false,"is_create":true},{"time":"2026-07-03T20:51:15-04:00","description":"delete room 2 (cleaned 0 exits)","file_path":"data/rooms/22222/2.yaml","old_content":"description: An empty room.\nname: New Room\n","new_content":"","is_delete":true,"is_create":false}],"redo":null} \ No newline at end of file
diff --git a/data/rooms/1001.yaml b/data/rooms/1001.yaml
deleted file mode 100644
index 6403b12..0000000
--- a/data/rooms/1001.yaml
+++ /dev/null
@@ -1,85 +0,0 @@
-description:
- - condition:
- not: true
- player_flag: 1002_intro_done
- text: A large, circular, concrete landing pad sits in the middle of a blue ocean with a transport shuttle taking up nearly all of the walkable area. A crowd of perhaps a dozen people are shambling out of a squat, doorless building to the north. A sign above the entryway reads "Processing"
- - text: A large, circular, concrete landing pad sits empty in the middle of a blue ocean that stretches to the horizon. North is a concrete path through a squat, doorless building with sign above the entryway reading "Processing"
-exits:
- north:
- blocked_message: A mass of people is still pouring out of the building!
- condition:
- player_flag: 1002_lined_up
- room: 1003
- set_player_flags:
- 1002_intro_done: true
- up:
- blocked_message: You have no ticket, or reason, to leave Vesta.
- condition:
- player_flag: always_false
- room: 1001
-id: 123
-name: Landing Pad
-objects:
- - aliases:
- - line
- - group
- - passengers
- description:
- - condition:
- all_of:
- - not: true
- player_flag: 1002_intro_done
- - player_flag: 1002_lined_up
- text: A mass of people still onto the crowded platform, blocking your exit!
- - condition:
- all_of:
- - not: true
- player_flag: 1002_intro_done
- - not: true
- player_flag: 1002_lined_up
- text: A dozen or so passengers ready to leave, all with luggage. Their eyes are a mix of impatience, anxiety, and perhaps suspicion.
- hidden: true
- name: crowd of people
- - aliases:
- - shuttle
- - ship
- description:
- - condition:
- not: true
- player_flag: 1002_intro_done
- text: The small white craft has short, cute wings, a wide snub-nosed cockpit, and the rear hatch opened into a staircase. The low hum of its power plant vibrates the platform as it idles. You might guess it's a 95 ton Type-QS Passenger Shuttle. Just a guess though.
- hidden: true
- name: landing craft
- - description:
- - condition:
- all_of:
- - not: true
- player_flag: 1002_intro_done
- - player_flag: 1002_lined_up
- text: The pilot stands straight as if about to escort royalty looking down his nose a bit at the passengers. He is quickly and professionally checking tickets.
- hidden: true
- name: pilot
- - aliases:
- - processing
- description: A building with no door on this side that looks like a giant cup of tea spilled towards you. It's built from large chunks of gray rock that must've come from the surface of Vesta.
- name: building
- - description: The sign simply says 'Processing' in bold red letters. Beneath in smaller text it says 'Welcome to Vesta', seemingly added afterwards to try to give the sign some warmth.
- name: sign
-on_enter:
- - condition:
- not: true
- player_flag: 1002_lined_up
- delay: 7
- message: A young boy the crowd openly look you up and down a little bemused, as if you're heading the wrong direction.
- - condition:
- not: true
- player_flag: 1002_lined_up
- delay: 7
- message: The pilot pops out of the hatch of the craft and calls out "Shuttle to Passenger Barge Denali. Tickets out, please! Nice and orderly!"
- - condition:
- not: true
- player_flag: 1002_lined_up
- delay: 7
- message: The people all shuffle into a line, dragging their luggage out of the path to clear the way for you.
- set_player_flags:
- 1002_lined_up: true
diff --git a/data/rooms/example_unused/agility/99999200.yaml b/data/rooms/example_unused/agility2/99999200.yaml
index 7397d5d..7397d5d 100644
--- a/data/rooms/example_unused/agility/99999200.yaml
+++ b/data/rooms/example_unused/agility2/99999200.yaml
diff --git a/data/rooms/example_unused/agility/99999201.yaml b/data/rooms/example_unused/agility2/99999201.yaml
index fcc25c1..fcc25c1 100644
--- a/data/rooms/example_unused/agility/99999201.yaml
+++ b/data/rooms/example_unused/agility2/99999201.yaml
diff --git a/data/rooms/example_unused/agility/99999202.yaml b/data/rooms/example_unused/agility2/99999202.yaml
index 7b4c6f9..7b4c6f9 100644
--- a/data/rooms/example_unused/agility/99999202.yaml
+++ b/data/rooms/example_unused/agility2/99999202.yaml
diff --git a/data/rooms/example_unused/agility/99999203.yaml b/data/rooms/example_unused/agility2/99999203.yaml
index f1d1a7f..f1d1a7f 100644
--- a/data/rooms/example_unused/agility/99999203.yaml
+++ b/data/rooms/example_unused/agility2/99999203.yaml
diff --git a/data/rooms/example_unused/agility/99999204.yaml b/data/rooms/example_unused/agility2/99999204.yaml
index 1555dbc..1555dbc 100644
--- a/data/rooms/example_unused/agility/99999204.yaml
+++ b/data/rooms/example_unused/agility2/99999204.yaml
diff --git a/data/rooms/example_unused/agility/99999205.yaml b/data/rooms/example_unused/agility2/99999205.yaml
index 2fc75c2..2fc75c2 100644
--- a/data/rooms/example_unused/agility/99999205.yaml
+++ b/data/rooms/example_unused/agility2/99999205.yaml
diff --git a/data/rooms/example_unused/agility/99999210.yaml b/data/rooms/example_unused/agility2/99999210.yaml
index de1d928..de1d928 100644
--- a/data/rooms/example_unused/agility/99999210.yaml
+++ b/data/rooms/example_unused/agility2/99999210.yaml
diff --git a/data/rooms/example_unused/agility/99999211.yaml b/data/rooms/example_unused/agility2/99999211.yaml
index 88fa6a9..88fa6a9 100644
--- a/data/rooms/example_unused/agility/99999211.yaml
+++ b/data/rooms/example_unused/agility2/99999211.yaml
diff --git a/data/rooms/example_unused/agility/99999212.yaml b/data/rooms/example_unused/agility2/99999212.yaml
index 2477956..2477956 100644
--- a/data/rooms/example_unused/agility/99999212.yaml
+++ b/data/rooms/example_unused/agility2/99999212.yaml
diff --git a/data/rooms/example_unused/agility/99999213.yaml b/data/rooms/example_unused/agility2/99999213.yaml
index 8918dbe..8918dbe 100644
--- a/data/rooms/example_unused/agility/99999213.yaml
+++ b/data/rooms/example_unused/agility2/99999213.yaml
diff --git a/data/rooms/example_unused/agility/99999214.yaml b/data/rooms/example_unused/agility2/99999214.yaml
index 13f759a..13f759a 100644
--- a/data/rooms/example_unused/agility/99999214.yaml
+++ b/data/rooms/example_unused/agility2/99999214.yaml
diff --git a/data/rooms/example_unused/agility/99999215.yaml b/data/rooms/example_unused/agility2/99999215.yaml
index 062d4a1..062d4a1 100644
--- a/data/rooms/example_unused/agility/99999215.yaml
+++ b/data/rooms/example_unused/agility2/99999215.yaml
diff --git a/data/rooms/example_unused/agility/99999220.yaml b/data/rooms/example_unused/agility2/99999220.yaml
index 7fa4b8d..7fa4b8d 100644
--- a/data/rooms/example_unused/agility/99999220.yaml
+++ b/data/rooms/example_unused/agility2/99999220.yaml
diff --git a/data/rooms/example_unused/agility/99999221.yaml b/data/rooms/example_unused/agility2/99999221.yaml
index 010bd44..010bd44 100644
--- a/data/rooms/example_unused/agility/99999221.yaml
+++ b/data/rooms/example_unused/agility2/99999221.yaml
diff --git a/data/rooms/example_unused/agility/99999222.yaml b/data/rooms/example_unused/agility2/99999222.yaml
index 0f8f4b9..0f8f4b9 100644
--- a/data/rooms/example_unused/agility/99999222.yaml
+++ b/data/rooms/example_unused/agility2/99999222.yaml
diff --git a/data/rooms/example_unused/agility/99999223.yaml b/data/rooms/example_unused/agility2/99999223.yaml
index 5eccf14..5eccf14 100644
--- a/data/rooms/example_unused/agility/99999223.yaml
+++ b/data/rooms/example_unused/agility2/99999223.yaml
diff --git a/data/rooms/example_unused/agility/99999224.yaml b/data/rooms/example_unused/agility2/99999224.yaml
index 274c425..274c425 100644
--- a/data/rooms/example_unused/agility/99999224.yaml
+++ b/data/rooms/example_unused/agility2/99999224.yaml
diff --git a/data/rooms/example_unused/agility/99999225.yaml b/data/rooms/example_unused/agility2/99999225.yaml
index e4aa70e..e4aa70e 100644
--- a/data/rooms/example_unused/agility/99999225.yaml
+++ b/data/rooms/example_unused/agility2/99999225.yaml
diff --git a/data/rooms/example_unused/agility/99999226.yaml b/data/rooms/example_unused/agility2/99999226.yaml
index 6c35e88..6c35e88 100644
--- a/data/rooms/example_unused/agility/99999226.yaml
+++ b/data/rooms/example_unused/agility2/99999226.yaml
diff --git a/data/rooms/example_unused/player_housing/99999300.yaml b/data/rooms/example_unused/player_housing/99999300.yaml
index 986d1dd..ae9cbf9 100644
--- a/data/rooms/example_unused/player_housing/99999300.yaml
+++ b/data/rooms/example_unused/player_housing/99999300.yaml
@@ -1,7 +1,16 @@
-name: "Player House: Entrance Hall"
-description: "A cozy entrance hall with polished floors and warm lighting. A welcome mat greets visitors at the door."
+id: 99999300
+name: 'Player House: Entrance Hall'
+color: ""
+description:
+ - text: A cozy entrance hall with polished floors and warm lighting. A welcome mat greets visitors at the door.
exits:
- south: 99999170
- north: 99999301
+ north:
+ room: 99999301
objects:
- id: charging_station
+item_spawns: []
+mobs: []
+on_enter: []
+hazard: ""
+block_transport: false
+triggers: []
diff --git a/data/rooms/example_unused/underground/9999950.yaml b/data/rooms/example_unused/underground/9999950.yaml
deleted file mode 100644
index 8701533..0000000
--- a/data/rooms/example_unused/underground/9999950.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-name: "The Assassin's Den"
-description: "A dimly lit basement accessible through a trapdoor. Tactical maps and bounty posters line the walls. The air smells of gun oil and burnt ozone. {141}The Client{/} sits behind a reinforced desk."
-exits:
- up: 9999931
-mobs:
- - "client"
diff --git a/data/rooms/example_unused/underground2/9999950.yaml b/data/rooms/example_unused/underground2/9999950.yaml
new file mode 100644
index 0000000..3d01f72
--- /dev/null
+++ b/data/rooms/example_unused/underground2/9999950.yaml
@@ -0,0 +1,16 @@
+id: 9999950
+name: The Assassin's Den
+color: ""
+description:
+ - text: A dimly lit basement accessible through a trapdoor. Tactical maps and bounty posters line the walls. The air smells of gun oil and burnt ozone. {141}The Client{/} sits behind a reinforced desk.
+exits:
+ up:
+ room: 9999931
+objects: []
+item_spawns: []
+mobs:
+ - id: client
+on_enter: []
+hazard: ""
+block_transport: false
+triggers: []
diff --git a/data/rooms/example_unused/underground/9999951.yaml b/data/rooms/example_unused/underground2/9999951.yaml
index 9c7707a..9c7707a 100644
--- a/data/rooms/example_unused/underground/9999951.yaml
+++ b/data/rooms/example_unused/underground2/9999951.yaml
diff --git a/data/rooms/example_unused/underground/9999952.yaml b/data/rooms/example_unused/underground2/9999952.yaml
index 40c89a9..40c89a9 100644
--- a/data/rooms/example_unused/underground/9999952.yaml
+++ b/data/rooms/example_unused/underground2/9999952.yaml
diff --git a/data/rooms/example_unused/underground/9999953.yaml b/data/rooms/example_unused/underground2/9999953.yaml
index 4396cfb..4396cfb 100644
--- a/data/rooms/example_unused/underground/9999953.yaml
+++ b/data/rooms/example_unused/underground2/9999953.yaml
diff --git a/data/rooms/example_unused/underground/9999954.yaml b/data/rooms/example_unused/underground2/9999954.yaml
index 8348801..8348801 100644
--- a/data/rooms/example_unused/underground/9999954.yaml
+++ b/data/rooms/example_unused/underground2/9999954.yaml
diff --git a/data/rooms/example_unused/underground/9999955.yaml b/data/rooms/example_unused/underground2/9999955.yaml
index 2cce00a..2cce00a 100644
--- a/data/rooms/example_unused/underground/9999955.yaml
+++ b/data/rooms/example_unused/underground2/9999955.yaml
diff --git a/data/rooms/example_unused/underground/9999956.yaml b/data/rooms/example_unused/underground2/9999956.yaml
index b5996ae..b5996ae 100644
--- a/data/rooms/example_unused/underground/9999956.yaml
+++ b/data/rooms/example_unused/underground2/9999956.yaml
diff --git a/data/rooms/example_unused/underground/9999957.yaml b/data/rooms/example_unused/underground2/9999957.yaml
index be20359..be20359 100644
--- a/data/rooms/example_unused/underground/9999957.yaml
+++ b/data/rooms/example_unused/underground2/9999957.yaml
diff --git a/data/rooms/example_unused/underground/9999958.yaml b/data/rooms/example_unused/underground2/9999958.yaml
index 09bd869..09bd869 100644
--- a/data/rooms/example_unused/underground/9999958.yaml
+++ b/data/rooms/example_unused/underground2/9999958.yaml
diff --git a/data/rooms/example_unused/underground/9999959.yaml b/data/rooms/example_unused/underground2/9999959.yaml
index 29ca4fc..29ca4fc 100644
--- a/data/rooms/example_unused/underground/9999959.yaml
+++ b/data/rooms/example_unused/underground2/9999959.yaml
diff --git a/data/rooms/example_unused/underground/9999960.yaml b/data/rooms/example_unused/underground2/9999960.yaml
index 56cca24..56cca24 100644
--- a/data/rooms/example_unused/underground/9999960.yaml
+++ b/data/rooms/example_unused/underground2/9999960.yaml
diff --git a/data/rooms/example_unused/underground/9999961.yaml b/data/rooms/example_unused/underground2/9999961.yaml
index 2d1e75c..2d1e75c 100644
--- a/data/rooms/example_unused/underground/9999961.yaml
+++ b/data/rooms/example_unused/underground2/9999961.yaml
diff --git a/data/rooms/example_unused/underground/9999962.yaml b/data/rooms/example_unused/underground2/9999962.yaml
index b5b89c4..b5b89c4 100644
--- a/data/rooms/example_unused/underground/9999962.yaml
+++ b/data/rooms/example_unused/underground2/9999962.yaml
diff --git a/data/rooms/example_unused/underground/9999963.yaml b/data/rooms/example_unused/underground2/9999963.yaml
index fca468e..fca468e 100644
--- a/data/rooms/example_unused/underground/9999963.yaml
+++ b/data/rooms/example_unused/underground2/9999963.yaml
diff --git a/data/rooms/example_unused/underground/9999964.yaml b/data/rooms/example_unused/underground2/9999964.yaml
index 4e74383..4e74383 100644
--- a/data/rooms/example_unused/underground/9999964.yaml
+++ b/data/rooms/example_unused/underground2/9999964.yaml
diff --git a/data/rooms/example_unused/underground/9999965.yaml b/data/rooms/example_unused/underground2/9999965.yaml
index 424a4cd..424a4cd 100644
--- a/data/rooms/example_unused/underground/9999965.yaml
+++ b/data/rooms/example_unused/underground2/9999965.yaml
diff --git a/data/rooms/example_unused/underground/9999966.yaml b/data/rooms/example_unused/underground2/9999966.yaml
index a876453..a876453 100644
--- a/data/rooms/example_unused/underground/9999966.yaml
+++ b/data/rooms/example_unused/underground2/9999966.yaml
diff --git a/data/rooms/example_unused/underground/9999967.yaml b/data/rooms/example_unused/underground2/9999967.yaml
index 494fe9e..494fe9e 100644
--- a/data/rooms/example_unused/underground/9999967.yaml
+++ b/data/rooms/example_unused/underground2/9999967.yaml
diff --git a/data/rooms/example_unused/underground/9999968.yaml b/data/rooms/example_unused/underground2/9999968.yaml
index 6fe1aa0..6fe1aa0 100644
--- a/data/rooms/example_unused/underground/9999968.yaml
+++ b/data/rooms/example_unused/underground2/9999968.yaml
diff --git a/data/rooms/test222/1.yaml b/data/rooms/test222/1.yaml
new file mode 100644
index 0000000..e110b2e
--- /dev/null
+++ b/data/rooms/test222/1.yaml
@@ -0,0 +1,2 @@
+description: An empty room.
+name: New Room