Monday, May 21, 2007

OGDC 2007

Overview

This is the first year for the Online Game Developers Conference. It was organized almost entirely by Peter Freese, a lead programmer at Hidden Path Entertainment. Because I have a longtime professional interest in online/multiplayer gaming, and because it was local and only $340 I went to the conference in hopes of discovering some useful insights and developing some industry contacts. I'm happy to report that the conference was a success for me on both counts.

Sessions

The conference spanned two full days and four meeting rooms. The rooms were pretty small compared to GDC (which has no affiliation with OGDC). I estimate that it was attended by about 500 people, some of whom came from as far as Southeast Asia. Overall the sessions were less technical than I had hoped, but still worthwhile.

Day One


Writer: The Redheaded stepchild of the videogame world

Jess Lebow is a lead writer at Flying Labs Software, a local game company founded by an ex-'Softie-turned-multimillionaire. Their current title is "Pirates of the Burning Sea." Jess's talk focused on the age-old issue of writers not getting much respect in the games business (nor in the entertainment industry overall in my experience). With the room packed full of writers, everyone nodded their heads when he said that games need better stories. Though I agree with that sentiment, I asked him why. After all, many mega-platinum titles seem to soar despite their trite storylines. Would better stories really make games more successful? Answer: we hope so.


Building Games for the Mass Market

I met Mike Goslin (Disney Online) at GDC a few months ago when he was part of a panel discussing another pirate-themed MMO, "Pirates of the Caribbean Online." He's a good public speaker and I encourage you not to pass up an opportunity to see him present. This talk was less about PotC and more about his studio's learning about the Mass Market via their previous MMO, "Toontown."
The Mass Market, by the way, refers to everyone who's not an 18 -24 hard-core gamer. In other words, most of the people in the world.

Some key points from his talk:


  • The Mass Market is diverse, most especially in their commitment to your game. I thought this was one of the best insights in the session. Some people will immerse themselves in your universe, but others will only have peripheral interest. What's more, they don't want to get more involved. If you ignore this group of casual-commitment customers you will miss out in a huge portion of your potential market. Disney Online's strategy for serving the minimal-commitment segment is based on respecting the fact that those people want to "just be friends" rather than trying to get them converted into the hardcore segment.
  • Figure out what the min spec is for your title, and then lower your sites by about 20%. According to Mike it's almost impossible to underestimate the min spec of their target market—kids. Main reason is that kids tend to get the hand-me-down computers from their parents. Not just last-year's hardware, but the year before that. I think this insight is particularly applicable to my project, Train Sim 2.
  • Make part of the game free. This is more than the classic "first hit's free" strategy. It's making some part of the experience free for as long as the user wants. The key here is figuring out how to make the free part satisfying enough to engage the customer, yet leave them wanting more and willing to pull out the credit card.
  • You only get one first impression. Mike likened this to moving in to a new neighborhood. If you arrive and are welcomed by everyone around you with gifts and goodwill, then you're likely to be "hooked" straight away. Conversely if you arrive and are egged, tagged, TP'd and burgled on the first day you're not likely to stay. You (the developer) will likely never get another chance to make a good impression on those people, or their friends and family. This sentiment was echoed repeatedly throughout the conference—if your world is welcoming people will stay. If you allow "bad apples" to spoil the experience for others you're doomed. 99 gallons of wine + 1 ounce of sewage = sewage. Etc.
  • One specific innovation in ToonTown that helps keep it "friendly" is that chatting is done via a restricted set of menu items. No free-form text (meaning no l33t-speak and no "come meet me at the park"). Shortcuts enable chatting with the restricted grammar almost as easy as free-form typing. Of course, this strategy isn't universally appropriate, but it is a tradeoff that works in their case. PotC will not have restricted chatting.
  • Theme is powerful. The color palette in ToonTown has 16 colors in it, including black and white. The idea is to tune the colors, sound, shapes, etc to your target demographic. This is especially important to the Mass Market, where über-realistic dystopian scenery isn't as cool as much as it's repelling. Can you imagine a soccer mom enjoying being immersed in the Blade Runner universe?
  • After the first impression it's important to get players to the fun quickly. In other words, be respectful of their time. This philosophy drove them to add "teleporting" to the PotC world. If the player wants to go play a game of poker, let them jump to a saloon whenever they please. Don't force them to sail their ship for 40 minutes for the sake of realism. It's a game. The point is to have fun. Anything that goes against that is arrogance by the developer.
  • Mike shared some thoughts on how Disney builds loyalty to the game. Pretty standard stuff where about events, new content, and expanding the game beyond the edges of the screen. Most interesting tidbit was that they realized that many of their customers (6-10 year-olds) lost interest in the game, not because they didn't enjoy it when they were playing, but because they simply "forgot" about it in the face of the hundred other ways they could entertain themselves. Disney found that by simply sending a monthy printed ToonTown "newsletter" about the goings-on in ToonTown they not only kept kids engaged but they also reminded the parents that the $6.95 a month they were spending had some kind of tangible value.

