extending the game to the web aaron lieberman. the web website as a feature area why is it...
TRANSCRIPT
Extending the Game to the Web
Aaron Lieberman
The Web
• Website as a feature area
• Why is it interesting?
• Implementation
• Results
Bungie.Net• Company website
– Represents Bungie– Games are one tier off the front page
• Community
• News
Demo of Bungie.Net Integration
• Home page• Personal stats page• Games listing• Detailed game
information• Game viewer
Why the web?
Our Reasons
• Our main reasons– Community– Continued excitement
about the game– Reach people when
they are away from their couch
– Educating players how to improve their game
– User interface differences
• Other reasons– Further excitement
about your brand– “Back of the box”– Ad revenue
Although these didn’t really pertain to us, they could be helpful if you need some convincing reasons to put time
into web features
Online Strategy Guide
• Dynamic, up to date
• Intermediate players– Easy to understand– Learning curve
• Historic data
Interface Differences
• The good– Gamepad
Taking actions, Indicating direction
Navigating hierarchical menus
– DisplayMovement and action
More comfortable for longer use
• The bad– Gamepad
Horrible for text entry
Mouse is superior for using menus
– DisplayConsoles have relatively low resolution displays
Bad for reading text
Console vs. Computer(or Gamepad/TV vs. Keyboard/Mouse/Monitor)
How do we use these differences?
• Tables of statistics
• Lots of text, images and data
• High resolution images
• Point-and-click navigation
• Inline hyperlinks
How did we do it?How did we do it?
History
• By about a year before Halo 2 launch we had developed several pieces of technology– Detailed statistics in game– Code to upload http posts from game to website and
process the uploads efficiently
• Had recently built a new website– Scrapped our old Perl site– New site in ASP.NET– Heavily relying on SQL and Web Services– Designed to work across multiple servers
Dreams
• Record games played online
• View recent games– Analyze how people play– Send via email or IM
• Visual representation
Storage Concerns
• Storage size
• Number of games
• SQL experience compared to our SQL requirements
• Getting data from the game to the site
In-game Functionality
• Low impact on the game
• Gameplay not impacted if the backend goes down– Experience running a 24/7 system– Being on-call– Eventually stop support?
• Push work out later in development cycle
As late as possible
• Web deliverables came come late
• Some work needs to be done before the game ships– In game features– Uploading / downloading– User Interface
– Testing
Tools and Technologies
• Development– Visual Studio 2003– C# / .NET Framework 1.1– ASP.NET 1.1 and Web Services
• Server-side– Windows Server 2003– SQL Server 2000
Basic Server Architecture
Accomplishments
Features
• Detailed statistics
• Game Viewer
• Emblems
• RSS
• Feature revision / updates
• Processing system
Processing
• Peak processing at 30+ games per second
• 343 million games stored
• 2 weeks till partial purge
• 750 GB of online storage
Cheaters
• What constitutes cheating?*– Boosting– Standbying– Modding
• Xbox Live provides help– Executable code safety
• Detection– Compare historical ranking data– Look for anomalies in games (things that are
disallowed in the game world)– Evaluate game-specific data in uploads– Detect modified content
(* not a comprehensive list)
A Handful of Stats
(compiled 1 year after launch)
• Number of online players: 2.56 million
• Average of 1 million games per day
• Man-hours of Optimatch games: 218,668,172
Main points
• Web integration can be considered a feature
• Takes lots of work, from people with diverse skill sets
• New direction to innovate
• Keeps people coming back and excited for a long time