Game Design with Programming Patterns is an interactive collection and short essay series examining how software design can aid a digital game designer.
Designing a digital game should be in concert with the limitations and constraints of the form. And a lot of game design emphasizes analog prototyping with dice, paper, and other tools. But creating a digital game requires manipulation of digital components. An analog-first approach means that digital creation is an act of translation: mostly implementing an existing paper design in a digital format. This doesn't allow for a designer's creativity to be emphasized in the process.
This project was born out of a need to understand how digital games are constructed. These programming patterns are common software strategies used all over digital interactive art. I have produced implementations of the seven most common in digital game design. These patterns are demonstrated in toy-like form that emphasizes their affordances to a designer. Each pattern is accompanied by an essay documenting the pattern, how it is implemented in the interactive project, and some remarks about the pattern's utility to a game designer.
If you're a game designer looking to up your digital designing or programming, this is for you.
Designed, developed, and written by Jason Li for Unity Game Engine with suopport from Justin Bakse and John Sharp of The New School. Code here is available free to use.