Multiplayer unplayable (netcode?)

I've just tried my first Multiplayer Ashes game with a friend. The results were horrible.

Setup:

Map: Setons

Players: 3 - Me + Friend + Challenging AI

Results: As already mentioned by someone else in the Multiplayer thread the game works fine for a couple of minutes then starts to lag with the message that the other player is slowing down the game. This happens regardless who hosts. Units then start not responding to orders, jump around the map and generally WEIRD things start to happen like dreadnought bays vanishing and more.

 

Reason: The reason for this is rather easy to diagnose if you know what you are looking for. Ashes simply uses ALL of the available upload bandwidth after a couple of minutes. This starts of at a relatively heavy 12 KB/s and goes up to 60KB/s which is the limit my connection can support in the upload direction.

 

This begs the question of who designed that netcode. Its horrible. We have not yet tried to see whether it is the AI which is causing this much traffic or if it is the syncing of the gamestates. If it is the AI then maybe the netcode is not at fault but rather the AI Design. If it is not the AI then we need a fix for this netcode. Soon.

Sorry if this post sounds a bit hostile but I know how bad multiplayer performance can kill a game in its early stages and I do not want this to happen to this game. If there is one thing modders can't fix about a game it is engine details like this.

I wonder if Ashes actually works by syncing the full gamestate all the time in a star topology? In that case you would have to have a very strong server in the center which I think is rather hard for the normal client to handle (upstream wise).

Actually I'm a bit confused about how you do the simulation in this engine. The fact that units can suddenly move lets me think that you're actually diverging from the model of synchronized symthreads for this game (which in and of itself is not a bad thing). It would be interesting from a developers point of view how you are trying to approach the netcode in this game.

96,235 views 37 replies
Reply #1 Top

Its not the AI, that's for sure because i never tried to play a MP against AI
only vs players.

I do think that this happens to a very low number of players.
If not then everyone will bitch about the MP not working.

 

I hope the Dev's can tell us why does this happen and how can we fix it.

Reply #2 Top

Never happened to me but I have only played on a good connection and vs human online. 60KB/s is your max up? You have my sympathy.

Worth trying with AI off, in some RTS games I have played before having AI on does indeed increase load a lot.

Reply #3 Top

Not the AI.  The net code is still being optimized.  That that, mp does require broad band. Half a megabit isn't even close.  for now, I'd recommend you stick to 4 or less players.

Reply #4 Top

Quoting Frogboy, reply 3

Not the AI.  The net code is still being optimized.  That that, mp does require broad band. Half a megabit isn't even close.  for now, I'd recommend you stick to 4 or less players.
End of Frogboy's quote

We had 2-3 Players.

 

What exactly do you mean by broadband? I would assume that 16Mbit Downstream and 1Mbit Upstream which is kind of the norm in Germany (even though fiber and cable access is starting to become more common) would be enough. If you are telling me that 1Mbit Upstream is not enough to play the game in Multiplayer then you are going to lose pretty much everyone that has ADSL or anything similar for MP. I'm not sure if you assume that everyone has cable or fiber optics these days but the reality is far from it. What I have is what you would definitely consider Broadband.

It seems to be that the net requirements are pretty one sided though. I would guess that the server runs the whole simulation and pushes the complete game state to the clients. At least that would explain the huge upstream on the server side and the neglibile upstream on the client side.

Actually looking at the steam hardware survey:

http://store.steampowered.com/hwsurvey

