neelthee-mansion 3.19.13__py3-none-any.whl → 3.19.15__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
neelthee_mansion/Rooms.py CHANGED
@@ -5,32 +5,35 @@ from .Books import *
5
5
  global KEY, ROOMS
6
6
 
7
7
  KEY = [
8
- '█ = wall',
9
- '║ = door',
10
- '☼ = drawers',
11
- '╦ = rack',
12
- 'Γ = stand',
13
- '╖ = stairs',
14
- 'æ = cupboards',
15
- '√ = fireplace',
16
- '∩ = gate',
17
- '┬ = table',
18
- 'í = hedge',
19
- '∟ = railing',
20
- '↨ = sofa',
21
- 'š = storage device',
22
- '¥ = tree',
23
- '§ = bed',
24
- '╬ = wardrobe',
25
- 'π = desk',
8
+ "█ = wall",
9
+ "║ = door",
10
+ "☼ = drawers",
11
+ "╦ = rack",
12
+ "Γ = stand",
13
+ "╖ = stairs",
14
+ "æ = cupboards",
15
+ "√ = fireplace",
16
+ "∩ = gate",
17
+ "┬ = table",
18
+ "í = hedge",
19
+ "∟ = railing",
20
+ "↨ = sofa",
21
+ "š = storage device",
22
+ "¥ = tree",
23
+ "§ = bed",
24
+ "╬ = wardrobe",
25
+ "π = desk",
26
26
  ]
27
27
 
28
+
28
29
  class RandomEvent:
29
- def __init__(self,
30
- name='Event name',
31
- probability=0.0, # Probability of the event running (0.1 = 10% chance)
32
- condition=lambda player: True, # Condition under which the event can occur
33
- effect=lambda player: None): # Define the effect of the event
30
+ def __init__(
31
+ self,
32
+ name="Event name",
33
+ probability=0.0, # Probability of the event running (0.1 = 10% chance)
34
+ condition=lambda player: True, # Condition under which the event can occur
35
+ effect=lambda player: None,
36
+ ): # Define the effect of the event
34
37
  self.name = name
35
38
  self.probability = probability
36
39
  self.condition = condition
@@ -39,62 +42,71 @@ class RandomEvent:
39
42
  def check_and_trigger(self, player):
40
43
  """Check if the event can occur based on its condition and probability, and trigger the effect."""
41
44
  import random
45
+
42
46
  if self.condition(player) and random.random() < self.probability:
43
47
  self.effect(player)
44
48
 
49
+
45
50
  class Door:
46
51
  def __init__(self, RoomName, KeyCode=None) -> None:
47
52
  self.destination = RoomName
48
53
  self.lock = Lock(KeyCode) if KeyCode else None
49
54
  self.reveal_count = 0
50
- self.CurentRevealStr = "=" * len(self.lock.key_code) if isinstance(self.lock, Lock) else ""
55
+ self.CurentRevealStr = (
56
+ "=" * len(self.lock.key_code) if isinstance(self.lock, Lock) else ""
57
+ )
51
58
 
52
59
  def Unlock(self, key: Key, player):
53
60
  return self.lock.unlock(key, player)
54
-
61
+
55
62
  def GetRoom(self, currentroom):
56
63
  if not self.lock.is_locked if isinstance(self.lock, Lock) else True:
57
64
  return self.destination
58
65
  else:
59
66
  type_text("The door is locked.")
60
67
  return currentroom
61
-
68
+
62
69
  def __str__(self) -> str:
63
70
  return self.CurentRevealStr
64
71
 
72
+
65
73
  class SwitchDoor(Door):
66
74
  def __init__(self, RoomOneName, RoomTwoName, KeyCode=None) -> None:
67
75
  super().__init__(RoomOneName, KeyCode)
68
76
  self.switch_destination = RoomTwoName
69
-
77
+
70
78
  def GetRoom(self, currentroom):
71
79
  if not self.lock.is_locked if isinstance(self.lock, Lock) else True:
72
80
  return self.destination
73
81
  else:
74
82
  return self.switch_destination
75
83
 
84
+
76
85
  global map_dict, positions
77
86
 
87
+
78
88
  def string_to_2d_list(map_str):
79
89
  map_str = map_str.strip() # Remove leading/trailing whitespace
80
- return [list(line) for line in map_str.split('\n')]
90
+ return [list(line) for line in map_str.split("\n")]
91
+
81
92
 
82
93
  def SetMapsAndPosiitionsDicts(map_dict, positions):
83
94
  map_dict = {}
84
95
 
85
96
  positions = {}
86
97
  for RoomName, RoomItem in ROOMS.items():
87
- if 'discovered' in RoomItem and 'position' in RoomItem and 'map' in RoomItem:
88
- if RoomItem['discovered']:
89
- map_dict[RoomName] = string_to_2d_list(RoomItem['map'])
90
- positions[RoomName] = RoomItem['position']
98
+ if "discovered" in RoomItem and "position" in RoomItem and "map" in RoomItem:
99
+ if RoomItem["discovered"]:
100
+ map_dict[RoomName] = string_to_2d_list(RoomItem["map"])
101
+ positions[RoomName] = RoomItem["position"]
91
102
  return map_dict, positions
92
103
 
104
+
93
105
  def combine_maps(small_maps, positions: dict):
94
106
  # Check if positions dictionary is empty
95
107
  if not positions:
96
108
  # Return an empty map and a min_z value of 0
97
- return [[[' ']]], 0
109
+ return [[[" "]]], 0
98
110
 
99
111
  # Determine the size of the largest map needed
100
112
  max_z = max(pos[0] for pos in positions.values()) + 1
@@ -102,34 +114,42 @@ def combine_maps(small_maps, positions: dict):
102
114
  total_z = max_z - min_z # Total floors including basements
103
115
  max_row = max(pos[1] for pos in positions.values()) + 9
104
116
  max_col = max(pos[2] for pos in positions.values()) + 9
105
-
117
+
106
118
  # Create a 3D large map with spaces
107
- large_map = [[[' ' for _ in range(max_col)] for _ in range(max_row)] for _ in range(total_z)]
108
-
119
+ large_map = [
120
+ [[" " for _ in range(max_col)] for _ in range(max_row)] for _ in range(total_z)
121
+ ]
122
+
109
123
  # Fill the large map with small maps
110
124
  for name, (z, row_offset, col_offset) in positions.items():
111
125
  small_map = small_maps[name]
112
-
126
+
113
127
  # Adjust for negative z values (basement floors)
114
128
  z_index = z - min_z
115
-
129
+
116
130
  for r in range(9):
117
131
  for c in range(9):
118
132
  large_map[z_index][row_offset + r][col_offset + c] = small_map[r][c]
119
-
133
+
120
134
  return large_map, min_z
121
135
 
136
+
122
137
  def display_map(large_map, min_z):
123
138
  floors = []
124
139
  for z, floor in enumerate(large_map):
125
140
  if z == -min_z:
126
- floor_str = f"Ground Floor:\n" + '\n'.join(''.join(row) for row in floor)
141
+ floor_str = f"Ground Floor:\n" + "\n".join("".join(row) for row in floor)
127
142
  elif z > -min_z:
128
- floor_str = f"Floor {z + min_z}:\n" + '\n'.join(''.join(row) for row in floor)
143
+ floor_str = f"Floor {z + min_z}:\n" + "\n".join(
144
+ "".join(row) for row in floor
145
+ )
129
146
  else:
130
- floor_str = f"Basement {-(-z + min_z)}:\n" + '\n'.join(''.join(row) for row in floor)
147
+ floor_str = f"Basement {-(-z + min_z)}:\n" + "\n".join(
148
+ "".join(row) for row in floor
149
+ )
131
150
  floors.append(floor_str)
132
- return '\n\n'.join(floors)
151
+ return "\n\n".join(floors)
152
+
133
153
 
134
154
  def ShowMap():
135
155
  global map_dict, positions
@@ -142,29 +162,28 @@ map_dict = {}
142
162
 
143
163
  positions = {}
144
164
 
