Jeffrey M. Barber

Tombstone

kitchen · demoGame

Nov 2007 – Mar 2008 · age 25–26

What it was

The tower-defense game that justified the whole kitchen engine. It was 450 lines of GrillScript, Jeff's own scripting language, calling 55 native service functions generated from an interface description. Monsters spawned on a timer and flowed across a 20 by 20 grid along a flow field: one breadth-first search wrote a goal step into every tile. Clicking an empty tile built a turret and invalidated the flow; clicking a monster ray-picked it and bound a drag handler. Turrets cooled down, searched their pre-sorted nearby tiles, and shot whichever monster was closest to escaping. A GUI made in the Fork editor showed the frame rate and the live monster count, a GLSL cel shader set the look, and the game loop itself was a closure stored in the game document. The final build, at 21:03 on March 20, 2008, was playable.

Wins, for the age

What it taught

Genealogy

Ancestors: Cauldron v2 Epic: the previous engine's demo host, and a dwarf worth showing off. Defense Map Ed: paint the walls and every cell points the shortest way out. Descendants: Tiles: the tile grid, given proper autotiled ground days later. Part of: Kitchen.

Epitaph

Here lies demoGame. Monsters flowed downhill toward the exit, turrets picked off the ones about to make it, and a dwarf stood perfectly still where a pin used to spin.