Now AIs have all the fun: they play and create the game!

A new AI system, called Angelina is extending procedural content generation to create an entire video game. As part of Michael Cook’s PhD, from Imperial College of London, he developed Angelina, which randomly creates the level design, the enemies, the enemy movements and combat tactics, and the power-ups.

Ok, not everything is generated right now. The music and graphics are human-made, but procedural generated techniques for generating music and graphics do exist. As the New Scientist article hints, what’s to stop an artist from using Angelina for pushing out a new game every 12 hours and posting it to the App Store… A game generated from

Bill Gosper's Glider Gun in action—a variation...
Video Games beget Video Games via Wikipedia

Angelina is available online to play.  It’s pretty impressive.  It’s no Half-Life, but remember this was automatically generated!  Now, if there was a video game that created video games, we’d have a practical example of a self-reproducing machine besides Conway’s Game of Life.

And then there is this video, by Quantic Dream that primarily shows the improvements in near-human CG animation. It’s stunning visually, but it’s also a gripping vignette. Showing the singularity moment when AIs become self-aware. When this happens, I think they will make more than scrolling 8-bit games!

Lastly, I found an interesting paper on Automatic Quest Generation. In this paper, Jonathon Doran and Ian Parberry survey 3000 quests from various online games like World of Warcraft and categorize the type of quest. They then go own to create a set of rules (a grammar for those CS-types reading) to produce the quest procedurally. Those quests can get boring fast, and I’m not surprised to find out that most have the form:

    • 〈 goto 〉 kill | i.e. Goto Place X, kill thing Y
    • 〈 goto 〉 〈 get 〉 give | i.e. Goto Place X, get magic potion Y, give it to NPC Z.

At some point while playing WoW (a few years ago…), I stopped reading the actual quest description (i.e. the story) just to see the lists of tasks I had to accomplish.  It was at that point that I also stopped finding the game fun and stopped playing.  So if designers focus on a good main story, they can offload small side quests to the AI.  After reading this paper and watching associated video, I think I’m going to incorporate a subset of their grammar into my game project, and combine it with some player modeling. I can’t give away too much to my potential test subjects, after all, there will be cake.

If only engineering was like nethack…

I recently read two excellent books on working in engineering teams. Before you shrug them off, they actually are very well written, in fact one of them was awarded the Pulitzer Prize. The books are Soul of a New Machine and Dreaming in Code.

Dreaming in Code is an expose that shows why software is hard. It describes the Chandler project and how they set out to create an outstanding piece of software, and how things went so terribly wrong. As a software engineer, the book is both painful and inspiring. But if you wondering why even today, you have parts of your digital life on work computer, parts at home, and parts on the go, this is would be a good book for you.

The other book, Soul of the New Machine, at its core is about what motivates an engineering team to create something. In this book, the team was trying to create the best computer available circa 1980. A bit more hardware focused, but there are insights for any team of people who set out to create something new. What drives somebody to work endless hours without extra pay and the detriment to health and family?

So, since I’m on a non-fiction technology kick, this is what my reading queue looks like:

I have a queue for fiction as well. I find that when I have too much going on, I can’t really get into the story so I switched to non-fiction.

Lastly, we are currently studying Procedural Content Generation in my Game AI class, which is basically the ability for the game to create its own stories / content. Skyrim, the new game in the Oblivion series, is doing this such that the game is “endless.” It also uses a technique to generate the foliage, since that would take too much more for a single human designer.

This is nothing new of course, nethack has done this for years. And while I have known about nethack and played it once or twice before, I picked it up again and realized it is very good. While it looks rudimentary, it is quite rich with features, rules and player

iteration. Each game is randomly generated, and it is challenging. A modern equivalent that one can play on the iPhone is 100 rogues, which I talked about last post.  Somehow I nethack in progressfind myself playing more and more of it, but it could just be because I have a problem set due…

Forget Skynet. How about an AI that helps you win video games!

This is how I saved my game in the 1980s:

  1. Pause the game, by hitting one of the five buttons on a controller.
  2. Turn off the TV.
  3. Do NOT, I repeat, DO NOT power off the console under any circumstances.

Video games back then were continuous story arcs.  “Saving” the game (as described in

Zork I cover art
Image provided by a Grue at Wikipedia

the function save80s above), risked losing hours of “work” if somebody bumped the Nintendo.  But compared to today’s video games, there was for me, a much stronger sense of accomplishment by beating Super Mario Brothers, or Zelda, or Zork.  So agrees Keith

Burgun, designer of the mobile game 100 Rogues in this podcast.

100 Rogues is “an arcade-style dungeon crawling adventure,” but also, it is defiant to modern games in a crucial way: in a game instance, the player may not win.  Most of the time, the player will die and must restart the game; there is no saving.  In fact, saving in 100 Rogues is very 80s-like in that it can only be paused by nature of switching tasks as provided by iOS.  I’m sure that this is much to the chagrin of the author, who would rather see the game finished by death or victory.

While Keith ideologically stands by a gameplay theory that player skill, not the player’s character skill, must increase for forward game progress, the commercial world designs games to be fun for most users.  Unfortunately for Keith, I believe that most gamers would not find his games fun, mainly because his games are designed to be difficult and require skill.  In this case, skill is how well one can play the game.

So, when I read this Ars Technica article, I was not surprised by the demand for in-game hint systems.  After all, this would have made Myst a lot easier, especially because I can remember clicking each pixel trying to see if there was an intractable object I was missing… UGH!  However, I was surprised in my game AI course to discover that there is significant academic research to solving this very problem.

One such idea involves the concept of the game constructing an emotional player model to detect when the player is frustrated / lost / stuck.  Once detected, the AI offers a hint.  The technically interesting piece here is how to detect when the player is frustrated and how to learn to detect when the player is frustrated through machine learning.  The creatively interesting piece is how to design subtle hints, since some players may not like the fact that the game has declared them “hint-worthy.”

I think this keeps Keith Burgun up at night.  About to die in Halo?  All of a sudden, all sorts of weapons drop in-front of you.  This is game adaptation and it is the next step up from hints.  Does this make the game more fun?  For most, it would seem so.  For those that insist on solving crosswords without glancing and the answers, probably not.  In my current game AI project I’m trying to develop a hint-AI for an interactive fiction (very limited) game.  I’m hoping the players will find it fun, but I hope to design in such a way that it’s still enjoyable and won’t cause the Keith Burguns of the world to send a terminator to assassinate me 🙂