145
- #a dictionary linking a room to other rooms
165
+ # a dictionary linking a room to other rooms
146
166
  ROOMS = {
147
-
148
- 'Hall': {
149
- 'room type': 'house',
150
- 'position': (0, 8, 0),
151
- 'discovered': True,
152
- 'directions': {
153
- 'south': Door('Kitchen'),
154
- 'east': Door('Dining Room'),
155
- 'north': Door('Armoury'),
156
- 'up': Door('Landing'),
157
- 'easter': Door('Cavegame'),
158
- },
159
- 'items': {
160
- 'torch': item('torch'),
161
- },
162
- 'containers': {
163
- 'drawers': container([]),
164
- },
165
- 'info': 'You are in the hall of the house. There is a chest of %*RED*%drawers%*RESET*% against one wall, and flaming %*BLUE*%torch%*RESET*%es on the walls. You hear a \
166
- %*YELLOW*%smash%*RESET*% from the %*GREEN*%south%*RESET*%.',
167
- 'map': '''
167
+ "Hall": {
168
+ "room type": "house",
169
+ "position": (0, 8, 0),
170
+ "discovered": True,
171
+ "directions": {
172
+ "south": Door("Kitchen"),
173
+ "east": Door("Dining Room"),
174
+ "north": Door("Armoury"),
175
+ "up": Door("Landing"),
176
+ "easter": Door("Cavegame"),
177
+ },
178
+ "items": {
179
+ "torch": item("torch"),
180
+ },
181
+ "containers": {
182
+ "drawers": container([]),
183
+ },
184
+ "info": "You are in the hall of the house. There is a chest of %*RED*%drawers%*RESET*% against one wall, and flaming %*BLUE*%torch%*RESET*%es on the walls. You hear a \
185
+ %*YELLOW*%smash%*RESET*% from the %*GREEN*%south%*RESET*%.",
186
+ "map": """
168
187
  ████║████
169
188
  █☼☼ █
170
189
  █ █
@@ -173,49 +192,48 @@ ROOMS = {
173
192
  █ █
174
193
  █╖ █
175
194
  █╖ █
176
- ████║████''',
177
- 'Hints': [
178
- 'Those %*RED*%drawers%*RESET*% look intresting.',
179
- 'I wonder if those %*RED*%drawers%*RESET*% are locked.',
180
- "I wonder if I can get this %*BLUE*%torch%*RESET*% out of it's holder.",
181
- "I wonder what that %*YELLOW*%smash%*RESET*% from the %*GREEN*%south%*RESET*% was.",
182
- "I should probably aviod that %*YELLOW*%smash%*RESET*%ing sound.",
183
- ],
184
- },
185
-
186
- 'Cavegame': {
187
- 'room type': 'easter egg',
188
- 'directions': {
189
- 'back': Door('Hall'),
190
- },
191
- 'info': 'Cavegame, type "go back" to leave.',
192
- },
193
-
194
- 'Kitchen': {
195
- 'room type': 'house',
196
- 'position': (0, 16, 0),
197
- 'discovered': False,
198
- 'directions': {
199
- 'north': Door('Hall'),
200
- 'east': Door('Garden'),
201
- },
202
- 'items': {
203
- 'rations': item('rations'),
204
- },
205
- 'containers': {
206
- 'cupboards': container([item('money-pouch', 'valuable', 10)]),
207
- },
208
- 'creatures stats': [creature(
209
- 'hungry bear',
210
- 7,
211
- 5,
212
- [item('claw', 'valuable', 1)],
213
- 'A large 7ft 8 brown bear that looks hungry',
214
- 'A %*CYAN*%hungry%*RESET*% bear attacks you!',
215
- ),
216
- ],
217
- 'info': 'You are in the kitchen, there are several trashed %*RED*%cupboards%*RESET*%, one of them has a knotted cord sticking out, and a fireplace.',
218
- 'map': '''
195
+ ████║████""",
196
+ "Hints": [
197
+ "Those %*RED*%drawers%*RESET*% look intresting.",
198
+ "I wonder if those %*RED*%drawers%*RESET*% are locked.",
199
+ "I wonder if I can get this %*BLUE*%torch%*RESET*% out of it's holder.",
200
+ "I wonder what that %*YELLOW*%smash%*RESET*% from the %*GREEN*%south%*RESET*% was.",
201
+ "I should probably aviod that %*YELLOW*%smash%*RESET*%ing sound.",
202
+ ],
203
+ },
204
+ "Cavegame": {
205
+ "room type": "easter egg",
206
+ "directions": {
207
+ "back": Door("Hall"),
208
+ },
209
+ "info": 'Cavegame, type "go back" to leave.',
210
+ },
211
+ "Kitchen": {
212
+ "room type": "house",
213
+ "position": (0, 16, 0),
214
+ "discovered": False,
215
+ "directions": {
216
+ "north": Door("Hall"),
217
+ "east": Door("Garden"),
218
+ },
219
+ "items": {
220
+ "rations": item("rations"),
221
+ },
222
+ "containers": {
223
+ "cupboards": container([item("money-pouch", "valuable", 10)]),
224
+ },
225
+ "creatures stats": [
226
+ creature(
227
+ "hungry bear",
228
+ 7,
229
+ 5,
230
+ [item("claw", "valuable", 1)],
231
+ "A large 7ft 8 brown bear that looks hungry",
232
+ "A %*CYAN*%hungry%*RESET*% bear attacks you!",
233
+ ),
234
+ ],
235
+ "info": "You are in the kitchen, there are several trashed %*RED*%cupboards%*RESET*%, one of them has a knotted cord sticking out, and a fireplace.",
236
+ "map": """
219
237
  ████║████
220
238
  █ █
221
239
  █ █
@@ -224,39 +242,40 @@ ROOMS = {
224
242
  █ █
225
243
  █ █
226
244
  █ææææ√ææ█
227
- █████████''',
228
- 'Hints': [
229
- 'I wonder if there is anything salvageable in the %*RED*%cupboards%*RESET*%.',
230
- 'I should probably look around.',
231
- ],
232
- 'random_events': [
233
- RandomEvent(
234
- name='Event name',
235
- probability=0.15, # Adjust this for the probability of the event running (e.g., 0.1 is 10% chance)
236
- condition=lambda player: True, # Condition under which the event can occur
237
- effect=lambda player: ROOMS['Kitchen']['containers']['cupboards'].take_contents(), # Define the effect of the event
238
- )
239
- ],
240
- },
241
-
242
- 'Dining Room': {
243
- 'room type': 'house',
244
- 'position': (0, 8, 8),
245
- 'discovered': False,
246
- 'directions': {
247
- 'west': Door('Hall'),
248
- 'south': Door('Garden'),
249
- 'north': Door('Sitting Room'),
250
- },
251
- 'items': {
252
- '': item('potion'),
253
- },
254
- 'containers': {
255
- 'chandelier': container([item('gem', 'valuable', 50)]),
256
- },
257
- 'info': 'You are in the dining room, there is a dining table with 8 chairs around it in the middle of the room, and a %*RED*%chandelier%*RESET*% on the ceiling. You hear \
258
- %*YELLOW*%ripping%*RESET*% from the %*GREEN*%north%*RESET*%.',
259
- 'map': '''
245
+ █████████""",
246
+ "Hints": [
247
+ "I wonder if there is anything salvageable in the %*RED*%cupboards%*RESET*%.",
248
+ "I should probably look around.",
249
+ ],
250
+ "random_events": [
251
+ RandomEvent(
252
+ name="Event name",
253
+ probability=0.15, # Adjust this for the probability of the event running (e.g., 0.1 is 10% chance)
254
+ condition=lambda player: True, # Condition under which the event can occur
255
+ effect=lambda player: ROOMS["Kitchen"]["containers"][
256
+ "cupboards"
257
+ ].take_contents(), # Define the effect of the event
258
+ )
259
+ ],
260
+ },
261
+ "Dining Room": {
262
+ "room type": "house",
263
+ "position": (0, 8, 8),
264
+ "discovered": False,
265
+ "directions": {
266
+ "west": Door("Hall"),
267
+ "south": Door("Garden"),
268
+ "north": Door("Sitting Room"),
269
+ },
270
+ "items": {
271
+ "": item("potion"),
272
+ },
273
+ "containers": {
274
+ "chandelier": container([item("gem", "valuable", 50)]),
275
+ },
276
+ "info": "You are in the dining room, there is a dining table with 8 chairs around it in the middle of the room, and a %*RED*%chandelier%*RESET*% on the ceiling. You hear \
277
+ %*YELLOW*%ripping%*RESET*% from the %*GREEN*%north%*RESET*%.",
278
+ "map": """
260
279
  ████║████
261
280
  █ █
262
281
  █ █
@@ -265,23 +284,22 @@ ROOMS = {
265
284
  █ ┬┬┬ █
266
285
  █ █
267
286
  █ █
268
- ████║████''',
269
- 'Hints': [
270
- 'I wonder if there is anything in the %*RED*%chandelier.',
271
- 'I wonder if there is anything around the room.',
272
- ],
273
- },
274
-
275
- 'Garden': {
276
- 'room type': 'house',
277
- 'position': (0, 16, 8),
278
- 'discovered': False,
279
- 'directions': {
280
- 'north': Door('Dining Room'),
281
- 'west': Door('Kitchen'),
282
- },
283
- 'info': 'You are in a bright garden you are in a garden with a gate out of the house.',
284
- 'map': '''
287
+ ████║████""",
288
+ "Hints": [
289
+ "I wonder if there is anything in the %*RED*%chandelier.",
290
+ "I wonder if there is anything around the room.",
291
+ ],
292
+ },
293
+ "Garden": {
294
+ "room type": "house",
295
+ "position": (0, 16, 8),
296
+ "discovered": False,
297
+ "directions": {
298
+ "north": Door("Dining Room"),
299
+ "west": Door("Kitchen"),
300
+ },
301
+ "info": "You are in a bright garden you are in a garden with a gate out of the house.",
302
+ "map": """
285
303
  ████║████
286
304
  █ í
287
305
  █ í
@@ -290,29 +308,29 @@ ROOMS = {
290
308
  █ í
291
309
  █ ∩
292
310
  █ í
293
- █íííííííí''',
294
- 'Hints': [
295
- 'I think I need a %*BLUE*%key%*RESET*% for the gate.',
296
- ],
297
- },
298
-
299
- 'Armoury': {
300
- 'room type': 'house',
301
- 'position': (0, 0, 0),
302
- 'discovered': False,
303
- 'directions': {
304
- 'south' : Door('Hall'),
305
- 'east': Door('Sitting Room'),
306
- 'up': Door('Tower Bottom'),
307
- },
308
- 'containers': {
309
- 'racks': container([item('sword', 'weapon', 3)]),
310
- 'stand': container([item('armour')]),
311
- 'storage': container([item('grappling-hook')]),
312
- },
313
- 'info': 'You are in a dimly lit armoury with 3 %*RED*%racks%*RESET*% full of damaged weapons, and a armour %*RED*%stand%*RESET*% with battered armour. \n\
314
- You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW*%ripping%*RESET*% from the %*GREEN*%east%*RESET*%.',
315
- 'map': '''
311
+ █íííííííí""",
312
+ "Hints": [
313
+ "I think I need a %*BLUE*%key%*RESET*% for the gate.",
314
+ ],
315
+ },
316
+ "Armoury": {
317
+ "room type": "house",
318
+ "position": (0, 0, 0),
319
+ "discovered": False,
320
+ "directions": {
321
+ "south": Door("Hall"),
322
+ "east": Door("Sitting Room"),
323
+ "up": Door("Tower Bottom"),
324
+ },
325
+ "containers": {
326
+ "racks": container([item("sword", "weapon", 3)]),
327
+ "stand": container([item("armour")]),
328
+ "storage": container([item("grappling-hook")]),
329
+ },
330
+ "info": "You are in a dimly lit armoury with 3 %*RED*%racks%*RESET*% full of damaged weapons, and a armour %*RED*%stand%*RESET*% with battered armour. \n\
331
+ You notice a "
332
+ "%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW*%ripping%*RESET*% from the %*GREEN*%east%*RESET*%.",
333
+ "map": """
316
334
  █████████
317
335
  █š ╖█
318
336
  █ ╖█
@@ -321,36 +339,36 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
321
339
  █ █
322
340
  █Γ █
323
341
  █ █
324
- ████║████''',
325
- 'Hints': [
326
- 'Maybe there is something salvageable on the %*RED*%racks%*RESET*%.',
327
- 'I wonder if that armour is salvageable.',
328
- ],
329
- },
330
-
331
- 'Sitting Room': {
332
- 'room type': 'house',
333
- 'position': (0, 0, 8),
334
- 'discovered': False,
335
- 'directions': {
336
- 'west': Door('Armoury'),
337
- 'south': Door('Dining Room'),
338
- 'down': Door('Basement 1'),
339
- },
340
- 'creatures stats': [creature(
341
- 'grumpy pig',
342
- 3,
343
- 4,
344
- [item('savaged cushion')],
345
- 'A oxford sandy & black pig with a savaged cushion on it\'s head',
346
- 'A %*CYAN*%grumpy pig%*RESET*% spots you and comes towards you!',
347
- ),
348
- ],
349
- 'containers': {
350
- 'sofas': container([item('cushion')]),
351
- },
352
- 'info': 'You are in a bright sitting room with several %*RED*%sofas%*RESET*%.',
353
- 'map': '''
342
+ ████║████""",
343
+ "Hints": [
344
+ "Maybe there is something salvageable on the %*RED*%racks%*RESET*%.",
345
+ "I wonder if that armour is salvageable.",
346
+ ],
347
+ },
348
+ "Sitting Room": {
349
+ "room type": "house",
350
+ "position": (0, 0, 8),
351
+ "discovered": False,
352
+ "directions": {
353
+ "west": Door("Armoury"),
354
+ "south": Door("Dining Room"),
355
+ "down": Door("Basement 1"),
356
+ },
357
+ "creatures stats": [
358
+ creature(
359
+ "grumpy pig",
360
+ 3,
361
+ 4,
362
+ [item("savaged cushion")],
363
+ "A oxford sandy & black pig with a savaged cushion on it's head",
364
+ "A %*CYAN*%grumpy pig%*RESET*% spots you and comes towards you!",
365
+ ),
366
+ ],
367
+ "containers": {
368
+ "sofas": container([item("cushion")]),
369
+ },
370
+ "info": "You are in a bright sitting room with several %*RED*%sofas%*RESET*%.",
371
+ "map": """
354
372
  █████████
355
373
  █ ╖█
356
374
  █ ↨↨↨ ╖█
@@ -359,29 +377,28 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
359
377
  █ ↨ █
360
378
  █ █
361
379
  █ █
362
- ████║████''',
363
- 'Hints': [
364
- 'That %*CYAN*%pig%*RESET*% seems dangerous.',
365
- 'Those %*RED*%sofas%*RESET*% look comfy.',
366
- "I wonder what's %*GREEN*%down%*RESET*% those stairs.",
367
- ],
368
- },
369
-
370
- 'Landing': {
371
- 'room type': 'house',
372
- 'position': (1, 8, 0),
373
- 'discovered': False,
374
- 'directions': {
375
- 'down': Door('Hall'),
376
- 'north': Door('Tower Bottom'),
377
- 'east': Door('Bedroom'),
378
- 'south': Door('Balcony'),
379
- },
380
- 'containers': {
381
- 'floorboards': container([item('money-pouch', 'valuable', 10)]),
382
- },
383
- 'info': 'You are in a dark landing with creaky %*RED*%floorboards%*RESET*%.',
384
- 'map': '''
380
+ ████║████""",
381
+ "Hints": [
382
+ "That %*CYAN*%pig%*RESET*% seems dangerous.",
383
+ "Those %*RED*%sofas%*RESET*% look comfy.",
384
+ "I wonder what's %*GREEN*%down%*RESET*% those stairs.",
385
+ ],
386
+ },
387
+ "Landing": {
388
+ "room type": "house",
389
+ "position": (1, 8, 0),
390
+ "discovered": False,
391
+ "directions": {
392
+ "down": Door("Hall"),
393
+ "north": Door("Tower Bottom"),
394
+ "east": Door("Bedroom"),
395
+ "south": Door("Balcony"),
396
+ },
397
+ "containers": {
398
+ "floorboards": container([item("money-pouch", "valuable", 10)]),
399
+ },
400
+ "info": "You are in a dark landing with creaky %*RED*%floorboards%*RESET*%.",
401
+ "map": """
385
402
  ████║████
386
403
  █ █
387
404
  █ █
@@ -390,27 +407,24 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
390
407
  █ █
391
408
  █╖ █
392
409
  █╖ █
393
- ████║████''',
394
- 'Hints': [
395
- 'I wonder if I can pry one of the %*RED*%floorboards%*RESET*% back.'
396
- ],
397
- },
398
-
399
- 'Bedroom': {
400
- 'room type': 'house',
401
- 'position': (1, 8, 8),
402
- 'discovered': False,
403
- 'directions': {
404
- 'west': Door('Landing'),
405
- 'north': Door('Office'),
406
- },
407
- 'containers': {
408
- 'bed': container([item('chamber-pot')]),
409
- 'drawers': container([item('waterskin')]),
410
- 'wardrobe': container([item('pig-rod')]),
411
- },
412
- 'info': 'You are in a dark yet airy bedroom, with a double %*RED*%bed%*RESET*%, a chest of %*RED*%drawers%*RESET*%, and a %*RED*%wardrobe%*RESET*%.',
413
- 'map': '''
410
+ ████║████""",
411
+ "Hints": ["I wonder if I can pry one of the %*RED*%floorboards%*RESET*% back."],
412
+ },
413
+ "Bedroom": {
414
+ "room type": "house",
415
+ "position": (1, 8, 8),
416
+ "discovered": False,
417
+ "directions": {
418
+ "west": Door("Landing"),
419
+ "north": Door("Office"),
420
+ },
421
+ "containers": {
422
+ "bed": container([item("chamber-pot")]),
423
+ "drawers": container([item("waterskin")]),
424
+ "wardrobe": container([item("pig-rod")]),
425
+ },
426
+ "info": "You are in a dark yet airy bedroom, with a double %*RED*%bed%*RESET*%, a chest of %*RED*%drawers%*RESET*%, and a %*RED*%wardrobe%*RESET*%.",
427
+ "map": """
414
428
  ████║████
415
429
  █ █
416
430
  █ █
@@ -419,29 +433,35 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
419
433
  █ █
420
434
  █╬ §§█
421
435
  █╬ ☼☼§§█
422
- █████████''',
423
- 'Hints': [
424
- "I wonder what's %*GREEN*%north%*RESET*%.",
425
- 'I wonder if there is anything under the %*RED*%bed%*RESET*%.',
426
- 'I wonder if there is anything in the %*RED*%drawers%*RESET*%.',
427
- "I wonder what's in the %*RED*%wardrobe%*RESET*%.",
428
- ],
429
- },
430
-
431
- 'Office': {
432
- 'room type': 'house',
433
- 'position': (1, 0, 8),
434
- 'discovered': False,
435
- 'directions': {
436
- 'south': Door('Bedroom'),
437
- 'west': Door('Tower Bottom'),
438
- },
439
- 'containers': {
440
- 'storage': container([item('saddle'), item('ink-pot'), item('parchment'), item('knife', 'weapon', 2)]),
441
- 'desk': container([item('quill')]),
442
- },
443
- 'info': 'You are in a bright office with a %*RED*%desk%*RESET*%, several %*RED*%storage%*RESET*% devices, and a lot of windows.',
444
- 'map': '''
436
+ █████████""",
437
+ "Hints": [
438
+ "I wonder what's %*GREEN*%north%*RESET*%.",
439
+ "I wonder if there is anything under the %*RED*%bed%*RESET*%.",
440
+ "I wonder if there is anything in the %*RED*%drawers%*RESET*%.",
441
+ "I wonder what's in the %*RED*%wardrobe%*RESET*%.",
442
+ ],
443
+ },
444
+ "Office": {
445
+ "room type": "house",
446
+ "position": (1, 0, 8),
447
+ "discovered": False,
448
+ "directions": {
449
+ "south": Door("Bedroom"),
450
+ "west": Door("Tower Bottom"),
451
+ },
452
+ "containers": {
453
+ "storage": container(
454
+ [
455
+ item("saddle"),
456
+ item("ink-pot"),
457
+ item("parchment"),
458
+ item("knife", "weapon", 2),
459
+ ]
460
+ ),
461
+ "desk": container([item("quill")]),
462
+ },
463
+ "info": "You are in a bright office with a %*RED*%desk%*RESET*%, several %*RED*%storage%*RESET*% devices, and a lot of windows.",
464
+ "map": """
445
465
  █████████
446
466
  █ š š█
447
467
  █ █
@@ -450,23 +470,22 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
450
470
  █ πš █
451
471
  █š █
452
472
  █ █
453
- ████║████''',
454
- 'Hints': [
455
- "I wonder what's in the %*RED*%storage%*RESET*%, if anything.",
456
- "I wonder what's through the %*GREEN*%south%*RESET*%ern door.",
457
- 'I wonder if there is anything on the %*RED*%desk%*RESET*%.',
458
- ],
459
- },
460
-
461
- 'Balcony': {
462
- 'room type': 'house',
463
- 'position': (1, 16, 0),
464
- 'discovered': False,
465
- 'directions': {
466
- 'north': Door('Landing'),
467
- },
468
- 'info': 'You are on a balcony with an ornate railing. It is a nice day.',
469
- 'map': '''
473
+ ████║████""",
474
+ "Hints": [
475
+ "I wonder what's in the %*RED*%storage%*RESET*%, if anything.",
476
+ "I wonder what's through the %*GREEN*%south%*RESET*%ern door.",
477
+ "I wonder if there is anything on the %*RED*%desk%*RESET*%.",
478
+ ],
479
+ },
480
+ "Balcony": {
481
+ "room type": "house",
482
+ "position": (1, 16, 0),
483
+ "discovered": False,
484
+ "directions": {
485
+ "north": Door("Landing"),
486
+ },
487
+ "info": "You are on a balcony with an ornate railing. It is a nice day.",
488
+ "map": """
470
489
  ████║████
471
490
  ∟ ∟
472
491
  ∟ ∟
@@ -475,24 +494,23 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
475
494
  ∟ ∟
476
495
  ∟ ∟
477
496
  ∟ ∟
478
- ∟∟∟∟∟∟∟∟∟''',
479
- 'Hints': [
480
- 'If I had a %*BLUE*%grappling-hook%*RESET*% I might be able to throw it into the trees and swing down into the forest.',
481
- ],
482
- },
483
-
484
- 'Tower Bottom': {
485
- 'room type': 'house',
486
- 'position': (1, 0, 0),
487
- 'discovered': False,
488
- 'directions': {
489
- 'south': Door('Landing'),
490
- 'east': Door('Office'),
491
- 'down': Door('Armoury'),
492
- 'up': Door('Tower Middle'),
493
- },
494
- 'info': 'You are in the base of a stone tower, there is a spiral staircase going up into the darkness.',
495
- 'map': '''
497
+ ∟∟∟∟∟∟∟∟∟""",
498
+ "Hints": [
499
+ "If I had a %*BLUE*%grappling-hook%*RESET*% I might be able to throw it into the trees and swing down into the forest.",
500
+ ],
501
+ },
502
+ "Tower Bottom": {
503
+ "room type": "house",
504
+ "position": (1, 0, 0),
505
+ "discovered": False,
506
+ "directions": {
507
+ "south": Door("Landing"),
508
+ "east": Door("Office"),
509
+ "down": Door("Armoury"),
510
+ "up": Door("Tower Middle"),
511
+ },
512
+ "info": "You are in the base of a stone tower, there is a spiral staircase going up into the darkness.",
513
+ "map": """
496
514
  █████████
497
515
  █ ╖█
498
516
  █ ╖█
@@ -501,31 +519,32 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
501
519
  █ █
502
520
  █╖ █
503
521
  █╖ █
504
- ████║████''',
505
- 'Hints': [
506
- "I wonder what's %*GREEN*%south%*RESET*%.",
507
- "I wonder what's %*GREEN*%east%*RESET*%.",
508
- "I wonder what's %*GREEN*%up%*RESET*%.",
509
- "I wonder what's %*GREEN*%down%*RESET*%.",
510
- ],
511
- },
512
-
513
- 'Tower Middle': {
514
- 'room type': 'house',
515
- 'position': (2, 0, 0),
516
- 'discovered': False,
517
- 'directions': {
518
- 'down': Door('Tower Bottom'),
519
- 'up': Door('Tower Top'),
520
- },
521
- 'containers': {
522
- 'stone': container([item('money-pouch', 'valuable', 25), Key('key', "629.IdnXwnt")], True),
523
- },
524
- 'items': {
525
- '': item('tome'),
526
- },
527
- 'info': 'You are in the middle of a stone tower. The only light comes from above, through the cracks around the hatch to above.',
528
- 'map': '''
522
+ ████║████""",
523
+ "Hints": [
524
+ "I wonder what's %*GREEN*%south%*RESET*%.",
525
+ "I wonder what's %*GREEN*%east%*RESET*%.",
526
+ "I wonder what's %*GREEN*%up%*RESET*%.",
527
+ "I wonder what's %*GREEN*%down%*RESET*%.",
528
+ ],
529
+ },
530
+ "Tower Middle": {
531
+ "room type": "house",
532
+ "position": (2, 0, 0),
533
+ "discovered": False,
534
+ "directions": {
535
+ "down": Door("Tower Bottom"),
536
+ "up": Door("Tower Top"),
537
+ },
538
+ "containers": {
539
+ "stone": container(
540
+ [item("money-pouch", "valuable", 25), Key("key", "629.IdnXwnt")], True
541
+ ),
542
+ },
543
+ "items": {
544
+ "": item("tome"),
545
+ },
546
+ "info": "You are in the middle of a stone tower. The only light comes from above, through the cracks around the hatch to above.",
547
+ "map": """
529
548
  █████████
530
549
  █ ╖█
531
550
  █ ╖█
@@ -534,32 +553,32 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
534
553
  █ █
535
554
  █╖ █
536
555
  █╖ █
537
- █████████''',
538
- 'Hints': [
539
- 'There might be an item here.',
540
- ],
541
- },
542
-
543
- 'Tower Top' :{
544
- 'room type': 'house',
545
- 'position': (3, 0, 0),
546
- 'discovered': False,
547
- 'directions': {
548
- 'down': Door('Tower Middle'),
549
- 'teleport': Door('Teleportation Deck'),
550
- },
551
- 'creatures stats': [creature(
552
- 'greedy goblin',
553
- 5,
554
- 7,
555
- [item('knife', 'weapon', 2), item('money-pouch', 'valuable', 5)],
556
- 'A 4ft 7 dirty and greedy goblin',
557
- 'A %*CYAN*%greedy goblin%*RESET*% spots you and your money pouch!',
558
- creature_type('humanoid', 'goblin'),
559
- ),
560
- ],
561
- 'info': 'You are at the top of a stone tower. There are windows in every wall.',
562
- 'map': '''
556
+ █████████""",
557
+ "Hints": [
558
+ "There might be an item here.",
559
+ ],
560
+ },
561
+ "Tower Top": {
562
+ "room type": "house",
563
+ "position": (3, 0, 0),
564
+ "discovered": False,
565
+ "directions": {
566
+ "down": Door("Tower Middle"),
567
+ "teleport": Door("Teleportation Deck"),
568
+ },
569
+ "creatures stats": [
570
+ creature(
571
+ "greedy goblin",
572
+ 5,
573
+ 7,
574
+ [item("knife", "weapon", 2), item("money-pouch", "valuable", 5)],
575
+ "A 4ft 7 dirty and greedy goblin",
576
+ "A %*CYAN*%greedy goblin%*RESET*% spots you and your money pouch!",
577
+ creature_type("humanoid", "goblin"),
578
+ ),
579
+ ],
580
+ "info": "You are at the top of a stone tower. There are windows in every wall.",
581
+ "map": """
563
582
  █████████
564
583
  █ ╖█
565
584
  █ ╖█
@@ -568,30 +587,29 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
568
587
  █ █
569
588
  █ █
570
589
  █ █
571
- █████████''',
572
- 'Hints': [
573
- 'I could %*GREEN*%teleport%*RESET*%.',
574
- ],
575
- },
576
-
577
- 'Basement Armoury': {
578
- 'room type': 'house',
579
- 'position': (-1, 0, 0),
580
- 'discovered': False,
581
- 'directions': {
582
- 'south': Door('Basement 3'),
583
- 'east': Door('Basement 1'),
584
- },
585
- 'items': {
586
- 'torch': item('torch'),
587
- },
588
- 'containers': {
589
- 'rack-1': container([item('bow', 'weapon', 4)]),
590
- 'rack-2': container([item('spear', 'weapon', 3)]),
591
- },
592
- 'info': 'You are in a dimly lit underground armoury (all the light in the room comes from 3 %*BLUE*%torch%*RESET*%es on the walls) with 2 racks full of damaged weapons,\n\
593
- %*RED*%rack-1%*RESET*% has damaged bows and %*RED*%rack-2%*RESET*% has damaged spears.',
594
- 'map': '''
590
+ █████████""",
591
+ "Hints": [
592
+ "I could %*GREEN*%teleport%*RESET*%.",
593
+ ],
594
+ },
595
+ "Basement Armoury": {
596
+ "room type": "house",
597
+ "position": (-1, 0, 0),
598
+ "discovered": False,
599
+ "directions": {
600
+ "south": Door("Basement 3"),
601
+ "east": Door("Basement 1"),
602
+ },
603
+ "items": {
604
+ "torch": item("torch"),
605
+ },
606
+ "containers": {
607
+ "rack-1": container([item("bow", "weapon", 4)]),
608
+ "rack-2": container([item("spear", "weapon", 3)]),
609
+ },
610
+ "info": "You are in a dimly lit underground armoury (all the light in the room comes from 3 %*BLUE*%torch%*RESET*%es on the walls) with 2 racks full of damaged weapons,\n\
611
+ %*RED*%rack-1%*RESET*% has damaged bows and %*RED*%rack-2%*RESET*% has damaged spears.",
612
+ "map": """
595
613
  █████████
596
614
  █╦ █
597
615
  █ ╦█
@@ -600,28 +618,27 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
600
618
  █ █
601
619
  █ █
602
620
  █ █
603
- ████║████''',
604
- 'Hints': [
605
- 'The things in %*RED*%rack-1%*RESET*% and %*RED*%rack-2%*RESET*% are salvigable.',
606
- "I wonder if I can get this %*BLUE*%torch%*RESET*% out of it's holder.",
607
- ],
608
- },
609
-
610
- 'Basement 1': {
611
- 'room type': 'house',
612
- 'position': (-1, 0, 8),
613
- 'discovered': False,
614
- 'directions': {
615
- 'south': Door('Basement 2'),
616
- 'west': Door('Basement Armoury'),
617
- 'up': Door('Sitting Room'),
618
- },
619
- 'items': {
620
- 'torch': item('torch'),
621
- },
622
- 'info': 'You are in an dimly lit underground (all the light in the room comes from 3 %*BLUE*%torch%*RESET*%es on the walls). You hear a %*YELLOW*%ripping%*RESET*% from the\
623
- stairs going %*GREEN*%up%*RESET*%.',
624
- 'map': '''
621
+ ████║████""",
622
+ "Hints": [
623
+ "The things in %*RED*%rack-1%*RESET*% and %*RED*%rack-2%*RESET*% are salvigable.",
624
+ "I wonder if I can get this %*BLUE*%torch%*RESET*% out of it's holder.",
625
+ ],
626
+ },
627
+ "Basement 1": {
628
+ "room type": "house",
629
+ "position": (-1, 0, 8),
630
+ "discovered": False,
631
+ "directions": {
632
+ "south": Door("Basement 2"),
633
+ "west": Door("Basement Armoury"),
634
+ "up": Door("Sitting Room"),
635
+ },
636
+ "items": {
637
+ "torch": item("torch"),
638
+ },
639
+ "info": "You are in an dimly lit underground (all the light in the room comes from 3 %*BLUE*%torch%*RESET*%es on the walls). You hear a %*YELLOW*%ripping%*RESET*% from the\
640
+ stairs going %*GREEN*%up%*RESET*%.",
641
+ "map": """
625
642
  █████████
626
643
  █ ╖█
627
644
  █ ╖█
@@ -630,25 +647,24 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
630
647
  █ █
631
648
  █ █
632
649
  █ █
633
- ████║████''',
634
- 'Hints': [
635
- "I wonder if I can get this %*BLUE*%torch%*RESET*% out of it's holder.",
636
- ],
637
- },
638
-
639
- 'Basement 2': {
640
- 'room type': 'house',
641
- 'position': (-1, 8, 8),
642
- 'discovered': False,
643
- 'directions': {
644
- 'north': Door('Basement 1'),
645
- 'west': Door('Basement 3'),
646
- },
647
- 'items': {
648
- 'torch': item('torch'),
649
- },
650
- 'info': 'You are in an dimly lit underground (all the light in the room comes from 3 %*BLUE*%torch%*RESET*%es on the walls).',
651
- 'map': '''
650
+ ████║████""",
651
+ "Hints": [
652
+ "I wonder if I can get this %*BLUE*%torch%*RESET*% out of it's holder.",
653
+ ],
654
+ },
655
+ "Basement 2": {
656
+ "room type": "house",
657
+ "position": (-1, 8, 8),
658
+ "discovered": False,
659
+ "directions": {
660
+ "north": Door("Basement 1"),
661
+ "west": Door("Basement 3"),
662
+ },
663
+ "items": {
664
+ "torch": item("torch"),
665
+ },
666
+ "info": "You are in an dimly lit underground (all the light in the room comes from 3 %*BLUE*%torch%*RESET*%es on the walls).",
667
+ "map": """
652
668
  ████║████
653
669
  █ █
654
670
  █ █
@@ -657,26 +673,25 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
657
673
  █ █
658
674
  █ █
659
675
  █ █
660
- █████████''',
661
- 'Hints': [
662
- "I wonder if I can get this %*BLUE*%torch%*RESET*% out of it's holder.",
663
- ],
664
- },
665
-
666
- 'Basement 3': {
667
- 'room type': 'house',
668
- 'position': (-1, 8, 0),
669
- 'discovered': False,
670
- 'directions': {
671
- 'south': Door('Basement 4'),
672
- 'east': Door('Basement 2'),
673
- 'north': Door('Basement Armoury'),
674
- },
675
- 'items': {
676
- 'torch': item('torch'),
677
- },
678
- 'info': 'You are in an dimly lit underground (all the light in the room comes from 3 %*BLUE*%torch%*RESET*%es on the walls).',
679
- 'map': '''
676
+ █████████""",
677
+ "Hints": [
678
+ "I wonder if I can get this %*BLUE*%torch%*RESET*% out of it's holder.",
679
+ ],
680
+ },
681
+ "Basement 3": {
682
+ "room type": "house",
683
+ "position": (-1, 8, 0),
684
+ "discovered": False,
685
+ "directions": {
686
+ "south": Door("Basement 4"),
687
+ "east": Door("Basement 2"),
688
+ "north": Door("Basement Armoury"),
689
+ },
690
+ "items": {
691
+ "torch": item("torch"),
692
+ },
693
+ "info": "You are in an dimly lit underground (all the light in the room comes from 3 %*BLUE*%torch%*RESET*%es on the walls).",
694
+ "map": """
680
695
  ████║████
681
696
  █ █
682
697
  █ █
@@ -685,23 +700,22 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
685
700
  █ █
686
701
  █ █
687
702
  █ █
688
- ████║████''',
689
- },
690
-
691
- 'Basement 4': {
692
- 'room type': 'house',
693
- 'position': (-1, 16, 0),
694
- 'discovered': False,
695
- 'directions': {
696
- 'north': Door('Basement 3'),
697
- 'east': Door('Library'),
698
- 'shoot': Door('Cavern 1'),
699
- },
700
- 'items': {
701
- 'torch': item('torch'),
702
- },
703
- 'info': 'You are in an dimly lit underground (all the light in the room comes from 3 %*BLUE*%torch%*RESET*%es on the walls). there is a choot in the floor (type: \'go shoot\' to go down the shoot).',
704
- 'map': '''
703
+ ████║████""",
704
+ },
705
+ "Basement 4": {
706
+ "room type": "house",
707
+ "position": (-1, 16, 0),
708
+ "discovered": False,
709
+ "directions": {
710
+ "north": Door("Basement 3"),
711
+ "east": Door("Library"),
712
+ "shoot": Door("Cavern 1"),
713
+ },
714
+ "items": {
715
+ "torch": item("torch"),
716
+ },
717
+ "info": "You are in an dimly lit underground (all the light in the room comes from 3 %*BLUE*%torch%*RESET*%es on the walls). there is a choot in the floor (type: 'go shoot' to go down the shoot).",
718
+ "map": """
705
719
  ████║████
706
720
  █ █
707
721
  █ █
@@ -710,25 +724,24 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
710
724
  █ █
711
725
  █ █
712
726
  █ █
713
- █████████''',
714
- 'Hints': [
715
- "I wonder if I can get this %*BLUE*%torch%*RESET*% out of it's holder.",
716
- ],
717
- },
718
-
719
- 'Library': {
720
- 'room type': 'house',
721
- 'position': (-1, 16, 8),
722
- 'discovered': False,
723
- 'directions': {
724
- 'west': Door('Room name'),
725
- 'bookcase': Door('Cavern 3'),
726
- },
727
- 'containers': {
728
- 'bookcases': container(sample(books, 3)),
729
- },
730
- 'info': 'Towering %*RED*%bookcases%*RESET*% filled with odd, mismatched books line the walls. Some have faded titles, others are blank, arranged almost deliberately. One bookcase stands slightly forward, leaving a faint scrape on the floor. The air is still, as if waiting for you to notice.',
731
- 'map': '''
727
+ █████████""",
728
+ "Hints": [
729
+ "I wonder if I can get this %*BLUE*%torch%*RESET*% out of it's holder.",
730
+ ],
731
+ },
732
+ "Library": {
733
+ "room type": "house",
734
+ "position": (-1, 16, 8),
735
+ "discovered": False,
736
+ "directions": {
737
+ "west": Door("Room name"),
738
+ "bookcase": Door("Cavern 3"),
739
+ },
740
+ "containers": {
741
+ "bookcases": container(sample(books, 3)),
742
+ },
743
+ "info": "Towering %*RED*%bookcases%*RESET*% filled with odd, mismatched books line the walls. Some have faded titles, others are blank, arranged almost deliberately. One bookcase stands slightly forward, leaving a faint scrape on the floor. The air is still, as if waiting for you to notice.",
744
+ "map": """
732
745
  █████████
733
746
  █ █
734
747
  █ █
@@ -737,22 +750,21 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
737
750
  █ █
738
751
  █ █
739
752
  █ █
740
- █████████''',
741
- 'Hints': [
742
- 'Is it just me or are the first letters of all of those book names spelling the words "He\'s watching you"',
743
- ],
744
- },
745
-
746
- 'Cavern 1': {
747
- 'room type': 'cavern',
748
- 'position': (-2, 0, 0),
749
- 'discovered': False,
750
- 'directions': {
751
- 'up': Door('Basement 4'),
752
- 'down': Door('Cavern 2'),
753
- },
754
- 'info': 'you are in a dark cavern with the only light coming from the shoot you came through. A voice in the back of your head says: \'Do not go down the shoot, leave while you still can!\'',
755
- 'map': '''
753
+ █████████""",
754
+ "Hints": [
755
+ 'Is it just me or are the first letters of all of those book names spelling the words "He\'s watching you"',
756
+ ],
757
+ },
758
+ "Cavern 1": {
759
+ "room type": "cavern",
760
+ "position": (-2, 0, 0),
761
+ "discovered": False,
762
+ "directions": {
763
+ "up": Door("Basement 4"),
764
+ "down": Door("Cavern 2"),
765
+ },
766
+ "info": "you are in a dark cavern with the only light coming from the shoot you came through. A voice in the back of your head says: 'Do not go down the shoot, leave while you still can!'",
767
+ "map": """
756
768
  █████████
757
769
  █ █
758
770
  █ █
@@ -761,21 +773,18 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
761
773
  █ █
762
774
  █ █
763
775
  █ █
764
- █████████''',
765
- 'Hints': [
766
- 'I should probably go up the shoot I came from.',
767
- ],
768
- },
769
-
770
- 'Cavern 2': {
771
- 'room type': 'cavern',
772
- 'position': (-3, 0, 0),
773
- 'discovered': False,
774
- 'directions': {
775
- 'up': SwitchDoor('Cavern 1', 'Cavern 3', '7k69fImz4y')
776
- },
777
- 'info': 'you are in a dark cavern with the only light coming from the shoot you came through. A voice in the back of your head says: \'You fool! You can never get back now!\'',
778
- 'map': '''
776
+ █████████""",
777
+ "Hints": [
778
+ "I should probably go up the shoot I came from.",
779
+ ],
780
+ },
781
+ "Cavern 2": {
782
+ "room type": "cavern",
783
+ "position": (-3, 0, 0),
784
+ "discovered": False,
785
+ "directions": {"up": SwitchDoor("Cavern 1", "Cavern 3", "7k69fImz4y")},
786
+ "info": "you are in a dark cavern with the only light coming from the shoot you came through. A voice in the back of your head says: 'You fool! You can never get back now!'",
787
+ "map": """
779
788
  █████████
780
789
  █ █
781
790
  █ █
@@ -784,23 +793,22 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
784
793
  █ █
785
794
  █ █
786
795
  █ █
787
- █████████''',
788
- 'Hints': [
789
- 'I should probably go back up so I\'m not here forever.',
790
- 'I wander what the voice was talking about.',
791
- ],
792
- },
793
-
794
- 'Cavern 3': {
795
- 'room type': 'cavern',
796
- 'position': (-2, 8, 0),
797
- 'discovered': False,
798
- 'directions': {
799
- 'down': Door('Cavern 2'),
800
- 'bookcase': Door('Library'),
801
- },
802
- 'info': 'you are in a dark cavern with the only light coming from the crack behind a %*GREEN*%bookcase%*RESET*%. A voice in the back of your head says: \'I give up.\'',
803
- 'map': '''
796
+ █████████""",
797
+ "Hints": [
798
+ "I should probably go back up so I'm not here forever.",
799
+ "I wander what the voice was talking about.",
800
+ ],
801
+ },
802
+ "Cavern 3": {
803
+ "room type": "cavern",
804
+ "position": (-2, 8, 0),
805
+ "discovered": False,
806
+ "directions": {
807
+ "down": Door("Cavern 2"),
808
+ "bookcase": Door("Library"),
809
+ },
810
+ "info": "you are in a dark cavern with the only light coming from the crack behind a %*GREEN*%bookcase%*RESET*%. A voice in the back of your head says: 'I give up.'",
811
+ "map": """
804
812
  █████████
805
813
  █ █
806
814
  █ █
@@ -809,22 +817,21 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
809
817
  █ █
810
818
  █ █
811
819
  █ █
812
- █████████''',
813
- 'Hints': [
814
- 'I wander what\'s behind that %*GREEN*%bookcase%*RESET*%.',
815
- ],
816
- },
817
-
818
- 'Forest Clearing': {
819
- 'room type': 'forest',
820
- 'directions': {
821
- 'north': Door('Forest Path1'),
822
- 'east': Door('Forest Path2'),
823
- 'south': Door('Forest Path1'),
824
- 'west': Door('Forest Path2'),
825
- },
826
- 'info': 'You are in a forest clearing outside the house.',
827
- 'map': '''
820
+ █████████""",
821
+ "Hints": [
822
+ "I wander what's behind that %*GREEN*%bookcase%*RESET*%.",
823
+ ],
824
+ },
825
+ "Forest Clearing": {
826
+ "room type": "forest",
827
+ "directions": {
828
+ "north": Door("Forest Path1"),
829
+ "east": Door("Forest Path2"),
830
+ "south": Door("Forest Path1"),
831
+ "west": Door("Forest Path2"),
832
+ },
833
+ "info": "You are in a forest clearing outside the house.",
834
+ "map": """
828
835
  ¥¥ ¥ ¥
829
836
  ¥ ¥
830
837
  ¥ ¥¥
@@ -834,17 +841,16 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
834
841
  ¥ ¥
835
842
  ¥ ¥¥
836
843
  ¥ ¥
837
- ''',
838
- },
839
-
840
- 'Forest Path1': {
841
- 'room type': 'forest',
842
- 'directions': {
843
- 'north': Door('Forest Clearing'),
844
- 'south': Door('Forest Clearing'),
845
- },
846
- 'info': 'You are in a forest path outside the house.',
847
- 'map': '''
844
+ """,
845
+ },
846
+ "Forest Path1": {
847
+ "room type": "forest",
848
+ "directions": {
849
+ "north": Door("Forest Clearing"),
850
+ "south": Door("Forest Clearing"),
851
+ },
852
+ "info": "You are in a forest path outside the house.",
853
+ "map": """
848
854
  ¥ ¥
849
855
  ¥ ¥
850
856
  ¥ ¥
@@ -854,17 +860,16 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
854
860
  ¥¥ ¥¥
855
861
  ¥ ¥
856
862
  ¥¥ ¥ ¥
857
- ''',
858
- },
859
-
860
- 'Forest Path2': {
861
- 'room type': 'forest',
862
- 'directions': {
863
- 'east': Door('Forest Clearing'),
864
- 'west': Door('Forest Clearing'),
865
- },
866
- 'info': 'You are in a forest path outside the house.',
867
- 'map': '''
863
+ """,
864
+ },
865
+ "Forest Path2": {
866
+ "room type": "forest",
867
+ "directions": {
868
+ "east": Door("Forest Clearing"),
869
+ "west": Door("Forest Clearing"),
870
+ },
871
+ "info": "You are in a forest path outside the house.",
872
+ "map": """
868
873
  ¥¥¥¥¥ ¥
869
874
  ¥ ¥¥¥¥
870
875
  ¥¥ ¥ ¥¥
@@ -874,28 +879,27 @@ You notice a ''%*RED*%storage%*RESET*% device in one corner. You hear a %*YELLOW
874
879
  ¥ ¥¥¥¥
875
880
  ¥¥¥ ¥
876
881
  ¥ ¥¥¥
877
- ''',
878
- },
879
-
880
- 'Teleportation Deck': {
881
- 'room type': 'asteroid-1',
882
- 'directions': {
883
- 'teleport': Door('Tower Top'),
884
- '0': Door('Charter ship'),
885
- '1': Door('The Dancing Jellyfish Inn'),
886
- '2': Door('The Slopy Plasmoid Tapphouse'),
887
- '3': Door('The Centaurbow Weapon Shop'),
888
- '4': Door('The Gadabout Bakery'),
889
- '5': Door('The Shifterspender St'),
890
- '6': Door('The Town Hall'),
891
- '7': Door('The Assassins Guild'),
892
- '8': Door('The Watch Castle'),
893
- '9': Door('The Old Manor'),
894
- },
895
- 'items': {
896
- 'money-pouch': item('money-pouch', 'valuable', 10),
897
- },
898
- 'info': '''
882
+ """,
883
+ },
884
+ "Teleportation Deck": {
885
+ "room type": "asteroid-1",
886
+ "directions": {
887
+ "teleport": Door("Tower Top"),
888
+ "0": Door("Charter ship"),
889
+ "1": Door("The Dancing Jellyfish Inn"),
890
+ "2": Door("The Slopy Plasmoid Tapphouse"),
891
+ "3": Door("The Centaurbow Weapon Shop"),
892
+ "4": Door("The Gadabout Bakery"),
893
+ "5": Door("The Shifterspender St"),
894
+ "6": Door("The Town Hall"),
895
+ "7": Door("The Assassins Guild"),
896
+ "8": Door("The Watch Castle"),
897
+ "9": Door("The Old Manor"),
898
+ },
899
+ "items": {
900
+ "money-pouch": item("money-pouch", "valuable", 10),
901
+ },
902
+ "info": """
899
903
  You are in a strange cave with many teleportation circles, as well as some ships that are floating above the floor.
900
904
 
901
905
  Out of the gap in the side of the cave it looks black with a few twinkles of light.
@@ -913,26 +917,25 @@ Do you want to:
913
917
  %*GREEN*%6%*RESET*%. Go to The Town Hall.
914
918
  %*GREEN*%7%*RESET*%. Go to The Assassins Guild.
915
919
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
916
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
917
- },
918
-
919
- 'Charter ship' :{
920
- 'room type': 'asteroid-1',
921
- 'directions': {
922
- '1': Door('Teleportation Deck'),
923
- '2': Door('The Dancing Jellyfish Inn'),
924
- '3': Door('The Slopy Plasmoid Tapphouse'),
925
- '4': Door('The Centaurbow Weapon Shop'),
926
- '5': Door('The Gadabout Bakery'),
927
- '6': Door('The Shifterspender St'),
928
- '7': Door('The Town Hall'),
929
- '8': Door('The Assassins Guild'),
930
- '9': Door('The Watch Castle'),
931
- '10': Door('The Old Manor'),
932
- '11': Door('2nd Teleportation Deck'),
933
- '12': Door('3rd Teleportation Deck'),
934
- },
935
- 'info': '''
920
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
921
+ },
922
+ "Charter ship": {
923
+ "room type": "asteroid-1",
924
+ "directions": {
925
+ "1": Door("Teleportation Deck"),
926
+ "2": Door("The Dancing Jellyfish Inn"),
927
+ "3": Door("The Slopy Plasmoid Tapphouse"),
928
+ "4": Door("The Centaurbow Weapon Shop"),
929
+ "5": Door("The Gadabout Bakery"),
930
+ "6": Door("The Shifterspender St"),
931
+ "7": Door("The Town Hall"),
932
+ "8": Door("The Assassins Guild"),
933
+ "9": Door("The Watch Castle"),
934
+ "10": Door("The Old Manor"),
935
+ "11": Door("2nd Teleportation Deck"),
936
+ "12": Door("3rd Teleportation Deck"),
937
+ },
938
+ "info": """
936
939
 
937
940
  You charter a ship, and the Captain says: "You can go anywhere you like before you land back on this here asteriod!"
938
941
 
@@ -948,23 +951,22 @@ Do you want to:
948
951
  %*GREEN*%9%*RESET*%. Go to The Watch Castle.
949
952
  %*GREEN*%10%*RESET*%. Go to The Old Manor.
950
953
  %*GREEN*%11%*RESET*%. Go to The 2nd Asteriod.
951
- %*GREEN*%12%*RESET*%. Go to The 3rd Asteriod.''',
952
- },
953
-
954
- 'The Dancing Jellyfish Inn' :{
955
- 'room type': 'asteroid-1',
956
- 'directions': {
957
- '1': Door('Teleportation Deck'),
958
- '2': Door('The Slopy Plasmoid Tapphouse'),
959
- '3': Door('The Centaurbow Weapon Shop'),
960
- '4': Door('The Gadabout Bakery'),
961
- '5': Door('The Shifterspender St'),
962
- '6': Door('The Town Hall'),
963
- '7': Door('The Assassins Guild'),
964
- '8': Door('The Watch Castle'),
965
- '9': Door('The Old Manor'),
966
- },
967
- 'info': '''
954
+ %*GREEN*%12%*RESET*%. Go to The 3rd Asteriod.""",
955
+ },
956
+ "The Dancing Jellyfish Inn": {
957
+ "room type": "asteroid-1",
958
+ "directions": {
959
+ "1": Door("Teleportation Deck"),
960
+ "2": Door("The Slopy Plasmoid Tapphouse"),
961
+ "3": Door("The Centaurbow Weapon Shop"),
962
+ "4": Door("The Gadabout Bakery"),
963
+ "5": Door("The Shifterspender St"),
964
+ "6": Door("The Town Hall"),
965
+ "7": Door("The Assassins Guild"),
966
+ "8": Door("The Watch Castle"),
967
+ "9": Door("The Old Manor"),
968
+ },
969
+ "info": """
968
970
 
969
971
  do you want to:
970
972
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -975,23 +977,22 @@ do you want to:
975
977
  %*GREEN*%6%*RESET*%. Go to The Town Hall.
976
978
  %*GREEN*%7%*RESET*%. Go to The Assassins Guild.
977
979
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
978
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
979
- },
980
-
981
- 'The Slopy Plasmoid Tapphouse' :{
982
- 'room type': 'asteroid-1',
983
- 'directions': {
984
- '1': Door('Teleportation Deck'),
985
- '2': Door('The Dancing Jellyfish Inn'),
986
- '3': Door('The Centaurbow Weapon Shop'),
987
- '4': Door('The Gadabout Bakery'),
988
- '5': Door('The Shifterspender St'),
989
- '6': Door('The Town Hall'),
990
- '7': Door('The Assassins Guild'),
991
- '8': Door('The Watch Castle'),
992
- '9': Door('The Old Manor'),
993
- },
994
- 'info': '''
980
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
981
+ },
982
+ "The Slopy Plasmoid Tapphouse": {
983
+ "room type": "asteroid-1",
984
+ "directions": {
985
+ "1": Door("Teleportation Deck"),
986
+ "2": Door("The Dancing Jellyfish Inn"),
987
+ "3": Door("The Centaurbow Weapon Shop"),
988
+ "4": Door("The Gadabout Bakery"),
989
+ "5": Door("The Shifterspender St"),
990
+ "6": Door("The Town Hall"),
991
+ "7": Door("The Assassins Guild"),
992
+ "8": Door("The Watch Castle"),
993
+ "9": Door("The Old Manor"),
994
+ },
995
+ "info": """
995
996
 
996
997
  do you want to:
997
998
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1002,23 +1003,22 @@ do you want to:
1002
1003
  %*GREEN*%6%*RESET*%. Go to The Town Hall.
1003
1004
  %*GREEN*%7%*RESET*%. Go to The Assassins Guild.
1004
1005
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1005
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1006
- },
1007
-
1008
- 'The Centaurbow Weapon Shop' :{
1009
- 'room type': 'asteroid-1',
1010
- 'directions': {
1011
- '1': Door('Teleportation Deck'),
1012
- '2': Door('The Dancing Jellyfish Inn'),
1013
- '3': Door('The Slopy Plasmoid Tapphouse'),
1014
- '4': Door('The Gadabout Bakery'),
1015
- '5': Door('The Shifterspender St'),
1016
- '6': Door('The Town Hall'),
1017
- '7': Door('The Assassins Guild'),
1018
- '8': Door('The Watch Castle'),
1019
- '9': Door('The Old Manor'),
1020
- },
1021
- 'info': '''
1006
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1007
+ },
1008
+ "The Centaurbow Weapon Shop": {
1009
+ "room type": "asteroid-1",
1010
+ "directions": {
1011
+ "1": Door("Teleportation Deck"),
1012
+ "2": Door("The Dancing Jellyfish Inn"),
1013
+ "3": Door("The Slopy Plasmoid Tapphouse"),
1014
+ "4": Door("The Gadabout Bakery"),
1015
+ "5": Door("The Shifterspender St"),
1016
+ "6": Door("The Town Hall"),
1017
+ "7": Door("The Assassins Guild"),
1018
+ "8": Door("The Watch Castle"),
1019
+ "9": Door("The Old Manor"),
1020
+ },
1021
+ "info": """
1022
1022
 
1023
1023
  do you want to:
1024
1024
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1029,23 +1029,22 @@ do you want to:
1029
1029
  %*GREEN*%6%*RESET*%. Go to The Town Hall.
1030
1030
  %*GREEN*%7%*RESET*%. Go to The Assassins Guild.
1031
1031
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1032
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1033
- },
1034
-
1035
- 'The Gadabout Bakery' :{
1036
- 'room type': 'asteroid-1',
1037
- 'directions': {
1038
- '1': Door('Teleportation Deck'),
1039
- '2': Door('The Dancing Jellyfish Inn'),
1040
- '3': Door('The Slopy Plasmoid Tapphouse'),
1041
- '4': Door('The Centaurbow Weapon Shop'),
1042
- '5': Door('The Shifterspender St'),
1043
- '6': Door('The Town Hall'),
1044
- '7': Door('The Assassins Guild'),
1045
- '8': Door('The Watch Castle'),
1046
- '9': Door('The Old Manor'),
1047
- },
1048
- 'info': '''
1032
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1033
+ },
1034
+ "The Gadabout Bakery": {
1035
+ "room type": "asteroid-1",
1036
+ "directions": {
1037
+ "1": Door("Teleportation Deck"),
1038
+ "2": Door("The Dancing Jellyfish Inn"),
1039
+ "3": Door("The Slopy Plasmoid Tapphouse"),
1040
+ "4": Door("The Centaurbow Weapon Shop"),
1041
+ "5": Door("The Shifterspender St"),
1042
+ "6": Door("The Town Hall"),
1043
+ "7": Door("The Assassins Guild"),
1044
+ "8": Door("The Watch Castle"),
1045
+ "9": Door("The Old Manor"),
1046
+ },
1047
+ "info": """
1049
1048
 
1050
1049
  do you want to:
1051
1050
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1056,23 +1055,22 @@ do you want to:
1056
1055
  %*GREEN*%6%*RESET*%. Go to The Town Hall.
1057
1056
  %*GREEN*%7%*RESET*%. Go to The Assassins Guild.
1058
1057
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1059
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1060
- },
1061
-
1062
- 'The Shifterspender St' :{
1063
- 'room type': 'asteroid-1',
1064
- 'directions': {
1065
- '1': Door('Teleportation Deck'),
1066
- '2': Door('The Dancing Jellyfish Inn'),
1067
- '3': Door('The Slopy Plasmoid Tapphouse'),
1068
- '4': Door('The Centaurbow Weapon Shop'),
1069
- '5': Door('The Gadabout Bakery'),
1070
- '6': Door('The Town Hall'),
1071
- '7': Door('The Assassins Guild'),
1072
- '8': Door('The Watch Castle'),
1073
- '9': Door('The Old Manor'),
1074
- },
1075
- 'info': '''
1058
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1059
+ },
1060
+ "The Shifterspender St": {
1061
+ "room type": "asteroid-1",
1062
+ "directions": {
1063
+ "1": Door("Teleportation Deck"),
1064
+ "2": Door("The Dancing Jellyfish Inn"),
1065
+ "3": Door("The Slopy Plasmoid Tapphouse"),
1066
+ "4": Door("The Centaurbow Weapon Shop"),
1067
+ "5": Door("The Gadabout Bakery"),
1068
+ "6": Door("The Town Hall"),
1069
+ "7": Door("The Assassins Guild"),
1070
+ "8": Door("The Watch Castle"),
1071
+ "9": Door("The Old Manor"),
1072
+ },
1073
+ "info": """
1076
1074
 
1077
1075
  do you want to:
1078
1076
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1083,23 +1081,22 @@ do you want to:
1083
1081
  %*GREEN*%6%*RESET*%. Go to The Town Hall.
1084
1082
  %*GREEN*%7%*RESET*%. Go to The Assassins Guild.
1085
1083
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1086
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1087
- },
1088
-
1089
- 'The Town Hall' :{
1090
- 'room type': 'asteroid-1',
1091
- 'directions': {
1092
- '1': Door('Teleportation Deck'),
1093
- '2': Door('The Dancing Jellyfish Inn'),
1094
- '3': Door('The Slopy Plasmoid Tapphouse'),
1095
- '4': Door('The Centaurbow Weapon Shop'),
1096
- '5': Door('The Gadabout Bakery'),
1097
- '6': Door('The Shifterspender St'),
1098
- '7': Door('The Assassins Guild'),
1099
- '8': Door('The Watch Castle'),
1100
- '9': Door('The Old Manor'),
1101
- },
1102
- 'info': '''
1084
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1085
+ },
1086
+ "The Town Hall": {
1087
+ "room type": "asteroid-1",
1088
+ "directions": {
1089
+ "1": Door("Teleportation Deck"),
1090
+ "2": Door("The Dancing Jellyfish Inn"),
1091
+ "3": Door("The Slopy Plasmoid Tapphouse"),
1092
+ "4": Door("The Centaurbow Weapon Shop"),
1093
+ "5": Door("The Gadabout Bakery"),
1094
+ "6": Door("The Shifterspender St"),
1095
+ "7": Door("The Assassins Guild"),
1096
+ "8": Door("The Watch Castle"),
1097
+ "9": Door("The Old Manor"),
1098
+ },
1099
+ "info": """
1103
1100
 
1104
1101
  do you want to:
1105
1102
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1110,23 +1107,22 @@ do you want to:
1110
1107
  %*GREEN*%6%*RESET*%. Go to The Shifterspender St.
1111
1108
  %*GREEN*%7%*RESET*%. Go to The Assassins Guild.
1112
1109
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1113
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1114
- },
1115
-
1116
- 'The Assassins Guild' :{
1117
- 'room type': 'asteroid-1',
1118
- 'directions': {
1119
- '1': Door('Teleportation Deck'),
1120
- '2': Door('The Dancing Jellyfish Inn'),
1121
- '3': Door('The Slopy Plasmoid Tapphouse'),
1122
- '4': Door('The Centaurbow Weapon Shop'),
1123
- '5': Door('The Gadabout Bakery'),
1124
- '6': Door('The Shifterspender St'),
1125
- '7': Door('The Town Hall'),
1126
- '8': Door('The Watch Castle'),
1127
- '9': Door('The Old Manor'),
1128
- },
1129
- 'info': ''',
1110
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1111
+ },
1112
+ "The Assassins Guild": {
1113
+ "room type": "asteroid-1",
1114
+ "directions": {
1115
+ "1": Door("Teleportation Deck"),
1116
+ "2": Door("The Dancing Jellyfish Inn"),
1117
+ "3": Door("The Slopy Plasmoid Tapphouse"),
1118
+ "4": Door("The Centaurbow Weapon Shop"),
1119
+ "5": Door("The Gadabout Bakery"),
1120
+ "6": Door("The Shifterspender St"),
1121
+ "7": Door("The Town Hall"),
1122
+ "8": Door("The Watch Castle"),
1123
+ "9": Door("The Old Manor"),
1124
+ },
1125
+ "info": """,
1130
1126
 
1131
1127
  do you want to:
1132
1128
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1137,23 +1133,22 @@ do you want to:
1137
1133
  %*GREEN*%6%*RESET*%. Go to The Shifterspender St.
1138
1134
  %*GREEN*%7%*RESET*%. Go to The Town Hall.
1139
1135
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1140
- %*GREEN*%9%*RESET*%. Go to The Old Manor.'''
1141
- },
1142
-
1143
- 'The Watch Castle' :{
1144
- 'room type': 'asteroid-1',
1145
- 'directions': {
1146
- '1': Door('Teleportation Deck'),
1147
- '2': Door('The Dancing Jellyfish Inn'),
1148
- '3': Door('The Slopy Plasmoid Tapphouse'),
1149
- '4': Door('The Centaurbow Weapon Shop'),
1150
- '5': Door('The Gadabout Bakery'),
1151
- '6': Door('The Shifterspender St'),
1152
- '7': Door('The Town Hall'),
1153
- '8': Door('The Assassins Guild'),
1154
- '9': Door('The Old Manor'),
1155
- },
1156
- 'info': '''
1136
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1137
+ },
1138
+ "The Watch Castle": {
1139
+ "room type": "asteroid-1",
1140
+ "directions": {
1141
+ "1": Door("Teleportation Deck"),
1142
+ "2": Door("The Dancing Jellyfish Inn"),
1143
+ "3": Door("The Slopy Plasmoid Tapphouse"),
1144
+ "4": Door("The Centaurbow Weapon Shop"),
1145
+ "5": Door("The Gadabout Bakery"),
1146
+ "6": Door("The Shifterspender St"),
1147
+ "7": Door("The Town Hall"),
1148
+ "8": Door("The Assassins Guild"),
1149
+ "9": Door("The Old Manor"),
1150
+ },
1151
+ "info": """
1157
1152
 
1158
1153
  do you want to:
1159
1154
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1164,23 +1159,22 @@ do you want to:
1164
1159
  %*GREEN*%6%*RESET*%. Go to The Shifterspender St.
1165
1160
  %*GREEN*%7%*RESET*%. Go to The Town Hall.
1166
1161
  %*GREEN*%8%*RESET*%. Go to The Assassins Guild.
1167
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1168
- },
1169
-
1170
- 'The Old Manor' :{
1171
- 'room type': 'asteroid-1',
1172
- 'directions': {
1173
- '1': Door('Teleportation Deck'),
1174
- '2': Door('The Dancing Jellyfish Inn'),
1175
- '3': Door('The Slopy Plasmoid Tapphouse'),
1176
- '4': Door('The Centaurbow Weapon Shop'),
1177
- '5': Door('The Gadabout Bakery'),
1178
- '6': Door('The Shifterspender St'),
1179
- '7': Door('The Town Hall'),
1180
- '8': Door('The Assassins Guild'),
1181
- '9': Door('The Watch Castle'),
1182
- },
1183
- 'info': '''
1162
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1163
+ },
1164
+ "The Old Manor": {
1165
+ "room type": "asteroid-1",
1166
+ "directions": {
1167
+ "1": Door("Teleportation Deck"),
1168
+ "2": Door("The Dancing Jellyfish Inn"),
1169
+ "3": Door("The Slopy Plasmoid Tapphouse"),
1170
+ "4": Door("The Centaurbow Weapon Shop"),
1171
+ "5": Door("The Gadabout Bakery"),
1172
+ "6": Door("The Shifterspender St"),
1173
+ "7": Door("The Town Hall"),
1174
+ "8": Door("The Assassins Guild"),
1175
+ "9": Door("The Watch Castle"),
1176
+ },
1177
+ "info": """
1184
1178
 
1185
1179
  do you want to:
1186
1180
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1191,24 +1185,23 @@ do you want to:
1191
1185
  %*GREEN*%6%*RESET*%. Go to The Shifterspender St.
1192
1186
  %*GREEN*%7%*RESET*%. Go to The Town Hall.
1193
1187
  %*GREEN*%8%*RESET*%. Go to The Assassins Guild.
1194
- %*GREEN*%9%*RESET*%. Go to The Watch Castle.''',
1195
- },
1196
-
1197
- '2nd Teleportation Deck': {
1198
- 'room type': 'asteroid-2',
1199
- 'directions': {
1200
- '1': Door('Charter 2nd Ship'),
1201
- '2': Door('The 2nd Dancing Jellyfish Inn'),
1202
- '3': Door('The 2nd Slopy Plasmoid Tapphouse'),
1203
- '4': Door('The 2nd GiffHammer Weapon Shop'),
1204
- '5': Door('The 2nd Gadabout Bakery'),
1205
- '6': Door('The 2nd Githspender St'),
1206
- '7': Door('The 2nd Town Hall'),
1207
- '8': Door('The 2nd Thieves Guild'),
1208
- '9': Door('The 2nd Watch Castle'),
1209
- },
1210
- '10': Door('The 2nd Old Manor'),
1211
- 'info': '''
1188
+ %*GREEN*%9%*RESET*%. Go to The Watch Castle.""",
1189
+ },
1190
+ "2nd Teleportation Deck": {
1191
+ "room type": "asteroid-2",
1192
+ "directions": {
1193
+ "1": Door("Charter 2nd Ship"),
1194
+ "2": Door("The 2nd Dancing Jellyfish Inn"),
1195
+ "3": Door("The 2nd Slopy Plasmoid Tapphouse"),
1196
+ "4": Door("The 2nd GiffHammer Weapon Shop"),
1197
+ "5": Door("The 2nd Gadabout Bakery"),
1198
+ "6": Door("The 2nd Githspender St"),
1199
+ "7": Door("The 2nd Town Hall"),
1200
+ "8": Door("The 2nd Thieves Guild"),
1201
+ "9": Door("The 2nd Watch Castle"),
1202
+ },
1203
+ "10": Door("The 2nd Old Manor"),
1204
+ "info": """
1212
1205
  You are in a strange cave with many teleportation circles, as well as some ships that are floating above the floor.
1213
1206
 
1214
1207
  Out of the gap in the side of the cave it looks black with a few twinkles of light.
@@ -1225,36 +1218,36 @@ do you want to:
1225
1218
  %*GREEN*%7%*RESET*%. Go to The Town Hall.
1226
1219
  %*GREEN*%8%*RESET*%. Go to The Thieves Guild.
1227
1220
  %*GREEN*%9%*RESET*%. Go to The Watch Castle.
1228
- %*GREEN*%10%*RESET*%. Go to The Old Manor.''',
1229
- },
1230
-
1231
- 'Charter 2nd Ship' :{
1232
- 'room type': 'asteroid-2',
1233
- 'directions': {
1234
- '1': Door('2nd Teleportation Deck'),
1235
- '2': Door('The 2nd Dancing Jellyfish Inn'),
1236
- '3': Door('The 2nd Slopy Plasmoid Tapphouse'),
1237
- '4': Door('The 2nd GiffHammer Weapon Shop'),
1238
- '5': Door('The 2nd Gadabout Bakery'),
1239
- '6': Door('The 2nd Githspender St'),
1240
- '7': Door('The 2nd Town Hall'),
1241
- '8': Door('The 2nd Thieves Guild'),
1242
- '9': Door('The 2nd Watch Castle'),
1243
- '10': Door('The Old 2nd Manor'),
1244
- '11': Door('Teleportation Deck'),
1245
- '12': Door('3rd Teleportation Deck'),
1246
- },
1247
- 'creatures stats': [creature(
1248
- 'hull leech',
1249
- 15,
1250
- 2,
1251
- [item('spike', 'weapon', 1)],
1252
- 'A barnacle-like creature that is attached to the hull of the ship',
1253
- 'You see a spike on a tentacle stabed through the hull of the ship',
1254
- creature_type('plant'),
1255
- ),
1256
- ],
1257
- 'info': '''
1221
+ %*GREEN*%10%*RESET*%. Go to The Old Manor.""",
1222
+ },
1223
+ "Charter 2nd Ship": {
1224
+ "room type": "asteroid-2",
1225
+ "directions": {
1226
+ "1": Door("2nd Teleportation Deck"),
1227
+ "2": Door("The 2nd Dancing Jellyfish Inn"),
1228
+ "3": Door("The 2nd Slopy Plasmoid Tapphouse"),
1229
+ "4": Door("The 2nd GiffHammer Weapon Shop"),
1230
+ "5": Door("The 2nd Gadabout Bakery"),
1231
+ "6": Door("The 2nd Githspender St"),
1232
+ "7": Door("The 2nd Town Hall"),
1233
+ "8": Door("The 2nd Thieves Guild"),
1234
+ "9": Door("The 2nd Watch Castle"),
1235
+ "10": Door("The Old 2nd Manor"),
1236
+ "11": Door("Teleportation Deck"),
1237
+ "12": Door("3rd Teleportation Deck"),
1238
+ },
1239
+ "creatures stats": [
1240
+ creature(
1241
+ "hull leech",
1242
+ 15,
1243
+ 2,
1244
+ [item("spike", "weapon", 1)],
1245
+ "A barnacle-like creature that is attached to the hull of the ship",
1246
+ "You see a spike on a tentacle stabed through the hull of the ship",
1247
+ creature_type("plant"),
1248
+ ),
1249
+ ],
1250
+ "info": """
1258
1251
 
1259
1252
  You charter a ship, and the Captain says: "You can go anywhere you like before you land back on this here asteriod!"
1260
1253
 
@@ -1270,23 +1263,22 @@ Do you want to:
1270
1263
  %*GREEN*%9%*RESET*%. Go to The Watch Castle.
1271
1264
  %*GREEN*%10%*RESET*%. Go to The Old Manor.
1272
1265
  %*GREEN*%11%*RESET*%. Go to The 1st Asteriod.
1273
- %*GREEN*%12%*RESET*%. Go to The 3rd Asteriod.''',
1274
- },
1275
-
1276
- 'The 2nd Dancing Jellyfish Inn' :{
1277
- 'room type': 'asteroid-2',
1278
- 'directions': {
1279
- '1': Door('2nd Teleportation Deck'),
1280
- '2': Door('The 2nd Slopy Plasmoid Tapphouse'),
1281
- '3': Door('The 2nd GiffHammer Weapon Shop'),
1282
- '4': Door('The 2nd Gadabout Bakery'),
1283
- '5': Door('The 2nd Githspender St'),
1284
- '6': Door('The 2nd Town Hall'),
1285
- '7': Door('The 2nd Thieves Guild'),
1286
- '8': Door('The 2nd Watch Castle'),
1287
- '9': Door('The 2nd Old Manor'),
1288
- },
1289
- 'info': '''
1266
+ %*GREEN*%12%*RESET*%. Go to The 3rd Asteriod.""",
1267
+ },
1268
+ "The 2nd Dancing Jellyfish Inn": {
1269
+ "room type": "asteroid-2",
1270
+ "directions": {
1271
+ "1": Door("2nd Teleportation Deck"),
1272
+ "2": Door("The 2nd Slopy Plasmoid Tapphouse"),
1273
+ "3": Door("The 2nd GiffHammer Weapon Shop"),
1274
+ "4": Door("The 2nd Gadabout Bakery"),
1275
+ "5": Door("The 2nd Githspender St"),
1276
+ "6": Door("The 2nd Town Hall"),
1277
+ "7": Door("The 2nd Thieves Guild"),
1278
+ "8": Door("The 2nd Watch Castle"),
1279
+ "9": Door("The 2nd Old Manor"),
1280
+ },
1281
+ "info": """
1290
1282
 
1291
1283
  do you want to:
1292
1284
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1297,23 +1289,22 @@ do you want to:
1297
1289
  %*GREEN*%6%*RESET*%. Go to The Town Hall.
1298
1290
  %*GREEN*%7%*RESET*%. Go to The Thieves Guild.
1299
1291
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1300
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1301
- },
1302
-
1303
- 'The 2nd Slopy Plasmoid Tapphouse' :{
1304
- 'room type': 'asteroid-2',
1305
- 'directions': {
1306
- '1': Door('2nd Teleportation Deck'),
1307
- '2': Door('The 2nd Dancing Jellyfish Inn'),
1308
- '3': Door('The 2nd GiffHammer Weapon Shop'),
1309
- '4': Door('The 2nd Gadabout Bakery'),
1310
- '5': Door('The 2nd Githspender St'),
1311
- '6': Door('The 2nd Town Hall'),
1312
- '7': Door('The 2nd Thieves Guild'),
1313
- '8': Door('The 2nd Watch Castle'),
1314
- '9': Door('The 2nd Old Manor'),
1315
- },
1316
- 'info': '''
1292
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1293
+ },
1294
+ "The 2nd Slopy Plasmoid Tapphouse": {
1295
+ "room type": "asteroid-2",
1296
+ "directions": {
1297
+ "1": Door("2nd Teleportation Deck"),
1298
+ "2": Door("The 2nd Dancing Jellyfish Inn"),
1299
+ "3": Door("The 2nd GiffHammer Weapon Shop"),
1300
+ "4": Door("The 2nd Gadabout Bakery"),
1301
+ "5": Door("The 2nd Githspender St"),
1302
+ "6": Door("The 2nd Town Hall"),
1303
+ "7": Door("The 2nd Thieves Guild"),
1304
+ "8": Door("The 2nd Watch Castle"),
1305
+ "9": Door("The 2nd Old Manor"),
1306
+ },
1307
+ "info": """
1317
1308
 
1318
1309
  do you want to:
1319
1310
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1324,23 +1315,22 @@ do you want to:
1324
1315
  %*GREEN*%6%*RESET*%. Go to The Town Hall.
1325
1316
  %*GREEN*%7%*RESET*%. Go to The Thieves Guild.
1326
1317
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1327
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1328
- },
1329
-
1330
- 'The 2nd GiffHammer Weapon Shop' :{
1331
- 'room type': 'asteroid-2',
1332
- 'directions': {
1333
- '1': Door('2nd Teleportation Deck'),
1334
- '2': Door('The 2nd Dancing Jellyfish Inn'),
1335
- '3': Door('The 2nd Slopy Plasmoid Tapphouse'),
1336
- '4': Door('The 2nd Gadabout Bakery'),
1337
- '5': Door('The 2nd Githspender St'),
1338
- '6': Door('The 2nd Town Hall'),
1339
- '7': Door('The 2nd Thieves Guild'),
1340
- '8': Door('The 2nd Watch Castle'),
1341
- '9': Door('The 2nd Old Manor'),
1342
- },
1343
- 'info': '''
1318
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1319
+ },
1320
+ "The 2nd GiffHammer Weapon Shop": {
1321
+ "room type": "asteroid-2",
1322
+ "directions": {
1323
+ "1": Door("2nd Teleportation Deck"),
1324
+ "2": Door("The 2nd Dancing Jellyfish Inn"),
1325
+ "3": Door("The 2nd Slopy Plasmoid Tapphouse"),
1326
+ "4": Door("The 2nd Gadabout Bakery"),
1327
+ "5": Door("The 2nd Githspender St"),
1328
+ "6": Door("The 2nd Town Hall"),
1329
+ "7": Door("The 2nd Thieves Guild"),
1330
+ "8": Door("The 2nd Watch Castle"),
1331
+ "9": Door("The 2nd Old Manor"),
1332
+ },
1333
+ "info": """
1344
1334
 
1345
1335
  do you want to:
1346
1336
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1351,23 +1341,22 @@ do you want to:
1351
1341
  %*GREEN*%6%*RESET*%. Go to The Town Hall.
1352
1342
  %*GREEN*%7%*RESET*%. Go to The Thieves Guild.
1353
1343
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1354
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1355
- },
1356
-
1357
- 'The 2nd Gadabout Bakery' :{
1358
- 'room type': 'asteroid-2',
1359
- 'directions': {
1360
- '1': Door('2nd Teleportation Deck'),
1361
- '2': Door('The 2nd Dancing Jellyfish Inn'),
1362
- '3': Door('The 2nd Slopy Plasmoid Tapphouse'),
1363
- '4': Door('The 2nd GiffHammer Weapon Shop'),
1364
- '5': Door('The 2nd Githspender St'),
1365
- '6': Door('The 2nd Town Hall'),
1366
- '7': Door('The 2nd Thieves Guild'),
1367
- '8': Door('The 2nd Watch Castle'),
1368
- '9': Door('The 2nd Old Manor'),
1369
- },
1370
- 'info': '''
1344
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1345
+ },
1346
+ "The 2nd Gadabout Bakery": {
1347
+ "room type": "asteroid-2",
1348
+ "directions": {
1349
+ "1": Door("2nd Teleportation Deck"),
1350
+ "2": Door("The 2nd Dancing Jellyfish Inn"),
1351
+ "3": Door("The 2nd Slopy Plasmoid Tapphouse"),
1352
+ "4": Door("The 2nd GiffHammer Weapon Shop"),
1353
+ "5": Door("The 2nd Githspender St"),
1354
+ "6": Door("The 2nd Town Hall"),
1355
+ "7": Door("The 2nd Thieves Guild"),
1356
+ "8": Door("The 2nd Watch Castle"),
1357
+ "9": Door("The 2nd Old Manor"),
1358
+ },
1359
+ "info": """
1371
1360
 
1372
1361
  do you want to:
1373
1362
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1378,23 +1367,22 @@ do you want to:
1378
1367
  %*GREEN*%6%*RESET*%. Go to The Town Hall.
1379
1368
  %*GREEN*%7%*RESET*%. Go to The Thieves Guild.
1380
1369
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1381
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1382
- },
1383
-
1384
- 'The 2nd Githspender St' :{
1385
- 'room type': 'asteroid-2',
1386
- 'directions': {
1387
- '1': Door('2nd Teleportation Deck'),
1388
- '2': Door('The 2nd Dancing Jellyfish Inn'),
1389
- '3': Door('The 2nd Slopy Plasmoid Tapphouse'),
1390
- '4': Door('The 2nd GiffHammer Weapon Shop'),
1391
- '5': Door('The 2nd Gadabout Bakery'),
1392
- '6': Door('The 2nd Town Hall'),
1393
- '7': Door('The 2nd Thieves Guild'),
1394
- '8': Door('The 2nd Watch Castle'),
1395
- '9': Door('The 2nd Old Manor'),
1396
- },
1397
- 'info': '''
1370
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1371
+ },
1372
+ "The 2nd Githspender St": {
1373
+ "room type": "asteroid-2",
1374
+ "directions": {
1375
+ "1": Door("2nd Teleportation Deck"),
1376
+ "2": Door("The 2nd Dancing Jellyfish Inn"),
1377
+ "3": Door("The 2nd Slopy Plasmoid Tapphouse"),
1378
+ "4": Door("The 2nd GiffHammer Weapon Shop"),
1379
+ "5": Door("The 2nd Gadabout Bakery"),
1380
+ "6": Door("The 2nd Town Hall"),
1381
+ "7": Door("The 2nd Thieves Guild"),
1382
+ "8": Door("The 2nd Watch Castle"),
1383
+ "9": Door("The 2nd Old Manor"),
1384
+ },
1385
+ "info": """
1398
1386
 
1399
1387
  do you want to:
1400
1388
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1405,23 +1393,22 @@ do you want to:
1405
1393
  %*GREEN*%6%*RESET*%. Go to The Town Hall.
1406
1394
  %*GREEN*%7%*RESET*%. Go to The Thieves Guild.
1407
1395
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1408
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1409
- },
1410
-
1411
- 'The 2nd Town Hall' :{
1412
- 'room type': 'asteroid-2',
1413
- 'directions': {
1414
- '1': Door('2nd Teleportation Deck'),
1415
- '2': Door('The 2nd Dancing Jellyfish Inn'),
1416
- '3': Door('The 2nd Slopy Plasmoid Tapphouse'),
1417
- '4': Door('The 2nd GiffHammer Weapon Shop'),
1418
- '5': Door('The 2nd Gadabout Bakery'),
1419
- '6': Door('The 2nd Githspender St'),
1420
- '7': Door('The 2nd Thieves Guild'),
1421
- '8': Door('The 2nd Watch Castle'),
1422
- '9': Door('The 2nd Old Manor'),
1423
- },
1424
- 'info': '''
1396
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1397
+ },
1398
+ "The 2nd Town Hall": {
1399
+ "room type": "asteroid-2",
1400
+ "directions": {
1401
+ "1": Door("2nd Teleportation Deck"),
1402
+ "2": Door("The 2nd Dancing Jellyfish Inn"),
1403
+ "3": Door("The 2nd Slopy Plasmoid Tapphouse"),
1404
+ "4": Door("The 2nd GiffHammer Weapon Shop"),
1405
+ "5": Door("The 2nd Gadabout Bakery"),
1406
+ "6": Door("The 2nd Githspender St"),
1407
+ "7": Door("The 2nd Thieves Guild"),
1408
+ "8": Door("The 2nd Watch Castle"),
1409
+ "9": Door("The 2nd Old Manor"),
1410
+ },
1411
+ "info": """
1425
1412
 
1426
1413
  do you want to:
1427
1414
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1432,33 +1419,33 @@ do you want to:
1432
1419
  %*GREEN*%6%*RESET*%. Go to The Githspender St.
1433
1420
  %*GREEN*%7%*RESET*%. Go to The Thieves Guild.
1434
1421
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1435
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1436
- },
1437
-
1438
- 'The 2nd Thieves Guild' :{
1439
- 'room type': 'asteroid-2',
1440
- 'directions': {
1441
- '1': Door('2nd Teleportation Deck'),
1442
- '2': Door('The 2nd Dancing Jellyfish Inn'),
1443
- '3': Door('The 2nd Slopy Plasmoid Tapphouse'),
1444
- '4': Door('The 2nd GiffHammer Weapon Shop'),
1445
- '5': Door('The 2nd Gadabout Bakery'),
1446
- '6': Door('The 2nd Githspender St'),
1447
- '7': Door('The 2nd Town Hall'),
1448
- '8': Door('The 2nd Watch Castle'),
1449
- '9': Door('The 2nd Old Manor'),
1450
- },
1451
- 'creatures stats': [creature(
1452
- 'thief',
1453
- 10,
1454
- 4,
1455
- [item('knife', 'weapon', 2), item('money-pouch', 'valuable', 25)],
1456
- 'A hooded 5ft 11 humanoid thief, thief level 3',
1457
- 'You see a %*CYAN*%thief%*RESET*% at the door',
1458
- creature_type('humanoid', 'cowfolk'),
1459
- ),
1460
- ],
1461
- 'info': '''
1422
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1423
+ },
1424
+ "The 2nd Thieves Guild": {
1425
+ "room type": "asteroid-2",
1426
+ "directions": {
1427
+ "1": Door("2nd Teleportation Deck"),
1428
+ "2": Door("The 2nd Dancing Jellyfish Inn"),
1429
+ "3": Door("The 2nd Slopy Plasmoid Tapphouse"),
1430
+ "4": Door("The 2nd GiffHammer Weapon Shop"),
1431
+ "5": Door("The 2nd Gadabout Bakery"),
1432
+ "6": Door("The 2nd Githspender St"),
1433
+ "7": Door("The 2nd Town Hall"),
1434
+ "8": Door("The 2nd Watch Castle"),
1435
+ "9": Door("The 2nd Old Manor"),
1436
+ },
1437
+ "creatures stats": [
1438
+ creature(
1439
+ "thief",
1440
+ 10,
1441
+ 4,
1442
+ [item("knife", "weapon", 2), item("money-pouch", "valuable", 25)],
1443
+ "A hooded 5ft 11 humanoid thief, thief level 3",
1444
+ "You see a %*CYAN*%thief%*RESET*% at the door",
1445
+ creature_type("humanoid", "cowfolk"),
1446
+ ),
1447
+ ],
1448
+ "info": """
1462
1449
 
1463
1450
  do you want to:
1464
1451
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1469,23 +1456,22 @@ do you want to:
1469
1456
  %*GREEN*%6%*RESET*%. Go to The Githspender St.
1470
1457
  %*GREEN*%7%*RESET*%. Go to The Town Hall.
1471
1458
  %*GREEN*%8%*RESET*%. Go to The Watch Castle.
1472
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1473
- },
1474
-
1475
- 'The 2nd Watch Castle' :{
1476
- 'room type': 'asteroid-2',
1477
- 'directions': {
1478
- '1': Door('2nd Teleportation Deck'),
1479
- '2': Door('The 2nd Dancing Jellyfish Inn'),
1480
- '3': Door('The 2nd Slopy Plasmoid Tapphouse'),
1481
- '4': Door('The 2nd GiffHammer Weapon Shop'),
1482
- '5': Door('The 2nd Gadabout Bakery'),
1483
- '6': Door('The 2nd Githspender St'),
1484
- '7': Door('The 2nd Town Hall'),
1485
- '8': Door('The 2nd Thieves Guild'),
1486
- '9': Door('The 2nd Old Manor'),
1487
- },
1488
- 'info': '''
1459
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1460
+ },
1461
+ "The 2nd Watch Castle": {
1462
+ "room type": "asteroid-2",
1463
+ "directions": {
1464
+ "1": Door("2nd Teleportation Deck"),
1465
+ "2": Door("The 2nd Dancing Jellyfish Inn"),
1466
+ "3": Door("The 2nd Slopy Plasmoid Tapphouse"),
1467
+ "4": Door("The 2nd GiffHammer Weapon Shop"),
1468
+ "5": Door("The 2nd Gadabout Bakery"),
1469
+ "6": Door("The 2nd Githspender St"),
1470
+ "7": Door("The 2nd Town Hall"),
1471
+ "8": Door("The 2nd Thieves Guild"),
1472
+ "9": Door("The 2nd Old Manor"),
1473
+ },
1474
+ "info": """
1489
1475
 
1490
1476
  do you want to:
1491
1477
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1496,23 +1482,22 @@ do you want to:
1496
1482
  %*GREEN*%6%*RESET*%. Go to The Githspender St.
1497
1483
  %*GREEN*%7%*RESET*%. Go to The Town Hall.
1498
1484
  %*GREEN*%8%*RESET*%. Go to The Thieves Guild.
1499
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1500
- },
1501
-
1502
- 'The 2nd Old Manor' :{
1503
- 'room type': 'asteroid-2',
1504
- 'directions': {
1505
- '1': Door('2nd Teleportation Deck'),
1506
- '2': Door('The 2nd Dancing Jellyfish Inn'),
1507
- '3': Door('The 2nd Slopy Plasmoid Tapphouse'),
1508
- '4': Door('The 2nd GiffHammer Weapon Shop'),
1509
- '5': Door('The 2nd Gadabout Bakery'),
1510
- '6': Door('The 2nd Githspender St'),
1511
- '7': Door('The 2nd Town Hall'),
1512
- '8': Door('The 2nd Thieves Guild'),
1513
- '9': Door('The 2nd Watch Castle'),
1514
- },
1515
- 'info': '''
1485
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1486
+ },
1487
+ "The 2nd Old Manor": {
1488
+ "room type": "asteroid-2",
1489
+ "directions": {
1490
+ "1": Door("2nd Teleportation Deck"),
1491
+ "2": Door("The 2nd Dancing Jellyfish Inn"),
1492
+ "3": Door("The 2nd Slopy Plasmoid Tapphouse"),
1493
+ "4": Door("The 2nd GiffHammer Weapon Shop"),
1494
+ "5": Door("The 2nd Gadabout Bakery"),
1495
+ "6": Door("The 2nd Githspender St"),
1496
+ "7": Door("The 2nd Town Hall"),
1497
+ "8": Door("The 2nd Thieves Guild"),
1498
+ "9": Door("The 2nd Watch Castle"),
1499
+ },
1500
+ "info": """
1516
1501
 
1517
1502
  do you want to:
1518
1503
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1523,24 +1508,23 @@ do you want to:
1523
1508
  %*GREEN*%6%*RESET*%. Go to The Githspender St.
1524
1509
  %*GREEN*%7%*RESET*%. Go to The Town Hall.
1525
1510
  %*GREEN*%8%*RESET*%. Go to The Thieves Guild.
1526
- %*GREEN*%9%*RESET*%. Go to The Watch Castle.''',
1527
- },
1528
-
1529
- '3rd Teleportation Deck': {
1530
- 'room type': 'asteroid-2',
1531
- 'directions': {
1532
- '1': Door('Charter 3rd Ship'),
1533
- '2': Door('The Main Guildhall'),
1534
- '3': Door('The Order of the Arcane Scribes'),
1535
- '4': Door('The Wayfarers\' Brotherhood'),
1536
- '5': Door('The Artisans\' Collective'),
1537
- '6': Door('The Silent Shadows Syndicate'),
1538
- '7': Door('The Guardians of the Wilds'),
1539
- '8': Door('The Mercantile Consortium'),
1540
- '9': Door('The Sentinels of the Shield'),
1541
- },
1542
- '10': Door('The 3rd Old Manor'),
1543
- 'info': '''
1511
+ %*GREEN*%9%*RESET*%. Go to The Watch Castle.""",
1512
+ },
1513
+ "3rd Teleportation Deck": {
1514
+ "room type": "asteroid-2",
1515
+ "directions": {
1516
+ "1": Door("Charter 3rd Ship"),
1517
+ "2": Door("The Main Guildhall"),
1518
+ "3": Door("The Order of the Arcane Scribes"),
1519
+ "4": Door("The Wayfarers' Brotherhood"),
1520
+ "5": Door("The Artisans' Collective"),
1521
+ "6": Door("The Silent Shadows Syndicate"),
1522
+ "7": Door("The Guardians of the Wilds"),
1523
+ "8": Door("The Mercantile Consortium"),
1524
+ "9": Door("The Sentinels of the Shield"),
1525
+ },
1526
+ "10": Door("The 3rd Old Manor"),
1527
+ "info": """
1544
1528
  You are in a strange cave with many teleportation circles, as well as some ships that are floating above the floor.
1545
1529
 
1546
1530
  Out of the gap in the side of the cave it looks black with a few twinkles of light.
@@ -1557,26 +1541,25 @@ do you want to:
1557
1541
  %*GREEN*%7%*RESET*%. Go to The Nature Guild.
1558
1542
  %*GREEN*%8%*RESET*%. Go to The Trade Guild.
1559
1543
  %*GREEN*%9%*RESET*%. Go to The Watch Castle.
1560
- %*GREEN*%10%*RESET*%. Go to The Old Manor.''',
1561
- },
1562
-
1563
- 'Charter 3rd Ship' :{
1564
- 'room type': 'asteroid-3',
1565
- 'directions': {
1566
- '1': Door('Teleportation Deck'),
1567
- '2': Door('The Main Guildhall'),
1568
- '3': Door('The Order of the Arcane Scribes'),
1569
- '4': Door('The Wayfarers\' Brotherhood'),
1570
- '5': Door('The Artisans\' Collective'),
1571
- '6': Door('The Silent Shadows Syndicate'),
1572
- '7': Door('The Guardians of the Wilds'),
1573
- '8': Door('The Mercantile Consortium'),
1574
- '9': Door('The Sentinels of the Shield'),
1575
- '10': Door('The 3rd Old Manor'),
1576
- '11': Door('Teleportation Deck'),
1577
- '12': Door('2nd Teleportation Deck'),
1578
- },
1579
- 'info': '''
1544
+ %*GREEN*%10%*RESET*%. Go to The Old Manor.""",
1545
+ },
1546
+ "Charter 3rd Ship": {
1547
+ "room type": "asteroid-3",
1548
+ "directions": {
1549
+ "1": Door("Teleportation Deck"),
1550
+ "2": Door("The Main Guildhall"),
1551
+ "3": Door("The Order of the Arcane Scribes"),
1552
+ "4": Door("The Wayfarers' Brotherhood"),
1553
+ "5": Door("The Artisans' Collective"),
1554
+ "6": Door("The Silent Shadows Syndicate"),
1555
+ "7": Door("The Guardians of the Wilds"),
1556
+ "8": Door("The Mercantile Consortium"),
1557
+ "9": Door("The Sentinels of the Shield"),
1558
+ "10": Door("The 3rd Old Manor"),
1559
+ "11": Door("Teleportation Deck"),
1560
+ "12": Door("2nd Teleportation Deck"),
1561
+ },
1562
+ "info": """
1580
1563
 
1581
1564
  You charter a ship, and the Captain says: "You can go anywhere you like before you land back on this here asteriod!"
1582
1565
 
@@ -1592,11 +1575,10 @@ Do you want to:
1592
1575
  %*GREEN*%9%*RESET*%. Go to The Guards Guild.
1593
1576
  %*GREEN*%10%*RESET*%. Go to The Old Manor.
1594
1577
  %*GREEN*%11%*RESET*%. Go to The 1st Asteriod.
1595
- %*GREEN*%12%*RESET*%. Go to The 2nd Asteriod.''',
1596
- },
1597
-
1598
- 'The Main Guildhall' :{
1599
- 'description': '''
1578
+ %*GREEN*%12%*RESET*%. Go to The 2nd Asteriod.""",
1579
+ },
1580
+ "The Main Guildhall": {
1581
+ "description": """
1600
1582
  The Forge of Heroes
1601
1583
 
1602
1584
  Theme: Valor and Heroism
@@ -1604,21 +1586,21 @@ Purpose: The Forge of Heroes is a legendary guildhall dedicated to the training,
1604
1586
  reverence, inspiring all who enter to aspire to greatness. Within its hallowed halls, aspiring adventurers undergo rigorous training regimes, learning the arts of combat, leadership, and
1605
1587
  selflessness under the guidance of seasoned mentors and legendary champions. In addition to training, the Forge also serves as a repository of heroic deeds, with its walls adorned with
1606
1588
  tapestries, statues, and artifacts commemorating the triumphs of the past. Whether preparing for epic quests, honing their skills in the arena, or seeking guidance from wise sages, heroes
1607
- from across the realm flock to the Forge, drawn by the promise of glory and the chance to make their mark on history.''',
1608
- 'room type': 'asteroid-3',
1609
- 'directions': {
1610
- '1': Door('2nd Teleportation Deck'),
1611
- '2': Door('The Order of the Arcane Scribes'),
1612
- '3': Door('The Wayfarers\' Brotherhood'),
1613
- '4': Door('The Artisans\' Collective'),
1614
- '5': Door('The Silent Shadows Syndicate'),
1615
- '6': Door('The Guardians of the Wilds'),
1616
- '7': Door('The Mercantile Consortium'),
1617
- '8': Door('The Sentinels of the Shield'),
1618
- '9': Door('The 3rd Old Manor'),
1619
- '10': Door('The Grand Coliseum'),
1620
- },
1621
- 'info': '''
1589
+ from across the realm flock to the Forge, drawn by the promise of glory and the chance to make their mark on history.""",
1590
+ "room type": "asteroid-3",
1591
+ "directions": {
1592
+ "1": Door("2nd Teleportation Deck"),
1593
+ "2": Door("The Order of the Arcane Scribes"),
1594
+ "3": Door("The Wayfarers' Brotherhood"),
1595
+ "4": Door("The Artisans' Collective"),
1596
+ "5": Door("The Silent Shadows Syndicate"),
1597
+ "6": Door("The Guardians of the Wilds"),
1598
+ "7": Door("The Mercantile Consortium"),
1599
+ "8": Door("The Sentinels of the Shield"),
1600
+ "9": Door("The 3rd Old Manor"),
1601
+ "10": Door("The Grand Coliseum"),
1602
+ },
1603
+ "info": """
1622
1604
 
1623
1605
  do you want to:
1624
1606
  %*GREEN*%1%*RESET*%. Go to The Teleportation Deck.
@@ -1630,11 +1612,10 @@ do you want to:
1630
1612
  %*GREEN*%7%*RESET*%. Go to The Trade Guild.
1631
1613
  %*GREEN*%8%*RESET*%. Go to The Guards Guild.
1632
1614
  %*GREEN*%9%*RESET*%. Go to The Old Manor.
1633
- %*GREEN*%10%*RESET*%. Go to The Arena''',
1634
- },
1635
-
1636
- 'The Grand Coliseum' :{
1637
- 'description': '''
1615
+ %*GREEN*%10%*RESET*%. Go to The Arena""",
1616
+ },
1617
+ "The Grand Coliseum": {
1618
+ "description": """
1638
1619
  The Grand Coliseum
1639
1620
 
1640
1621
  Theme: Gladiatorial Combat and Spectacle
@@ -1644,29 +1625,29 @@ from all walks of life gather to witness the spectacle of combat, cheering on th
1644
1625
  venue for bloodsport—it is a symbol of honor, valor, and the indomitable spirit of competition. Warriors who prove themselves in the crucible of the arena earn not only fame and fortune but
1645
1626
  also the respect of their peers and the adoration of the crowds. Whether battling for supremacy in one-on-one duels, facing off against fearsome beasts in savage contests, or participating in
1646
1627
  elaborate tournaments of skill and strategy, the fighters of the Grand Coliseum embody the virtues of courage, determination, and resilience. As the premier arena of its kind, the Grand
1647
- Coliseum stands as a testament to the enduring appeal of gladiatorial combat and the timeless allure of the warrior's path.''',
1648
- 'room type': 'asteroid-3',
1649
- 'directions': {
1650
- '1': Door('The Main Guildhall'),
1651
- },
1652
- 'creatures stats': [creature(
1653
- 'gladiator',
1654
- 15,
1655
- 6,
1656
- [item('longsword', 'weapon', 4)],
1657
- 'A large 6ft 7 humaniod gladiator',
1658
- 'As you enter the Arena a hulking %*CYAN*%gladiator%*RESET*% walks up to you and says: "You sould run while you still can or face me!"',
1659
- creature_type('humaniod', 'goliath'),
1660
- ),
1661
- ],
1662
- 'info': '''
1628
+ Coliseum stands as a testament to the enduring appeal of gladiatorial combat and the timeless allure of the warrior's path.""",
1629
+ "room type": "asteroid-3",
1630
+ "directions": {
1631
+ "1": Door("The Main Guildhall"),
1632
+ },
1633
+ "creatures stats": [
1634
+ creature(
1635
+ "gladiator",
1636
+ 15,
1637
+ 6,
1638
+ [item("longsword", "weapon", 4)],
1639
+ "A large 6ft 7 humaniod gladiator",
1640
+ 'As you enter the Arena a hulking %*CYAN*%gladiator%*RESET*% walks up to you and says: "You sould run while you still can or face me!"',
1641
+ creature_type("humaniod", "goliath"),
1642
+ ),
1643
+ ],
1644
+ "info": """
1663
1645
 
1664
1646
  do you want to:
1665
- %*GREEN*%1%*RESET*%. Go to The The Main Guildhall.''',
1666
- },
1667
-
1668
- 'The Order of the Arcane Scribes' :{
1669
- 'description': '''
1647
+ %*GREEN*%1%*RESET*%. Go to The The Main Guildhall.""",
1648
+ },
1649
+ "The Order of the Arcane Scribes": {
1650
+ "description": """
1670
1651
  Order of the Arcane Scribes
1671
1652
 
1672
1653
  Theme: Magic and Knowledge
@@ -1675,20 +1656,20 @@ is the preservation, study, and advancement of the arcane arts. Within their anc
1675
1656
  tomes, decipher cryptic runes, and experiment with new spells. Their work encompasses a wide range of magical disciplines, from elemental manipulation to divination and healing magic. Beyond
1676
1657
  their scholarly pursuits, the Order also offers magical services to the community, providing everything from enchantments and potion brewing to mystical consultations and magical education.
1677
1658
  Whether delving into the depths of forgotten lore or harnessing the power of the elements, the Arcane Scribes are dedicated to unraveling the secrets of the cosmos and mastering the forces of
1678
- magic.''',
1679
- 'room type': 'asteroid-3',
1680
- 'directions': {
1681
- '1': Door('3rd Teleportation Deck'),
1682
- '2': Door('The Main Guildhall'),
1683
- '3': Door('The Wayfarers\' Brotherhood'),
1684
- '4': Door('The Artisans\' Collective'),
1685
- '5': Door('The Silent Shadows Syndicate'),
1686
- '6': Door('The Guardians of the Wilds'),
1687
- '7': Door('The Mercantile Consortium'),
1688
- '8': Door('The Sentinels of the Shield'),
1689
- '9': Door('The 3rd Old Manor'),
1690
- },
1691
- 'info': '''
1659
+ magic.""",
1660
+ "room type": "asteroid-3",
1661
+ "directions": {
1662
+ "1": Door("3rd Teleportation Deck"),
1663
+ "2": Door("The Main Guildhall"),
1664
+ "3": Door("The Wayfarers' Brotherhood"),
1665
+ "4": Door("The Artisans' Collective"),
1666
+ "5": Door("The Silent Shadows Syndicate"),
1667
+ "6": Door("The Guardians of the Wilds"),
1668
+ "7": Door("The Mercantile Consortium"),
1669
+ "8": Door("The Sentinels of the Shield"),
1670
+ "9": Door("The 3rd Old Manor"),
1671
+ },
1672
+ "info": """
1692
1673
 
1693
1674
  do you want to:
1694
1675
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1699,11 +1680,10 @@ do you want to:
1699
1680
  %*GREEN*%6%*RESET*%. Go to The Nature Guild.
1700
1681
  %*GREEN*%7%*RESET*%. Go to The Trade Guild.
1701
1682
  %*GREEN*%8%*RESET*%. Go to The Guards Guild.
1702
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1703
- },
1704
-
1705
- 'The Wayfarers\' Brotherhood' :{
1706
- 'description': '''
1683
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1684
+ },
1685
+ "The Wayfarers' Brotherhood": {
1686
+ "description": """
1707
1687
  Wayfarers' Brotherhood
1708
1688
 
1709
1689
  Theme: Exploration and Adventure
@@ -1711,20 +1691,20 @@ Purpose: The Wayfarers' Brotherhood is a renowned guild of intrepid adventurers,
1711
1691
  treasure, and the exploration of uncharted realms. From the towering peaks of distant mountains to the depths of forgotten dungeons, members of the Wayfarers' Brotherhood traverse the world in
1712
1692
  search of adventure and fortune. Their guildhall, a bustling hub of activity and excitement, serves as a meeting place for like-minded individuals to share tales of daring exploits, plan
1713
1693
  ambitious expeditions, and seek companions for their journeys. Guided by a spirit of curiosity and a thirst for discovery, the Wayfarers embody the adventurous spirit of exploration, ever
1714
- eager to uncover the mysteries that lie beyond the horizon.''',
1715
- 'room type': 'asteroid-3',
1716
- 'directions': {
1717
- '1': Door('3rd Teleportation Deck'),
1718
- '2': Door('The Main Guildhall'),
1719
- '3': Door('The Order of the Arcane Scribes'),
1720
- '4': Door('The Artisans\' Collective'),
1721
- '5': Door('The Silent Shadows Syndicate'),
1722
- '6': Door('The Guardians of the Wilds'),
1723
- '7': Door('The Mercantile Consortium'),
1724
- '8': Door('The Sentinels of the Shield'),
1725
- '9': Door('The 3rd Old Manor'),
1726
- },
1727
- 'info': '''
1694
+ eager to uncover the mysteries that lie beyond the horizon.""",
1695
+ "room type": "asteroid-3",
1696
+ "directions": {
1697
+ "1": Door("3rd Teleportation Deck"),
1698
+ "2": Door("The Main Guildhall"),
1699
+ "3": Door("The Order of the Arcane Scribes"),
1700
+ "4": Door("The Artisans' Collective"),
1701
+ "5": Door("The Silent Shadows Syndicate"),
1702
+ "6": Door("The Guardians of the Wilds"),
1703
+ "7": Door("The Mercantile Consortium"),
1704
+ "8": Door("The Sentinels of the Shield"),
1705
+ "9": Door("The 3rd Old Manor"),
1706
+ },
1707
+ "info": """
1728
1708
 
1729
1709
  do you want to:
1730
1710
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1735,11 +1715,10 @@ do you want to:
1735
1715
  %*GREEN*%6%*RESET*%. Go to The Nature Guild.
1736
1716
  %*GREEN*%7%*RESET*%. Go to The Trade Guild.
1737
1717
  %*GREEN*%8%*RESET*%. Go to The Guards Guild.
1738
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1739
- },
1740
-
1741
- 'The Artisans\' Collective' :{
1742
- 'description': '''
1718
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1719
+ },
1720
+ "The Artisans' Collective": {
1721
+ "description": """
1743
1722
  Artisans' Collective
1744
1723
 
1745
1724
  Theme: Craftsmanship and Creativity
@@ -1748,20 +1727,20 @@ artisans, craftsmen, and artists of all disciplines gather to hone their skills,
1748
1727
  anvils in the blacksmith's forge to the delicate brushstrokes of the painter's canvas, members of the Artisans' Collective excel in a diverse array of trades and artistic endeavors. Their
1749
1728
  guildhall doubles as a vibrant workshop and gallery, where members collaborate on projects, share techniques, and exhibit their finest works to the public. Whether forging weapons of legendary
1750
1729
  quality, crafting intricate works of jewelry, or painting breathtaking landscapes, the Artisans' Collective stands as a testament to the enduring power of creativity and the transformative
1751
- potential of skilled craftsmanship.''',
1752
- 'room type': 'asteroid-3',
1753
- 'directions': {
1754
- '1': Door('3rd Teleportation Deck'),
1755
- '2': Door('The Main Guildhall'),
1756
- '3': Door('The Order of the Arcane Scribes'),
1757
- '4': Door('The Wayfarers\' Brotherhood'),
1758
- '5': Door('The Silent Shadows Syndicate'),
1759
- '6': Door('The Guardians of the Wilds'),
1760
- '7': Door('The Mercantile Consortium'),
1761
- '8': Door('The Sentinels of the Shield'),
1762
- '9': Door('The 3rd Old Manor'),
1763
- },
1764
- 'info': '''
1730
+ potential of skilled craftsmanship.""",
1731
+ "room type": "asteroid-3",
1732
+ "directions": {
1733
+ "1": Door("3rd Teleportation Deck"),
1734
+ "2": Door("The Main Guildhall"),
1735
+ "3": Door("The Order of the Arcane Scribes"),
1736
+ "4": Door("The Wayfarers' Brotherhood"),
1737
+ "5": Door("The Silent Shadows Syndicate"),
1738
+ "6": Door("The Guardians of the Wilds"),
1739
+ "7": Door("The Mercantile Consortium"),
1740
+ "8": Door("The Sentinels of the Shield"),
1741
+ "9": Door("The 3rd Old Manor"),
1742
+ },
1743
+ "info": """
1765
1744
 
1766
1745
  do you want to:
1767
1746
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1772,11 +1751,10 @@ do you want to:
1772
1751
  %*GREEN*%6%*RESET*%. Go to The Nature Guild.
1773
1752
  %*GREEN*%7%*RESET*%. Go to The Trade Guild.
1774
1753
  %*GREEN*%8%*RESET*%. Go to The Guards Guild.
1775
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1776
- },
1777
-
1778
- 'The Silent Shadows Syndicate' :{
1779
- 'description': '''
1754
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1755
+ },
1756
+ "The Silent Shadows Syndicate": {
1757
+ "description": """
1780
1758
  Silent Shadows Syndicate
1781
1759
 
1782
1760
  Theme: Stealth and Subterfuge
@@ -1785,20 +1763,20 @@ Their clandestine operations span the realms of espionage, sabotage, and intelli
1785
1763
  concealed from prying eyes and hidden from public view, members of the Syndicate plot and scheme, carrying out covert missions on behalf of their clients or furthering their own clandestine
1786
1764
  agendas. Masters of disguise, experts in surveillance, and lethal in combat, the members of the Silent Shadows Syndicate operate with precision and finesse, striking swiftly and decisively
1787
1765
  before melting back into the shadows from whence they came. Though their methods may be controversial, their services are in high demand by those who require the services of skilled operatives
1788
- willing to operate outside the boundaries of conventional morality.''',
1789
- 'room type': 'asteroid-3',
1790
- 'directions': {
1791
- '1': Door('3rd Teleportation Deck'),
1792
- '2': Door('The Main Guildhall'),
1793
- '3': Door('The Order of the Arcane Scribes'),
1794
- '4': Door('The Wayfarers\' Brotherhood'),
1795
- '5': Door('The Artisans\' Collective'),
1796
- '6': Door('The Guardians of the Wilds'),
1797
- '7': Door('The Mercantile Consortium'),
1798
- '8': Door('The Sentinels of the Shield'),
1799
- '9': Door('The 3rd Old Manor'),
1800
- },
1801
- 'info': '''
1766
+ willing to operate outside the boundaries of conventional morality.""",
1767
+ "room type": "asteroid-3",
1768
+ "directions": {
1769
+ "1": Door("3rd Teleportation Deck"),
1770
+ "2": Door("The Main Guildhall"),
1771
+ "3": Door("The Order of the Arcane Scribes"),
1772
+ "4": Door("The Wayfarers' Brotherhood"),
1773
+ "5": Door("The Artisans' Collective"),
1774
+ "6": Door("The Guardians of the Wilds"),
1775
+ "7": Door("The Mercantile Consortium"),
1776
+ "8": Door("The Sentinels of the Shield"),
1777
+ "9": Door("The 3rd Old Manor"),
1778
+ },
1779
+ "info": """
1802
1780
 
1803
1781
  do you want to:
1804
1782
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1809,11 +1787,10 @@ do you want to:
1809
1787
  %*GREEN*%6%*RESET*%. Go to The Nature Guild.
1810
1788
  %*GREEN*%7%*RESET*%. Go to The Trade Guild.
1811
1789
  %*GREEN*%8%*RESET*%. Go to The Guards Guild.
1812
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1813
- },
1814
-
1815
- 'The Guardians of the Wilds' :{
1816
- 'description': '''
1790
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1791
+ },
1792
+ "The Guardians of the Wilds": {
1793
+ "description": """
1817
1794
  Guardians of the Wilds
1818
1795
 
1819
1796
  Theme: Nature and Conservation
@@ -1822,20 +1799,20 @@ connected to the land and its inhabitants, members of the Guardians of the Wilds
1822
1799
  civilization and the encroachment of dark forces. Within their secluded guildhall, nestled amidst the ancient trees of a sacred grove, members commune with nature, honing their connection to
1823
1800
  the primal forces that sustain all life. Through their efforts, they seek to promote harmony between civilization and the wild, advocating for sustainable practices and opposing those who
1824
1801
  would exploit nature for profit or power. Whether embarking on quests to thwart the schemes of eco-terrorists, guiding travelers through treacherous terrain, or tending to the needs of injured
1825
- wildlife, the Guardians of the Wilds stand as vigilant protectors of the natural world, sworn to defend it against all who would seek to do it harm.''',
1826
- 'room type': 'asteroid-3',
1827
- 'directions': {
1828
- '1': Door('3rd Teleportation Deck'),
1829
- '2': Door('The Main Guildhall'),
1830
- '3': Door('The Order of the Arcane Scribes'),
1831
- '4': Door('The Wayfarers\' Brotherhood'),
1832
- '5': Door('The Artisans\' Collective'),
1833
- '6': Door('The Silent Shadows Syndicate'),
1834
- '7': Door('The Mercantile Consortium'),
1835
- '8': Door('The Sentinels of the Shield'),
1836
- '9': Door('The 3rd Old Manor'),
1837
- },
1838
- 'info': '''
1802
+ wildlife, the Guardians of the Wilds stand as vigilant protectors of the natural world, sworn to defend it against all who would seek to do it harm.""",
1803
+ "room type": "asteroid-3",
1804
+ "directions": {
1805
+ "1": Door("3rd Teleportation Deck"),
1806
+ "2": Door("The Main Guildhall"),
1807
+ "3": Door("The Order of the Arcane Scribes"),
1808
+ "4": Door("The Wayfarers' Brotherhood"),
1809
+ "5": Door("The Artisans' Collective"),
1810
+ "6": Door("The Silent Shadows Syndicate"),
1811
+ "7": Door("The Mercantile Consortium"),
1812
+ "8": Door("The Sentinels of the Shield"),
1813
+ "9": Door("The 3rd Old Manor"),
1814
+ },
1815
+ "info": """
1839
1816
 
1840
1817
  do you want to:
1841
1818
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1846,11 +1823,10 @@ do you want to:
1846
1823
  %*GREEN*%6%*RESET*%. Go to The Stealth Guild.
1847
1824
  %*GREEN*%7%*RESET*%. Go to The Trade Guild.
1848
1825
  %*GREEN*%8%*RESET*%. Go to The Guards Guild.
1849
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1850
- },
1851
-
1852
- 'The Mercantile Consortium' :{
1853
- 'description': '''
1826
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1827
+ },
1828
+ "The Mercantile Consortium": {
1829
+ "description": """
1854
1830
  Mercantile Consortium
1855
1831
 
1856
1832
  Theme: Trade and Commerce
@@ -1859,20 +1835,20 @@ of trade routes, marketplaces, and financial institutions spans continents, faci
1859
1835
  bustling nexus of commerce and negotiation, members of the Consortium broker lucrative deals, negotiate favorable terms, and vie for dominance in the cutthroat world of business. Masters of
1860
1836
  strategy, experts in logistics, and adept at navigating the complexities of international trade, members of the Mercantile Consortium are driven by a relentless pursuit of profit and power.
1861
1837
  Though their methods may be ruthless and their ambitions vast, their guild stands as a pillar of the global economy, shaping the course of history through the power of commerce and the pursuit
1862
- of wealth.''',
1863
- 'room type': 'asteroid-3',
1864
- 'directions': {
1865
- '1': Door('3rd Teleportation Deck'),
1866
- '2': Door('The Main Guildhall'),
1867
- '3': Door('The Order of the Arcane Scribes'),
1868
- '4': Door('The Wayfarers\' Brotherhood'),
1869
- '5': Door('The Artisans\' Collective'),
1870
- '6': Door('The Silent Shadows Syndicate'),
1871
- '7': Door('The Guardians of the Wilds'),
1872
- '8': Door('The Sentinels of the Shield'),
1873
- '9': Door('The 3rd Old Manor'),
1874
- },
1875
- 'info': '''
1838
+ of wealth.""",
1839
+ "room type": "asteroid-3",
1840
+ "directions": {
1841
+ "1": Door("3rd Teleportation Deck"),
1842
+ "2": Door("The Main Guildhall"),
1843
+ "3": Door("The Order of the Arcane Scribes"),
1844
+ "4": Door("The Wayfarers' Brotherhood"),
1845
+ "5": Door("The Artisans' Collective"),
1846
+ "6": Door("The Silent Shadows Syndicate"),
1847
+ "7": Door("The Guardians of the Wilds"),
1848
+ "8": Door("The Sentinels of the Shield"),
1849
+ "9": Door("The 3rd Old Manor"),
1850
+ },
1851
+ "info": """
1876
1852
 
1877
1853
  do you want to:
1878
1854
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1883,11 +1859,10 @@ do you want to:
1883
1859
  %*GREEN*%6%*RESET*%. Go to The Stealth Guild.
1884
1860
  %*GREEN*%7%*RESET*%. Go to The Trade Guild.
1885
1861
  %*GREEN*%8%*RESET*%. Go to The Guards Guild.
1886
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1887
- },
1888
-
1889
- 'The Sentinels of the Shield' :{
1890
- 'description': '''
1862
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1863
+ },
1864
+ "The Sentinels of the Shield": {
1865
+ "description": """
1891
1866
  Sentinels of the Shield
1892
1867
 
1893
1868
  Theme: Protection and Security
@@ -1904,20 +1879,20 @@ greater good, even at the risk of their own lives. Betrayal, corruption, or dere
1904
1879
  safeguard.
1905
1880
  - Training and Recruitment: Prospective members undergo rigorous training and screening processes to ensure they possess the necessary skills, discipline, and loyalty required to join the
1906
1881
  guild. Training programs cover various aspects of combat, law enforcement techniques, conflict resolution, and ethical decision-making. Experienced veterans provide mentorship and guidance to
1907
- new recruits, fostering a sense of camaraderie and unity among the ranks.''',
1908
- 'room type': 'asteroid-3',
1909
- 'directions': {
1910
- '1': Door('3rd Teleportation Deck'),
1911
- '2': Door('The Main Guildhall'),
1912
- '3': Door('The Order of the Arcane Scribes'),
1913
- '4': Door('The Wayfarers\' Brotherhood'),
1914
- '5': Door('The Artisans\' Collective'),
1915
- '6': Door('The Silent Shadows Syndicate'),
1916
- '7': Door('The Guardians of the Wilds'),
1917
- '8': Door('The Mercantile Consortium'),
1918
- '9': Door('The 3rd Old Manor'),
1919
- },
1920
- 'info': '''
1882
+ new recruits, fostering a sense of camaraderie and unity among the ranks.""",
1883
+ "room type": "asteroid-3",
1884
+ "directions": {
1885
+ "1": Door("3rd Teleportation Deck"),
1886
+ "2": Door("The Main Guildhall"),
1887
+ "3": Door("The Order of the Arcane Scribes"),
1888
+ "4": Door("The Wayfarers' Brotherhood"),
1889
+ "5": Door("The Artisans' Collective"),
1890
+ "6": Door("The Silent Shadows Syndicate"),
1891
+ "7": Door("The Guardians of the Wilds"),
1892
+ "8": Door("The Mercantile Consortium"),
1893
+ "9": Door("The 3rd Old Manor"),
1894
+ },
1895
+ "info": """
1921
1896
 
1922
1897
  do you want to:
1923
1898
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1928,23 +1903,22 @@ do you want to:
1928
1903
  %*GREEN*%6%*RESET*%. Go to The Stealth Guild.
1929
1904
  %*GREEN*%7%*RESET*%. Go to The Nature Guild.
1930
1905
  %*GREEN*%8%*RESET*%. Go to The Trade Guild.
1931
- %*GREEN*%9%*RESET*%. Go to The Old Manor.''',
1932
- },
1933
-
1934
- 'The 3rd Old Manor' :{
1935
- 'room type': 'asteroid-3',
1936
- 'directions': {
1937
- '1': Door('3rd Teleportation Deck'),
1938
- '2': Door('The Main Guildhall'),
1939
- '3': Door('The Order of the Arcane Scribes'),
1940
- '4': Door('The Wayfarers\' Brotherhood'),
1941
- '5': Door('The Artisans\' Collective'),
1942
- '6': Door('The Silent Shadows Syndicate'),
1943
- '7': Door('The Guardians of the Wilds'),
1944
- '8': Door('The Mercantile Consortium'),
1945
- '9': Door('The Sentinels of the Shield'),
1946
- },
1947
- 'info': '''
1906
+ %*GREEN*%9%*RESET*%. Go to The Old Manor.""",
1907
+ },
1908
+ "The 3rd Old Manor": {
1909
+ "room type": "asteroid-3",
1910
+ "directions": {
1911
+ "1": Door("3rd Teleportation Deck"),
1912
+ "2": Door("The Main Guildhall"),
1913
+ "3": Door("The Order of the Arcane Scribes"),
1914
+ "4": Door("The Wayfarers' Brotherhood"),
1915
+ "5": Door("The Artisans' Collective"),
1916
+ "6": Door("The Silent Shadows Syndicate"),
1917
+ "7": Door("The Guardians of the Wilds"),
1918
+ "8": Door("The Mercantile Consortium"),
1919
+ "9": Door("The Sentinels of the Shield"),
1920
+ },
1921
+ "info": """
1948
1922
 
1949
1923
  do you want to:
1950
1924
  %*GREEN*%1%*RESET*%. Go to the Teleportation Deck.
@@ -1955,7 +1929,6 @@ do you want to:
1955
1929
  %*GREEN*%6%*RESET*%. Go to The Stealth Guild.
1956
1930
  %*GREEN*%7%*RESET*%. Go to The Nature Guild.
1957
1931
  %*GREEN*%8%*RESET*%. Go to The Trade Guild.
1958
- %*GREEN*%9%*RESET*%. Go to The Guards Guild.''',
1959
- },
1960
-
1961
- }
1932
+ %*GREEN*%9%*RESET*%. Go to The Guards Guild.""",
1933
+ },
1934
+ }