Skip to content

Misc Todo list #25

@philschatz

Description

@philschatz
  • squash all tsc errors
  • fix game rendering performance bottleneck
  • split parser up into separate files by using multiple semantics.addOperation('parse', {...} or by assembling the Object arg before passing it in.
  • remove the Pairs classes by moving the getMatchedMutatorsOrNull onto the non-pair class and passing in an additional correspondingActionNode field

Then, we can start implementing:

  • relative directions inside brackets ([ > Cat | ^ Dog ] -> ...)
    • Get a working slow implementation to work
    • Simplify the commands used to update the Cell so that we can keep caches in the Cell
    • Use Bit Set to perform operations. See StackOverflow and maybe Bitset package or bitterset
  • 16million colors
  • LATE
  • STARTLOOP
  • expanding the rules per https://www.puzzlescript.net/Documentation/executionorder.html
  • cell movement state ([> cat])
  • different timing options (tick, when player presses, etc)
  • player movement
  • ACTION
  • AGAIN
  • redo a level
  • support OR tiles on the left (condition) percolating to the right (action) even when in different brackets
  • play a level and move to the next when win conditions are met
  • record a level playthrough so it can be replayed as a unit test
  • support flickscreen setting
  • support zoomscreen setting (lots of redraws)
  • detect win conditions
    • support WINCONDITIONS section
    • support WIN command in the rules
  • CANCEL
  • ellipses [ | ... | ] -> [ | ... | ]
  • SFX commands
  • undo
  • CHECKPOINT
  • render messages and message levels (screen 34x13 characters)
  • sprites add on the right side of a Rule should be NO on the left side (be smart though) might only work if 1 sprite is being added. Speeds up evaluation since there will be fewer matches
  • add https://github.com/yeoman/update-notifier
  • Add comamndline arguments to pick the game, level, pixel size, resume, (& analytics?)
  • Add analytics reporting
  • add accessibility renderer (wasd plays the game and arrow keys inspect the "screen")

/cc @jenniferharmon

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions