Distributing
Object State for Networked Games Using Object Views by Rick
Lambright As game developers, we are continuously challenged
to create richer and richer game worlds. Whether we are developing
a 16-player multiplayer game, or a 10,000-player persistent world,
making richer game worlds efficiently means we must be increasingly
intelligent about how we distribute the everchanging state of our
game objects. This problem is further complicated by the diversity
of the network connection characteristics of each player. This feature
describes a technique for managing the distribution of object state
using an encapsulation mechanism called an object view. Object views
provide a means for managing the distribution of object state on
a perobject basis that is flexible and transparent to the game object.
In order to describe what they are and how they are used, we’ll
also peer into the workings of a distributed object system designed
for multiplayer games.
Implementing
Stories in Massively Multiplayer Games by Chris Klug If
the players will create their own drama, why bother trying to tell
stories in massivley multiplayer games? Why not just make a sandbox
and let people play? You're already telling a story, whether you
meant to or not. Every single thing you do when you create a game,
from the look of the interface to the colors of the spaceships to
the way the avatars move to the amount of grass you put on the ground
tells a story.
Of
Internet Servers and SQL Databases: Designing the Backend for Power
and Performance by Pete Hallenberg As online games proliferate,
a growing number of Internet servers are being created and deployed
by game developers. These servers must deal with massive quantities
of data generated by the games that connect to them. Off-the-shelf
SQL database software seems like the ideal way to handle all this
data, but which RDBMS system is right for your project, how will
it impact server performance, and how should the data be structured
and used? This feature will answer these questions and many others.
It is intended to give programmers a clear and practical understanding
of the things databases do well and the things they do horribly.
Using a database without this knowledge is a virtual guarantee of
lousy server performance. Topics include server architecture, ODBC
vs. proprietary connection APIs, keeping the query optimizer from
killing you, and everything you never wanted to know about designing
tables, indexes, and stored procedures to make your servers fly.
Creating
Effective Groups and Group Roles in MMP Games by Mike Sellers
Massively multiplayer games are built on a social foundation. They
differ from other games in that they encourage people to do fun
things as part of a group, and to keep up their group ties over
months and years. These games lure players in with visions of heroic
battles and individual character advancement, but ultimately succeed
when they provide meaningful, interdependent roles for people to
play as part of a group. In this article, This feature provides
some design principles to follow based on how current MMP games
are encouraging (or not) players to be part of groups within and
around the game, with an emphasis on temporary and permanent groups,
designed and emergent roles within groups, and where this might
lead in the future.
The
Music of Anarchy Online: Creating Music for MMOGs by
Bjørn Arve Lagim In any game, it is important to know what the
goal of the music is, and how it should interact with the player.
For Anarchy Online, we wanted a musical tapestry to compliment the
beautiful graphics, and we wanted music that would last beyond the
first few hours of playing. We wanted the music to change according
to the location and actions of the player, and we wanted CD-quality
music. The most obvious challenge was to create music that wouldn't
get repetitive or irritating to the player. AO has potentially thousands
of hours of playing time, and this meant that we had to come up
with a method of both presenting the music and composing the music
that would be suitable for many hours of exposure.
|