Archive for July, 2009

Look Ma! No hands!

July 24th, 2009 3 comments

Science Fiction tells us how people think the future will wind up, among other things. Flying cars, time travel, cryogenic stasis, and a host of other subjects are often very popular, but arguably the most talked about in the genre are computers, or more specifically robots. A sub-topic that doesn’t get focused on a lot (in one blogger’s humble opinion) is self-replication of robots. Robots that are self-sustaining, and can perpetually build more of themselves. Surprisingly, the concept of self-replicating machines, at least as looked to by scientific study, is fairly recent, less than 100 years old. Mathematicians and philosophers were debating the point through the 1920s and 30s, and in 1948 and 49, a mathematician named John von Neumann really brought it to the fore when he started talking about a thought experiment in which he theorized that a machine could replicate itself if given the instructions on how to do so and a system by which is could transmit the those instructions. This remained relatively obscure until 1955, when it was published in Scientific American in an article titled “Man Viewed as a Machine”.

Several prominent examples of self-replicating machines exist in fiction however. The influential Terminator series was one of the first examples of modern fiction to depict a system of machines that self-replicate and evolve. Though others exist, it can be safely said that Terminator formed the basis for this generation’s concept of self-making machines.

Though real world examples are coming into their own, fictional examples remain constrained somewhat.

It’s with this in mind that I’d like to talk about procedurally generated content (PCG). Accordingly, it’s kind of a new term in gaming, and doesn’t have a lot of background as far as actual video games go. It might best be defined as neither player generated content nor developer generated content, but content that is entirely made up by the system by which the game is governed. There are only a handful of examples, and none are very old. Diablo II might be the widest known example, and the arguably the least impressive. First released to critical acclaim in 2000, Diablo II’s dungeon maps were created wholly within the game, and no two were alike. Though they featured consistent content (for example, the Den of Evil always has the same number of monsters in it, including Corpsefire), the layouts and treasures were different for each game. Older examples exist, including the precursor to many space faring games, Elite. Probably the oldest example of procedurally generated content, almost the entire setting of Elite’s gameplay is drawn forth procedurally, allowing the system to process them all simply without accessing the memory of the machine as it’s made on the spot. There are some interesting advances being made. Hellfury, a mostly defunct MMO, used a lot of procedurally generated content, and GAR looks to be one of the more interesting displays of where this technique can take us. Further, the upcoming Star Trek MMO promises to use a great deal of it to allow players to interact with a great deal of the Star trek world without mapping it out explicitly.

So where does this bring us? Where do self-replicating machines and procedurally generated content meet? It’s a little hard to say. i think part of the draw of this topic for me has been the potential interactions between the two coming up with AI. It seems that currently, our ability to come up with procedurally generated content is limited by the scope of what we tell the procedures to come up with. GAR is a good example: The weapons made it the system are unique, but GAR doesn’t come up with unique ships, maps, or anything other than guns. Diablo III will use more of the mapping techniques pioneered by its predecessor, but that’s all. Nothing we’ve heard so far suggests anything other than maps will be the procedurally generated content in Diablo III.

But what if the procedurally generated content in a game told it how to make more procedurally generated content? It might be what’s next in gaming, or perhaps robotics. There are some interesting things generated by GAR, and I look forward to Star Trek’s use of procedurally generated content to map out the Star trek universe, but when the system can write itself, that’s when I get really interested. Until then, all I think that PCG actually does is allow the system to develop in unexpected ways, but in ways that are functionally the aim of the programmer or designer in the first place without the designer’s intervention. That is to say, lets them be a little lazier and keep the system nice and simple.

Share Button