• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Halo: Master Chief Collection Master Thread | This is it, baby. Hold me.

Status
Not open for further replies.
Are you saying coop is to be left as P2P due to lockstep networking? Could they not be using a sort of virtual host box as the datacentre that just doesn't actually play in the game? Man do I want an article or ViDoc about the networking of multi and coop for MCC.

I'll be coop'ing with others from almost the same suburb/city, not that that helped in the old P2P days of H4 SPOPS, H3 or Reach or ODST. Input latency is the worst.

I do believe (99.9% sure) the whole game, including Co-Op, uses Dedicated Servers. Maybe Stinkles can come in here and confirm?
 

FyreWulff

Member
Are you saying coop is to be left as P2P due to lockstep networking? Could they not be using a sort of virtual host box as the datacentre that just doesn't actually play in the game? Man do I want an article or ViDoc about the networking of multi and coop for MCC.

I'll be coop'ing with others from almost the same suburb/city, not that that helped in the old P2P days of H4 SPOPS, H3 or Reach or ODST. Input latency is the worst.

The way Halo 3, ODST, Reach, 4, and CEA's co-op works (and almost assurdedly Halo 2 A's) is that, to boil it down super simply: all that is networked are your button presses.

To use a metaphor, playing co-op is like everyone taking a hundreds to thousands of miles long controller cord and plugging into the host box.

As far as the simulation is concerned, everyone is playing with controllers plugged into your Xbox. Everything else is controlled by making the AI deterministic, meaning they'll always react the same way to the same set of inputs, so as long as you are kept in lock step (hence the name), you'll always get the same output, and there's no need to ever actually network the AI itself.

The upside to this is the AI can be smarter and react more quickly, and you can have theoretically infinite AI in the session, only limited by RAM and processing power. Doesn't matter if there's 3 AI or 3,000 AI, the network costs are the same - just buttons being passed around. This is why RTSes mostly use lockstep networking.


The downside, as you may know, is for the simulation to stay in lockstep, it needs to not allow any actions to occur until 100% of the boxes agree it happened. So you press JUMP on your box. This tells the host you want to jump. The host tells player 3 and 4 you also want to jump. Once they all know you want to jump, your box is told to press the jump button, and you jump in the same frame on all boxes at the same time. If there's someone with terrible latency in the session, it slows -everyone- down for button inputs. You can't add another box to this, because it's the equivalent of a player standing there and idling in firefight - they're adding another pointless hop for the networking packets.

In regular multiplayer, you may actually jump in completely different frames depend on which film you watch. Multiplayer doesn't wait for all boxes to agree, and a lot of stuff your box doesn't even wait for the -host- to agree you did it, it just does it and hopes the host simulation will line up (it usually does)


This is also why CEA is impressive / breaks a lot in co-op: Halo 1's AI was never made to be deterministic so there's probably a host of hacks (in the programmer sense) laid on top of the simulation to fake determinism. So the client may have worse lag in CEA than ODST because ODST was built for it and optimized to be networked, CEA wasn't at all and can end up in a desync. ODST/H3/Reach/H4 can't desync because they have sanity checks and will end the session.

ALSO this is why the radar app for Waypoint in Reach never worked for Firefight, there's actually no way to tell where the players were on the map networking wise.
 
The way Halo 3, ODST, Reach, 4, and CEA's co-op works (and almost assurdedly Halo 2 A's) is that, to boil it down super simply: all that is networked are your button presses.

To use a metaphor, playing co-op is like everyone taking a hundreds to thousands of miles long controller cord and plugging into the host box.

As far as the simulation is concerned, everyone is playing with controllers plugged into your Xbox. Everything else is controlled by making the AI deterministic, meaning they'll always react the same way to the same set of inputs, so as long as you are kept in lock step (hence the name), you'll always get the same output, and there's no need to ever actually network the AI itself.

The upside to this is the AI can be smarter and react more quickly, and you can have theoretically infinite AI in the session, only limited by RAM and processing power. Doesn't matter if there's 3 AI or 3,000 AI, the network costs are the same - just buttons being passed around. This is why RTSes mostly use lockstep networking.


The downside, as you may know, is for the simulation to stay in lockstep, it needs to not allow any actions to occur until 100% of the boxes agree it happened. So you press JUMP on your box. This tells the host you want to jump. The host tells player 3 and 4 you also want to jump. Once they all know you want to jump, your box is told to press the jump button, and you jump in the same frame on all boxes at the same time. If there's someone with terrible latency in the session, it slows -everyone- down for button inputs. You can't add another box to this, because it's the equivalent of a player standing there and idling in firefight - they're adding another pointless hop for the networking packets.

In regular multiplayer, you may actually jump in completely different frames depend on which film you watch. Multiplayer doesn't wait for all boxes to agree, and a lot of stuff your box doesn't even wait for the -host- to agree you did it, it just does it and hopes the host simulation will line up (it usually does)


