Xbox Live == user hosted?

zurich

Kendoka
Veteran
ACK~!

Interesting read over at Voodoo Extreme with some emails posted from Digital Extreme employees.

http://www.ve3d.com/comments.taf?postID=30790

Basically, it seems that not all games are run off of the XBL server farm. Infact, most are going to be user hosted, which is fine for football games and the like, but terrible for FPSs (RTCW-Xbox will be 8 players max).

Here's the e-mail exchange between the VE guy and Digital Extremes regarding Unreal Championship and XBL.

-----Original Message-----
From: BadMsgQ@digitalextremes.com [mailto:BadMsgQ@digitalextremes.com] On Behalf Of Aaron
Sent: Friday, September 27, 2002 6:21 PM
To: info@digitalextremes.com
Subject: [info] Question about UC, are we serving? {01}


have a question for you... It has come to my recent attention that most Xbox games
are NOT going to be actually "served" on MS's servers. I've read that only MMORPGs
are going to be actually hosted by MS, and that other games are going to be left to
be hosted by Xbox users.

My question is: Is that how UC is going to work? My guess is .. yes..

Now.. What I want to know is.. isn't the AVERAGE cable or DSL connection
only going to support a 4-8 player game?

Currently an FPS game requires at least 5000bytes/player to truly be a good
broadband FPS game... so a 16 player game needs AT LEAST a 640kbit
connection to host smoothly... realistically most users Upstream bandwidth
is around 256kbits.. enough for MAYBE an 8 player game.

SO.. Is MS going to be providing the servers or are MOST UC servers going
to be hosted on 256kbit or lower connections.. meaning that MOST games
are going to be 4-8 player MAX?

Or.. or you guys lowering the bytes-per player requirement? Doesn't that
compromise the quality of the game? XBL is supposed to be about a broadband
gaming service, and to truly take advantage of this an Unreal based game
needs to have AT LEAST 5000 bytes/sec as the player data rate. Am I off
base here or am I correct?

Also, is it a dedicated server? How is it that a UT2k3 server for instance running
16 players DEDICATED can hog over 100mb of RAM but an XBox server
is going to run when people are PLAYING the game on the server?

PLEASE answer my question, this has been part of an ongoing debate about
XBL and I think gamers deserve the answer. If MS is hosting the servers,
than this point is moot.. but I am under the impression (despite preview
reports) that XBox users will be left to host games.

Thanks,
Aaron

And the reply:

We use around 3500 bytes per player and there will be some UC servers at higher bandwidths. The majority of the servers will be user created though.

You will be able to run the game in dedicated server mode. We have done tons of memory optimizations on UC so it runs well within 64 megs.

James

More questions:

Interesting, only 3500 bytes per player? So despite the fact that XBL is supposed to be a broadband only service you have lowerd the player's bytes/sec. to more of a 56k-like experience? I'm assuming that UC's netcode isn't any more or less efficient than UT2k3 for instance, which, according to Epic is ideally set AT LEAST at a 5000bytes/sec. per player setting. What about voice data? Is that included in the 3500 bytes/player?

Even at 3500 bytes/player that STILL means someone is going to need at least a 448kbit upstream bandwidth to support 16 players (if each player is alone on their XBox). That is IF the voice data is included in that 3500 bytes/sec. If voice data is more, than we are back at square one. Considering a LOT of people out there are capped at 128kbits/sec that could pose a problem.

One more question: If 4 players are on the same XBox, does this lighten the load for the server machine? Basically, when people are playing from the same XBox don't they only cause 1 players worth of load on the servers upstream bandwidth? That would make it much easier to host a game if more people are sharing XBox's... BUT.. this might also cause aggrivation for those who don't happen to have freinds with them.... I'm forseeing a lot of "get kicked unless you bring 3 or 4" servers...

Thanks for yout time,
Aaron

Final reply:

-------------------------
It's not optimized for a 56k experience. We need it optimized for the very reason you pointed out... that we need a maximum number of players on a DSL server.

Voice data is peer to peer so it does not necessarily take up server bandwidth.

Yes certainly someone trying to host a 16 player game with a 128kbit/s upload stream will notice significant performance slowdown.

Yes, I believe when multiple people are playing from a single Xbox, the datastream is more optimized.

Overall, hopefully there will be a significant number of higher bandwidth servers available.

James

Can't say I'm too thrilled. Alot of people have their upstream capped at verily shitty levels, like 64-128k. I think many of us were under the impression that all of our games would be hosted from the $2billion MS server farm. If thats only for MMORPGs (with a premium), I think it'd be wise to find some space for FPSs in there, because 4-8 player DM is not going to win any hardened PC gamers over.

And kind of OT: Supposedly PSO is going to cost $8.95 a month to play it on GC. Think MS will be smart and swallow the cost for that? It's not like we're talking Everquest-style hosting requirements, more like Diablo.

zurich
 
And the real question is:

What's the point of having a $2 billion dollar server farm if you're hosting nothing more than a glorified matching service?