I seriously wonder where you are going to get your multiplayer players from when the main part of players seem to be around 2MBit to 10MBit (I'd guess thats downstream only though) and you say that 1 MBit is not going to cut it (upstream!)

Reply #5 Top

This happens to me when my brother hosts but not when I host the game. Both of us are on a 300+Mbps connection.

Reply #6 Top

50k per second is 400kilobits. That's not broadband or close to it.  

There are plenty of other things that will affect perf.  For instance, the perf of the active host will matter.  

Overall, the net code will continued to be optimized.  But I don't want to set expectations that won't be met, if you top out at 50K per sec upload, then you're going to struggle in 6 player MP games.

We are targeting 20k per second for 6 players by release. But that assumes a consistent 20k per second.

Reply #7 Top

Don't let a player on wireless host. Period.

Reply #8 Top

Like i said in a different post

 

Every-time i get in a MP game it works fine for me only the first 2-3 minutes and then the connection in the game freezes ( Unit Movement, Buildings. ) its like if i loose connection and everything stops and nothing do anything till i get disconnected from it

  • When i create a game and somebody joins, after 2-3 minutes he get disconnected while i keep playing fine.
  • When i join a game, everything work for the first few minutes and i loose connection and get disconnected.

Yes i am on WiFi, because my router is not near the PC

Doing a speed-test, i am getting: Ping: 70 ms ----- Download 10 Mbps ------ Upload 2 Mbps..
is that bad? i don't think so.

So what may be my problem? why i cannot play more than 3-4 minutes of MP game?

Reply #9 Top

Quoting ASADDF, reply 8

Yes i am on WiFi, because my router is not near the PC
End of ASADDF's quote

Have you heard of home plugs? You can connect PCs to the router via electrical plugs. It's great tech which works very well. (I use it myself).

Reply #10 Top

Quoting tatsujb, reply 10

they loose plenty of packets as well.
End of tatsujb's quote

I know several people who use them. They are far superior to wireless normally. If the wiring is old/bad and the distance is a bit far then there can be issues. Works fine for those I know who live in more modern housing. If you are renting and sharing a house/flat then you may not always be allowed to just put wires around the place (although I agree you would be unlucky if flatmates/landlord were against it). You are right that running cables is more ideal though if you can do it. 

Reply #11 Top

You can run cable without damaging walls using those sticky hooks for hanging pictures in the case of a landlord vetoing a proper wiring job.

 

Odds are this performance issue is a dropped packet and the netcode going ape over the missing information.  Even well optimized, long running engines will seriously soak up the bandwidth when there's a connection break and information gets lost, 10 to 20 times the normal usage isn't unusual at all.  For a new engine in alpha/beta it's pretty typical to have them be major hose jobs that eat up insane amounts of bandwidth while failing to reacquire a stable connection until they fix whatever logic hole it is that's making the connections loop or something.

Reply #12 Top

It's easy to test if you have an ethernet cable and/or can move your PC temporarily closer for testing. I also strongly suggest everyone use a public DNS host instead of your ISP's if you aren't already.

 

http://www.online-tech-tips.com/cool-websites/free-dns-server/

Reply #13 Top

Quoting Kazzerigian, reply 13

It's easy to test if you have an ethernet cable and/or can move your PC temporarily closer for testing. I also strongly suggest everyone use a public DNS host instead of your ISP's if you aren't already.

 

http://www.online-tech-tips.com/cool-websites/free-dns-server/
End of Kazzerigian's quote

 

Wifi is currently at a stage where it shouldn't be a source of problems anymore but for me it happens for a pure ethernet connection.

 

A public DNS server is pretty much totally irrelevant with the problems described here. I never saw a reason to use one.

Reply #14 Top

Congested wifi spaces are completely an ongoing problem. And public DNS has been a demonstrable response time upgrade over the years for many ISP customers. I'm glad you're not perceiving these potential issues as problems for you.

Reply #15 Top

Guys wait a sec here, my problem is not the connection at all, i don't have any dropped packet. My connection is good, I only get a max of 10 Mbps down, being wired or not, that my max speed at home right now. ^_^

No one is answering my question here. why i cannot play AOTS more than 3-5 minutes? :maybe:

 

I play Hundreds of online games, Diablo 3, Dota 2, sins, Heroes of the Storm, FAF, COH 2 , Starcraft, and many other games and I never get Disconnected, so i am sure its not my WiFi connection at all, there is something else going on and that's why i am here asking everyone for support, there is some other players that have my same problem.

So is there a way to troubleshoot / fix my disconnections / errors?

 

Reply #16 Top

Quoting Kazzerigian, reply 15

Congested wifi spaces are completely an ongoing problem. And public DNS has been a demonstrable response time upgrade over the years for many ISP customers. I'm glad you're not perceiving these potential issues as problems for you.
End of Kazzerigian's quote

I guess it depends on where you live whether congested wifi is a problem.

Public DNS might be a response time upgrade for websites or things that require hostname resolution but definitely not for IP traffic like everything related to onlinegaming should be (unless you are counting lobby server resolution or stuff like that).

Reply #17 Top

Quoting ASADDF, reply 8

When i create a game and somebody joins, after 2-3 minutes he get disconnected while i keep playing fine.
When i join a game, everything work for the first few minutes and i loose connection and get disconnected.
End of ASADDF's quote

As you can read i can create a game with no problem, but the other player get disconnected after 3 minutes in game.

Quoting tatsujb, reply 17

are you ever host on those games that "disconnect"?
End of tatsujb's quote

When i host the other player get disconnected and when i join a game i do get disconnected.

 

Reply #18 Top

lol in every game?

I do a few games and they do get disconnected every time

Anyway i am gonna try again later.

Reply #19 Top

I finally broke down and bought a copy of Ashes for my son.  Now we are able to play together.  We are both connect to the same router in my house using 1 gig bit connection.  We sit less then 10 feet apart.  In one of the multiplayer games, I saw the messages that said that my son was slowing down the game.  I only noticed this happen once.  This is very strange if the game won't run on a local lan. 

 

 

Reply #20 Top

Its really nice off you play with your son, well done.

Reply #21 Top

What is his system? There are other ways to slow down the game other than internet/LAN issues. 

Reply #22 Top

Quoting Ticktoc, reply 25

What is his system? There are other ways to slow down the game other than internet/LAN issues. 
End of Ticktoc's quote

He has an i5 third generation with a GTX 660ti.  I have the setting let to like low, and he was getting over 30 fps.  I could not see any issues when I watched him play a few matches against the AI as I was explaining things to him.  At this point, I think he maybe better then me.  I just can't concentrate one more then a few things at once.  I hope to get some videos up soon of us playing together.  I am not sure if people would like to see the same game from two different people.  Not sure if that would be interesting or not.

 

 

Reply #23 Top

Yeah, was just wondering if one of the CPUs started to drag on the sim speed if it was slower than the other CPU and a lot was going on. Cool that you can share a hobby like this with your son. Likely most kids will be better than their parents :)

Reply #24 Top

Quoting Zorin1, reply 23

I finally broke down and bought a copy of Ashes for my son.  Now we are able to play together.  We are both connect to the same router in my house using 1 gig bit connection.  We sit less then 10 feet apart.  In one of the multiplayer games, I saw the messages that said that my son was slowing down the game.  I only noticed this happen once.  This is very strange if the game won't run on a local lan. 

 

 
End of Zorin1's quote

 

Slowing down the game doesn't mean it's network related. It often is CPU related.

 

My son slows down our 3 on 3 games here because he's running on a very old Core I7 box.  

 

Right now, host migration isn't in the public builds.  That means, if the host quits, it's over for everyone.   We're working on it.  0.71 did add some dramatic improvements in terms of being forgiving of slow internet connections though.

Reply #25 Top

i get it, i am on a FX8350, i know its old but its 8 cores and i do hope it will get better when DX12 get more optimized

i am an AMD customer, i will wait for the next good processor.