KervyN
May 19th, 2020, 10:37
Dear Smiteworks,
WARNING: This is not meant to be harsh or in a "I know everything and you failed with your development" rant.
I would like to know why you switched from TCP to UDP.
Yesterday I had some weird issues that would absolutly fit into the "UDP paket got dropped" schema:
* one of my player did not see new entries in the combat tracker but still saw a meanwhile hidden enemy.
* Reconnect did non work until I kick the player because FGU said she was already connected.
* "next actor" button did not work for all of the players.
* rolled dice where sometimes only visible to some players.
* Only 2/5 Players had said issue. I asked them and both were customer by a very cheap ISP known to use CGN.
My Setup:
* I created a LAN game, because the cloud games are really slow currently (no offense).
* I have a hostname (fg.burgomaster.de) which gets and kept updated dynamicly when my gaming system boots.
* I have a monitoring server outside my home network that checks for packet loss via TCP and UDP to my network which recorded ZERO packet loss. (I can not monitor PL to my players)
From my "network administator" point of view, UDP is far behind TCP when you want to keep stuff in sync, because TCP resends packets when the other side does not say it got the packet. UDP is fire and forget. When a packet drops for any reason the sender does not know that the receiver did not get it and the receiver does not know that the sender sent a packet.
As someone mentioned on discord:
Speculi
I'm relatively certain they picked the technology provided by Unity and the networking library which is UDP with additional message resending etc on top. Not uncommon for games. Either use a mix of UDP and TCP, or have a layer on top of UDP for any information that has to be send reliably. UDP just has less overhead than a TCP connection. For FG it shouldn't be something to worry about (TCP performance umplications). They just took the provided technology to build upon...
I haven't read about the network layer in unity, except " QosType.Reliable delivers a message and ensures that the message is delivered, while QosType.Unreliable sends a message faster, but without any checks to ensure it was delivered." (src: https://docs.unity3d.com/Manual/UNetUsingTransport.html)
Maybe it is just an issue with the latest version? Does FGU tell me, when my players connect with an outdated version? I didn't saw something in the chat.
I really really love FG and it makes my DM life sooo....oooo much easier. But when my players have such issues I need to stay with FGC.
WARNING: This is not meant to be harsh or in a "I know everything and you failed with your development" rant.
I would like to know why you switched from TCP to UDP.
Yesterday I had some weird issues that would absolutly fit into the "UDP paket got dropped" schema:
* one of my player did not see new entries in the combat tracker but still saw a meanwhile hidden enemy.
* Reconnect did non work until I kick the player because FGU said she was already connected.
* "next actor" button did not work for all of the players.
* rolled dice where sometimes only visible to some players.
* Only 2/5 Players had said issue. I asked them and both were customer by a very cheap ISP known to use CGN.
My Setup:
* I created a LAN game, because the cloud games are really slow currently (no offense).
* I have a hostname (fg.burgomaster.de) which gets and kept updated dynamicly when my gaming system boots.
* I have a monitoring server outside my home network that checks for packet loss via TCP and UDP to my network which recorded ZERO packet loss. (I can not monitor PL to my players)
From my "network administator" point of view, UDP is far behind TCP when you want to keep stuff in sync, because TCP resends packets when the other side does not say it got the packet. UDP is fire and forget. When a packet drops for any reason the sender does not know that the receiver did not get it and the receiver does not know that the sender sent a packet.
As someone mentioned on discord:
Speculi
I'm relatively certain they picked the technology provided by Unity and the networking library which is UDP with additional message resending etc on top. Not uncommon for games. Either use a mix of UDP and TCP, or have a layer on top of UDP for any information that has to be send reliably. UDP just has less overhead than a TCP connection. For FG it shouldn't be something to worry about (TCP performance umplications). They just took the provided technology to build upon...
I haven't read about the network layer in unity, except " QosType.Reliable delivers a message and ensures that the message is delivered, while QosType.Unreliable sends a message faster, but without any checks to ensure it was delivered." (src: https://docs.unity3d.com/Manual/UNetUsingTransport.html)
Maybe it is just an issue with the latest version? Does FGU tell me, when my players connect with an outdated version? I didn't saw something in the chat.
I really really love FG and it makes my DM life sooo....oooo much easier. But when my players have such issues I need to stay with FGC.