Recently Rainer tried to introduce the readers of Der Standard to the wonders of procedural generation with this article, but I had already plunged the further depths of this topic in last year's article for games publication GameStar. During my extensive research, I conducted a series of in-depth interviews with a few notable game designers on procedural generation in games today. In this interview, the fourth of a series of diminuitively nicknamed "footnotes", I talked to Pwnee Studios, who released Cloudberry Kingdom last year. (If you want a more elaborate introduction, Pwnee's own Jordan Fisher and Julian Adams wrote two fascinating articles about the game and its use of procedural generation for Gamasutra.)
In your (excellent) in-depth article on Gamasutra, you described Cloudberry Kingdom in great detail. However, how would you describe it to an audience of non-industry people? Specifically, what sets Cloudberry Kingdom apart from other sidescrolling platformers with an emphasis on procedural generation, such as Spelunky?
If we were to describe Cloudberry Kingdom to a casual group of people, we would likely describe it as a game like Mario 3, but harder…and it never actually has to end. It’s a platformer that has an infinite number of randomly generated levels. The thing that sets us apart from other procedurally generated platformers is our emphasis on action, rather than being a puzzle-type adventure. What we really aimed for with Cloudberry Kingdom was a game that was mindless fun, something that you can play for hours on end without really exhausting yourself. In every classic platformer we have played in the past, we were disappointed when it ended. Since we were kids, we wanted to be able to play a platformer that would never have to end, so we made one!
So, what’s the story behind Cloudberry Kingdom? Was it clear from the start that you wanted to do a procedurally generated precision platformer, or can its roots be found elsewhere?
The origin of Cloudberry Kingdom actually started with a math problem. Jordan was trying to figure out if there was a way to make an algorithm that made random platformer levels that he could play in his spare time. He also had to make sure that each level would be possible to complete, which added an extra layer to the problem. We looked over the result, and threw in some really terrible placeholder art, then played for hours. Once we realized the potential that this had, we decided to make it into a full-fledged game. Overtime, we refined the algorithm to the point that the levels actually feel like they were hand-made by people. Which we consider a wonderful success! We also hired on some wonderful artists, and as well as sound designers, musicians, and other people who actually have talent to help our game really take shape and become something that we could be proud of.
Are there any specific games that were an inspiration? To ask in a more general way, are there games you find specifically interesting in their way of using procedural generation, in the indie- or AAA-sector?
Our biggest inspiration was Super Mario 3. That was a game that both Jordan and I were in love with, and we were both pretty upset when we beat it. We wanted more! We were raised playing games on the NES, so we have always been looking for really challenging games. One of the big indies that was a huge relief to find was Super Meat Boy. It really gave us a challenge that we had been craving for a while. There are a number of other games that have used procedural generation that we really enjoyed, Diablo II stands out, as well as AudioSurf. The real key to procedural content is making sure that it fits well with the idea of the game. For us, it just felt natural to have procedural generation for an infinite platformer, otherwise we would have to enslave someone to design Cloudberry levels for the rest of their life, and that doesn’t sound very cool of us.
On Gamasutra, your wrote that there is interesting research in the field of platformer AI; how directly could you profit from that?
I’m sure that if our algorithm turns out to be something absolutely amazing for procedural generation we could make some good money off of it, but that’s not what we’re focusing on right now. Our main focus is really just putting out a wonderful game that hopefully everyone likes. We’re pretty happy with the way our level generator turned out, but I’m not going to go out and make any claims about it being something that everyone is going to want in the future :-P
Did development go smoothly so far? Or did you come along major stumbling blocks that were related to the procedural generation? What are in your opinion the biggest challenges a developer has to face when working with an emphasis on procedural generation?
Surprisingly, everything that is involved with the procedural generation has gone pretty smoothly for us. We’ve had a lot of struggles in other areas, but our AI has been pretty good about being flexible enough to add new obstacles, new heroes, and other features that we choose to implement. I would say the biggest issue that we have had in terms of using the level generator is teaching it how to create a level for a specific difficulty standard. We don’t have a strict formula or anything to say that X number of obstacles instantly means that this level is hard, that would be a really unfair way to determine the difficulty of a level. A level can have a million obstacles, but if none of them can even touch you, that makes it easy. And a level can also have very few obstacles, but have other challenges to overcome. So the toughest thing we have had to do is teaching the AI how to determine how difficult a level is for a player after it is made.
What other game projects did you work on before Cloudberry Kingdom? Was there also a focus on procedural generation? Was the development process significantly different for this game?
Jordan and I have been making games together since we were kids, but we never delved into procedural generation before Cloudberry. We mostly focused on very small vs. games to keep us occupied during the summer. The development was a whole lot different than what we did for Cloudberry. For the other games that we worked on, we knew that they were for us, and nobody else. For Cloudberry we planned the entire time to release it to the public, so we had to be much more careful with everything that we did and we paid a lot more attention to small details that we would normally just ignore before. We also had to hire on some artists, because in our old projects we were happy to just settle with our own, terrible art.
In your experience, is there a different set of skills, or even a different kind of developer, needed when you design a game that makes heavy use of procedural generation? You get the impression that the closer one moves to procedural generation, the more the work resembles that of an engineer/designer/programmer, rather than that of an “artist” in the classical, Western sense of the word. Would you agree? Or asked differently: What does the team composition for Pwnee look like? Is there e.g. a stronger emphasis on programmers than in other dev teams?
I have to agree that a lot of games with heavy procedural generation put more emphasis on the engineer/designer/programmer side of things. The team composition of Pwnee is 2 engineers, 1 designer, and 1 biz dev guy. None of us really have any artistic talent whatsoever, so we were actually somewhat lucky that we decided to create a procedural platformer. The art wasn’t something that we even considered when we started on the game – we just wanted to make it as fun as possible. After we have a pretty solid foundation for the game is when we started to even consider that we needed someone with talent to help us out with art. We had the luxury recently of working with Tigar Hare, a really great art team in Los Angeles. They were wonderful to work with, and really helped us to give the game a look that we could be proud of.
Speaking of which: One interesting aspect of procedural generation is that on the one hand, it opens up possibilities for the video game that no other medium has and could thus be considered a defining aesthetic element of the medium. On the other hand, it clashes hard with the preconceived notions of what is “art” or even "creative work", since it's an algorithm and not a person that "creates" something. Any thoughts on that? Do you consider yourself “artists”? Did you ever come across criticism in that line of thinking, e.g. people saying that you are not creating a "game", but only an "engine"?
I’m not sure that any of us would really go as far as calling ourselves artists – we have had our drawings made fun of enough that we are well aware that we can’t draw :-P. Having an engine that generates content really doesn’t take much away in terms of creativity, at least not for Cloudberry. The whole design for the game was based on short, intense levels - so it’s not like we would have had huge beautiful landscapes or anything like that anyway. We certainly have a huge appreciation for great art, maybe even more so since we are incapable of creating it ourselves. I guess we view Cloudberry Kingdom more as a work of entertainment than we do as a work of art, so we don’t really take any offense if anybody is going to try to tell us that we aren’t artists. Not that it has happened, but we would admit it if it came down to it
Procedural generation is rarely used in E-Sports, or other heavily competitive play-styles. With Cloudberry Kingdom, you seem to want to change that. How do you work around what could be considered an inherent clash between the demands for a competitive game and game heavy on procedural generation? Do you even think that this clash exists? Do you think that in the future, procedural generation could be more often part of competitive experiences?
We would absolutely LOVE to be able to make Cloudberry Kingdom a game involved in competitions. I think the main reason that procedural generation isn’t used in E-Sports right now comes down to a matter of fairness. In RTS or FPS games, the level design is a very important aspect of the fairness of the game. I think that randomly generated levels in those genres probably wouldn’t work out very well in terms of fairness, unless the levels were perfectly symmetrical, which then introduces the problem of the levels not being interesting. In a platformer the “map” matters much less because there aren’t really any long term strategies involved with the terrain of the level. In terms of competitions for Cloudberry, the procedural generator could be a very useful tool to emphasize player skill, rather than player memorization. In competitions where a number of people are racing to complete a game, it is all about memorizing the levels – but in Cloudberry it will actually be about the player adjusting to new levels on the fly. I think something like that could really add an interesting dynamic to any sort of competition. It would be like a speed run competition for a brand new game every time!
In general, do you feel like there are existing genres or ones still to emerge that could profit (more) from using procedural generation?
I think that as procedural generation improves, pretty much every genre could implement it in an interesting way. There are a lot of genres where the technology just isn’t ready yet, but I feel that in the future they could really benefit from it (if it advances far enough). Procedural generation is already interesting for dungeon crawlers, and some adventure games, as well as some larger scale RTSs. I could imagine some larger FPS games like BattleField 3 doing fairly well with procedural generation as well. But for some of the smaller area, more fast-paced games like Starcraft or CoD, the technology has quite a ways to go.
While games with an emphasis on procedural generation have been around for a long time, I have the impression that we are witnessing a sort of renaissance lately. In case you’re inclined to agree, what are, in your opinion, the reasons for this resurgence?
I think the big reason for this resurgence is that content is expensive. Hand-crafting every level is expensive not only in terms of money, but also in terms of time. It is sort of like the idea behind an assembly line, people can do it, and they can do it well. But once machines were built that could do it equally well, it became more efficient for the machines to do it instead. I think a lot of small studios realized this, and figured out that they could better use their time on other parts of the game that needed more of their attention. Basically, it is a great way to be even more productive with the allotted time.
What role will procedural generation play for game development in, say, the next 10 years? And further on? Do you think that there will be an ongoing difference in how it is put to use in the AAA- and the indie-sector?
I believe that as the technology increases, you will see a much larger emphasis on procedural generation. Large companies make large games, and large companies are always looking for ways to make more money. Procedural generation is one of those things that is going to be able to save loads of time and money for these companies. I imagine that a large percentage of games are going to at least have some part that is procedurally generated in the next 10 years. I am just hoping that it is done tastefully and with the opinions of the gamers in mind. I’ve seen a number of companies push things on people too quickly and really just put off a terrible impression. I really hope that the procedural generation is going to be completely satisfactory before it is forced into every game. I don’t want to have to play games that are bad just because the company could save some money.
And, finally, what will the future of Pwnee Team look like? Do you already have ideas for new projects? Will they put a heavy emphasis on procedural generation as well?
One of our worst habits at Pwnee is constantly brainstorming new ideas. We have a huge list of games that we are planning to make, but we aren’t going to try to force any procedural generation into it unless we feel that it helps make it a better game. We’re certainly not dependent on procedural generation, and we don’t really want that to be what we are known for. We are hoping to be known for making really fun games, regardless of whether or not we have procedural generation. It really just worked out great for Cloudbery Kingdom, so we went with it. Overall, I would say that it is definitely a design decision, and we don’t take design decisions lightly. If it makes the game better, we’ll do it! If it doesn’t really do anything for the game, we’ll definitely leave it out.
Thank you for your time!
You can find the first interview in the series here, where I talked in length with Arcen Games' Chris Park. The second interview was with Jim Rossignol, game journalist and head designer at BIG ROBOT. In the third interview, I spoke with Jake Solomon, lead designer on XCOM: Enemy Unknown. Check back later this week for the final interview with Michael Cook, who designed an artificial intelligence that designs games.