The pros and cons of Lag CompensationJune 25, 2024 Tutorials NetworkingGames that are played over the network inevitably experience a delay, known as network latency or simply latency. As a result, every player is generally shown an outdated game world in real-time games. How outdated the displayed game world is depends on the respective latency. For this reason, the player must take their own latency into consideration in competitive games and, for example, in shooters, take into account not only the distance and bullet speed but also their own latency when aiming, and accordingly aim a little further in the assumed direction of the opponent.
Latency correlates to Server FPSAugust 13, 2023 Misc Godot Engine NetworkingI had already shown in the Tutorial to the World-Server-Login that one can query the so-called packet round trip time (RTT) with an active ENet connection over get_statistic( ENetPacketPeer.PEER_ROUND_TRIP_TIME).
Godot Engine Logo is licensed under CC-BY-4.0 internationalSynchronizing materials with the MultiplayerSynchronizerAugust 5, 2023 Tutorials Godot Engine NetworkingA few days ago there was a discussion in the official Godot Discord server about how to manage to synchronize materials over the network. To understand the problem a bit better, I should perhaps first explain that you cannot transfer every datatype via RPC or MultiplayerSynchronizer over the network, but only scalar datatypes.
Godot Engine Logo is licensed under CC-BY-4.0 internationalInterest Management with MultiplayerSynchronizerJuly 15, 2023 Tutorials Godot Engine NetworkingAfter we were able to gather first experiences with the MultiplayerSynchronizer in the article about Scene Replication, we want to continue to make our experiences with it in this article. In addition to the synchronization interval, the MultiplayerSynchronizer has other configuration options that can be used to do interesting things.
Godot emotes are licensed under CC-BY-4.0 by Yuri SizovDTLS security changes with Godot 4.1July 12, 2023 News Godot Engine NetworkingThere is still one open question from the 6th network tutorial. I had written then about the supported DTLS version: “I couldn’t find out yet which version is used by Godot, but as soon as I know, I will tell you.” And now is the time to share this information with you.
Generated with Stable Diffusion 2.1Scene Replication with Godot 4(.1)July 11, 2023 Tutorials Godot Engine NetworkingFor this article I would like to apologize in advance that the positions of text and images are not always quite coherent. Unfortunately I couldn’t think of a better positioning, but I hope you can cope with it. After the tutorial series, which offers a good basic framework, today’s tutorial is about a topic that you can really see. The example shown here is based on a blog post by Fabio Alessandrelli, one of the main developers for the Godot network functionality. And since I don’t want to just copy everything, here’s how you can also use the techniques shown there when using path-dependent multiplayer APIs.
Generated with Stable Diffusion 2.1Networking tutorial 6: Encrypted connections using DTLSApril 9, 2023 Tutorials Networking-Tutorial Godot Engine Networking SecurityIn the last article we completed the login process. However, before using it in real life, we should first secure our network connections. The least one should do and, if I understand the GDPR correctly, must do, is to transmit user passwords only using encrypted channels on the Internet. Ideally, one extends encrypted communication to the entire infrastructure. So that’s what this article is going to be about: We encrypt the network connections between our servers and clients.
MidjourneyNetworking tutorial 5: Login 3 - world serverMarch 26, 2023 Tutorials Networking-Tutorial Godot Engine NetworkingIn the last article we finished implementing the gateway and authentication server, so that the game client is issued a token for valid credentials. This token should now be used to log in to the world server. Therefore, in this article, we will extend the game client so that it forwards the token to the world server, and then enable the world server to verify the token.
Godot emotes are licensed under CC-BY-4.0 by Yuri SizovNetworking tutorial 4: Login 2 - gateway and authentication serverMarch 12, 2023 Tutorials Networking-Tutorial Godot Engine NetworkingThe source code for this tutorial series can be found in this GitHub repository. The following list shows all articles of this series published so far: Networking tutorial 1: General information and overview Networking tutorial 2: The "walking skeleton" Networking tutorial 3: Login 1 - The game client Networking tutorial 4: Login 2 - gateway and authentication server Networking tutorial 5: Login 3 - world server Networking tutorial 6: Encrypted connections using DTLS In the last article we created the game client to the point where it wants to contact the gateway server with login data.