Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Misc Todo list #25

Open
36 of 37 tasks
philschatz opened this issue May 19, 2018 · 0 comments
Open
36 of 37 tasks

Misc Todo list #25

philschatz opened this issue May 19, 2018 · 0 comments

Comments

@philschatz
Copy link
Owner

philschatz commented May 19, 2018

  • 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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant