scottkit 1.5.0 → 1.6.0

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.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +9 -0
  3. data/.yardopts +1 -1
  4. data/ChangeLog.md +14 -4
  5. data/Gemfile +6 -0
  6. data/README.md +6 -5
  7. data/Rakefile +0 -2
  8. data/VERSION +1 -1
  9. data/bin/scottkit +3 -2
  10. data/{notes → docs/notes}/Definition-saved-game.txt +0 -0
  11. data/{notes → docs/notes}/Definition-scottfree-1.14.txt +0 -0
  12. data/{notes → docs/notes}/Definition.txt +0 -0
  13. data/{notes → docs/notes}/adventureland-maze +0 -0
  14. data/{notes → docs/notes}/continue-action +0 -0
  15. data/{manual → docs}/reference.md +1 -1
  16. data/{data/tutorial → docs}/tutorial.md +43 -13
  17. data/{data → games}/.gitignore +0 -0
  18. data/{data → games}/adams/.gitignore +0 -0
  19. data/{data → games}/adams/AdamsGames.zip +0 -0
  20. data/{data → games}/adams/Makefile +0 -0
  21. data/{data → games}/crystal/crystal.map +19 -5
  22. data/{data/test → games/crystal}/crystal.sck +12 -8
  23. data/{data → games}/crystal/crystal.solution +3 -1
  24. data/{data → games}/dan-and-matt/dan-and-matt.sck +0 -0
  25. data/{data → games}/dan-and-matt/dan-and-matt.solution +0 -0
  26. data/{data → games}/howarth/.gitignore +0 -0
  27. data/{data → games}/howarth/Makefile +0 -0
  28. data/{data → games}/howarth/mysterious.tar.gz +0 -0
  29. data/{data → games}/nosferatu/.gitignore +0 -0
  30. data/{data → games}/nosferatu/Makefile +0 -0
  31. data/{data → games}/nosferatu/README +0 -0
  32. data/{data → games}/nosferatu/TODO +0 -0
  33. data/{data → games}/nosferatu/nosferatu.map +0 -0
  34. data/{data → games}/nosferatu/nosferatu.regression +0 -0
  35. data/{data → games}/nosferatu/nosferatu.sck +0 -0
  36. data/{data → games}/nosferatu/nosferatu.sol +0 -0
  37. data/{data → games}/nosferatu/nosferatu.transcript +1 -10
  38. data/{data → games}/test/Makefile +0 -0
  39. data/{data → games}/test/adams/Makefile +0 -0
  40. data/{data → games}/test/adams/adv01.solution +0 -0
  41. data/{data → games}/test/adams/adv01.transcript +2 -20
  42. data/games/test/adams/adv01.transcript.md5 +1 -0
  43. data/{data → games}/test/adams/adv02.solution +0 -0
  44. data/{data → games}/test/adams/adv02.transcript +31 -39
  45. data/games/test/adams/adv02.transcript.md5 +1 -0
  46. data/{data → games}/test/adams/adv04.solution +0 -0
  47. data/{data → games}/test/adams/adv04.transcript +19 -42
  48. data/games/test/adams/adv04.transcript.md5 +1 -0
  49. data/{data → games}/test/crystal.decompile +0 -0
  50. data/{data → games}/test/crystal.sao +0 -0
  51. data/{data → games}/test/crystal.save-file +0 -0
  52. data/{data → games}/test/crystal.save-script +0 -0
  53. data/{data/crystal → games/test}/crystal.sck +0 -0
  54. data/{data → games}/test/crystal.solution +0 -0
  55. data/{data → games}/test/crystal.transcript +34 -33
  56. data/{data → games}/test/t6.pretty-print +0 -0
  57. data/{data/tutorial/t7.sck → games/test/t6.sck} +6 -26
  58. data/{data → games}/test/t7.sao +0 -0
  59. data/{data → games}/test/t7.solution +0 -0
  60. data/{data → games}/test/t7.transcript +8 -18
  61. data/games/tutorial/Makefile +5 -0
  62. data/{data → games}/tutorial/t1.map +0 -0
  63. data/{data → games}/tutorial/t1.sck +0 -0
  64. data/{data → games}/tutorial/t2.map +0 -0
  65. data/{data → games}/tutorial/t2.sck +0 -0
  66. data/{data → games}/tutorial/t3.map +0 -0
  67. data/{data → games}/tutorial/t3.sck +0 -0
  68. data/{data → games}/tutorial/t4.map +0 -0
  69. data/{data → games}/tutorial/t4.sck +0 -0
  70. data/{data → games}/tutorial/t5.map +0 -0
  71. data/{data → games}/tutorial/t5.sck +2 -2
  72. data/games/tutorial/t6.sck +149 -0
  73. data/{data/tutorial/t6.sck → games/tutorial/t7.sck} +4 -2
  74. data/{data → games}/tutorial/tutorial.source.md +1 -1
  75. data/lib/scottkit/compile.rb +0 -1
  76. data/lib/scottkit/play.rb +76 -41
  77. data/scottkit.gemspec +135 -0
  78. data/test/test_canonicalise.rb +1 -1
  79. data/test/test_compile.rb +5 -5
  80. data/test/test_decompile.rb +2 -2
  81. data/test/test_play.rb +3 -3
  82. data/test/test_playadams.rb +3 -3
  83. data/test/test_save.rb +6 -6
  84. metadata +113 -67
  85. data/data/test/adams/adv01.transcript.md5 +0 -1
  86. data/data/test/adams/adv02.transcript.md5 +0 -1
  87. data/data/test/adams/adv04.transcript.md5 +0 -1
  88. data/data/tutorial/Makefile +0 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d6ee662e7fc97cdc7e349881932a08aa03c42d97
