Eric S. Raymond [Wed, 28 Jun 2017 17:21:31 +0000 (13:21 -0400)]
More test repairing.
Eric S. Raymond [Wed, 28 Jun 2017 17:18:07 +0000 (13:18 -0400)]
Repair test breakage from previous commit.
Eric S. Raymond [Wed, 28 Jun 2017 17:03:45 +0000 (13:03 -0400)]
Test consolidation.
Eric S. Raymond [Wed, 28 Jun 2017 16:54:50 +0000 (12:54 -0400)]
Merge two tests so the suite can run a little faster.
Jason S. Ninneman [Wed, 28 Jun 2017 16:13:59 +0000 (09:13 -0700)]
Update linenoise.
Eric S. Raymond [Wed, 28 Jun 2017 16:05:41 +0000 (12:05 -0400)]
Declare one-letter synonyms for some commands.
As issue #6 (Add single-letter verb synonyms) says:
Modern interactive fiction has converged on a fairly standard
vocabulary of one-letter abbreviations for common verbs. Besides
directional commands, they are:
d - drop
g - get
i - inventory
l - look
x - examine (synonymous in ADVENT with look)
z - wait
Open Adventure should implement these.
This commit doesn't make them work yet, but it declares them for when the
lexical analyzer is fully YAML-driven.
Eric S. Raymond [Wed, 28 Jun 2017 15:45:53 +0000 (11:45 -0400)]
Magic-number elimination.
Aaron Traas [Wed, 28 Jun 2017 14:31:47 +0000 (10:31 -0400)]
Cleaned up tests/Makefile - added save generation to its own target
Aaron Traas [Wed, 28 Jun 2017 14:09:02 +0000 (10:09 -0400)]
Test coverage: command-line options for advent
Aaron Traas [Wed, 28 Jun 2017 13:44:20 +0000 (09:44 -0400)]
Test coverage -- 100% cheat for real this time
Eric S. Raymond [Wed, 28 Jun 2017 14:51:47 +0000 (10:51 -0400)]
Comment polishing.
Eric S. Raymond [Wed, 28 Jun 2017 13:21:41 +0000 (09:21 -0400)]
De-macroize references to travel opcode fields we won't unpack further.
Eric S. Raymond [Wed, 28 Jun 2017 12:53:24 +0000 (08:53 -0400)]
Break travel array into three struct fields.
Eric S. Raymond [Wed, 28 Jun 2017 12:26:36 +0000 (08:26 -0400)]
More macro abstraction of the travel opcodes.
Eric S. Raymond [Wed, 28 Jun 2017 02:15:22 +0000 (22:15 -0400)]
After splitting out the stop field, nothing ever negates a travel opcode...
...so all those labs() calls can go away.
Eric S. Raymond [Wed, 28 Jun 2017 02:11:58 +0000 (22:11 -0400)]
Break travel opcodes into a two-element structure.
Eric S. Raymond [Wed, 28 Jun 2017 01:55:29 +0000 (21:55 -0400)]
All travel[] references are now wrapped in extractor/predicate macros.
This is a step toward pulling the magic numbers apart into data structures
so there will be fewer magic numbers in the code.
Eric S. Raymond [Wed, 28 Jun 2017 01:46:07 +0000 (21:46 -0400)]
Begin abstracting out the magic properties of travel-array opcodes.
Eric S. Raymond [Wed, 28 Jun 2017 00:11:21 +0000 (20:11 -0400)]
Remove unused enums.
Eric S. Raymond [Wed, 28 Jun 2017 00:10:59 +0000 (20:10 -0400)]
More use of state labels.
Eric S. Raymond [Tue, 27 Jun 2017 23:44:20 +0000 (19:44 -0400)]
Minor refactoring step.
Eric S. Raymond [Tue, 27 Jun 2017 21:27:42 +0000 (17:27 -0400)]
More use of state labels.
Eric S. Raymond [Tue, 27 Jun 2017 20:54:58 +0000 (16:54 -0400)]
Allow state labels in not clauses.
Aaron Traas [Tue, 27 Jun 2017 18:47:16 +0000 (14:47 -0400)]
Test Coverage - elicit hints for grate and snake
Aaron Traas [Tue, 27 Jun 2017 18:46:49 +0000 (14:46 -0400)]
Remove unused code
Aaron Traas [Tue, 27 Jun 2017 17:48:41 +0000 (13:48 -0400)]
Test coverage -- additional coverage in actions.c
Aaron Traas [Tue, 27 Jun 2017 15:36:24 +0000 (11:36 -0400)]
buildregress now generates save files correctly.
Aaron Traas [Tue, 27 Jun 2017 14:53:13 +0000 (10:53 -0400)]
100% coverage of cheat.c
Aaron Traas [Tue, 27 Jun 2017 14:46:26 +0000 (10:46 -0400)]
Allow cheat to generate save files with bogus numbers.
Also remove pre-built save file for resumefail.log
Aaron Traas [Tue, 27 Jun 2017 14:33:10 +0000 (10:33 -0400)]
"cheat" now has command-line arguments for generating cheat files
-d number of deaths. Signed integer value
-s number of saves. Signed integer value
-o file name of save game to write
Eric S. Raymond [Tue, 27 Jun 2017 20:11:13 +0000 (16:11 -0400)]
Travel tables are all done from YAML now.
Leaves only Section 4 from asventure.text still relevant.
Eric S. Raymond [Tue, 27 Jun 2017 17:23:30 +0000 (13:23 -0400)]
This looks like it gets the terminators right.
Eric S. Raymond [Tue, 27 Jun 2017 16:22:01 +0000 (12:22 -0400)]
travel is correct except for position of terminators.
Jason S. Ninneman [Tue, 27 Jun 2017 05:26:54 +0000 (22:26 -0700)]
Documentation polishing.
Eric S. Raymond [Tue, 27 Jun 2017 04:57:36 +0000 (00:57 -0400)]
Move the travel rule documentation to newdungeon.py.
Jason S. Ninneman [Tue, 27 Jun 2017 05:08:29 +0000 (22:08 -0700)]
Update linenoise from upstream.
Jason S. Ninneman [Tue, 27 Jun 2017 05:07:24 +0000 (22:07 -0700)]
Abolish VOCWRD().
Action word mnemonics are now enums from adventure.yaml.
Jason S. Ninneman [Tue, 27 Jun 2017 05:04:02 +0000 (22:04 -0700)]
Remove actspk[].
Jason S. Ninneman [Tue, 27 Jun 2017 05:03:42 +0000 (22:03 -0700)]
Clean up missed actspk[] references.
Jason S. Ninneman [Tue, 27 Jun 2017 05:01:23 +0000 (22:01 -0700)]
Use actions[].message instead of actspk[].
Jason S. Ninneman [Tue, 27 Jun 2017 05:01:13 +0000 (22:01 -0700)]
Add missing declaration.
Jason S. Ninneman [Tue, 27 Jun 2017 04:53:24 +0000 (21:53 -0700)]
Express actions[] in newdb.[ch].
Jason S. Ninneman [Tue, 27 Jun 2017 04:36:24 +0000 (21:36 -0700)]
Combine actspk and the action words into a single structure.
Eric S. Raymond [Tue, 27 Jun 2017 02:41:57 +0000 (22:41 -0400)]
This version of newdungeon.py can exactly recover Section 3...
...from the YAML data. Next, to pack the recovered data the way
dungeon.c does and wite it in.
Jason S. Ninneman [Tue, 27 Jun 2017 02:22:51 +0000 (22:22 -0400)]
Reexpress the motion words in adventure.yaml.
Eric S. Raymond [Tue, 27 Jun 2017 02:15:05 +0000 (22:15 -0400)]
First cut at compiling travel rules from YAML.
Not fully wired in yet.
Eric S. Raymond [Tue, 27 Jun 2017 02:13:22 +0000 (22:13 -0400)]
Repair variois problems in travel YAML.
Eric S. Raymond [Mon, 26 Jun 2017 21:31:04 +0000 (17:31 -0400)]
Repair a missing travel element it YAML.
Got left off due to an edge condition in travel.py.
Jason S. Ninneman [Mon, 26 Jun 2017 20:40:38 +0000 (13:40 -0700)]
Update cheat.c to unbreak the build.
Eric S. Raymond [Mon, 26 Jun 2017 19:03:37 +0000 (15:03 -0400)]
Create a cheater to test strange save/resume cases.
Patch due to Aaron Traas, but needed modification because of code
drift since submission.
Jason S. Ninneman [Mon, 26 Jun 2017 18:30:46 +0000 (11:30 -0700)]
Jettison some disused macros.
Jason S. Ninneman [Mon, 26 Jun 2017 18:27:27 +0000 (11:27 -0700)]
Use enums for object number mnemonics instead of VOCWRD() calls.
Jason S. Ninneman [Mon, 26 Jun 2017 17:25:01 +0000 (10:25 -0700)]
Fold object vocab words into the objects[] structure.
Jason S. Ninneman [Mon, 26 Jun 2017 16:42:43 +0000 (09:42 -0700)]
object_descriptions[] is now objects[].
Jason S. Ninneman [Mon, 26 Jun 2017 15:47:30 +0000 (08:47 -0700)]
Add vocab length define to newdb.
Eric S. Raymond [Mon, 26 Jun 2017 16:15:55 +0000 (12:15 -0400)]
Squash a compiler warning.
Eric S. Raymond [Mon, 26 Jun 2017 14:44:19 +0000 (10:44 -0400)]
Change the name of the KEY array to avoid an upcoming macro clash.
Eric S. Raymond [Mon, 26 Jun 2017 14:19:33 +0000 (10:19 -0400)]
Take FORTRANish upper-case function names to C-style lowercase...
...except for a few we're planning to get rid of. This will avoid some
upcoming collisions with macros defined from YAML.
Eric S. Raymond [Mon, 26 Jun 2017 04:09:50 +0000 (00:09 -0400)]
Wire Section 8 YAML to runtime.
Eric S. Raymond [Mon, 26 Jun 2017 03:41:36 +0000 (23:41 -0400)]
Subsume Section 8 into YAML.
Jason S. Ninneman [Mon, 26 Jun 2017 03:22:38 +0000 (20:22 -0700)]
Remove duped const keywords.
Jason S. Ninneman [Mon, 26 Jun 2017 03:20:44 +0000 (20:20 -0700)]
Fix typo and type mismatch.
Jason S. Ninneman [Mon, 26 Jun 2017 03:18:39 +0000 (20:18 -0700)]
Expose a vocabulary[] array in newdb.c.
Jason S. Ninneman [Mon, 26 Jun 2017 01:50:47 +0000 (18:50 -0700)]
Inline the hint messages.
Eric S. Raymond [Mon, 26 Jun 2017 00:50:41 +0000 (20:50 -0400)]
Unsnarl the motion code some more.
Eric S. Raymond [Sun, 25 Jun 2017 23:21:14 +0000 (19:21 -0400)]
Begin toounsnarl the way the TRAVEL array is used.
Eric S. Raymond [Sun, 25 Jun 2017 22:37:14 +0000 (18:37 -0400)]
Magic-number elimination.
Eric S. Raymond [Sun, 25 Jun 2017 20:05:44 +0000 (16:05 -0400)]
Capture Section 3 in YAML.
The temporary script travel.py emitted this YAML from the Section 3 data.
It will be removed when the compilation from YAML to an initializer is done.
Eric S. Raymond [Sun, 25 Jun 2017 18:46:01 +0000 (14:46 -0400)]
A step forward in definining YAML for the travel array.
Jason S. Ninneman [Sun, 25 Jun 2017 19:54:22 +0000 (12:54 -0700)]
Deal with some compiler warnings.
Eric S. Raymond [Sun, 25 Jun 2017 17:54:07 +0000 (13:54 -0400)]
Comment polishing.
Eric S. Raymond [Sun, 25 Jun 2017 17:31:19 +0000 (13:31 -0400)]
Fix a report of conpile-time error.
Eric S. Raymond [Sun, 25 Jun 2017 17:17:35 +0000 (13:17 -0400)]
Dix off-by-one errors induced by tightening some array bounds.
Eric S. Raymond [Sun, 25 Jun 2017 16:36:40 +0000 (12:36 -0400)]
Change structure of vocabulary YAML to cope with multiply-loaded words.
Eric S. Raymond [Sun, 25 Jun 2017 13:25:44 +0000 (09:25 -0400)]
Add some sanity checking to newdungeon.py.
Eric S. Raymond [Sun, 25 Jun 2017 12:18:06 +0000 (08:18 -0400)]
Comment polishing in adventure.yaml.
Eric S. Raymond [Sun, 25 Jun 2017 12:08:25 +0000 (08:08 -0400)]
Vocabulary (adventure.txt section 4) is now in YAML...
...but no code to use that structure yet.
Eric S. Raymond [Sun, 25 Jun 2017 11:12:05 +0000 (07:12 -0400)]
Proof of concept for Section 3 report generator.
Eric S. Raymond [Sun, 25 Jun 2017 00:05:14 +0000 (20:05 -0400)]
Fully subsume section 7 into YAML.
Eric S. Raymond [Sat, 24 Jun 2017 16:59:08 +0000 (12:59 -0400)]
Remove unused error codes.
Eric S. Raymond [Sat, 24 Jun 2017 16:49:25 +0000 (12:49 -0400)]
Move the description of string escapes to where the strings now live.
Eric S. Raymond [Sat, 24 Jun 2017 16:43:31 +0000 (12:43 -0400)]
Remove unused code.
Eric S. Raymond [Sat, 24 Jun 2017 16:24:56 +0000 (12:24 -0400)]
Section 13 is now all YAML, so objsound.py can go.
Eric S. Raymond [Sat, 24 Jun 2017 16:22:25 +0000 (12:22 -0400)]
Improve comments, eliminate magic numbers.
Eric S. Raymond [Sat, 24 Jun 2017 15:07:07 +0000 (11:07 -0400)]
Give generate constant arrays the const specifier.
Also, move the adventure.txt format documentation to dungeon.c to be
removed when that file is.
Eric S. Raymond [Sat, 24 Jun 2017 14:42:23 +0000 (10:42 -0400)]
Replace magic MINTRS/MAXTRS with a treasure attribute in YAML.
Eric S. Raymond [Sat, 24 Jun 2017 14:20:36 +0000 (10:20 -0400)]
LOCSIZ -> NLOCATIONS, finishing limit-name cleanup.
Eric S. Raymond [Sat, 24 Jun 2017 14:18:33 +0000 (10:18 -0400)]
More fixed limits (NOBJECTS, LOCSIZ) stop being fixed.
Eric S. Raymond [Sat, 24 Jun 2017 13:55:32 +0000 (09:55 -0400)]
Rationalize names of structure array sizes.
Everything that camn be #define become one, in all caps to signify that
it's a constant.
Eric S. Raymond [Sat, 24 Jun 2017 13:41:39 +0000 (09:41 -0400)]
Elimination of OBJTXT.
This means eveything in Section 13 of adventure.text has moved to YAML.
Eric S. Raymond [Sat, 24 Jun 2017 13:30:15 +0000 (09:30 -0400)]
Correct buggy behavior of sign in endgame. Add a test for this.
Eric S. Raymond [Sat, 24 Jun 2017 13:15:40 +0000 (09:15 -0400)]
Extend test coverage. read sign in endgame.
Eric S. Raymond [Sat, 24 Jun 2017 12:45:22 +0000 (08:45 -0400)]
Elimination of OBJSND.
Eric S. Raymond [Sat, 24 Jun 2017 12:06:42 +0000 (08:06 -0400)]
Extend test coverage of vending-machine actions.
Eric S. Raymond [Sat, 24 Jun 2017 03:30:17 +0000 (23:30 -0400)]
Improve test coverage.
Eric S. Raymond [Fri, 23 Jun 2017 19:50:15 +0000 (15:50 -0400)]
Eliminate setting of OBJTXT sell for oyster - OBJTXT is now static.
A necessary step towards getting rid of it.
Eric S. Raymond [Fri, 23 Jun 2017 19:13:47 +0000 (15:13 -0400)]
Abolish unclean operation on OBJSOUND - it's now static.
Save/Restore no longer needs to treat it specially.
Eric S. Raymond [Fri, 23 Jun 2017 18:21:25 +0000 (14:21 -0400)]
Name the lamp, grate, and bird states.
Eric S. Raymond [Fri, 23 Jun 2017 18:07:44 +0000 (14:07 -0400)]
Proof of cobcept for state defines.
It is now possible in the YAML to declare defines for all state values
associated with an object. This are visible in the C code and can be used
to replace magic numbers.
Eric S. Raymond [Fri, 23 Jun 2017 15:27:20 +0000 (11:27 -0400)]
Documentation polishing.