This is also why CEA is impressive / breaks a lot in co-op: Halo 1's AI was never made to be deterministic so there's probably a host of hacks (in the programmer sense) laid on top of the simulation to fake determinism. So the client may have worse lag in CEA than ODST because ODST was built for it and optimized to be networked, CEA wasn't at all and can end up in a desync. ODST/H3/Reach/H4 can't desync because they have sanity checks and will end the session.

ALSO this is why the radar app for Waypoint in Reach never worked for Firefight, there's actually no way to tell where the players were on the map networking wise.

Thanks for taking the time, I get all that e.g. GOW3 used async. instead of SPOPS using sync networking (lockstep). I guess I'm curious if they're sticking us with P2P for coop, using a virtual host box at the datacentre or retooling/hacking all the networking for each game specifically.

Given your posts/replies and knowledge of the subject matter it seems dedis for multi and P2P for coop. FFS why can't someone in the event Q&A sessions ever ask a meaningful question...
 

FyreWulff

Member
To add onto that: It's totally possible to make AI async like regular multiplayer. The downside is each AI entity has the bandwidth cost of a regular player, so the bandwidth available to most players alone would have made it impossible to essentially host 40 player games in P2P.

This is why I've said before that I assume Halo 5 will be all dedis, all the time - you'll need Azure instances to host co-op if you want to eliminate button latency. It would also allow drop in co-op and Firefight, which is technically possible in lockstep but not feasible on 360/One due to MS regs and home internet connection limitations. And since I'm assuming all multiplayer will be on dedis, might as well use that power for campaign co-op and Firefight.
 
To add onto that: It's totally possible to make AI async like regular multiplayer. The downside is each AI entity has the bandwidth cost of a regular player, so the bandwidth available to most players alone would have made it impossible to essentially host 40 player games in P2P.

This is why I've said before that I assume Halo 5 will be all dedis, all the time - you'll need Azure instances to host co-op if you want to eliminate button latency. It would also allow drop in co-op and Firefight, which is technically possible in lockstep but not feasible on 360/One due to MS regs and home internet connection limitations. And since I'm assuming all multiplayer will be on dedis, might as well use that power for campaign co-op and Firefight.

And some call me a shill for loving the X1 cloud/dedis :) MCC dedis and H5 Azure can't get here soon enough. 10+ long years of P2P, it hurts just typing that.
 

Kssio_Aug

Member
Thanks FyreWulff for all that explanation! =)
However, it seems I wont be able to play decent online co-op with those results:
3683490258.png

Am I right? Maybe just at the same state (province)?
 

Pop

Member
Thanks FyreWulff for all that explanation! =)
However, it seems I wont be able to play decent online co-op with those results:
3683490258.png

Am I right? Maybe just at the same state (province)?

Those are solid numbers. Totally fine to do anything
 

Kssio_Aug

Member
huh? these are great results...

Those are solid numbers. Totally fine to do anything

I believe my downlaod rate is fune, and my ping is ok too. But my upload rate is quite low! So I may be able to play competitive multiplayer just fine, but the co-op, given all that "effort" that is required, I think my upload rate may struggle a bit.

I'm not really sure cause I dont understant much of this stuff, but I guess that it may need a decent upload speed to send all that data to the other players and reduce the input lag.
 

HTupolev

Member
This is also why CEA is impressive / breaks a lot in co-op: Halo 1's AI was never made to be deterministic so there's probably a host of hacks (in the programmer sense) laid on top of the simulation to fake determinism. So the client may have worse lag in CEA than ODST because ODST was built for it and optimized to be networked, CEA wasn't at all and can end up in a desync.
Perhaps the most noticeable difference is that CEA synchronizes everything.

If there's some variable that isn't necessary to the simulation, it's possible to allow the player to affect it without waiting for a response. In particular, campaign mode in 3/ODST/Reach/4 seems to not care much about a player's viewing orientation; not only do these games allow your looking to be immediate, they even interestingly let you look around when the network (and therefore also the game) is totally frozen (or at least Halo 3 has that oddity, can't remember about the others).
 

Pop

Member
I don't know, I had a 50/5 connection for CEA and the lag was still pretty bad even when I was playing with someone in town.

Hopefully the new connection will help:


I run with a 40dL and 4uL connection for years now. I've had no problems with anything.
 

Kssio_Aug

Member
I don't know, I had a 50/5 connection for CEA and the lag was still pretty bad even when I was playing with someone in town.

Hopefully the new connection will help:


LOL
When I see this stuff I cry remembering that on Brazil they just cut your upload speed by 10% of your contracted download speed. I hate it! T-T
 
I believe my downlaod rate is fune, and my ping is ok too. But my upload rate is quite low! So I may be able to play competitive multiplayer just fine, but the co-op, given all that "effort" that is required, I think my upload rate may struggle a bit.

I'm not really sure cause I dont understant much of this stuff, but I guess that it may need a decent upload speed to send all that data to the other players and reduce the input lag.
Upload speeds are always much lower than download speeds. It's normal.
 
I don't know, I had a 50/5 connection for CEA and the lag was still pretty bad even when I was playing with someone in town.

Hopefully the new connection will help:


Christ, dat upload rate...

I never have too big an issue with MP, but I doubt I can handle co-op as well.

 

Kssio_Aug

Member
Upload speeds are always much lower than download speeds. It's normal.

Well, then I hope I can find and experience some good coop! Sadly I dont have any friend that lives near me who has a Xbox One to play some coop, so I'm relying on it!

Hope that at least Halo 5 plays perfectly at this side! =)

