Category: Meta

2013 for ANGELINA

I’m back from my Christmas break, and in a bit of a haze following A Puzzling Present. Thanks to everyone who wrote about, tested, shared, helped out on, gave feedback about, and played the game. It was everything I hoped it’d be, and I learnt a lot (mostly through failing)! I’m ready to get to work again. Last year, I wrote a post titled “2012 for ANGELINA”. If you want a laugh at how quickly things can change course, you can read what I intended to do last year. My plan was to build generic game description languages and get ANGELINA to invent high-level game designs, but I ended up on a meandering road that led far away from that, into the weird world of internet scraping, and finally (serendipitously) back to mechanic invention.

Here are some things I’m hoping to get done this year, then – take it with a pinch of salt!

No More Me
Top of the list this year (though not a PhD priority) is getting ANGELINA to generate, in the most basic way we can, the final few things that still come from me. This mostly means the art, so I’m working on Spritely, a tool for automatically grabbing, shrinking, cutting and recolouring images from the web into sprite-sized graphics ready for use in games. I’ll be using the tool myself too, but most importantly it’ll mean ANGELINA gets to make pretty pictures without me, even if they are basic.

Larger Games
The newsgames had a limit of about 12-16 screen-sized tiles each. This was partly down to stupid algorithms, partly down to dumb implementations of games, but whatever – this year I’m hoping to tear that out and reimplement a lot of the core of ANGELINA’s platformer generation. There was a lot wrong with the idea, and it reinvented too many wheels for my liking. I’ve been inspired a lot by making A Puzzling Present, reading around about the genre, and playing games like La Mulana over the Christmas break. More on this in February, hopefully.

Code Generation and Mechanic Miner+
The work on Mechanic Miner is really only just starting – it looks like it’ll be forming a part of my research going forwards for some time now. Top, top priority is to rewrite Mechanic Miner (along with most of ANGELINA’s core). Once it has more solid debugging tools and visualisers I can start to improve the kinds of things it can do – adding stuff like object creation and code insertion, things that might let ANGELINA start impressing people.

Finish The PhD Or Find Some Money
Oh, also I’ll need to find some more funding. We’re on top of this, but we need to get it sorted – my PhD bursary runs out in September, so I either need to be finished then or have some new funding set up! I’ll be working on this problem over the next month or so.

This last point could sour all the rest – if I don’t find any funding then 2013 will mostly be thesis-writing with little time for adding bells, whistles or anything else to ANGELINA. Still, it’ll be worth it – finishing up will let us sort out what we want to do next, and secure some proper funding for long-term work on ANGELINA (if all goes to plan).

Thanks to everyone who has been involved in any way this year. 2012 has exceeded all my expectations – I have met incredible people, been very fortunate with some wonderful journalists, and had the privilege of many thousands of people playing ANGELINA’s games. I really appreciate everyone who has shown interest in the project – I’ll work hard to keep it interesting and exciting throughout next year.

Happy New Year! See you in January.

ANGELINA 101

I’m giving one of the Advanced Object-Oriented Programming lectures to Imperial’s first-year Computing students next week. Definitely looking forward to it, and I hope they enjoy the talk I’ve got in store. I also thought I’d digest it and post it up here, as it neatly does something I’ve been wanting to do for a while on the blog – discuss the basics of evolution that underpin ANGELINA.

Continue reading

Indie Science (And The Science Of Being Indie)

I was interviewed for Develop Magazine last month and it’s just going out in their latest edition. It was all very fun to do and the final piece is a great description of where my research is and where I hope it’s going. My favourite part is where we talk about how doing games research can feel a bit like being an indie developer, but since reading over the interview I think there’s more there than I initially thought.

I said:

…the indie games industry, and the indie games ethic, has made [gamers] amenable to the idea of research projects… people are in that mind set already…

