Computer Program Creates Puzzle-Platform Levels On Its Own
A PhD student at Imperial College London has endowed a computer program he calls ANGELINA with the ability to create levels without any user input in this free-to-download puzzle-platform game. Game designers can sleep easily, though – their jobs are safe. For now.
A Puzzling Present tasks players with guiding Santa to the present in each simple 2D level while avoiding dangerous Christmas wreaths. The twist is that each layout is generated by ANGELINA’s genetic algorithms, which introduce random variation on a basic theme and select the best results through thousands of “generations.” This process eventually results in layouts that are reasonably difficult within the constraints of the simple game design without being impossible to complete.
ANGELINA author Michael Cook also touts his program’s ability to examine its own code and create game mechanics to make the levels solvable through a module he calls Mechanic Miner. "ANGELINA and Mechanic Miner have already demonstrated behaviour that is promising when developing creative software. For example, ANGELINA found, and took advantage of, a bug in a game that I wrote – something we see human gamers do. The program has also surprised me through the game mechanics it has discovered. When Mechanic Miner comes up with a game mechanic that a human has already thought of or finds things I could have never thought of, I am surprised and impressed because it's a sign we're heading in the right direction. This is a powerful system."
Some time experimenting with the game reveals a somewhat more limited reality than the credulous press release would have you believe. While the levels are indeed generated on the fly and offer reasonable challenge without being impossible, A Puzzling Present uses exactly three game mechanics: a high jump, a gravity reversal, and an increasing level of bounciness that eventually lets Santa scale any height. If those mechanics were indeed created by the program examining its own code and creating them itself, that’s impressive on its own – but the downloadable program has shown no capability of its own to modify its own system or mechanics.
UPDATE: Cook has contacted Game Informer with the following clarifications. I apologize for the original misinformation, which I based on an (apparently faulty) reading of the press release and spending a fair amount of time playing the game.
ANGELINA doesn't generate levels or mechanics on the fly. The aim of the project is really to produce an AI that can act like a human designer does, not like a procedural content generator. ANGELINA designed thirty levels and discovered three mechanics completely offline, before the game was released, and we packaged them up and released them in this game. So when we talk about ANGELINA modifying code, what we're really talking about is it modifying the code of an existing game, to discover new mechanics which can be built into it statically.
Ultimately we want ANGELINA to act just like a human designer does - to spend a few weeks working on a little game, and to release it to the world.
This research on code modification will be built into the rest of our work on level design, artistic direction and so on, and we hope to move ANGELINA one step closer to being a game designer that people are entertained and moved by!
A Puzzling Present and the rest of ANGELINA’s output are interesting from a research perspective and could lay the foundation for an intriguing future – imagine how much larger and cheaper games would be to make if a computer program could do the heavy lifting of basic environment design and free up human artistic talents (which are extremely expensive, relatively) for the fine touches, even if the raw program output itself needs some cleaning up before going into a game? We’ve seen some of that in games like The Elder Scrolls’ procedurally generated terrain, but genetic algorithms have the potential to go much farther.
And we made it through this whole story without making any Skynet jokes. I’m counting that as a win.