1
0
Fork 0
mirror of https://github.com/Oreolek/gamebookformat.git synced 2024-05-19 01:18:19 +03:00
gamebookformat/todo.org

4.7 KiB
Raw Blame History

TODO [39/67] [58%]

  • Debug output
  • DOT output
  • LaTeX output
  • RTF output
  • HTML output
  • Split out template hanlding into separate class from output
  • Inject Output dependencies
  • Save section-number mapping and reuse automatically
  • Add support for custom document templates. Fixed names and/or command-line options.
  • Add section links in LaTeX output.
  • Prettier LaTeX output Look at how some existing gamebooks are formatted.
  • Parse wiki-style tags used to mark up sections
  • New text formatting style for section references
  • Inventory pick up items
  • Codewords set
  • Check if has inventory item
  • Check if has codeword
  • Remove item from inventory (forced by instructions)
  • Enable link if not having an item
  • Enable link if not having a codeword
  • Make sure dropped items can not be picked up again
  • Fix problem with map file from other book sometimes crashing formatter
  • Keys from formatted book should be added to map file, not replace it
  • Make inventory and codewords generic They are the same, sort of, and it might be good to be able to add other similar entities as well, like skills or spells or whatever.
  • Otherwise/else handling for has.
  • Redesign otherwise/else to use xor tag on section reference.
  • Disable all links after finding an auto link (that is enabled).
  • Default templates. (templates/default?)
  • Book option to set title
  • Book option to set author
  • Book option to set max section number to use
  • Quote strings to not break formatting.
  • Include other templates from a template.
  • Template for book introduction (including rules etc) Sections with some markup (has number 0?) are added as chapters of introduction, otherwise formatted identical to other sections.
  • Inserting images
  • HTML hide intro sections with link to display again
  • Only accept specific characters in section names eg [a-z][a-z_0-9]+
  • Random pick of link to follow from a section.
  • Possibility to make predictable random numbers and shuffling for testing
  • Test generate examples and compare to expected output in all formats
  • Unit tests (finally…)
  • Verify gamebook (always; drop the verify option)
  • Dummy and fake sections (handle properly when verifying)
  • Inline sections Inline prefix on link or :inline: tag on target section itself. If tagged or all links to a section are marked inline the section itself is removed.
  • Counters (life, money, whatever) create and set count tag to declare new counter, text in tag is display name optional argument sets the starting value of the tag display somewhere on page (in HTML output)
  • Counters increase/decrease
  • Counters check
  • Trade (optionally drop something from collection to add something new).
  • Buy (optionally decrease a counter to add something to a collection)
  • Sell (optionally increase a counter to drop something from a collection)
  • Pick a (maximum) number of things from those found in a section
  • Javascript tests running in nodejs (no GUI) The big scripts in html templates are split out into separate files already (script.html and endscript.html). It should be possible to test those from nodejs?
  • Javascript GUI tests running in a browser Preferably headless (in nodejs?). Run tests on gamebook html example(s).
  • Combat Tag to mark up the link to use to trigger next round. Tag to mark up the enemy and its values. Fixed set of combat abilities handled by javascript (some way to configure ability names, but in that case javascript for combat, in a separate file, must be overridden)
  • Macros for input(quests etc etc). Generate one or more sections.
  • Macros that can add content to sections (pre or post).
  • Some way to insert character sheet in book introduction
  • Some way to insert optional dice at bottom of pages for LaTeX
  • Some way to insert optional random numbers table at end of book
  • Defensive removal of any weird unicode not handled by quoting.
  • Somewhat user-friendly error messages
  • More formatting possibilities in sections Look at existing gamebooks to get ideas.
  • Document Gamebook format

    • Basic gamebook (static, nothing about magic needed for dynamic; tutorial)
    • Advanced (more complex layout options, but still static)
    • Dynamic (markup needed to make playable (HTML) version)
    • Standard output formats reference
    • Customization (make new output formats or override existing)
  • HTML CSS
  • Higher level text-language for Gamebooks
  • BGG forum output (.bgg)
  • Make sure HTML output works with javascript disabled and in inferior browsers