Xenithar Posted August 18, 2020 Share Posted August 18, 2020 Netcode change giving issues... OK, so a while back Ark was released on EGS. Somehow, EGS is so screwed up that it required the core netcode to be changed for us on Steam. I would have thought that if I make a program and sell it on any store it just works, but EGS has no match-making or social features, so I assume that was part of it. Either way, we lost raw UDP (this is how the Unreal Engine has worked since 1997) and I assume are now using some kind of Steam TCP setup. Since the loss of UDP players who used to have low latency and zero issues now experience random drops and higher pings. In addition, those of us on gigabit connections now have game freezes while large bases and towns load in as we fly past. I assume this is due to UDP being non-blocking and TCP being blocking. In other words, since TCP guarantees that data will arrive in order and complete, each bit of info about each structure means that, while data is received, we get a slight pause. Normally not noticeable but on an entire village it causes drops from 60fps+ to stutter-town. This started the instant we lost UDP, so I am fairly sure it is related. In addition, we have two or three players that now randomly drop and sometimes cannot reconnect for a while. None of this happened prior to the loss of raw sockets. This has cost one player in particular her items at least once and I seem to recall a second time. Has anybody else noticed much of a change in anything since losing the raw sockets option? Using Steam networking as I understand it encapsulates UDP in TCP to traverse NAT or firewall issues. The raw sockets option allowed a client to speak directly to the server using only UDP, but required the server admin to forward the UDP ports correctly. I believe this is the root cause here. Also, I could care less if the EGS version can use raw sockets. Give me back my raw sockets and simply tell me that, if I use raw sockets, EGS players cannot join my server. I am perfectly fine with that! Nobody I know uses EGS for ANYTHING so my players and I are being restricted for no reason! Link to comment Share on other sites More sharing options...
Xenithar Posted August 20, 2020 Author Share Posted August 20, 2020 Also, since this netcode update we get a LOT of rubber-banding. We never had that, EVER, prior to the update which disabled raw sockets. Link to comment Share on other sites More sharing options...
zero064 Posted August 21, 2020 Share Posted August 21, 2020 I agree -- give us back our raw sockets option. Many of us are on private servers and don't care if Epic users can connect. Link to comment Share on other sites More sharing options...
DirkInSA Posted August 21, 2020 Share Posted August 21, 2020 I agree!! (I speak under correction - but I think the big difference between raw sockets and steam is that raw sockets talk directly between the server and client. With steam there is periodic connections to steam server to "verify" the server client validity) Link to comment Share on other sites More sharing options...
Xenithar Posted August 26, 2020 Author Share Posted August 26, 2020 You are correct. To get around NAT (firewall) Steam forms connections with intermediary servers. When a user wants to connect to your server it takes the client UDP packets and puts them inside TCP packets, sends them to those servers which in turn forwards them through your server tunnel to your server. This means higher latency due to things like TCP resending lost packets and UDP just ignoring them. If one of the intermediary networks is saturated it could slow transmission as well. With raw sockets the client attempts to directly speak to the server in UDP. No ecapsulation, no intermediary crap, and if a UDP packet or two get dropped the game keeps going, it doesn't stop and wait for a resend. Encapsulation has been around forever. Back in the early days of The Internet services like Kali, MPlayer, Heat, WON, and others simply encapsulated IPX packets from games (we used IPX back then) in TCP packets, transported them across the planet, and delivered them to the players you were playing against. The thing is, it always introduces latency and rubber-banding when a TCP packet gets dropped. Always has, always will. Link to comment Share on other sites More sharing options...
Zapha Posted August 26, 2020 Share Posted August 26, 2020 Whatever. Since yesterday I have rubberbanding and freezes half of the time although the player count is roughly the same. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.