Wednesday, September 12, 2007
Immobile social gaming at Coney Island
Many of you know I’m working on a mobile social networking game called “Casablanca.” We got a grant from mtvU and Cisco System to develop it over the summer — now we’re live and we’ve run a few successful games. Excellent. It’s been an interesting process and I’ll write up more details about it soon. Today, though, I thought I would take a quick look at the sorry state of popular gaming on mobile phones and point out a few tools for developing indie mobile social games which I have found cool and useful.
So mainstream mobile gaming sucks. It has its moments, but I’ve found it pretty dissatisfying so far. Take a look at Gamespot’s “most popular mobile games” page, for example. Boring. Ugh. Please. They’re all just micro versions of popular console games (“Need for Speed,” “Final Fantasy”) or rehashes of the same old classic computer games that get immediately ported onto any platform that’ll hold them: Snakes, Breakout, etc. Even the handful of porn games don’t save this lot from being just flat boring.
Trip Hawkins III, found of EA and Digital Chocolate observes: “Companies are treating the cell phone like it was a second-rate game console and I don’t think that’s really doing it justice. … A brand like “Madden” … is about immersion in a very high-performance technology to make you feel like you’re on the football field. That doesn’t work on a tiny cell phone screen. And ‘Tetris’ was a great game 20 years ago but it certainly can’t define the future of the mobile phone. It doesn’t make sense to me that that’s as good as mobile games are going to get.”
And yet almost all mobile phone games right now seem to fall into these exact traps.
Let me reiterate Trip’s points in my own way:
Mobile phones are not Playstations. They generally have crappy screens, crappier sound, and the crappiest gaming controls. Phone designers often botch up the most basic sorts of user interface elements, making placing calls or sending text messages excessively cumbersome and non-intuitive. (We’ve all had the experience of borrowing someone’s phone and having to ask them how to make it place a call, right?) Game controls require even more high-usability, high-comfort controls. It’s like asking someone who just knows how to put together a bike to build a high-performance racing engine. (Sorry to all of your mobile phone designers for the diss, but seriously: Interaction design on most phones I’ve used is a disaster.)
Many game developers seem to have forgotten that a mobile phone is a communications device (or maybe they never realized it in the first place with all of this emphasis on iPods and pocket computing: “Don’t call it a phone.”). And not just for communicating with V Cast to download “premium content.” A mobile phone is for communicating with people. Between people. Such communications and social connectivity should be the baseline of successful mobile game development, it would seem. People love to have excuses to communicate with one another. It would seem that more of these game companies would latch on to this urge. But apparently not yet (with a few exceptions).
We live in a miraculous world, though — one in which even individual developers and hacker-tinkerer sorts can create great games and software pieces that can become quite popular. It’s obviously happened (and is happening) left and right on the web, but the tools also exist for indie developers to go crazy in the mobile social game arena. I’m going to skip over some of the obvious ones (Java Mobile, BREW, Python, etc) and point you towards a few platforms for mobile social game development which I think are under-exploited and have some great features to offer. And which are free (mostly). I’ve used all of these for different projects and appreciated what each has to offer.
SMS text messaging. Boring. No graphics. Slow turn-around. True. But. Almost all phones are SMS-capable and you can very easily write SMS-to-web interfaces. Getting a short code can be expensive, but most new phones will send straight to e-mail addresses, so if you read up on using .procmail scripts to grab incoming e-mails and throw them into your PHP- or Perl-based web app, you’re golden. It’s not hard. Trendy social tools such as Twitter and Dodgeball totally take advantage of the power of the simple text message. So does Casablanca, the game I’m working on. We use text messaging so players can do simple communications and get updates with their phones. And then we have a more elegant gameplay website for when they’re at their computers. This works quite well for us. And it allows our game to be persistent over time, allowing our game to be more casual: When something occurs, the player’s phone beeps with a new text message. They can respond whenever they would like. And they don’t have to have a Java app open all of the time. Text messaging ain’t glamorous, but it can be exactly what you need to make a good game that works across a wide range of phones.
MUPE (“Multi-User Publishing Environment”). This is Nokia’s offering to the mobile developer that wants a quick and easy way to launch multi-player games. It requires a bit more set-up time (including a MUPE server) and definitely requires some Java chops, but once you’ve got it going it’s very quick to develop with. It’s like doing web 2.0 social site development, but all user activity on the phone latches directly into the Java server and you can easily access stuff like the phone camera and microphone. Sweet. Once you’re flying, it’s great for rapid development or prototyping. What it lacks, though, is any kind of broad support on phones. In fact, at the present I don’t believe it’s available on any non-Nokia phones — though I know Nokia would like for it to become more of a standard. MUPE’s open source, so if that’s your bag you can feel comfortable with it. I’ve enjoyed working with it. Let me reiterate again, though, that only new-ish Nokia phones support MUPE. Which sucks for now.
Voice phone calls! Calling someone voice is really the only communication mode supported 100% by all phones (mobile or otherwise) since Alexander Graham Bell first asked Thomas Watson to pick up. Everyone has voice. And with Asterisk, an open source PBX (phone answering system), you can build interactive systems that use voice phone calls in fun ways. You’re probably used to automated phone systems when you call your bank or an airline or something. “Press one for branch hours and locations. Press two for an account representative…” Asterisk does that. But it’s free (though you have to pay for VOIP (“voice over IP”) hosting — I use Junction Networks, which I recommend). And you can latch it right into Java or whatever for some really cool possibility. There are a ton of gameplay possibility that open when you go voice. I really recommend checking it out.
So, anyway. These are just a few thoughts of mine about mobile social gaming. As I said, Java Mobile (aka J2ME) is great for game development, as are many other platforms. But these that I’ve discussed above may be a bit more naturally social. And they might you some time developing a prototype or launching a simple game (if that’s what you’re up to).