|
Introduction
In
a talk given as part of Microsoft's Developer Day at Game Developers
Conference Europe 2005, Andre Vrignaud, part of the Xbox Platform
Strategy Group, delivered an interesting lecture designed to explain to
game developers exactly how many of the new features of Microsoft's
Xbox 360 next-generation console would interface with their games.
And,
in explaining what developers what and would not need to do to satisfy
technical requirements, Vrignaud also revealed a great deal of
Microsoft's philosophy on what the next-gen console should and should
not do, notably showing a desire to remove a great deal more of the
fiddly, difficult to satisfy official technical certification
requirements (TCRs) in the Xbox 360.
Dashing Through The Guide
Starting
out, Vrignaud presented an overview of the Xbox 360 Dashboard and
Guide, which collectively handle configuration and device management,
as well as handling many common game tasks, including Xbox Live friend
displays, save game/item storage, and so on, as well as new Xbox 360
features including the comprehensive gamer profile, game-specific
achievements, and so on.
|
|
 |
 |
 |
 |
The Xbox 360 retail bundle.
|
However,
he was eager to differentiate between the Dashboard functionality,
which runs on boot-up as a separate application, like on Xbox, and the
Xbox 360 Guide. In the Dashboard, players who have not booted a game
can alter master audio and video configuration, manage their storage
devices (such as hard disc and memory unit), adjust peripherals such as
the Xbox 360 camera, which was indicated as arriving in 2006, and also
keep a master player profile with basic, overarching options - Vrignaud
commented further on this later in the lecture.
In
contrast, the Xbox 360 Guide program runs concurrently with all games,
and a player can press the 'Guide' button in the center of his Xbox 360
gamepad at any time. The guide will then slide in from the left.
Whereas the Dashboard covers more general options, the Guide covers
player sign-in and sign-out to Xbox Live, viewing of a player's friends
list, including gamercards, achievements, a chance to see a recent
players list, incorporating feedback and reviews, and a message center
which has game invites and friend requests. It also handles system
notifications for events such as controller removal, music playback,
storage device enumeration, access to the top menu for the downloadable
content Marketplace, the ability to 1:1 voice chat to anyone on your
friends list, access to a virtual keyboard, and finally, deals with
system-specific error messages.
In
sketching out this comprehensive list, Vrignaud was keen to point out
that, by having the Xbox 360 Guide, a Microsoft-created application,
available at all times, a great deal of work is cut out for potential
Xbox 360 developers. In contrast, he noted, on the Xbox development
teams had to code a notable amount of Xbox Live-specific work, for
example with regard to the friends list, as well as deal with common
problems to all Xbox games such as memory card access phraseology and
checking for controllers being removed. In all, Vrignaud explained,
these changes have reduced TCRs by about two-thirds for the Xbox 360.
Later
in the lecture, it was also pointed out that the Guide screen can be
graphically themed when playing a specific game and having the player
switch to a Guide. As well as a 'skin' to make it appear less
graphically jarring, there's also the ability for the game to set a
banner (effectively similar to a website banner ad) that appears on the
Guide screen, and can promote a certain piece of content such as
downloadable Marketplace content or tournament promotions. When the
player selects the banner, he can either click on it or select other
options using left and right movement, meaning that careful banner
design can include multiple different eventualities.
Profiling The X360
With
this, Vrignaud went on to discuss in more detail the Xbox 360 player
profile, which applies to all eventualities, offline and online,
Player-specific data kept in this individual profile includes preferred
game settings, the user's Xbox Live user ID, guide options, game
language, and access privileges restricting games by age rating or
restricting some online chat capabilities - Microsoft are keen to give
parents the opportunity to control what a child Xbox 360 user might be
able to access, since potentially harmful options such as voice and
eventually video chat will be made available for the console.
As
well as these more general options, one of the most interesting
elements of the Xbox 360 player profile is its title-specific data,
which is created and managed by an individual game, and includes
achievements, in which the game decides what in-game elements are worth
rewarding, as well as points allocated for completing each achievement.
These achievements will be viewable on the player's own machine, but
also over Xbox Live and on the Web, and those playing will be able to
compare achievements with their friends.
There
will be a minimum of 5 'achievements' per game title, set by the
creators of that game, but if desired, the developer can set up to 50
achievements. Since a gamer will have an overall cumulative score over
all the games that he plays, each achievement can have a score
associated with it, up to a total of 1,000 points for the game. He told
attendees that Xbox 360 developers can also hold back points from the
1,000 total if they want to associate some with downloadable content or
updates, but those points must be tied to accomplishments within the
updates - it's not possible to simply give people points for buying
extra content! Developers will use part of a special XLAST (Xbox
Authoring and Submissions Tool) program to define the achievements and
make sure the right achievement and point flags are passed to Microsoft.
In
addition, Vrignaud also noted that the default Xbox 360 setting was for
a default profile signed in at the console's boot, but players can roam
with their profile, most easily by taking a memory unit or removable
hard drive to a friend's house. The concept of a universal profile for
offline and online gameplay does mean that developers will need to
monitor a little more carefully, however, since players can press the
Guide button. at any time Under these circumstances, the game needs to
be aware of the possibility that the gamer might sign out of his
profile at any point during gameplay. In a best-case scenario, it was
suggested, perhaps the game could be adjusted accordingly, working out
the new number and state of players if in a multiplayer conflict. But
in worst-case scenarios, especially if the player is hosting a
multiplayer game, the title may need to return to the main game menu
and cease its current hosting.
Finally,
Vrignaud explained the broad, optional settings attached to a gamer
profile which all games will monitor. These include difficulty levels,
Y-axis inversion setting, preferred car transmission type (automatic or
manual), and a handful of other extremely common game settings. There
is then a requirement that game, on its first boot, checks those
optional settings, so if the player always uses FPSes with inverted
controls, he will never have to reset it in individual game cases - a
welcome innovation for many.
Pay Attention, Game!
In
the next section of the discussion, Vrignaud informed on exactly what
game developers would have to worry about when interfacing with the
memory-resident Xbox 360 Guide and low-level functionality. For a
start, the system informs the game of relevant events, somewhat like
Windows messages, but the game can process notifications in the game
loop, and can decide what to do with them, in some cases.
However,
many messages need to be communicated directly to the player - for
example, online invitations to play, or controller removal. However, to
stop the pop-up message potentially completely blocking gameplay, the
game is permitted to adjust the screen position that the message pops
up into, by picking a location in a 3x3 grid making up the screen - top
right, bottom left, middle right, or so on. In addition, the game can
delay notifications during cutscenes for up to 2 minutes, under special
circumstances, so as to not break up the game's immersiveness
excessively.
Vrignaud
also revealed that, if an invitation to play another game was accepted,
this can happen at game startup for cross-game invites - in other
words, if you were playing Game X, and you get an invitation to play
Game Y and boot that game up instead, you don't have to accept the
invitation again on booting Game Y - a good move for ease of use.
Friend Or Foe?
Following
this, some discussion was entered into regarding the invite and
player/friend multiplayer-related aspects of Xbox Live 360. In
particular, it was noted that the guide includes sections for a friend
list, friend requests, and game invites - a game will receive accepted
invitations as system notifications, as mentioned previously.
|
|

