What Cloud Computing Means to Game Design

What Cloud Computing Means to Game Design

One of the biggest stories to dominate game industry headlines as of late is the emergence of OnLive. Think of it as a cloud-based gaming platform which purportedly allows any PC or Mac (including bare-bones ones) with a fast network connection to play any game by running all the code – including the graphics rendering – on a remote server instead of on the local machine. In many ways, this service is a return to the “dumb terminal” model of the ’70s where no calculations were run on the user’s computer itself. So far, reactions have been mixed. Osma Ahvenlampi argues that, due to network lag, this model could never work; Adam Martin claims that it could work if the servers are located intelligently. Keith Boesky points out that the actual business model is simply acquisition. [And CNET seems pleased with early tests, citing that the service “does exactly what it’s supposed to do… make playing games on your computer far more accessible.” –Ed.]

I don’t claim to know if OnLive’s specific tech will work or not, but I would like to talk about the implications of this potential shift to server-based games. (Even if OnLive doesn’t make it work, clearly this technology will arrive at some point.) Of course, we already have server-based games – World of Warcraft runs on numerous servers spread around the world, with appropriate bits of game info set to thin clients running on local machines. However, a client is still a tricky piece of software, and as Raph Koster like to remind us, “the client is in the hands of the enemy.”

With OnLive, the client is so thin, I’m not sure if it’s appropriate even to call it a client. It’s more like a video player. In fact, while the phrase “YouTube for Games” always refers to user-generated content, one should recall that YouTube had a second, perhaps more important, innovation: Regardless of how a video was created, as long as the viewers had Flash, they could watch it immediately. The same concept hold for OnLive – as long as you have their app, you can play any game capable of running on their servers.

Cloud gaming services like OnLive (pictured above), Gaikai, InstantAction and others threaten to redefine game design.

The implications of this change are huge – simply put, it spells the end of client-server architecture. Developers no longer need to optimize what data is sent to the client and what is kept back. Or worry about cheating. Or piracy, for that matter. While these advantages are huge, of course, what really interests me is that making a game multiplayer is now, essentially, trivial. Put another way, the set of developers making one-man MMOs will now be larger than just Eskil Steenberg.

Writing multiplayer games is very, very hard. Trying to keep everything in-sync between servers and clients in a safe, responsive, fair, and accurate manner is no small challenge. With a system like OnLive, these issues evaporate because there are no clients anymore. Developers simply write one game, run it on some server, and update it based on user actions fed in from the network. If such a technology existed when we made Civilization 4, not only could we have saved man-years of development time and testing, but we could have easily implemented advanced features (games-of-the-day, mod sharing, massive player counts, asynchronous play, democracy-game support, etc.) with very little effort. Of course, I don’t know if OnLive will be the one to do it, but – at least from a developer’s point-of-view – the importance of this change cannot be overstated.

Editor’s Note: For more articles by Soren Johnson, be sure to read his Designer Notes blog.

About Soren Johnson
Soren Johnson was lead designer and AI programmer for Sid Meier’s Civilization IV before joining EA Maxis in 2007 to work on Spore as a lead designer/programmer. He is currently building web-based games with EA2D such as the moddable strategystation.com.

Leave a Reply