We’d been talking about my interactions with the indie community on TIGSource, and I’d said that I felt that many indie projects were like my work with ANGELINA – rough and ready, something new but unpolished. Of course there are plenty of exceptions, and many indie games are incredibly polished, very well-rounded affairs; but the core of the indie community has a lot in common with the world of research. Let’s do a tour. Continue reading

2012 For ANGELINA

Happy New Year, everyone, and thanks for coming back to Games By ANGELINA. I’m hoping 2012 will have plenty in store for this site, including (most importantly of all) lots of new games for you to play. Let me update you a little on what’s going on right now and where I’m hoping to look at next.

Firstly, general stuff outside the research itself. In mid-January I’ll be receiving notification on my EvoGames paper I wrote about the work done on evolving Metroidvania-lite platformers. I’ll let you know how that turns out, acceptance or failure. I’m hoping for an acceptance, obviously, but the project was a difficult one and I imagine the reviews will reflect that.

I’ve got a few events I’m looking forward to this year. I’m attending Dare To Be Digital on the 24th January and A Bit Of Alright on the 3rd February. If you’re attending either of these events, please get in touch with me, we should meet up and talk about game design!

I’m also in the process of organising this year’s Games and Media Event at Imperial College. We’re looking at potential speaker lists right now, but I’m hoping to give a talk myself, so if you’re in London in early June and want to hear me talk about ANGELINA and what I’m up to this year, you should stop by. More on that closer to the date.

In terms of research, we’re at a crossroads with my PhD work right now. So far, I’ve tried to apply evolutionary techniques to arcade game design and platformer design, with mixed results. On the one hand, it’s tempting to apply this technique to other genres, refine the systems I’m using and present as effective a review as possible of using this method to automate game design. One route through the PhD would certainly see me do this – JRPGs, point-and-click adventures and roguelikes are all potential targets I have lined up.

Another avenue, however, is mechanic invention. In both of our experiments so far, I’ve been quite explicit with ANGELINA in describing the game design areas I want it to explore. What would happen if we relaxed this? Can we get ANGELINA to innovate and come up with new ideas for games, as well as designing levels and setups for them?

This second question is a compelling one to me, and so today I have begun implementing a new version of ANGELINA[1] which will serve as a base to investigate some of these ideas. I don’t know exactly what kind of system we’ll need to look at the question of mechanic invention, but hopefully we’ll find something of interest eventually.

Those who follow me on Twitter will be pleased to know that my whining about the time ANGELINA takes to run may be less frequent in the future, thanks to the superb Dr. Tristan Allwood who helpfully ran me through the innards of Condor, a system for distributing computational jobs across many different machines. The lab at Imperial’s Department of Computing has such a Condor server, which spreads jobs across any available machines in our computing labs. It’s even got a special set-up for Java! I’m hoping that I can use this to evaluate dozens of games simultaneously, potentially increasing the effectiveness of ANGELINA by a huge factor. More on that, again, as the system develops.

Thanks for following my progress on here so far. I literally could not have done the work I have so far if it weren’t for dozens of dedicated people willing to play terrible arcade games and platformers and give me their opinion on them. Hopefully one day we’ll all look back at this and nod sagely – this was the start of something brilliant. Here’s hoping, and here’s to an interesting 2012.

  1. [1]I’m codenaming this one (so to speak) ‘Superfrog’ and retroactively naming the previous version ‘Zool’

Santa Needs Help, And Thanks

With the paper now submitted to EvoStar, all that remains is for me to say thanks to all that helped out, and wish you the best for Christmas. I’ll be taking a hiatus to go and work on projects and fiddle with things behind the scenes, while I get ready for a new stage of work.

Continue reading

Twelve Months In Game Design

About a year ago now I switched PhD focus away from opinion mining and sentiment analysis, onto a project about automatically designing games. The question was a fairly open one, essentially just asking Can we automated game design? Like most open questions, the answer initially seems to be ‘yes’ and then quickly degrades into a mess of complicated other research questions. While taking the train in the bitter weather of last year’s winter from London to Bournemouth, I started the project by writing code that randomised a bunch of shapes on the screen and then randomly assigned keyboard keys to control different aspects of the game, in the hope that this would grow into some emergent game design tool.

