I am currently developing a MOBA/RTS style game with an authoritative networking structure. Of course, the server needs to send a big number of packets every second, answering requests from the clients. The packets are split into commands and states. Commands contain all the actions a unit has performed since the last send-procedure, and states include the position and rotation data about a unit. Commands are sent over TCP because they need to be in the right order and reliable for synchronized gameplay, individually to every client, states over UDP through a multicast group that consists out of the player clients because I interpolate, and a lost packet will not create any damage then.

Today i came across the RDM socket type, selectable through the C# Socket constructor, and I thought that this maybe is what I really want? My TCP connections currently do not make use of the seamless streaming of bytes as I wrap my data into packets and send them in constant intervalls. is the RDM socket type what I want? Having reliable connection-less packets send over PGM sounds really promising to me.

  • 1
    \$\begingroup\$ I've not heard of it. Which means you do not want it. Also UDP packets, you can put your own note in them that tells the clients if one was missed, it seems like you've gotten the gist \$\endgroup\$ – Alec Teal Sep 28 '15 at 19:29
  • \$\begingroup\$ That is true, but before reinventing the wheel I better ask. \$\endgroup\$ – Doctor Niklas Sep 28 '15 at 19:33
  • \$\begingroup\$ When it comes to systems programming I'd say "yes, sure - consider it" but games. No. Build what you need. \$\endgroup\$ – Alec Teal Sep 28 '15 at 19:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.