4
- data.tar.gz: cde6d91a06116aa1c6cdb1d8b70f3b0ff6a5f155
3
+ metadata.gz: 58c4dae4b211e99dcccfd7b82cb0aa473aad1f68
4
+ data.tar.gz: f9edf19e1fd205974b290696aa5c702ec1674510
5
5
  SHA512:
6
- metadata.gz: cec7ff05174bf3a85e809d05b9def638f56a414af2d1af5d34963cd68dc6a3f455011222783eb9aafec6a7950f8fb58e0dca07e16563e9091537dced62086df0
7
- data.tar.gz: 97ee4663a82814e7f194874f05048a1cfec396dad4ff166efe8fae466c01af8e66465866220bab1c7f207fb36a6c62fbdd26062a5a2f32d40a46997741b2376d
6
+ metadata.gz: 2d4b434a5c7f9e55aa7ff6aaaef2f4276d3397566e7080f363e67832050b0f2c6cedb2a1d8d241f1e5651eec354d909a1884a06bdfbf5fb3e42f095b8b91fa77
7
+ data.tar.gz: f0717581ccbeab53a630db6e1a32048077fa6d04cbdf234138e64e8302a966427eaf508b7808c5782313f95b0f6fc7cf5f639b278e63da0d6be15b987a45828c
data/.travis.yml ADDED
@@ -0,0 +1,9 @@
1
+ dist: trusty
2
+ language: ruby
3
+ rvm:
4
+ - 2.0
5
+ - 2.1
6
+ - 2.2
7
+ - 2.3
8
+ - 2.4
9
+ cache: bundler
data/.yardopts CHANGED
@@ -1 +1 @@
1
- --no-private bin/scottkit lib/**/.rb - ChangeLog.md GPL-2.txt notes/Definition.txt notes/Definition-saved-game.txt manual/reference.md
1
+ --no-private bin/scottkit lib/**/.rb - ChangeLog.md GPL-2.txt docs/notes/Definition.txt docs/notes/Definition-saved-game.txt docs/reference.md
data/ChangeLog.md CHANGED
@@ -1,11 +1,22 @@
1
1
  # Revision history for Ruby gem ScottKit
2
2
 
3
+ ## 1.6.0 (Wed Oct 25 00:19:29 BST 2017)
4
+
5
+ * Emit "Your light is growing dim" message every five turns when less than 25 left.
6
+ * When moving into a dark room, the description is no longer displayed before "It's too dark" message. Fixes #7.
7
+ * Use a saved, non-moving copy of `t6.sck` in regression-tests. Avoids pointless failures when I work on the tutorials.
8
+ * Do not omit scottkit.gemspec from git repo. Fixes #9.
9
+ * Add support for Travis CI. Fixes #12.
10
+ * Refactor main play loop to facilitate external driver code. Fixes #8.
11
+ * Move all documentation into new `docs` directory. Fixes #17.
12
+ * Rename `data` directory to `games`, and adjust test-suite etc. accordingly. Fixes #20.
13
+
3
14
  ## 1.5.0 (Fri Oct 20 00:38:57 BST 2017)
4
15
 
