Make games respond to input by mapping rules to inputs.
How can cellular automata be used as a programming tool for designing games and other interactive systems?
What implications does this style of graphical programming have on the programmer's creative process?
Game Painter is an extension of cellular automata. While cellular automata can be encoded and manipulated in code,
it is more natural to work with them in their graphical form. This way the programmer can relate to the software
directly, much the same way a user would relate to it.
However, to express arbitrary levels of abstraction and to interface with other pieces of software, code can be very useful. For those reasons, while the graphical user interface is the primary focus of the project, a scripting language will also ship with Game Painter.
Game Painter should allow for improvisational creativity, which means the software aims to be accessible, intuitive, and seamless.
Game Painter is related to another project of mine, Automata Painter.
Essentially, Game Painter is Automata Painter plus interactivity, but there are some other key differences.
Game Painter and Automata Painter don't have a superset / set relationship like C++ and C. Instead, they share a lot in common and each has features that the other doesn't. They are like two different branches on the same design tree.
In particular, Game Painter adds rule-switching via input presses. Different rulesets apply depending on which inputs are pressed, meaning Game Painter can express fully interactive games whereas Automata Painter can only express autonomous systems.