# To-Do List

See Template philosophy about what kinds of things go here and whether the feature you want fits.

- LaTeX addition/modification:
  - use more of the power latex2e now provides, especially to make existing things cleaner, more general, or more robust
  - check whether card error detection/handling is adequate
  - clean up fake character Observer-badge hack
  - use unique by-style substring in macros in .sty files to make them easier to use as bases for new ones
  - be able to punt npc/gm badges via 'ghostly' field
  - punt statcards for ghostly chars
  - some hacks can be cleaned and/or made more robust
  - think about making bluesheet etc macros available in all sheets, as at least some games want to use this and some assume it works that way to begin with
  - be able to easily say "\extract{ \Gmusic } if they don't have it already" so that, for instance, multiple suites that each include the same greensheet can be given to a character such that they get exactly one copy. In some cases, "give them the \Gfoo if they don't have it or the \Gbar yet" is desirable, and other such generalizations. It's not necessary to have every possible variation on this theme be ready-made, but some amount would bring suites vastly closer to their true potential.
  - when \input'ing misc files (mostly Lists/*.tex), do something to make it idempotent, so that having the \input in foo.sty and adding it to custom.sty doesn't break anything
  - enforce preamble-only-ness for macros that only belong in preamble
  - check that a blank \me{} doesn't screw anything up (\leavevmode is usually enough to fix this)
  - maybe, possibly, perhaps provide generalization of \newchar magic so that Czars can arrange for, say, item info to work the same way as character info
  - various auto-compendium-like / auto-cheat-sheet functionality (may involve a script)
- Scripts:
  - packets should pause at errors for GMs to note and/or fix them and allow retries, instead of aborting after the stage
  - packets should probably notice if the queue stops moving
  - make mass-editing scripts suite-aware (actually, this largely involves adding tex code, not perl)
  - possibly do useful Charsheets/Email thing to produce stuff for email parts (packets --dvips already makes this easier)
  - generate slightly-varied charsheets from one for SIK games as per foley
  - numbers should try to have smaller files
  - improve error handling
  - internally document
- Documentation:
  - HTML
    - add by-topic index to index.html; this is likely to be large, as most things can be described many ways...
    - add production.html with stuff like dvips -o, distill, ways to do email parts, etc
    - macro-glossary.html might want to put a "a name=foo" tag on each \foo, so that other pages can point to individual entries
  - recommend some way of dealing (\ifcase or symlinks or...) with multiple runs
  - Postscript --- how to do Cool Font Things cf. boojum, psfonts.map, etc (should be easier now that tetex has replaced newtex)
  - postscript -- how to do even cooler things with the map
- Testing:
  - finish automatic regression test suite for the whole Template
- Other packages to make someday:
  - remailer (definitely)
  - SIK-game generator package (foley's stuff, definitely)