5
16
  * Improvements to _Nosferatu_. This game is now as close as I can make it to the 1982 original, including bug-compatibility for mis-spellings and the behaviour of water.
6
17
  * Minor improvements to tutorial map 4 and subsequent.
7
- * Add '--teleport' command-line option, which generates `teleport ROOM` actions for every room. For use in game development and debugging. Fixes issue #4.
8
- * Add '--superget' command-line option, which generates `sg ITEM` actions for every item. For use in game development and debugging. Fixes issue #5.
18
+ * Add '--teleport' command-line option, which generates `teleport ROOM` actions for every room. For use in game development and debugging. Fixes #4.
19
+ * Add '--superget' command-line option, which generates `sg ITEM` actions for every item. For use in game development and debugging. Fixes #5.
9
20
  * The `refill_lamp` action now works correctly. It seems it never did work, but I didn't notice because my walkthroughs of _Adventureland_ were too efficient to require lamp-refilling!
10
21
 
11
22
  ## 1.4.0 (Tue Oct 17 00:52:09 BST 2017)
@@ -19,7 +30,7 @@
19
30
 
20
31
  ## 1.3.0 (Mon Oct 16 20:27:43 BST 2017)
21
32
 
22
- * Support `--lint` (`-L`) command-line option. Fixes issue 1.
33
+ * Support `--lint` (`-L`) command-line option. Fixes #1.
23
34
  Argument is a string of characters:
24
35
  * `e` -- check for rooms with no exits (traps)
25
36
  * `E` -- check for rooms with only one exit (dead ends)
@@ -94,4 +105,3 @@
94
105
  * Ensure that the right files are built by `YARD`
95
106
  * Maybe modify to run against GLK using the Glkx driver
96
107
  * File inclusion
97
- * "Your light is growing dim." -- see ScottFree
data/Gemfile ADDED
@@ -0,0 +1,6 @@
1
+ # frozen_string_literal: true
2
+ source "https://rubygems.org"
3
+
4
+ gem "rake", "~> 12.0"
5
+ gem "jeweler", "~> 2.0"
6
+ gem "test-unit", "~> 3.2.0"
data/README.md CHANGED
@@ -62,11 +62,11 @@ Unit testing can be done as follows:
62
62
  Game format
63
63
  -----------
64
64
 
65
- The file [`notes/Definition-scottfree-1.14.txt`](notes/Definition-scottfree-1.14.txt) is copied from the
65
+ The file [`docs/notes/Definition-scottfree-1.14.txt`](docs/notes/Definition-scottfree-1.14.txt) is copied from the
66
66
  ScottFree package, which contains another interpreter for Scott Adams
67
67
  games. I got this file from release 1.14-9 of ScottFree.
68
- [`notes/Definition.txt`](notes/Definition.txt) is my modified version of this file, since the
69
- original had several mistakes. [`notes/Definition-saved-game.txt`](notes/Definition-saved-game.txt) is
68
+ [`docs/notes/Definition.txt`](docs/notes/Definition.txt) is my modified version of this file, since the
69
+ original had several mistakes. [`docs/notes/Definition-saved-game.txt`](docs/notes/Definition-saved-game.txt) is
70
70
  my own analysis of the format of saved games from ScottFree. (Saved
71
71
  games from ScottFree and ScottKit can be freely interchanged.)
72
72
 
@@ -102,13 +102,14 @@ in room 50 of 36. None of Scott's own games is so sloppy.
102
102
  Documentation
103
103
  -------------
104
104
 
105
- * [ScottKit Tutorial](data/tutorial/tutorial.md)
106
- * [The ScottKit format reference manual](manual/reference.md)
105
+ * [ScottKit Tutorial](docs/tutorial.md)
106
+ * [The ScottKit format reference manual](docs/reference.md)
107
107
  * A series of blog-posts about ScottKit:
