Eric S. Raymond [Thu, 29 Jun 2017 20:59:27 +0000 (16:59 -0400)]
Not the best idea to try to rewach Don Woods for help any more.
Eric S. Raymond [Thu, 29 Jun 2017 20:46:36 +0000 (16:46 -0400)]
Typo fix.
Eric S. Raymond [Thu, 29 Jun 2017 20:44:01 +0000 (16:44 -0400)]
Add Aaron Traas to credits.
Eric S. Raymond [Thu, 29 Jun 2017 20:41:49 +0000 (16:41 -0400)]
Start another round of magic_number removal, this time for motions.
Aaron Traas [Thu, 29 Jun 2017 20:37:07 +0000 (16:37 -0400)]
Documentation and comment cleanup.
Also, renove uused enums.
Eric S. Raymond [Thu, 29 Jun 2017 20:28:20 +0000 (16:28 -0400)]
'd' had a collision; 'drop' vs ;down'. Remove from 'drop' synonyms.
Eric S. Raymond [Thu, 29 Jun 2017 20:25:55 +0000 (16:25 -0400)]
Documentation polishing and minor test improvements.
NHOrus [Thu, 29 Jun 2017 19:51:30 +0000 (22:51 +0300)]
Breaking one-line conditionals
Eric S. Raymond [Thu, 29 Jun 2017 19:45:59 +0000 (15:45 -0400)]
Re-indented.
Jason S. Ninneman [Thu, 29 Jun 2017 18:20:36 +0000 (11:20 -0700)]
Clean out the now-disused vocabulary structure.
Aaron Traas [Thu, 29 Jun 2017 19:13:11 +0000 (15:13 -0400)]
Updated documentation
Aaron Traas [Thu, 29 Jun 2017 16:54:07 +0000 (12:54 -0400)]
Cleanup test case
Aaron Traas [Thu, 29 Jun 2017 16:28:46 +0000 (12:28 -0400)]
Coverage - Die while closing after lamp dim
NHOrus [Thu, 29 Jun 2017 18:13:53 +0000 (21:13 +0300)]
k2 is dead
NHOrus [Thu, 29 Jun 2017 18:08:09 +0000 (21:08 +0300)]
Untangling variable reuse
NHOrus [Thu, 29 Jun 2017 17:23:39 +0000 (20:23 +0300)]
Separate debugging of linenoise
Eric S. Raymond [Thu, 29 Jun 2017 17:43:36 +0000 (13:43 -0400)]
Fix an OB1 bug in allocation.
NHOrus [Thu, 29 Jun 2017 17:11:53 +0000 (20:11 +0300)]
Unshadowed k2 into k3 in main.c
Reindented everything
Jason S. Ninneman [Thu, 29 Jun 2017 16:34:23 +0000 (09:34 -0700)]
Upstream linenoise rebased their project.
Eric S. Raymond [Thu, 29 Jun 2017 16:21:50 +0000 (12:21 -0400)]
Transition to YAML is done, adventure.text and travel.py can go away.
Eric S. Raymond [Thu, 29 Jun 2017 16:18:55 +0000 (12:18 -0400)]
Comment polishing.
Jason S. Ninneman [Thu, 29 Jun 2017 15:49:12 +0000 (08:49 -0700)]
Finish newdb -> dungeon renaming.
Jason S. Ninneman [Thu, 29 Jun 2017 15:45:47 +0000 (08:45 -0700)]
newdungeon.py is now make_dungeon.py.
newdb.[ch] is now dungeon.[ch].
Jason S. Ninneman [Thu, 29 Jun 2017 15:41:32 +0000 (08:41 -0700)]
Remove MAPLIN(). Fold common.[ch] into other files and remove them.
Jason S. Ninneman [Thu, 29 Jun 2017 15:35:48 +0000 (08:35 -0700)]
Jettison MAKEWD(), GETTXT(), vocab(), GETIN(), and the old db compiler.
Aaron Traas [Thu, 29 Jun 2017 14:57:34 +0000 (10:57 -0400)]
Coverage - Test going back when you can't.
Aaron Traas [Wed, 28 Jun 2017 19:04:38 +0000 (15:04 -0400)]
Fixed automated testing
Aaron Traas [Wed, 28 Jun 2017 18:35:17 +0000 (14:35 -0400)]
Add make target for coverage
Eric S. Raymond [Thu, 29 Jun 2017 12:46:29 +0000 (08:46 -0400)]
Simplify conditional evaluation when processing travel opcodes.
Eric S. Raymond [Thu, 29 Jun 2017 11:05:11 +0000 (07:05 -0400)]
Address GitLab issue #16: `make dist` produces incomplete tarball
Jason S. Ninneman [Wed, 28 Jun 2017 16:35:55 +0000 (09:35 -0700)]
Completely wire vocab words in YAML to the code.
This massive patch:
* Finishes working all the vocab words into YAML structures.
* Adds vocab ID generator functions.
* Redoes the input-getting system, removing the need for GETIN(),
GETTXT(), etc.
* Changes advent<->ascii mapping to avoid the special 'shift'
character.
* Works around some bad behavior in the dragon attack logic.
* Handles the reservoir magic word without changing the database
contents.
Eric S. Raymond [Thu, 29 Jun 2017 01:06:36 +0000 (21:06 -0400)]
Eliminate some promiscuous variable reuse.
This was making the opcode-conditional evaluation logic much more
difficult to read than it needed to be.
Eric S. Raymond [Thu, 29 Jun 2017 00:24:29 +0000 (20:24 -0400)]
Improve documentation if the *most* obscure span of code.
Aaron Traas [Wed, 28 Jun 2017 17:52:04 +0000 (13:52 -0400)]
Make clean now removes cheat binary
Eric S. Raymond [Wed, 28 Jun 2017 21:29:33 +0000 (17:29 -0400)]
More magic-number removal.
Eric S. Raymond [Wed, 28 Jun 2017 21:07:15 +0000 (17:07 -0400)]
Magic-number elimination.
Eric S. Raymond [Wed, 28 Jun 2017 20:14:23 +0000 (16:14 -0400)]
Implement and document state-changes messages in YAML.
Examples at the lamp and grate. This is a way to pull strings out of
arbitrary_messages and make them part of the object definition.
NHOrus [Wed, 28 Jun 2017 17:40:46 +0000 (20:40 +0300)]
Some more linter warnings
Aaron Traas [Wed, 28 Jun 2017 17:41:53 +0000 (13:41 -0400)]
Removed advent.info and added to .gitignore
advent.info is a generated file. No need to keep it in the repo.
Aaron Traas [Wed, 28 Jun 2017 16:25:59 +0000 (12:25 -0400)]
Test coverage: make LCOV ignore code unreachable without interactive shell
Aaron Traas [Wed, 28 Jun 2017 16:21:05 +0000 (12:21 -0400)]
Test coverage: make LCOV ignore bug() and all calls to BUG()
In theory, these should be unreachable, so they shouldn't be covered
with testing.
Aaron Traas [Wed, 28 Jun 2017 16:19:20 +0000 (12:19 -0400)]
Test coverage: make LCOV ignore sig_handler and OOM check
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.