Welcome to Xiled Gaming
Wanting to join the rest of our members? Feel free to sign up today.
Sign Up Now

HOST LOBBIES VS. MATCHMAKING

XGC-ArticAngel

Forum Nerd
Dec 12, 2006
73
1
0
Idaho
In the online gaming world there are normally two ways to game online. One is hosting games manually. when you host a game you pick the game variants {At least some of em"} and how many rounds, deaths ECT. Afer your done with the setup your game gets launched into the community and you wait for players to join.There are many games that use this system. Gears of War, LOTR 2 BFME, and many more.

The other type is match making. In matchaking you choose a gametype and sometimes a map thenyour immediatly joined by other players and everything else is preset for you. many games use this as well. the biggest one being halo 2 but also saints row, and ost computer games.
they both have pro's and con's.
in manual hosting your certain who's host. but it sucks waiting for players sometimes.
in matchmaking its faster to get players BUT host is random.

wat do u guys think?
 

Xx Mr Bill xX

Forum Junkie
Dec 10, 2006
513
3
0
35
Cleveland, OH
www.coldfusionlc.com
Personally, I think that dedicated servers are the best possible way to to do online gaming. There are some disadvantages, but the gameplay experience improves by a lot.

The problem with this is that they are expensive to maintain and require frequent maintenance and upgrades in order to keep up with demands. Servers are generally used when there are large amounts of players, it would be inefficient to run that many servers, impractical as well. Another thing is, when one server goes down, usually the problem causes many other servers to go down as well (World of Warcraft type situation).

This eliminates any host advantage however. Also, the only reason there would be lag is because you are running something lower then a 56 K connection. It would be easy to get games because you could choose where you want to go (BF:2) or, you could enter matchmaking and get put onto a random server that hosts a certain gametype. Basically, you would go into team slayer and there would never be any cheaters, lag, host advantage, or many other problems.

Basically, it would cost a lot more, and problems would effect the system as a whole. Also, there could be certain times were you couldn't get on and play because they are "tuning up" the servers. But overall gameplay experience would improve by a lot.

Well, that was longwinded. But if I had to choose between the two you gave, matchmaking by far.
 

XGC Maggnus

Forum Nerd
Dec 11, 2006
76
1
0
40
Louisiana
Before suggesting servers, you have to have a firm grasp of networking. Servers wont fix anything, there will still be a "host" advantage by being the person living in closest proximity to the servers themselves. Servers don't stop cheating, only create different types of cheats, standby is still possible.

Theres more in here.... as posted by One One Seven on bungie.net forums. I hope that you guys read this before replying trying to argue the point.

Networking Guide, Version 1.61
Last updated: 29th January 2007

Welcome to my guide on various things networking. The purpose of this topic is to explain why implementing dedicated servers for Halo 3 is not a viable solution, as well as explaining the problems with Halo 2's network model, why they occur, and what we know that has been done to fix these problems in Halo 3

Index

Before you make suggestions...
The Jargon
Misconceptions about Servers
No latency
No lag
Cost / Financing
No cheating
General Questions
What is the difference between lag and latency?
What causes lag?
What causes latency?
How does Halo 2's model work?
How does Halo 3's model work?
Why wouldn't servers work?
What causes host advantage?
What has been done to fix host advantage?
What has been done to fix standby?
Why can't I grenade jump off host in Halo 2?
Sources
Final Thoughts



Before You Make Suggestions

Ask yourself the following:

Do I understand basic networking?
Do I understand the concepts of lag, latency, host, client, and so on?
Do I understand Halo 2's network model?
Do I understand the problems in Halo 2's model, and why they occur?
Do I understand the reasoning for Halo 2's network model?

If you cannot answer yes to all these questions, you need to go out and do some research (including reading this thead). Without at least knowing these 5 things, you have no hope of suggesting anything sensible nor viable.


The Jargon

Latency - the delay between information being sent, and it arriving at it's destination.
Lag - Poor connectivity due to packet loss, in turn caused by many different factors.
Ping - A measure of latency.


Common Misconceptions About Servers

There's No Latency / No Host Advantage
Whilst no player will have a ping of zero to the server (unlike when hosting), latency will still exist nevertheless, and the xbox with the lowest ping to the server will have the biggest advantage. Depending on where the data centers are located, this advantage may well still be a severe one. Thus servers will not eliminate the problem, but merely reduce the severity.

There's No Lag
Servers can be more reliable, this is true, but this depends on a great many things. Servers can lag, disconnect, and crash, just like any other host. Packets can get lost en route. The data center could have problems. The ISP might have problems. There is still plenty of potential for lag to occur.

"Bungie/Microsoft have lots of money to pay for servers"
Yes and no. Halo 2 was the most played game on Xbox Live. The sheer amount of servers needed would be astronomical. The hardware alone would cost millions (and severely eat into Microsoft/Bungie's coffers). That's not including administration, upkeep, updates, backups, bandwidth, and so on.

Microsoft (which ultimately finances Bungie) does have a lot of cash, but it's home entertainment division is currently in the red to the tune of hundreds of millions of dollars. No company is going to want to spend money needlessly, especially when a division is in a lot of debt, and the performance gains from servers are pretty negligible and very expensive.

"It solves cheating"
I hate to break it to you, but it doesn't. A few networking based cheats may be harder or impossible, but it doesn't remove all cheating. Secondary Standby, Modding, Dummying, Superbouncing, can or could all be done off host, and new cheats that can be performed off host may well be discovered.


General Questions

What's the difference between Lag and Latency?

As explained above, latency is the delay between information being sent and arriving at it's destination. Lag is caused by poor connectivity due to packet loss, which in turn is caused by many factors.

What causes Lag?

To put it mildly, lag, or packet loss, is caused by many things. Network problems anywhere along the lines at both ends (in a consumer's home, with their phone line, ISP, internet backbones, DNS servers, etc). Excess traffic. Routing problems. A huge variety of things, and they can all affect dedicated servers too.

Increased latency does increase the chances of lag, as there is more potential for packet loss, but the two are not synonymous.

What causes Latency?

The biggest factor is the physical distance a packet has to travel. As the fastest speed information can travel is limited to the speed of light, clearly larger distances will result in larger degrees of latency. Other things can affect it too, such as how quickly your connection taps into the main internet backbone, or certain services on phone lines, though these tend to be less of a factor.

How Does Halo 2's Model Work?

Halo 2 uses a distributed networking model, where 1 xbox hosts the game, and all the other xboxes in that game are clients. This requires a little more bandwidth from the xbox hosting the game than if it were connected to a dedicated server.

The host authorises most aspects of the game (notably, the creation and destruction of objects, as well as damage inflicted), and is constantly overruling other players' versions of the game.

How Does Halo 3's Model Work?

Halo 3 will use a similar model to Halo 2, with modifications to allow limited client trust, and to prevent various network attacks.

Why wouldn't servers work?

There is very little to be gained by implementing servers, and it causes more problems than it solves. Cheating would still occur. The costs required for both hardware and bandwidth are also impractical, and with improved netcode, many of the advantages gained can be rendered more or less redundant.

What causes Host Advantage?

Host advantage is a direct result of latency, and how Halo 2's netcode handles it. Halo 2 uses a system where only the host decides what's going on, by processing all the information coming in, to try and make a consistent version of the world. In general, with small degrees of latency, it works reasonably well. The problem is when latency is severe, or the situation is extremely latency sensitive (such as shooting through a narrow gap), which leads to conflicting versions.

When you play the game, and take any action, that gets sent to the host, who then authorises or rejects it based on whether it was possible from the host's perspective, and factoring in error tolerances. For instance it's "I think I just hit that guy in the head", "You did; here's a kill".

So if something couldn't happen on the host's xbox, that information is rejected, even if it legitimately happened on your xbox. Now when the host shoots someone, they are exactly where they appear to be, and so the shot always counts. This is why hosts have an advantage; everything is what it appears to be, and things take effect instantly.

What has been done to help solve host advantage and latency issues with Halo 3?

I'm not going to pretend in any way that I know all the details about the way things are being improved for Halo 3. What I do know however is that Halo 3 has a lot more trust in clients than Halo 2. Providing the latency is below a critical value, any action should complete successfully. Client players fulfilling this criteria will have their shots hit, even if outside the auto aim range or at a range where target leading would be necessary.

In short, providing lag and latency are reasonable, your shots will hit accurately.

What has been done to fix standby and bridging attacks?

The problem here is much harder. Fixing just one host-based attack is useless, as cheaters will move to other means of cheating (such as artificially adding latency or packet loss). Unfortunately, for security reasons, the kind of connectivity/network tests the xbox/360 can do are limited; the only thing that can be looked at is the connectivity between the consoles.

In plain English, this means that the most effective means of solving the problem is detecting the hosts that cheat, and prevent them from hosting in the future. Halo 3 will also include fixes to prevent manipulation of the host from occuring.

Why can't I grenade jump off host in Halo 2?

Forces not being applied to client players is simply the result of a bug in Halo 2, which should be fixed for Halo 3.


Sources:

Many sources, including but not limited to:

Bungie presentations on Halo 2's networking
Correspondance with Chris Butcher -Technical Lead (many thanks Chris!)
My own networking knowledge
Bungie Weekly Updates
Research on Bandwidth and Hardware
Common Sense!


Final Thoughts

Bungie are aware of the problems that occurred with Halo 2. Unfortunately there's a lot of behind the scenes stuff that governs how they can deal with it. A lot of smart people working on reducing and solving these problems (which are no small feat) and certainly they will be better prepared for cheating next time, as well coping with latency.

There you have it, a guide to all these concepts that are so frequently misunderstood. Hopefully you found it informative and useful. All feedback on the guide itself is very welcome.


[Edited on 1/29/2007]
 

XGC Maggnus

Forum Nerd
Dec 11, 2006
76
1
0
40
Louisiana
I've already got a job in Technical Support for the State of Louisiana, unless your place pays more o_O and has hot summers. I didn't write that article but unlike most people I've heard in lobbies and threads on bungie.net, I can understand it.

-Maggnus
 

XGC Maggnus

Forum Nerd
Dec 11, 2006
76
1
0
40
Louisiana
To stay on topic, I'de go with matchmaking. It's easier to let the game pick things for you than having to round up enough people who want to play a custom while at the same time matching skill levels.

-Maggnus