108
108
  * [Scottkit is born! Only seven and a half years late!](https://reprog.wordpress.com/2017/10/12/scottkit-is-born-only-seven-and-a-half-years-late/)
109
109
  * [Building adventure games with ScottKit](https://reprog.wordpress.com/2017/10/13/building-adventure-games-with-scottkit/)
110
110
  * [Rooms and items in ScottKit](https://reprog.wordpress.com/2017/10/14/rooms-and-items-in-scottkit/)
111
111
  * [Actions in ScottKit](https://reprog.wordpress.com/2017/10/16/actions-in-scottkit/)
112
112
  * [Occurrences (or daemons) in ScottKit](https://reprog.wordpress.com/2017/10/17/occurrences-or-daemons-in-scottkit/)
113
+ * [Darkness and light in ScottKit](https://reprog.wordpress.com/2017/10/21/darkness-and-light-in-scottkit/)
113
114
 
114
115
 
data/Rakefile CHANGED
@@ -39,8 +39,6 @@ rescue LoadError
39
39
  end
40
40
  end
41
41
 
42
- task :test => :check_dependencies
43
-
44
42
  task :default => :test
45
43
 
46
44
  require 'rdoc/task'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.5.0
1
+ 1.6.0
data/bin/scottkit CHANGED
@@ -1,4 +1,5 @@
1
- #!/usr/local/bin/ruby -w
1
+ #!/usr/bin/env ruby
2
+ $VERBOSE = true
2
3
 
3
4
  # Command-line driver for the ScottKit toolkit, allowing Scott
4
5
  # Adams-format adventure games to be compiled, decompiled and played.
@@ -35,7 +36,7 @@ sleep_at_end = false
35
36
 
36
37
  opts = OptionParser.new do |x|
37
38
  x.banner = "Usage: #$0 [options] [<data-file>]
38
- (ScottKit version 1.4.0)"
39
+ (ScottKit version 1.5.0)"
39
40
  x.on("-c", "--compile", "Compile <data-file> instead of loading") {
40
41
  mode = :compile
41
42
  }
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -903,7 +903,7 @@ first.
903
903
  ## See also
904
904
 
905
905
  * The top-level [README](../README.md)
906
- * [The ScottKit tutorial](../data/tutorial/tutorial.md)
906
+ * [The ScottKit tutorial](tutorial.md)
907
907
  * The Perl module [Games::ScottAdams](http://search.cpan.org/~mirk/Games-ScottAdams/)
908
908
 
909
909
 
@@ -249,7 +249,7 @@ occur 25% when here vampire and !carried cross
249
249
  game_over
250
250
  comment "vampire can attack unless cross is carried"
251
251
 
252
- action get key when present vampire and !carried cross
252
+ action get key when here vampire and !carried cross
253
253
  print "I'm not going anywhere near that vampire!"
254
254
  ```
255
255
 
@@ -269,7 +269,7 @@ This stage uses the directives from the previous stage, plus `lightsource`, `occ
269
269
  | |
270
270
  | |
271
271
  Cave Mouth------Chamber---------Dungeon
272
- [cross] [door]
272
+ [station] [cross] [door]
273
273
  =
274
274
  |
275
275
  Cell
@@ -287,6 +287,11 @@ action score: score
287
287
  action inventory: inventory
288
288
  action look: look
289
289
 
290
+ occur when !flag 1
291
+ print "Welcome to the Tutorial adventure."
292
+ print "You must find a gold coin and store it."
293
+ set_flag 1
294
+
290
295
  room cave "cave mouth"
291
296
  exit east chamber
292
297
 
@@ -298,7 +303,32 @@ item sign "Sign says: leave treasure here, then say SCORE"
298
303
  item lamp "old-fashioned brass lamp"
299
304
  called "lamp"
300
305
 
301
- lightsource lamp
306
+ item lit_lamp "lit lamp"
307
+ called "lamp" nowhere
308
+
309
+ item empty_lamp "empty lamp"
310
+ called "lamp" nowhere
311
+
312
+ lightsource lit_lamp
313
+ lighttime 10
314
+
315
+ action light lamp when present lamp
316
+ swap lamp lit_lamp
317
+ print "OK, lamp is now lit and will burn for 10 turns."
318
+ look
319
+
320
+ occur when flag 16
321
+ clear_flag 16
322
+ swap lit_lamp empty_lamp
323
+ look
324
+ comment "The engine sets flag 16 when the lamp runs out"
325
+
326
+ item station "lamp-refilling station" at cave
327
+
328
+ action refill lamp when here station and present empty_lamp
329
+ destroy empty_lamp
330
+ refill_lamp
331
+ print "The lamp is now full and lit."
302
332
 
303
333
  room chamber "square chamber"
304
334
  exit east dungeon
@@ -356,29 +386,29 @@ room crypt "damp, dismal crypt"
356
386
 
357
387
  item vampire "Vampire"
358
388
 
359
- occur 25% when here vampire and !carried cross
360
- print "Vampire bites me! I'm dead!"
361
- game_over
362
- comment "vampire can attack unless cross is carried"
389
+ occur when here vampire and carried cross
390
+ print "Vampire cowers away from the cross!"
363
391
 
364
392
  occur when here vampire and !carried cross
365
393
  print "Vampire looks hungrily at me."
366
394
 
367
- occur when here vampire and carried cross
368
- print "Vampire cowers away from the cross!"
395
+ occur 25% when here vampire and !carried cross
396
+ print "Vampire bites me! I'm dead!"
397
+ game_over
398
+ comment "vampire can attack unless cross is carried"
369
399
 
370
- action get key when present vampire and !carried cross
400
+ action get key when here vampire and !carried cross
371
401
  print "I'm not going anywhere near that vampire!"
372
402
 
373
- verbgroup take get
374
- verbgroup leave drop
403
+ verbgroup get take g
404
+ verbgroup drop leave
375
405
  noungroup lamp lantern
376
406
  ```
377
407
 
378
408
 
379
409
  ## Caveats
380
410
 
381
- This tutorial skips a lot of details. [The reference manual](../../manual/reference.md) is indispensible for filling in the gaps.
411
+ This tutorial skips a lot of details. [The reference manual](../../docs/reference.md) is indispensible for filling in the gaps.
382
412
 
383
413
  The following directives are not yet discussed: `ident`, `version`, `wordlen`, `maxload`, `lighttime`.
384
414
 
File without changes
File without changes
File without changes
File without changes
@@ -30,12 +30,16 @@ Hut-------------Clearing--------Glade--->CLIMB, <Down---Top of Beech
30
30
  [bear] [pool]
31
31
  | vGO POOL, ^Up
32
32
  | |
33
- Forest Path In Pool
34
- [vase] [inflow]
35
- ______/(why here?!) vGO INFLOW
33
+ Forest Path On pool
34
+ [vase] |
35
+ ______/(why here?!) |
36
36
  / |
37
- Inside vase River1
38
- [key] |
37
+ Inside vase In Pool
38
+ [key] [inflow]
39
+ vGO INFLOW
40
+ |
41
+ River1
42
+ |
39
43
  |
40
44
  |
41
45
  River2
@@ -110,3 +114,13 @@ single-location maze
110
114
 
111
115
  giant frogs bars your way. kiss => turns to prince
112
116
 
117
+ ---
118
+
119
+ "The stoat was broken into five pieces. We were going to scatter them
120
+ across the kingdom, but we never go around to it, so they're all in
121
+ this cupboard."
122
+
123
+ But you'll need some glue
124
+
125
+ And it turns out to be two-part epoxy
126
+
@@ -9,7 +9,6 @@ ident 18400
9
9
  version 1
10
10
  wordlen 3
11
11
  maxload 5
12
- lighttime 100
13
12
  start hut
14
13
  treasury hut
15
14
 
@@ -17,7 +16,7 @@ treasury hut
17
16
  verbgroup go enter follow run walk
18
17
  verbgroup take get
19
18
  verbgroup leave drop
20
- #verbgroup cut chop ### currently causes a collision
19
+ verbgroup cut chop
21
20
  verbgroup batter ram
22
21
 
23
22
  # ----------------------------------------------------------------------------
@@ -30,13 +29,13 @@ action save game: save_game
30
29
  action look: look
31
30
 
32
31
  # The path is dark; nowhere else is
33
- occur when "at" path
32
+ occur when "at" path and !flag 15
34
33
  set_dark
35
- ###look # Hard to make this work right in a non-curses driver
34
+ look
36
35
 
37
- occur when !at path
36
+ occur when !at path and flag 15
38
37
  clear_dark
39
- ###look # Hard to make this work right in a non-curses driver
38
+ look
40
39
 
41
40
  occur when !flag 1
42
41
  set_flag 1
@@ -484,7 +483,7 @@ room forest2 "forest"
484
483
  item pool "Bubbling pool"
485
484
 
486
485
  action go pool when here pool
487
- goto pool
486
+ goto onpool
488
487
  look2
489
488
 
490
489
  action hold breath when counter_gt 0
@@ -494,8 +493,13 @@ action hold breath
494
493
  set_counter 6
495
494
  print "OK"
496
495
 
496
+ room onpool "bubbling pool, treading water"
497
+ exit north forest2
498
+ exit down pool
499
+
497
500
  room pool "bubbling pool, just below the water level"
498
- exit up forest2
501
+ exit up onpool
502
+ exit south river1
499
503
 
500
504
  item inflow "inflow from the south"
501
505
 
@@ -55,8 +55,9 @@ get vase
55
55
  north
56
56
  east
57
57
  examine vase
58
- hold breath
59
58
  go pool
59
+ hold breath
60
+ down
60
61
  go inflow
61
62
  south
62
63
  drop vase
@@ -80,6 +81,7 @@ north
80
81
  north
81
82
  up
82
83
  north
84
+ north
83
85
  west
84
86
  west
85
87
  drop stoat
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -150,12 +150,12 @@ I'm in the kitchen.
150
150
  Obvious exits: North, South.
151
151
 
152
152
  Tell me what to do ? n
153
+ I feel weaker.
153
154
 
154
155
  I'm in the washroom.
155
156
  Obvious exits: South, East.
156
157
  I can also see: locked Door
157
158
 
158
- I feel weaker.
159
159
  Tell me what to do ? open door
160
160
  OK.
161
161
 
@@ -480,11 +480,6 @@ Tell me what to do ? drop ladder
480
480
  O.K.
481
481
  Tell me what to do ? go tunnel
482
482
 
483
- I'm in a subterranean cavern.
484
- Obvious exits: South.
485
- I can also see: Stalactites hanging from the ceiling
486
-
487
-
488
483
  I can't see. It is too dark!
489
484
 
490
485
  Tell me what to do ? light lamp
@@ -531,10 +526,6 @@ I can also see: sharp Axe, spent Match, entrance to cave
531
526
 
532
527
  Tell me what to do ? s
533
528
 
534
- I'm at the bottom of a deep hole.
535
- I can also see: tall Ladder, secret Tunnel
536
-
537
-
538
529
  I'm at the bottom of a deep hole.
539
530
  I can also see: tall Ladder, secret Tunnel
540
531
 
File without changes
File without changes
File without changes
@@ -167,9 +167,6 @@ I can't see. It is too dark!
167
167
  Tell me what to do ? up
168
168
  Dangerous to move in the dark!
169
169
 
170
- I can't see. It is too dark!
171
-
172
-
173
170
  I'm in a semi-dark hole by the root chamber
174
171
  Obvious exits: Up.
175
172
  I can also see: Open door with a hallway beyond
@@ -270,11 +267,6 @@ Obvious exits: Up, Down.
270
267
 
271
268
  Tell me what to do ? u
272
269
 
273
- I'm in a semi-dark hole by the root chamber
274
- Obvious exits: Up.
275
- I can also see: Open door with a hallway beyond
276
-
277
-
278
270
  I'm in a semi-dark hole by the root chamber
279
271
  Obvious exits: Up.
280
272
  I can also see: Open door with a hallway beyond
@@ -423,11 +415,6 @@ Obvious exits: Up, Down.
423
415
 
424
416
  Tell me what to do ? u
425
417
 
426
- I'm in a semi-dark hole by the root chamber
427
- Obvious exits: Up.
428
- I can also see: Open door with a hallway beyond
429
-
430
-
431
418
  I'm in a semi-dark hole by the root chamber
432
419
  Obvious exits: Up.
433
420
  I can also see: Open door with a hallway beyond
@@ -579,11 +566,6 @@ Obvious exits: Up, Down.
579
566
 
580
567
  Tell me what to do ? u
581
568
 
582
- I'm in a semi-dark hole by the root chamber
583
- Obvious exits: Up.
584
- I can also see: Open door with a hallway beyond
585
-
586
-
587
569
  I'm in a semi-dark hole by the root chamber
588
570
  Obvious exits: Up.
589
571
  I can also see: Open door with a hallway beyond
@@ -767,12 +749,12 @@ I can also see: Large outdoor Advertisement, Hole
767
749
 
768
750
  Tell me what to do ? w
769
751
 
752
+ I'm bitten by chiggers.
753
+
770
754
  I'm in a dismal swamp
771
755
  Obvious exits: North, East, West.
772
756
  I can also see: -HOLLOW- stump and remains of a felled tree, Evil smelling mud, Swamp gas, Patches of "OILY" slime, Chiggers
773
757
 
774
-
775
- I'm bitten by chiggers.
776
758
  Tell me what to do ? take mud
777
759
  O.K.
778
760
  OK
@@ -0,0 +1 @@
1
+ b4ba5e712ab8b5350d5d24580f427587
File without changes