Excited about Halo MCC anyway (my 1st time playing Halo ever)!
 
Well, then I hope I can find and experience some good coop experience! Sadly I dont have any friend that lives near me who has a Xbox One to play some coop, so I'm relying on it!

Hope that at least Halo 5 plays perfectly at this side! =)

Excited about Halo MCC anyway (my 1st time playing Halo ever)!

Hope you enjoy it as much as the rest of us!
 

FyreWulff

Member
Perhaps the most noticeable difference is that CEA synchronizes everything.

If there's some variable that isn't necessary to the simulation, it's possible to allow the player to affect it without waiting for a response. In particular, campaign mode in 3/ODST/Reach/4 seems to not care much about a player's viewing orientation; not only do these games allow your looking to be immediate, they even interestingly let you look around when the network (and therefore also the game) is totally frozen (or at least Halo 3 has that oddity, can't remember about the others).

They do. I think the player orientation is networked separately. Movement isn't though, it's definitely in the input queue.

CEA I can damn near desync whenever I want to. Had it so bad once that my friend and I were at completely different ends of the levels on our own boxes but riding each other's Scorpion on the other person's box. It wouldn't even reset him when I restarted the level. He had to play by looking at my stream, lol
 

Kssio_Aug

Member
Hope you enjoy it as much as the rest of us!

Thank you! I hope so too! =)
I cant lose the opportunity of trying this collection. Was always curious about the franchise, and never played since I have never owned a Xbox before. So this collection is huge for my expectations! But I'm more interested on coop then competitive multiplayer, so I'm really hoping to be able to have some fun with it online!
 

Freeser

Member
I run with a 40dL and 4uL connection for years now. I've had no problems with anything.

Yeah ping is much more important in alleviating multiplayer lag as long as you have sufficient bandwidth. The last connection I was on had ping rates from 40-70ms so I think that had a lot to do with the MP lag that I saw in CEA. Man, I'm counting the days for MCC it's gonna be awesome.
 

BeforeU

Oft hope is born when all is forlorn.
I really don't think you guys understand upload speeds.

I know right? What are these people smoking. I used to play with 0.5mbps upload speed. Yes when I am in party, I used to get discounted sometimes. And now I have 5mbps. Its more than enough for playing online. And I never had issue with it.

And I see here people complaining about 11mbps. Are you guys high?
 

Kssio_Aug

Member
I know right? What are these people smoking. I used to play with 0.5mbps upload speed. Yes when I am in party, I used to get discounted sometimes. And now I have 5mbps. Its more than enough for playing online. And I never had issue with it.

And I see here people complaining about 11mbps. Are you guys high?

For the standard multiplayer experience (competitive) it may be fine really, I think most of peoples doubts are related to the coop. But just the time will tell I guess!
 

Freeser

Member
I really don't think you guys understand upload speeds.

Yeah upload means little to nothing with dedicated servers. I just wish I had that connection back in the day for H2. I never got to experience a good host BR. Anything over 10mpbs down and a good ping should give you a smooth playing experience on XBone with dedicated servers.
 
I know there are bigger dicks that are probably going to come swinging through here but until then:

3683872947.png

This is the site most Swedes use to test their speeds. The first number is download and the second is upload.
bredbandskollenbjsgy.png


Let's just say there's a reason behind me not giving a shit about file sizes for next-gen games.
 
I know there are bigger dicks that are probably going to come swinging through here but until then:

SNIP
Let's just say there's a reason behind me not giving a shit about file sizes for next-gen games.

I don't like you or your fancy pants connection :)

I think your closest Azure datacenter is Netherlands, some 1,200kms away from Sweden mate. Should be quite solid dedis/connection for you and your Halo /jealousy.
 

Pfhunkie

Member
After all these years, why am I still hoping Halo 3 PC will be announced today? The logical part of my brain is telling me to stop yet there's always a little part of me going "It's happening!" So much psychological damage, Microsoft. </3
 
Status
Not open for further replies.
Top Bottom