Automating Online Game Balance

Talk was given by Christian Force (great name, almost as good as Royal Winchester) of +7 Systems. He prefaced the talk by noting that +7 has a product that does automated game balancing, but said "this is the last time I'll mention it." I was pleased that the talk did not, in fact, turn into an infomercial. This mostly applies to MMOs but there are definitely aspects that apply to any competitive multiplayer environment.


Central thesis:

  • Player retention is critical to success of an online game
  • Perceived balance is more important than actual balance (rock, paper, scissors is perfectly balanced but not fun)
  • Traditional attempts at balancing game play result in a "Player vs. Designer" meta-game that in the end is not a successful way of retaining players (see nerfing); instead the meta-game must be "Player vs. Player" in order to keep maximum number of players happy.

A lot of background on game balancing was covered—too much to go over here. In a nutshell, people interested in this area have realized that without balance, players learn what dominant strategy works best and adopt that to the exclusion of all other diversity in the game. Only newbs pick the other strategies, and then get picked on for their obvious and offensive lack of skilz. You can read more at the +7 website.




The interesting idea here is that you can balance your game without making it completely boring. To do so, create ways of balancing that enable dominant strategies to ebb and flow over time. Also, create "gems" of imbalance that are only revealed through thorough analysis. For example, you might have objects in the world that have their own balanced attributes alone, but when combined result in an advantage that is greater than the sum of the parts. This advantage can only be discovered by those who take the time and effort to try many different combinations of gear. Your newbs and casual players can enjoy the diversity of content that you worked so hard on, and the dedicated hardcores can gain a small edge on their competitors if they invest enough time.

+7 claims they can do this balancing automatically. In fact, they suggest that the only way to eliminate the PvD meta-game is to make the balancing automatic. Players may rail against the designers for changing the rules, but they're unlikely to rage against the machine. I do think they're on to something with the idea of changing the meta-game from PvD to PvP, even if it's only for practicality of scaling. The problem seems similar to the traditional content scaling problems for e-commerce sites like Amazon.com. Though they had staff editors in the early days who would rate and review products, that died away long ago. It simply didn't scale with the rate of growth in their product catalog. Instead, they created an ecosystem where users could rate and review the products offered for sale at the site. They also added a system where the ratings could be rated. The result is a totally automated, self-policing, and incredibly useful system that's extremely cost-effective. A game balancing system that's automated and self-policing would be cost-effective. The only question is how useful it would be in practice.

Concurrency Keynote

Herb Sutter (Microsoft) of The Free Lunch is Over fame gave an interesting talk on the future of computing with regard to concurrency and parallelism. Bottom line is that the number of cores will continue to grow (32-128 in the next few years), but more interestingly the kinds of cores you have will change. Big Pentium-like cores for some tasks and smaller "agent" cores for other things like futures.


Herb's a good speaker and the topic was both engaging and germane to our industry, but it was highly technical. I think the vast majority of people in the room had no clue what the hell he was talking about. I asked Peter about his choice for a keynote. He defended the choice vigorously, but I think he missed the mark. Would have better served the whole group if this had been one of the sessions.



A Psychological Approach to Decreasing Cheating & Griefing in Traditional Games

