Monthly Overview for April

The current game can be found here.

What I accomplished on Logic Lights in April, and what I am currently thinking of working on:

To Do:

From Feedback:

  • Add an in-game help screen describing the rules of the game.
  • Add a tip jar or donation button.

In Notes:

  • Add options menu.
  • Quality factors for wins for minimizing the number of elements in the program.
  • Change wire shape:
    1. Move the vertical kink in the wire to allow player to remove overlaps.
    2. Draw gap at wire overlaps to clarify the direction of the wires.
    3. Additional structure so that wires will not draw over elements when the input is to the left of the output.
    4. Allow many, many kinks in wires so player can create arbitrary wire paths.
  • Allow wire inputs to connect to random point in the middle of another wire.
  • Allow arbitrarily large puzzles with unlocks for larger puzzles based on earlier puzzles.
  • Randomization of level labels for each user so that truth table isn't predictable from level number.
  • Save game state when players close the game in the middle of play.
  • Graphics changes:
    • Draw a convincing trash can.
    • Make the ground switch direction when connected to an input.
    • Remove the "1 switch" string on the level switch, replace with graphical representation.

Long Term:

  • Web Version (includes: learn JavaScript)
  • Android Version (includes: learn Java, etc.)
  • M ac Version (need a Mac to use Py2App)


  • Saw error in wiring when there are many elements, but not sure where.  Need to figure out how to recreate and then fix it.


  • Puzzles complete only if terminals wired.
    • Created ground.
  • Allow user to choose color scheme.
    • Can be done from code.
  • Refactor screen system into an object-oriented style.


  • Set up GitHub account and uploaded code.

From To Dos:

  • Put up downloadable .zip file.
  • Fade in the win notification.
  • Added confetti on win screen.
  • Allows automatic wiring of overlapping terminals.
  • Deletes existing wires when:
    • players make both ends connect to the same terminal.
    • when connected element is placed is removed from play.
  • Deletes logic elements when they are returned to their factories.
  • Marks game as tried when game is closed while in progress.
  • Made the or-tile look a little nicer.
  • Labelled the level boxes so that it's clear that 1 means 1 switch.


  • Removed extraneous code from the Video Game Physics boilerplate.

Initial Release:

  • Included 340 procedurally-generated puzzles
  • Uses three (3) logic gates -- and, or, and not
  • Puzzles with up to four (4) switches (see above)
  • Wires that connect elements
  • Included trash can to remove excess elements.
  • Multiple users / logins on one device
  • Remembers puzzle either won or just tried.