This smells like @#$%.
 
Well for one thing, it didn;'t cost 2 billion dollars for MS to create Xbox live. I really wish people would stop saying that.

Second, as they say, not all games will run from servers. Not all games "need" servers for that matter. however, any updates or upgrades/downloadable content and such will all be hosted by MS.

A lot of people have the wrong idea about the entire service.
 
That just eliminates so many other problems. Not to mention that they included a network card and not a dial up modem.
 
A lot of people have the wrong idea about the entire service

XBox Live is supposed to be Disney Land. Disney Land doesn't make you supply your own bumper cars. Therefore, Xbox Live shouldn't make you host your own servers :)

zurich
 
If Microsoft doesn't want to waste bandwidth on games that don't need an industrial strength host to run properly (sports), fine.

But FPS demand as little lag as possible. Xbox Live should handle hosting duties for any game that might experience problems being hosted from a home modem.
 
Not just lag, but general experience.

What are we gonna have? 6 player Battlefield 1942?

zurich
 
If it's true, it's not acceptable. I mean, MS has been offering something comparable (MSN Gaming Zone) for a couple of years... for FREE. And now they want to charge for something that's basically a game matching service like Battlenet?

That's ok for a 4 player game of FIFA or a real time strategy game or something like that but an FPS? It's safe to assume that the vast majority of "broadband" connections out there are DSL lines and most of them are capped at 64k-256k upstream. That's just not good enough.

Oh, well. FPS suck on consoles, anyway. So I guess it's no big deal.
 
Here's some info from a DE dev:
-It's not my domain to tell you if big bandwidth hosted servers are a 100% certainty... this is something that Xbox and Atari need to work out. Last I've heard this is going to happen.

-Bandwidth. We're hoping that people want to host games and I've been working for several weeks on trimming the bandwidth utilization. When you host, the game will determine what your bandwidth is capable of supporting and limit player counts accordingly. "5000 bytes per player AT LEAST" is very dependent on the context. If you can keep the roundtrips (ping) low and reduce redundant information being sent than 5KBps is not required - likewise if you send tons of information redundantly 5KBps may not be enough! With UC we've put alot of effort into making the packet stream as efficient as possible by removing redundancy (i.e.: if you see a bullet impact, the client implicitly plays the sound, rather than sending a 'playsound' packet). We'll be working on this until the very end. UC is using ~2KB/player right now.

-Voice. Currently our voice data is about 1KBps/player. Voice data is channel based to avoid the packet storm that would result if everyone could hear everyone else. The voice bandwidth usage is very tunable and we've been experimenting with latency/bandwidth tradeoffs (the packet header overhead is significant). There are 4 players in a single channel, and you can easily change channels. Today we're testing a 'must push a button to talk' to see how it plays - this is a good bandwidth optimization because its more consistent than silence detection throttling.

-128-256kbps is exactly what we are testing with. Currently the target is to support 8 players nicely on a decent DSL-based listen server (where the host can play also). If you have a bad-ass connection this could go higher. Again, the goal is to have decent games with reasonable player numbers.

-Multiple players on one Xbox. It merges the bandwidth requirements of the two players, so best case scenario is it uses only ~10% more than a 1 player client. Playing splitscreen multiplayer rocks!
Oh my! UC's networking is definately NOT p2p! It is client/server. Each client replicates its actions to the server, and the server sends the relevant game state to each client.

With the bandwidth you describe I could could see you to hosting a decent 8-10 player game (not a guarentee!) with channel-based voice, and joining even larger games with ease. I'm certain the network performance should surpass your past experiences with console netplay...

Servers will NOT be denying access based on number of split screen players.
Link
If the game gets choppy just find another one. Pretty simple.
 
Guys, you are blowing this completely out of proportion.

This is nothing more than an extension of the way DirectPlay works in DirectX. You can choose several network topologies: client-server, peer-to-peer, etc.


It is not the case that every game will be client/server, and it is not the case that every game will be peer to peer. Just like not every game will use UDP or TCP.

Developers will choose, on a per game basis, the most optimal network topology and protocol for the needs of their game.


Microsoft is charging you for several services: the game matching service, hosting client-server games, content downloads, centralized billing, etc. Whatever you think about this, it will be way easier to use and cheaper than having multiple bills and accounts on several publisher-specific networks (EverQuest, Asherons Call, Seganet/Heat, Battlenet, etc etc)
 
DemoCoder,

What some of us are contesting is that MS is having games that should idealy be hosted on XBL servers, hosted by users on DSL lines. Such games would be Unreal Championship, RTCW, etc.

zurich
 
Zurich:

Disney analogy = :D :D :D


Democoder:

Blow out of proportion? Not sure about that really. Remember, XB CPU is a 733 celly, how will that handle running both a game AND act as a server for up to 16 players (assuming good net connection)?

And what about CHEATING? I envision rampant such, with people running some kind of packet filtering software on their PCs that magically makes people either HIT the target they shoot at (clients OR servers) and/or everyone else MISS (server only)...


