hooks, source code, graphics, 3D, programming Matt's Webcorner - Charge!


Download Link

This is a very challenging puzzle game. It was originally a Warcraft 3 map based around the idea of circuit design - the players build towers that carry charge from power sources into "action towers" that do things like cast shockwave on enemy towers or cast chain heal on allied towers. More powerful charges have larger effects. Unfortunately, even after attempting to carefully release all intermediate variables, the Warcraft 3 memory management system was unable to keep up with the number of objects the game was creating and over Battle.net all games would experience server split after about ten minutes. Charge! is a PC game that embodies the spirit of the Warcraft 3 map as a single-player puzzle game.


Charge! starts off as a simple tile-based puzzle game; players place 2x2 pieces onto a grid, then let the puzzle run. While the puzzle is running no more modifications can be made, and the puzzle is won when all the goal pieces hold their correct color of charge. There are five levels of charge, and power sources will periodically generate charges of their color. Many pieces resemble circuit elements; pieces such as splitters and amplifiers will let you modify the charge color while pieces such as wires, filters, holds, traps, gates, switches, and transmitters will let you control the flow of charge.

The game has 80 levels that start off by introducing the pieces then start demonstrating various ways they can be combined. After beating a level players can see our solution to the puzzle. As with real circuitry, simple mechanics can combine to encompass very complex functionality, and many of the later puzzles involve designing or modifying such systems.

To help reduce the amount of work necessary to produce such complex systems, the chip circuit component can encode a 5x5 set of tiles in a single tile. Chips can be designed that perform simple functions such as reverse an incoming stream of charge or direct charges in complex directions, and chips can be copy and pasted to chain such functionality into a system that can solve the puzzle. The last few levels map several other puzzles such as Turing machines and the Rubik's Cube into the Charge! system, while the final level contains only two pieces yet is by far the most challenging puzzle in the game.


Charge was developed over a period of about three weeks. I did all the game and graphics programming, designed many of the game mechanics, and about a third of the levels. John Jester helped with the game mechanics, level design, and the art assets. Shai Barak worked on the artwork and various other aspects of the game. Since none of us had significant audio experience, the sounds were generated by manually combining sine waves of various frequencies and remixing the results in Audacity. Any use of the Comic Sans font in Charge! is a tier 3 ironic gesture.