Otherland’s developers are in the middle of switching transmission protocols

The worst part of MMO development is when you have to put a great deal of work into something important but fiddly that most of your players aren’t going to understand. Case in point, one of the big things being changed for Otherland’s next update is the network communication standard being used by the game. This is no doubt a large amount of work, and for most people it is completely impenetrable. You don’t know the difference between TCP and UDP; you know that you connect to the wifi on the Internet Box and then you can do what you want to do.

Of course, the post explaining this change does outline why the change is being made and why it’s relevant. In short, UDP (what the game currently uses) often gets put at a lower priority than TCP (what’s being put into the game) which can result in lag and disconnections, so changing it now is a way of heading off more widespread problems later. And you don’t need to know the technical details in full. Just know it’s being worked on, and the end result will be better for players. This is rather important, as it’s part of the rather comprehensive effort to improve and revitalize the game.

Source: Facebook
SHARE THIS ARTICLE
Code of Conduct | Edit Your Profile | Commenting FAQ | Badge Reclamation | Badge Key

LEAVE A COMMENT

1 Comment on "Otherland’s developers are in the middle of switching transmission protocols"

  Subscribe  
newest oldest most liked
Subscribe to:
Reader
Stropp

Hmmm. TCP does have its own problems. TCP is a reliable/ordered protocol which means that if a packet is dropped or received out of order, all later packets are buffered until the missing packet(s) are received. The reliable bit means that if a packet is lost along, it’s resent.

That’s great if you absolutely must have reliable and ordered traffic, but it also means that TCP can lag quite a bit. It’s also a fairly heavy protocol. It’s not fast like UDP that is effectively connection-less and unreliable in the sense that if a packet is dropped bother sender and receiver don’t know about it. The developer has to build this into their own protocol on top of the UDP layer.

Because TCP blocks, it’s necessary to use an async method to manage the connections, like thread pooling. That can also introduce some server overhead because of all the switching. UDP on the other hand can operate on a single thread.

From what I can tell most multiplayer games that handle a lot of traffic rely on UDP and build their own reliability protocols on top of that.

I’m sure they have thought this out, but I wonder how they’re handling these issues.