|
ID33 has an interesting post on the IW official forums describing how to ensure that you can guarantee being the host of any MW2 public game. Thanks to OoEControl for the headsup.
That method is reprinted below. But before we get to the method, let's answer a few questions.
How does MW2 automatically select who is the host?
The MW2
software selects one player in the match to be the host. That player is
selected based on player computer capabilities (it needs to meet certain
requirements). Typically if you have a 2Ghz dual-core or higher,
there's a good chance you meet the host requirements.
Your upload speed is also checked. If you have less than 384K upload capability, you might not be able to host a full standard 9v9 game. It appears that MW2 checks to ensure that at least one player has a 4Mbps ADSL connection for a game to start.
The MW2 host selection
process undoubtedly also checks for other variables, for example, it
might attempt to keep ping-spread low (the difference in pings).
The selection process occurs before the match and the game does not make any of the players DIRECTLY aware they are hosting. To determine whether MW2 has picked you to host...read on.
Why should you try to force MW2 to pick you to host a match?
Unlike any other CoD multiplayer game, MW2 uses local hosting as the sole means for multiplayer play.
Hosting the game on your computer puts you at a very great advantage. You will have the lowest effective ping in the game (approximately ~20ms). It's the host's computer that decides the outcome of every battle, which means that what the host is seeing on his screen is the closest to what the registration algorithm thinks is actually happening.
A week ago I tried an experiment with Whiskey, a renowned CoD gamer from British Columbia. We set up a private match and we played a 1v1 death-match on Rust.
When I hosted (I'm in Toronto) I completely pwned. I had a K/D ratio of three. Yet...when Whiskey tried to host, the tables turned. The host was getting that split second that separates fragger and fragee in FPS. When I was hosting I'd see the enemy's head suddenly pokeout around the corner just long enough for me to blast away, whereas my opponent would see nothing.
The closer the two computers are geographically, the less pronounced this difference.
Does that mean that the host always win because he has the lowest ping. Of course not. Good players will always find a way to win. However, all things being equal, if two opposing players see each other at the same time and decide to fire, chances are the host will be the one doing the tea-bag dance.
Why you should NOT be the host
Hosting essentially makes you de-facto game server and if you are bandwidth limited, it can be a problem. If there are 18 people in a game, the host must upload and receive a significant amount of data.
There's an interesting post here (link) that describes this data transfer volume.
The graph shown in the post (see below) indicates that you are transferring approximately 35 kbps when playing (Domination) and zooms to approximately 300 kbps when hosting.
The results above, measured on consoles, should be similar for PC's.
By the way, just average play (not always hosting...just average play) will typically result in 200-300 Mb/hour bandwidth.
Fraud?
A few weeks ago there were some PC players saying that they were being punished by their IP's for inappropriate bandwidth use (link) and the finger was pointed at game hosting. For example, I game with a player in New York who has a quad-core and a FIOS (fibre-optic) package...he hosts every game. Imagine his bandwidth numbers.
And while we are it, if you read the fine print in your ISP's Terms of Service agreement, you'll undoubtedly see something like this, warning you not to operate a server using your home-account:
"...it is prohibited to operate a server in connection with the Services, including, but not limited to, mail, news, file, gopher, telnet, chat, Web, or host configuration servers, multimedia streamers or multi-user interactive forums"
Does local hosting mean you are operating a server when you host? It sure appears that way. Not only are you serving game files, you are also service VOIP files.
Are you then breaking your agreement with your ISP?
Technically.
But then again so are XBox Live subscribers, so why aren't they being accused of having created a server?
If your ISP does deep-packet inspection of your data they might suspect you of being a server because you are on a PC and you are handling all that traffic. XBox users, on the other hand, are obviously just gaming and most ISP's would never think they are acting as servers.
Having said this, I don't think anyone should have their service terminated or limited by a reasonably knowledgable ISP (a discussion of this can be found here) for hosting a game on a PC, but legally...this might constitute fraud on Acitivision's part.
Let me explain.
In the past, allowing a listen server in CoD still would allow Activision to clear themselves of any accusations that they are forcing you to use the software in violation of your ISP Terms of Service. In games like CoD2, CoD4, you did not have to use the software in listen-server mode, you could use dedicated servers to play
the game; therefore, Activision could not be accused of forcing you to break
your ToS.
Historically, the lack of matchmaking software and the fact that dedis were superior to local-hosting...the PC community took almost exclusively to dedicated servers and the issue of the legality of being a server - never came up.
However, in MW2, Activision has made listen-servers the ONLY way to host a game.
This appears to be a blatant disregard for the ISP's ToS, and may even constitute consumer fraud.
The only time I have seen Activision/IW comment on this was during the Best-Buy chat, when this very same question about breaking your ISP's ToS was asked:
folf: Could the migration of hosting make my isp's service agreement void since I am not supposed to host servers?
Vince Zampella of IW said this:
Vince-IW: No, this is not a permanent server that you are hosting.
Note that there's nothing in my ToS that distinguishes between a permanent and a temporary server.
Bottom line
If you are really paranoid about being a host/server, disconnect when you see all ten bars (explanation).
And now the post from ID33:
How to trick IWnet into making you the host for public games
If any of you are REALLY fed up with poor latency in MW2 using IWnet, there is a way to trick IWnet into making you the host.
Obviously
you NEED a decent upload speed and PC spec for this to work well, and
it is sometimes trial and error. You may on the odd occasion be at the
mercy of IWnet to randomly throw you in a game where your latency is
horrendous. I got fed up with the poor 50ms+ connections (i play on
dedicated servers with an average of 20-30ms, so anything higher than
50ms is unacceptable, hence how i found this)
1. Start game.
2. From multiplayer menu, select play.
3. Select find game.
4. Select ANY game mode you wish to play.
5. Select back to leave lobby, wait until it does it's search for <50ms, when it goes to <60ms select yes.
6. Repeat step 3,4 and 5 (roughly about 3-4 times normally).
7.
You'll get to a stage where it will come up with "matched player", do
NOT leave the lobby at this stage. The lobby will fill fairly fast and
it will say it is waiting / searching for the best host at this point.
8. Play game.
You
might want to edit your config to show 10 ping bars, it's the only way
you'll know for certain you are the host of the game. If you are unsure
of how to do this, follow the link below;
http://bashandslash.com/index.php?optio ... Itemid=111
The
other method is to enable the lagometer in game (not checked, so can't
say for sure it hasn't been taken out of the config_mp file), again
follow the link below.
http://bashandslash.com/boards/viewtopi ... &sk=t&sd=a
NOTE:
This isn't a perfect way of doing this, and does sometimes take trial
and error. You may have to leave a random game or two when IWnet throws
you into ANY game, it simply doesn't check latency period, if it did i
wouldn't have figured this out. As i said, i refuse to accept 50ms+
connections when i pay for a decent PC and internet connection. The key
to this method is being PERSISTENT.
If you want to see this in action (to see how it works) then follow the link below to watch the video.
http://www.xfire.com/video/1d64aa/
Hope it helps some of you.
EDIT: Ideal situation would be for Infinity Ward to actually create:
- A decent lobby system for the P2P backend. One that has a chat window / player list and allows you to host your
own public games (not private IW, PUBLIC) that show up in the lobby,
that other players can join.
- Would be even better if you could
set game type / game rules etc. If you are unsure of what i mean by
this, go play Company of Heroes, Dawn of War, Command and Conquer,
World in Conflict etc.
-
RTS games have used P2P for years, and
have decent lobby systems that are acceptable, MW2 has no lobby system
bar a few odd menus. Really, who designed the GUI for this? It's
outdated. RTS games have had better lobby systems since day one.
Oh, and by the way, no hacks involved in this.
|