Skip to content

Latest commit

 

History

History
51 lines (30 loc) · 2.12 KB

File metadata and controls

51 lines (30 loc) · 2.12 KB

Regex Blaster To-do List

  1. Need more productive attacks and noncombatants:

  2. noncombatant strings and attack strings should be related in such a way as to be difficult to distinguish;

  3. improve repetition of strings — make the point that this is the most useful way to improve.

  4. Add gameplay images to README.

  5. Use argparse for some command-line options:

  6. --seed: turns on random.seed();

  7. --log (must first implement logging);

  8. --debug: (needed?)

  9. --help: show rules without running program?;

  10. --levels: pre-defined series of levels, for systematic practice; alternative is random strings.

  11. Change list of failed attacks to dict, to enable counting. Bring both failed and defeated attacks back repeatedly.

  12. Handle failed attack and non-combatant strings without inadvertently pausing program.

  13. Apply regex to attack string and non-combatant strings, showing partial matches in real time.

  14. ESC: toggle pause/continue; from paused state, h => help page.

  15. Handle arrow keys. Related to handling of ESC; see http://stackoverflow.com/a/1182680/621762.

  16. Help page on start-up.

  17. Alternate game strategies:

  18. User corrects regex offered by machine.

  19. Multiple attack and/or noncombatant strings. More points for multiple matches at once.

  20. Handle near-identical defenses:

  21. evaluate by edit-distance vis-à-vis all previous defenses; average string-length minus edit-distance may be more useful than edit-distance alone.

  22. DONE: handle by repeating attack string; repeat defense barred;

  23. handle by delaying efficacy, thus increasing risk of hit; this requires implementing timing of attacks (not sure if this is desirable until higher levels).

  24. Figure damage (from hits); it may affect time of defense's effect.

  25. For more complex attacks, it may be interesting to repeat them just in order to see how many different defenses the user can supply. Keep repeating until user fails — or even a little after that.

  26. If \w appears a lot in defense strings, add whitespace.

  27. Set background color: automatically black for now.

  28. JS version.

[end]