Commit graph

54 commits

Author SHA1 Message Date
Jason S. Ninneman
db281a96d7 newdungeon.py is now make_dungeon.py.
newdb.[ch] is now dungeon.[ch].
2017-06-29 08:54:35 -07:00
Jason S. Ninneman
074d2c8a0f Remove MAPLIN(). Fold common.[ch] into other files and remove them. 2017-06-29 08:54:35 -07:00
Jason S. Ninneman
50435465a6 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.
2017-06-29 01:59:37 -07:00
Eric S. Raymond
7281c39807 Improve documentation if the *most* obscure span of code. 2017-06-28 20:24:29 -04:00
Eric S. Raymond
1ed8126912 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.
2017-06-28 16:14:23 -04:00
Eric S. Raymond
27bc9f3bd2 De-macroize references to travel opcode fields we won't unpack further. 2017-06-28 09:21:41 -04:00
Eric S. Raymond
db68e0097e Break travel array into three struct fields. 2017-06-28 08:53:24 -04:00
Eric S. Raymond
aace0b1359 More macro abstraction of the travel opcodes. 2017-06-28 08:26:36 -04:00
Eric S. Raymond
8560122f01 Break travel opcodes into a two-element structure. 2017-06-27 22:11:58 -04:00
Eric S. Raymond
ed4e6ad422 Allow state labels in not clauses. 2017-06-27 16:54:58 -04:00
Eric S. Raymond
4ff3d497b6 This looks like it gets the terminators right. 2017-06-27 13:23:30 -04:00
Eric S. Raymond
d53bc1c54c travel is correct except for position of terminators. 2017-06-27 12:22:01 -04:00
Eric S. Raymond
20a645bdf4 Move the travel rule documentation to newdungeon.py. 2017-06-27 01:18:34 -04:00
Jason S. Ninneman
2aa5f1dd61 Remove actspk[]. 2017-06-26 22:04:02 -07:00
Jason S. Ninneman
c080ea85bb Add missing declaration. 2017-06-26 22:01:13 -07:00
Jason S. Ninneman
4d21247643 Express actions[] in newdb.[ch]. 2017-06-26 21:53:24 -07:00
Eric S. Raymond
64959e4bce 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.
2017-06-26 22:41:57 -04:00
Jason S. Ninneman
f9edfc5151 Reexpress the motion words in adventure.yaml. 2017-06-26 22:22:51 -04:00
Eric S. Raymond
4b2472fb16 First cut at compiling travel rules from YAML.
Not fully wired in yet.
2017-06-26 22:15:05 -04:00
Eric S. Raymond
d6cb6f0d8d Create a cheater to test strange save/resume cases.
Patch due to Aaron Traas, but needed modification because of code
drift since submission.
2017-06-26 15:07:09 -04:00
Jason S. Ninneman
2fac8d1aef object_descriptions[] is now objects[]. 2017-06-26 09:43:11 -07:00
Jason S. Ninneman
d40085ce6f Add vocab length define to newdb. 2017-06-26 09:43:11 -07:00
Eric S. Raymond
b626371b6c Wire Section 8 YAML to runtime. 2017-06-26 00:09:50 -04:00
Jason S. Ninneman
1503be7567 Remove duped const keywords. 2017-06-25 20:22:38 -07:00
Jason S. Ninneman
4f6bc949bd Fix typo and type mismatch. 2017-06-25 20:20:44 -07:00
Jason S. Ninneman
4ac41aa148 Expose a vocabulary[] array in newdb.c. 2017-06-25 20:18:39 -07:00
Jason S. Ninneman
7ee571d832 Inline the hint messages. 2017-06-25 18:50:47 -07:00
Eric S. Raymond
d809974479 Dix off-by-one errors induced by tightening some array bounds. 2017-06-25 13:17:35 -04:00
Eric S. Raymond
cfb43fcf44 Add some sanity checking to newdungeon.py. 2017-06-25 09:25:44 -04:00
Eric S. Raymond
8a6e6aae7d Fully subsume section 7 into YAML. 2017-06-24 20:28:22 -04:00
Eric S. Raymond
39eed7d678 Remove unused error codes. 2017-06-24 12:59:08 -04:00
Eric S. Raymond
3e19c39f57 Give generate constant arrays the const specifier.
Also, move the adventure.txt format documentation to dungeon.c to be
removed when that file is.
2017-06-24 11:07:07 -04:00
Eric S. Raymond
c3a2816821 Replace magic MINTRS/MAXTRS with a treasure attribute in YAML. 2017-06-24 10:47:59 -04:00
Eric S. Raymond
25077d0b4e LOCSIZ -> NLOCATIONS, finishing limit-name cleanup. 2017-06-24 10:20:36 -04:00
Eric S. Raymond
64035d0026 More fixed limits (NOBJECTS, LOCSIZ) stop being fixed. 2017-06-24 10:18:33 -04:00
Eric S. Raymond
985137d9c7 Rationalize names of structure array sizes.
Everything that camn be #define become one, in all caps to signify that
it's a constant.
2017-06-24 09:55:32 -04:00
Eric S. Raymond
3a93b2b5f0 Elimination of OBJSND. 2017-06-24 09:08:48 -04:00
Eric S. Raymond
2848494a01 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.
2017-06-23 14:07:44 -04:00
Eric S. Raymond
1e8c3a4a1d Support loud locations. 2017-06-23 11:16:37 -04:00
Eric S. Raymond
f47dc9f447 Location sounds are now declared by YAML. 2017-06-23 10:10:48 -04:00
Eric S. Raymond
7f7f49b739 Switch fully over to YAML generation of condition bits. COND is gone. 2017-06-22 17:28:39 -04:00
Eric S. Raymond
537c4511e2 Generate initializer from YAML for Section 9 bits. 2017-06-22 16:45:38 -04:00
Eric S. Raymond
94d1aa5183 Use YAML references to tie hints to locations.
This change makes locbit.py obsolete; it's deleted.
2017-06-22 14:27:22 -04:00
Jason S. Ninneman
c8f6ff3701 Abolish HNTMAX and HNTSIZ in favor of HINT_COUNT.
This change necessitated include guards on newdb.h.
2017-06-21 10:25:12 -07:00
Eric S. Raymond
c3a71f6db6 Documentation and polishing. 2017-06-21 11:45:16 -04:00
Eric S. Raymond
ddb0df85b3 YAMLify section 11 (hints). 2017-06-21 11:22:18 -04:00
Eric S. Raymond
f6373dd32e Section 10 (class thresholds) is now parsed entirely from YAML. 2017-06-21 06:17:20 -04:00
Jason S. Ninneman
d029b08ad1 Refactor how turn threshold penalties are accounted for. 2017-06-20 19:26:55 -04:00
Jason S. Ninneman
6c4f140333 Refactored dungeon generator. 2017-06-20 14:31:35 -07:00
Jason S. Ninneman
9229fdf2a3 Give obituary messages their own data structure. 2017-06-18 19:44:35 -07:00