Advertisement

"BitTorrent" for Online Game Content Distribution?

Started by February 03, 2005 01:34 PM
6 comments, last by Spoonbender 20 years ago
I've just been wondering about thsi for the past day or two, mainly because of the other threads on distributed models for MMORPGs. Basically, would it lower the load much on a server farm for a MMORPG to do something along the lines of BitTorrent for static content distribution? Static data might be the landscape of the next zone you are walking too, maybe the scripting for a quest you are about to go on, etc. It could also apply to the update cycle at the begginning of most games where the game sits there and downloads all the patches it needs before it starts. The server farm would always act as an original seed, and would always be on, so there would always be at least one source for the data. Whenever clients are on that already have the information the new client needs though, they would use the same kind of protocol as BitTorrent to distribute the load of updating the new client. It would also speed up the updates for players, right? I was thinking that if more of this "static" load is taken off of the server farms connection to the Internet it may be more reactive to the requirements of the dynamic requests that have to do with gameplay. In other words, maybe the more active requests wouldn't make the player "feel" lag as much because they were more available. Or is something like this already done? Good Idea? Bad idea?
Turring Machines are better than C++ any day ^_~
Actually there is an obscure new MMORPG that uses BitTorrent in just the way you describe, you probably haven't heard of it but you can find out a bit about it here.
Advertisement
Quote:
Original post by Michalson
Actually there is an obscure new MMORPG that uses BitTorrent in just the way you describe, you probably haven't heard of it but you can find out a bit about it here.

The sarcasm is just dripping from your quote :-P
Turring Machines are better than C++ any day ^_~
If you kept enough seeds open to ensure that the content would always be availible, and then just use the peers to supplement the download, it could work. That way the player will always get the data they need and you can save a bit on bandwidth whenever there's peers that have the data the client needs. Just get rid of the ratio code in BitTorrent, and have the server check to see if there's enough peers to support the client's download, and if not, have it provide the seed's address. Could also do something similiar to check how fast the client is downloading, and if it's too low, also provide a seed address.
-----BEGIN GEEK CODE BLOCK-----Version: 3.12GCS/M/S d->+(++) s+: a19? C++++ UL++ P+++ L+ !E W+++ N+ o++ K? w!O M-- V? !PS PE Y+ PGP t++ 5+++ X R tv+> b+(++)>+++ DI+++>+++++ D++G e>++++ h! r y?------END GEEK CODE BLOCK------
While many people may not use bit-torrent as such, I know quite a few use the theory behind it. As long as you write your own implimentation then you can package it with comercial software no worries. As Michalson points out World Of Warcraft uses it for their patches/updates (rather than for in-game updates like you suggested), and while I haven't heard about any other games that currently use it I don't expect it to be too long befor they do. Why would you not use this type of tech when customers get their software/content faster and you reduce the load on your server? Really its a win-win situation.
I'd think it might be too unpredictable for use in-game (speeds can vary dramatically, outside the control of your server).

You don't want to force people to wait 10 minutes before they can enter a new area because Bittorrent is a slow starter... ;)

At the very least, you'd need to modify the protocol a bit to ensure a more predictable and reliable performance.

Bittorrent has a tendency in my experience to start our reeeally slow, and only achieve a good speed after at least 10 minutes (Often an hour)

This topic is closed to new replies.

Advertisement