Bill Fulton (Shadowrun game designer) is quite a character. He wins the award for Most Prolific Use of Naughty Words in a Formal Presentation. Good speaker, too. His passion for his work really shines through.

According to Bill, Bad Behavior is the #1 threat to your revenue for a multiplayer game. As I mentioned before, this theme resonates with the message from other speakers at the conference. Coming from a usability background, Bill brought some playtest videos to illustrate his point. Wow. A normal person + anonymity + a forum = (in Bills words) fuckwad. You should check out Bill's playtest videos if you get a chance.


As the title of his presentation suggests, Bill advocates a psychological approach to dealing with the problem, rather than a traditional enforcement approach. The problem is similar to the real-world drug/crime problem. Some advocate a "more police on the street" approach while others feel that the only way to solve the problem is to find and fight the root causes (poverty, education, etc). Bill is firmly in the root cause camp (at least with respect to cheating and griefing). He also put his money (or more appropriately, FASA's money) where his mouth is by making specific design decisions on Shadowrun. For example:


  • Shadowrun has no persistent rankings. No persistent rankings mean no incentive to cheat your way to the top of the leader board.
  • When you voice chat, your player ID is shown prominently in the UI. Less anonymity.
  • When you play multiplayer, you continue to play rounds against the same set of people. The longer you're with a given group, the theory goes, the less anonymous you feel and the less likely you are to grief.
  • No chatting with the other team during the game.
  • You're penalized more for hurting your own teammates than you're rewarded for harming the enemy.
  • Your "score" is a factor of not just how many frags you have but also factors in other ways in which you helped the team. I think this is a particularly interesting one because I have heard many, many people say they stopped playing game x because they "sucked at it."

Bottom line is that in every competitive match at least half the players (read: your customers) are going to be losers. Your challenge as a game designer is to make losing acceptable, and even fun.


Xbox LIVE on Windows and 360

Brendan Vanous is a Dev Lead in Microsoft's Game Technology Group. His presentation was an introduction to Xbox LIVE for Windows and 360. He walked through how LIVE might be integrated into a fictional FBS (First Bovine Shooter) called Cattle Battle. I'm not going to spend a lot of time covering this one because a lot of other tutorial material is available online. The only thing I will point out is that LIVE is not something that can wait until the end of the project to integrate. You really need to think about LIVE at design time.


Everything but the Game

Bob Mitchell (Sony Online Entertainment) gave a good talk about all the things that you need to worry about for your game that aren't the game itself. The list is MMO-centric but still applicable for most multiplayer games:


  • Patching—you're going to want to fix bugs, update content, add new features. Used to be that customers would tolerate a little complexity in the patching system but no more. Don't forget about patching your servers, too.
  • Chat—text, voice, video. Talking, shouting, whispering. Community can only be built via communication, and if you want to build community (you do, don't you?) then you've got to give your customers the tools they need to communicate. Don't forget about ignore lists and friends lists, not to mention lawful interception and snooping.
  • Persistent messaging—your customers want to communicate but they're not always going to be online at the same time. You need persistent messaging but watch out for all the fun headaches that come along with it (like the utility that will be inevitably written to make your persistent messaging system a backend for a desktop virtual filesystem). Also, spam is not fun.
  • Localization (L10N) and Internationalization (I18N)—It's more than just text. It's numbers, currency, IME (input method), sorting. Even icons and other visual elements can have regional implications.
  • User Authentication—The foundation for persistence. Do your users a favor and help them protect their accounts by hiding their login id from everyone but the user. Openly displaying a user's login id to others diminishes their security by half. Don't forget to handle parental controls, lost password (and user ids) and shared accounts.
  • Billing—Forget it. Don't even think about doing it yourself. Go and buy a (good) off-the-shelf solution. This is my advice, too.
  • Transfer tools—This is MMO-centric, but there are all kinds of good reasons why players move between servers. Make it easy for them and for you.
  • Customer Support Tools—If the player can do it, give your CS reps a way to do it (and undo it). Have a way to determine with certainty whether or not a player has done "it." Provide tools for reporting bugs and abuse. CS can make or break a game (and even an entire company).
  • Logging—If it's at all interesting (for debugging, summarizing, mining) log it. Make it easy to automate and parse. You'll save a lot of time in the long run.
  • Reporting—Logging++. Get a pager and hook it in to your logging system. You don't want to find out the servers crashed last night by your boss dropping by and asking, "So, what happened to the servers last night?"
  • Security—Worthy of many, many talks, but just remember the following quote and you'll do OK.
    "Never trust the client. Never put anything on the client. The client is in the hands of the enemy. Never ever forget this." --Ralph Koster
  • Testing and debugging tools—this should be a "duh" but unfortunately we often find ourselves with not enough time to build these tools. But the investment in good debugging test automation tools has never failed to pay off in the end.
  • Community tools—forums, blogs, leader boards, etc. It's all about community. You do want to build a community, don't you?


Day Two

Adventures in Middleware

Joe Ludwig from Flying Lab Software gave an interesting talk on how they used middleware in their Pirates of the Burning Sea MMO (shipping soon). I'm not aware of any other company that invested so heavily in middleware to bring their game to market. By Joe's account it's been successful. Here's a rundown of what they use:

  • Alchemy graphics engine (Intrinsic). Dead technology now but they got the source code when the vendor tanked so they're doing OK. If they had failed to get the source they would have been hosed. Not recommended (and frankly, you couldn't get it even if you wanted it)
  • PathEngine for AI. Has great support and documentation. Under $20K for license with full source code. Overall recommended.
  • AGEIA PhysX for physics. Fast and stable. Free if you support their hardware. Some installer issues. Overall recommended.
  • Miles Sound System for audio. Fast, stable, feature rich, cheap. "The standard by which other middleware should be judged." Highly recommended.
  • SpeedTree for (yes, you guessed it) trees. Poor Maya support, complex integration, artists were never satisfied. They ended up pulling it from the game. Joe observed that if he had it to do over again he would include the art team in the evaluation.
  • Promethean FX for special effects. Difficult to integrate but better than starting from scratch. Recommended.
  • Cryptic Engine Updater. Launcher from City of Heroes is good, but not available for sale. Why is there no commercial middleware for auto-updating?
  • Xtreme Toolkit Pro for creating MFC-based production tools. Use it if you have MFC-based tool needs.
  • ZLib for file compression. Fast, easy, free. A no-brainer.
  • MySQL for server-side database. (note to reader, I am not a Lawyer) Cheap and easy. Mostly. However, if he had known how cheaply he could get SQL Server, he would have gone that route.

Joe's slides have more details than I give here, including information on pricing (which is harder to come by than you might expect). He also provided some advice on how to evaluate middleware:


  • Get the source. If you can't get the source, consider walking. If you can't get symbols at least, don't bother.
  • Find out about the vendor, its funding, its technical roadmap, and its other customers. Are they going to be there for you when you need them?
  • Get more than just developers involved. How about your art team and your ops team? Are they stakeholders in the build/buy decision? If so, involve them.
  • Give yourself enough time to evaluate the product. Consider your eval a sunk cost, too. Don't go with a vendor just because you've already invested $10K in the evaluation process.
  • Don't believe the hype (or the marketing copy). Make your decision based on what's there now, not what the sales rep promises will be there "in the next release."
  • Lastly, don't be afraid to say "no."

I'm looking forward to see how it all comes together in Pirates.



Building a world class MMO while building a company


A decidedly non-technical talk from VP of Product Development, Joe Ybarra (Cheyenne Mountain Entertainment). He bootstrapped the company to develop an MMO around the Stargate IP. Interesting story worth reading if you're thinking about doing a startup.



LagTalk


Simon Hayes, CTO of BigWorld, gave one of the best crash courses I've seen on managing bandwidth and latency in a networked game. A lot of folks at the conference (including Joe Ybarra, above) are using BigWorld's tech for their MMO so it seems like it's worth a look if you're planning on building one.


The talk was MMO-centric but I believe that much of what was covered is applicable to networked games in general. The slides are worth a look, but here's the bullet:


  • To scale your networked game, you have to make your network stack aware of data priority and variable quality of service. You need to have controls that enable you to control bandwidth utilization and be able to logarithmically decrease data flow rates.
  • Data LoD (level of detail). You should be informed if a player 10 meters away is waving his hands, but you don't care if someone 50 meters away is doing the same. Conversely, if either is shooting at you, you need to know no matter what (assuming you're within range of the weapon).
  • Movement Filtering—you don't need to know the exact movement of distant entities; dead reckoning and interpolation can be applied
  • FPS Corrected targeting— To help correct for targeting errors due to latency and disjoin client views, BigWorld uses hit boxes that expand when the player moves
  • Disguising lag—use animations and other techniques to disguise the lag inherent in any server-side business logic (e.g. picking up an object)
  • Client-side prediction—traditional methods for predicting outcome and then undoing things that are nixed by the server
  • Server-side predetermination—for things that the server will need to calculate, begin that calculation as soon as you know (or even think) you'll need to do it. Simon used a tossed grenade as an example. Dave Weinstein (Microsoft Security) thought that may not be the best example
  • Predetermination with Prediction—combination of the above techniques