It was terrible, obviously. You’d be scattering things like ‘move this block up/down’ onto the Y key, and ‘move all blocks left’ to the Z key and none of it would make sense, let alone remotely resemble a game. After two hours on the train, I was pretty convinced that automated game design would be unfeasibly difficulty, if not impossible.

Nevertheless, a year later and I’ve got two sort-of game designers written up in Java and producing games people can play. This year has been terribly, awfully stressful, so even getting these out was a big accomplishment for me and I’m very happy, even if the games they’re producing are a bit crappy. Automated game design has a huge role to play in the future of the games industry, at all levels, thanks to the broad spectrum of tasks it can help out in. When writing papers on the topic, I try to stress that this is not about replacing human designers, but about how interesting, ludology-aware systems can help out with laborious or otherwise-impossible design tasks.

In the first paper I wrote, Multifaceted Evolution For Game Design, one of the experiments I performed to show the efficacy of the system was to hand-design a few game levels and get ANGELINA to fill in the blanks, providing a ruleset and enemy layout. It inverts the procedural generation relationship, essentially – instead of having a game designer design the 90% and get the game to generate maybe a map or a texture here or there, we spin it around and get the game designer to design just 10% of high-quality content, leaving ANGELINA to work out the rest. If we could perfect systems like this, we could really change the way games are developed, for the better.

There are so many things that AI cannot do effectively yet – spin stories, create motivation for actions, balance risk and reward in player objectives, create compelling artwork and visual themes. These are all tasks that many would-be game designers are effective at doing, but frequently lack the coding skills necessary to create even basic videogames. Systems like ANGELINA would let us do away with that, and potentially provide the basis for hobbyists to work in tandem with ANGELINA to create unique creations that they made a critical and personal contribution to.

There’s a lot of work I want to do on ANGELINA over the next two years, and not all of it will be publishable which presents its own problem in justifying the work. I imagine much will be done out-of-hours or in the form of exploratory experimental stuff. We’ve covered arcade games and platformers, but many genres that would be great targets for automated game design remain to be covered, and of those JRPGs and point-and-click adventures stick out as ones I would particularly like to take a swing at.

Whatever happens though, I want to push automated game design as a big part of procedural content generation. Compared to standard procedural content generation it’s a unique problem that is incredibly satisfying to work on and very rewarding to see pulled off. By the time this PhD is done, I hope to be able to link to lots of other exciting work going on by other research projects besides ANGELINA. For now, thanks for taking an interest in the site, and don’t forget that I am always eager for feedback, commentary and questions:

mike @ gamesbyangelina.org

Continuing APACE

At the end of my CIG 2011 talk I said that ANGELINA would be sitting on the bench for a few months while I worked on formalising the techniques behind her and presenting them elsewhere. But I couldn’t keep away from the game design gig, and seeing the breadth of competitions at CIG made me think about what ANGELINA will be doing in future. So I’ve started working on an API for designing point-and-click adventure games, and it’s called APACE – A Point And Click Engine.

Continue reading

Automated Sound and Vision

Art direction is a big thing in videogames. Nothing sells a game for me like great sound and vision; I just finished playing Portal 2 and one of the most affective aspects of the game was its immaculate presentation, the crispness of the architecture and the cleverness of its layout. There’s a big difference between placeholder ‘programmer’ art, and real artwork chosen and selected by someone who knows what they’re doing. Continue reading

CIG 2011

A paper I wrote with Simon Colton, entitled Multifaceted Evolution Of Simple Arcade Games, which introduces ANGELINA and the theory behind it has been accepted into the proceedings of IEEE CIG 2011. You can find more out about the conference here. With a bit of luck (and some breathing space after I transfer onto the main PhD track at Imperial College) we’ll have some interesting games and demos up before then to show at the talk!