Skip to content

Misc Todo list #25

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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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