Keynote: Games Industry 2012

Erik Bethke, CEO of GoPets, gave the second-day keynote. He's another colorful speaker, pointing out how proud he is that his four-year-old son plays WoW a couple hours a day and already has hundreds of kills under his belt. I've got a link to his slides below. To entice you to check them out, I offer some sample points:


  • The pirates (no, not PotC or PotBS) have won. Shrink-wrapped software is dead.
  • There are 4.1 billion Internet users and guess what? They don't live in the ole' US of A.
  • By the way, nearly all of them are connected to the Internet via thick pipes.
  • Use of the word "virtual," as in "virtual worlds" will seem quaint.
  • 7-Eleven and PayPal will introduce cash payment cards that feature age verification and anonymity. The porn industry doubles revenue almost overnight.
  • Active games become the preferred path to fitness
  • Games (finally) take a prominent role in learning. (Johnny can't advance his monk to the next level until he solves his trig homework.)
  • The Developer/Publisher model is dead. Retailers become disintermediated.

The slides don't really convey the story with the same enthusiasm and energy that Erik does.



AutoAssault Postmortem

Scott Brown of NetDevil did the only postmortem talk at the convention. Their game, AutoAssault, is a "Diablo in Cars" MMO that has a loyal following but hasn't yet achieved much commercial success. There's a link to the complete postmortem below, which I highly recommend. Again, here are the key lessons:


  • Polish as you go. It's better to have fewer features working 100% than to have a ton of features that are all half-baked.
  • Play your game! Early and often. If your team isn't playing the game every day, it's because your game is not fun and you have a problem.
  • Prototype, prototype, prototype.
  • Build one great experience (i.e. a single level, a single tech tree, etc.) first. Then repeat.
  • Good is the enemy of great.
  • Embrace change—and make sure your contract with your publisher does, too. The milestone = payment structure almost invariably provides disincentive to making a great game.
  • Performant + Easy + Pretty = fun. Scott touched on the performance thing several times during his talk. You can't have fun if your game is slow and laggy. I can back this up with our experience on the RTM of Flight Sim X, too. We had the second two ingredients but not the first, and we were punished for it.
  • Sufficiently complex and no more. Sounded like they overdesigned their tech tree and wound up confusing and repelling players instead of engaging them.

The people at NetDevil learned a lot from their experience. I hope they get another chance at bat.


Conclusion


I didn't have very high expectations going into this conference. It was the first year, the sessions were almost entirely non-technical, and attendance was relatively small. However, despite being mostly non-technical the sessions I attended were quite informative and all the speakers did a good job with the material. What I thought was a negative (few attendees) actually turned into a positive because it enabled me to more easily network with the presenters and other attendees. I know that it took enormous about of personal dedication on Peter Freese's part to make this happen, so a second-annual OGDC is not a certainty by any means. But I hope to see the conference come again. It serves a need and (I believe) will continue to do so for a long time to come.

Oh, and the food was awesome.





Wednesday, May 09, 2007

ISO Recorder

A CD/DVD copier should have been included in Vista, but isn't. This helps.

He has versions for XP etc, too.