*G*
 
What some of us are contesting is that MS is having games that should idealy be hosted on XBL servers, hosted by users on DSL lines. Such games would be Unreal Championship, RTCW, etc

It is not MS's fault. MS does not dictate to engine writers how their network architecture should run.

Companies like Blizzard, for example, have an architecture where their servers run game logic and no one can "host" their own game. (without the bnetd clone) However, ID and Epic have always designed their engines with the idea that any user could host his own game, but via the GUI, and via the standalone server. If Blizzard ports Warcraft 3 or Diablo2 to x-box, do you expect them to rewrite all the code to be hosted on XBL servers, or continue to utilize their own BNET servers and just use MS XBL for the single signle on/buddy list functionality?


There is simply no way that MS can demand and force every game to function the way battle.net does or EverQuest, for example. Whether or not Epic creates a battle.net like lobby system is Epic's fault, not MS's.

If MS did try to force everyone into the same network architecture, it would significantly delay the ability of many X-Box publishers to make their games X-Box live aware, since they'd have to redesign their network code to fit into whatever proprietary API MS designs and MS server hardware. I mean, do you know how difficult it would be for MS to force all software developers to upload server code to THEIR servers with MS databases, MS server disk storage, etc? Some people run their server architectures on Linux, some on windows, some on Solaris. MS can not force developers to run their server code on MS's XBL servers.

And how the hell could you debug your server process running on MS's XBL servers? Think of the security nightmare as well of giving developers the ability to log into XBL servers and modify/debug code. It would be a support nightmare for MS as well. Something goes wrong with a server process, it crashes. Who do they call? The game manufacturer or MS XBL? But of course, if the bug is in somebody's DLL or unix network daemon, systems operations will be chaotic trying to figure out responsibility.

Basically, a model where every server process is 100% hosted on XBL servers make's Microsoft into a rack hosting company.

First things first: single sign on, single billing, standardized buddy list and game matching. Allow any network tolopology that developers choose (master server bnetd/everquest style, client/server quake&unreal style, or p2p doom/LAN style)


I predict that Microsoft published games (Halo2, etc) will use code hosted on XBL servers, but third parties will be reduced (for the time being) to hosting their own infrastructure, server processes, etc.

And since most don't want to bear the cost of running such infrastructure, they will push it to the console to be the host ala Quake/Unreal architecture.
 
I have a question: If MS lets the publisher determine what kind of network topology their game is to use, then why is EA reluctant to use XBL?
 
Many reasons:

#1 MS is gatekeeper. Handles billing, relationship with customer.

#2 Pay once, play everything. EA can't get $10/mo from each subscriber, since MS is getting it. Indirect customer relationship reduces revenues. EA would like to charge $10/mo to play on the EA Games Network with EA username/password and billing.

#3 EA is multiplatform. If EA runs their own relationship with customer, they can have single sign on across all 3 platforms. If users log in and get billed through XBL, they have to have a separate special mechanism just for XBL users.

#4 Losing power to MS. Once EA commits to MS, the revenue they will derive from future online enterprises (XB) will be determined by MS market power.

MS can say to EA: "When we had 100,000 subscribers, we used to give you $1 out of the $10 subscriber fee when your games were played. But now that we have 1 million subscribers, and XBL is a "must have", we have decided to only pay you 5 cents out of the subscription fee. If you don't like it, you XB games won't have XBL capability. Too bad MS football and Sega football do as selling points."


In general, no one wants MS as a gatekeeper. The same is true for Microsoft Passport. Do you want Microsoft to be the sole repository for all of your username/password/profile data for every website on the web?

However, consumers in general DO want "Single Sign On" instead of remembering 20 different passwords and getting 20 bills mailed to them every month that they have to pay separately.

A single sign on, and single monthly billing statement is huge consumer demand. It's one reason why many people (believe it or not) like AOL sites. Unfortunately, it's also a good way to enlarge monopoly power.
 
DemoCoder, all of your reasons seem very likely, except this one:

DemoCoder said:
MS can say to EA: "When we had 100,000 subscribers, we used to give you $1 out of the $10 subscriber fee when your games were played. But now that we have 1 million subscribers, and XBL is a "must have", we have decided to only pay you 5 cents out of the subscription fee. If you don't like it, you XB games won't have XBL capability. Too bad MS football and Sega football do as selling points."

I don't think MS gives any of the subscriber fee to the developers, even today. And it's not like MS can't already charge EA different per-game licensing fees than other publishers. Adding Xbox Live to the equation doesn't change anything.

One possible reason you didn't mention is that EA's development teams may have been too busy to add support for Xbox Live! this year. So EA may have chosen to play hardball partially because they couldn't support Xbox Live! in time, anyway.

I think it's really funny how MS, the PC company, is using a console strategy for online support (one size fits all, uniform UI, high quality bar), while Sony and Nintendo are using PC strategies for online support (each game does it differently, you're on your own.)
 
Back
Top