|
 |
 |
 |
The next generation of Xbox Live.
|
In
the Xbox 360's online modes, the Guide makes a clear distinction
between friends (who the user will have specifically added), and
players (which the user can also see lists of, as maintained by guide,
but are not given friend privileges.) Interestingly, Xbox 360 users who
play games online must be able to directly submit feedback on players
after a session - Vrignaud noted that this feedback/review system very
important for effective matchmaking, and will help give all players a
better idea of who to play if they're not already friends with them.
An
additional help inter-related to this is the fact that, when playing
against other gamers on Xbox Live for the 360, players will be able to
self-rate themselves as one of four main user types, including
'Competitive' and 'Social', so even when picking random opponents, Xbox
360 Live will be able to choose from other gamers who want broadly
similar types of foes, from the hardcore to the casual. In all
multiplayer games, there will be 4 required modes that branch out from
this, as follows: Quick: profile match; Quick: ranked match; Optimatch:
profile match; Optimatch: ranked match. Obviously, the
Optimatch-related profiles will take advantage of this matching by
'play style'.
One
final point on interactions with friends and the network - each game
can have one or two game-specific 'verbs', which are inserted into the
list of actions you can do a particular friend, and help with custom
actions when you're playing that game. These 'verbs' are only available
when playing that game, are set by that game, appear within the Guide,
and could encompass options such as 'invite to clan' for MMO titles.
On Rich Presence
Toward
the end of his talk, Vrignaud spoke a little on Microsoft's concept of
'rich presence' for the Xbox 360, in terms of the player's status being
displayed to everyone on the Xbox Live network. Obviously, IM software
can have a number of complex states apart from a user simply being
offline and online, and Microsoft is keen to give the idea that all
players are part of a living, breathing network by broadcasting more
information on their whereabouts.
To
this end, obvious information about the current/last-known status of
player will be available to all and displayed on friends list,
notifications, and on the Xbox.com website. Some portions of this will
be automatically maintained by Microsoft, including online status,
current game being played, and the time that the user was last seen
playing. However, some portions require work in-game by developers,
with strings to be defined by the game creators in the XLAST tool.
This
is particularly interesting because even single-player games may feed
information on the state of play up to the network, should they desire
(and if the Xbox 360's Ethernet connection is plugged in). So, with 2
lines of 22 characters each, developers can present a succinct state of
the game to external sources - the example given was for a baseball
game: 'Red vs. Cubs, 5-3, Bottom 8th'.
Vrignaud
suggested that this could become a great advertisement for the game,
and urged developers to consider details including level names,
creature names, special mode names and other teasers to get other
players intrigued about the game that their friend was playing.
Shopping In The Marketplace
Next,
the lecture discussed Marketplace, which is essentially the player's
download shop and manager for additional content. Vrignaud explained
that, when people started selling content for the first version of the
Xbox, it was easy to do simply using a program called Downloader, but
didn't present much of a sophisticated shopfront, and the low scale and
other difficulties meant games couldn't really charge much under $5 for
new content.
However,
the Xbox 360 Marketplace is clearly designed to deal with massive
amount of items, and those that cost much less than $5. It was
explained that an Xbox 360 game can determine the total number of
content items. You see just that game's marketplace if you enter it
from that particular game - so there won't be a mass of extraneous
things to buy unrelated to the title you're currently playing. But if
you enter the Marketplace from the Xbox 360 Dashboard, you can see
demos, trailers, downloadable Arcade titles, and the full gamut of
shops with digital content to purchase.
Compulsory Game Features?
Finally,
Vrignaud touched a little on some of the necessities for developers
creating for the next-gen Xbox. He noted the compulsory requirement
that all Xbox 360 titles must be 720p (1280 x 720) or above, and must
also feature16.9 (widescreen) modes, as well as anti-aliasing (2x, 4x,
or software based). He also noted a minimum 15 frames per second
requirement at all times, partly in order for Microsoft-authored
features such as the Guide to function properly.
Touching
on Xbox 360 storage, it was pointed out that the storage medium is
abstracted, so games will need to chose between multiple resources, but
it shouldn't necessarily presume what that resource is. Nestled in here
was perhaps a hint that Microsoft may eventually have a
network-resident Xbox Live storage unit to store Xbox 360-related data,
but all that is currently being said is that the system "automatically
handles future devices".
In
addition, it was pointed out that the Xbox 360 music player allows
players to choose their own music, effectively a 'free' jukebox for all
games, and supporting the music player is compulsory. Game developers
will need to flag background music with XACT or XAudio, and it will be
removed and replaced with music stored elsewhere if gamers choose that
option. Vrignaud acknowledged that many soundtracks are extremely
game-specific, but indicated that Microsoft wanted to give gamers
choice - he pointed out that they could turn down the volume and play
music from another audio source if they wanted to anyhow, and this was
a more elegant solution.
There
will also be high-score and other ranked leaderboards for every title
on Xbox 360 - the statistics have been designed to be displayed on web,
so it's easier for publishers to display them on their own site with
nifty syndication methods. Here, the speaker pointed out that
developers can now call the write function as often as you want for
writing scores/info to the network, but the actual write takes place at
the end of the session - apparently this had been a possible issue with
Xbox Live titles in the past.
Voice
is required for all multiplayer titles on Xbox 360, but this is not
significantly different from Xbox rules. However, '1-1 Quick Chat'
options are also available in the Guide, and so developers need to
reserve 8kb/s up/down bandwidth for these conversations, which take
place separately of any voice going on in the current multiplayer game.
The 'Quick Chat' option will automatically mute other in-game voice. On
the subject of muting, it was also noted that players can mute others
in recent player list, and mute is persistent across titles in Xbox
360, so any annoying players can't hound you in different games. Each
Xbox 360 multiplayer game needs to query against the mute list, and is
notified when the list changes.
|
|
 |
 |
 |
 |
Some examples of Xbox 360 faceplates.
|
Conclusion
When
ending the talk, Vrignaud also took a couple of questions from the
audience on esoteric topics, revealing that, though the Xbox 360 has a
virtual keyboard, it does also support USB keyboards. More
interestingly, a question from an audience member on the security for
Xbox 360 in terms of 'mod chips' and other devices that modify for
imported/illegal content prompted a reply that Microsoft took 2 and a
half years on security this time round, whereas the Xbox only had
around a year. Vrignaud prompted: "Never say never", but he thinks it's
going to be a long time before the Xbox 360 gets modded.
All
in all, this talk was most illuminating, both for developers
considering working on the Xbox 360 and those simply wanting to know a
little bit more about how its relatively revolutionary online console
connectivity will work, and it's clear that, with the amount of effort
Microsoft has put into this system, it's built a formidable base for
future expansion.
______________________________________________________
|