The Basics - How online cod games work, some frequently used terminology and often mentioned subjectsContary
to popular belief , playing online on an xbox is not always an "out the
box experience", once you get under the bonnet so to speak what you
basically have is a network device that runs multimedia applications. as
such it can and does at times need a few tweaks here and there. The
long standing argument I have heard from people has always been "why
should I need too" when it comes to optimizing - the simple answer is
you don't but having your game run smoother with a lower ping (also
called latency but will be referred to throughout this post as ping) is a
no brainer if you ask me.
I
Have not gone into actual game mechanics in this version so unless
people actually want explanations of how stuff like lag comp and hit
markers ect work I am skipping that whole can of worms. As with the
previous incarnation of this post please bear in mind where possible
infomation i have given is correct through either verifiing or using my
knowledge of the mechanics and or subjects. I do not work for nor have I
ever been associated with cod dev team but have worked in the game
industry and have a fimly rooted knowelge of networking both for gaming
and in general.
Before
I start getting under the bonnet of the connections I think its always
good to give a short explanation of how stuff actually works and some
frequently used terminology and dispelling a few misconceptions, that
way people have a better understanding of why a certain tweak does what
it does, and what the heck I or others might be talking about. I've
added a pseudo FAQ now to save myself and others constantly having to
repeat the same stuff now you can just direct people here..
The server model.So
all cod games on the xbox use what is called a "listen server", It is
basically another players xbox that "hosts" the game as well as runs the
game for that player so in effect is doing two jobs at once. It differs
from a "dedicated" server which does nothing but host games and
everyone connects to that server. Sometimes you may hear the phrase
"p2p" to describe the connections this is actually incorrect and an
entirely different type of server model where instead of players all
connecting to one "server" they connect to each other and update each
other its a horrible system and causes some freaky wild laggy results
anyone who remembers playing early madden games online will know what I
am referring to here as they actually used proper p2p . There has always
been a argument for dedicated servers in Cod personaly they bring
their own sets of problems. I am sure there will be numerous posts made
in the coming months about this very issue so I will not spend time on
it here.
Game data, traffic and ping.All
the information sent to and from the host/players is sent by UDP
packets, the speed at which you send and receive these packets is what
determines your "ping" , ping is the one of the most important aspect of
online play quite simply the lower the ping, the smoother and more
enjoyable your game will be. Nearly all the following tips and hints are
designed to lower your ping and equally to make sure that data is
flowing to and from your xbox in the best way it can. One important
aspect of your ping is it isnt just determined by your distance to a
host which I will cover in this next bit.
click here to go back to index
[b]The Interwebz... how it routes data badly and why your bandwidth shouldn't be read as speed. [/b]
The InterwebzWhen
Al Gore invented the internet (tis true I read it on the internet)
everything was basically free and full of unicorns and rainbows, and no
one really cared what went where and how, unfortunately this all changed
when big business moved in and noticed people would pay to watch a cat
play the keyboard, and successfully managed to sell old rope online.
Nowadays the buzzword for the internet is net neutrality where the aim
is for everything to be treated equally unfortunately in the real world
it isnt, Isps treat UDP packets as second class traffic and give
precedence to TCP/IP traffic which is what the main parts of the
internet work by. Some isps especially in the uk wrongly treat game
traffic as p2p torrent traffic and it falls foul of the isps measures to
stem the use of torrents on their network. there are numerous things
nowadays that mess up gaming online. Stuff like traffic management
policies that are designed to keep an isps data flowing at peak uage
times as classic example of this all this adds to how your data is now
routed through the internet.
Routing of game trafficWhen
your send data from your pc to the host or vice versa, its goes from
your xbox, through your home network, to the isp's dns servers (think
satnav or that guy you asked directions from when you finally admitted
you were lost and pulled over) then through the XLSP gateway (which is
xbl's own little routing and verification stop off) then to the host (or
in some games cases the dedicated servers) and/or to the games own
servers that sit behind the xlps gateway. These game servers in the case
of cod are where the stats, the devs own system diagnostic wizardary,
and soon to be live elite servers sit. The time it takes to whizz
through all this is what we term "ping", it is dependant on many factors
not all data travels by the fastest path as the internet like a road
system has bottle necks, broken paths and traffic jams. Data hops
between faster fibre optic lines and slower adsl lines, through various
and servers before it reaches the required place. Another good point to
remember even with the recent cern discovery (to be verified) it means
there is a finite speed at which data can theoretically travel across
the net which in turn means regardless of anything else there will come a
point where regardless of what you do or tweak you ping cannot get any
lower.
Speed and bandwidth Internet
speed is a very popular misconception, and the numbers you get quoted
by your isp always confuse people as the isps wrongly refer to these
numbers as speed, when in fact it is bandwidth. Your data still travels
at the same "speed" what increases when you pay more for your internet
and get a "faster" package is the amount of data you can down/upload at
the same time. for example if you upgraded from a 1mb to 10mb connection
and downloaded a file yes you would receive it approx 10 times faster
but thats not because you are getting it faster, it is because you are
getting more of it in one go. This is an important fact to remember .I
will add though Fibre optic cable is obviously faster than the old
fashion copper wire based adsl connections (unless you live in the UK or
Ireland where pikeys keep knicking all the copper cabling). Although
fibre optic uses light the data does NOT travel at the speed of light ,
it actually travels at apporx 60% of the speed of light due to the light
bouncing off the inside of the cables and a few other more geeky
reasons like air, and light travels slower thru glass to give you a
rough idea this means you will never be able to ping lower than between
70-80ms from new york to London for example with a direct connection
based on the speed of light once you add the variables that slow the
data down a more real world number is closer to 120ms.
When
it comes to what bandwitdh you need to play online it may surprise you
to know the absolute min suggested by microsoft is 512k down, 256k up ,
obviously this isnt going to give you a great expereince but it gives
you an indication of what the architecture was designed for, As a rule
of thumb your everyday run of the mill basic adsl is more than adequate.
the only exception of this is if you want to get host, if so the more
upload speed you have the better expereince players connecting you will
have.
One
comment I see alot on game forums especially in regards to cod is the
"netcode" is years old, this is basically correct for the most part ,
There is a good reason for this though as things haven't changed for
years. Internet protocols were developed at a time when connections were
dial up and bandwidth was tiny, and even a good few years afterwards
even something as basic as an isdn home connection was considered fast.
As such even though we are now have super fast fibre optic connections
that send data hurtling around the world at nearly the speed of light...
the decades old protocols and the same packet sizes used back in the
late 80's are still used today so running a game off years old netcode
doesn't matter. Netcode doesnt just cover the way data is handled though
but for the proposes of reference in forum posts and my description
here thats the part i dealt with before the semantic pointer outters
arrive.
click here to go back to index
So Thats the basics covered so now onto the bit you probably actually came here to read.
Tips, tricks and hints to optimize your connection and pwn noobs like a leet pro First
off one big huge mahoosive disclaimer, any tweaks suggested should only
be done if you feel confident and understand the whats and wherefores,
and more importantly how to reverse them. I have listed them by most
likely to achieve a positive result and also by complexity. So basically
the further down the list you get the more technical they become. I am
not guaranteeing any or all of these will work but they have all been
tested and proven to help some people to some degree when playing
online.
The
first tip is RTFM!, no I am not intentionally being sarcastic
(although maybe just a little bit), but it never ceases to amaze me how
many people don't take the time to read the
proper manual that came with their equipment
. Most people read the quick start paper guide that was loose in the box and
never realise on that disk you never looked at is usually a proper full
manual usually saved as a .pdf file.
Batton down the mainsail we're heading into Port Ports
are basically little gateways in your network that allows data through,
they also control the infamous open/moderate/strict NAT part of xbl. So
should always be your first step in setting up an xbox. Two things to
remember at this point, there are set ports that control and are used by
xbl which allow matchmaking and chat for example to function
correctly, and extra ports that are specific to certain games.One of
the biggest debates i've seen on gaming forums is the "throw it into the
dmz to open the NAT" IN my opinion this is not advisable at all without
going into a huge diatribe, routers have firewalls for a reason,
putting your xbox the wrong side of that protection is a bad idea. Most
times I've found people who are having Nat issues usually say something
like "i tried to forward the ports and it didnt work" , Protip
restarting your xbox and router/modem can do magical things once you
port forward. i am sure even without checking there is already a few dmz
threads lurking on these new forums so be warned.
At present we
do not know the port numbers for mw3 so until they are released and I
can update this part thats all on the game port parts.