Don't want to see articles from a certain category? When logged in, go to your User Settings and adjust your feed in the Content Preferences section where you can block tags!
We do often include affiliate links to earn us some pennies. See more here.

Valve update open source GameNetworkingSockets with P2P connections

By - | Views: 14,659

GameNetworkingSockets is just one in a list of open source projects worked on by Valve developers, and this doesn't even require Steam so developers can use it anywhere.

What is it? A basic transport layer for games, with a long list of features to add networking of some form into your games. It can be easily used with Steam, since it matches up with a lot of the Steamworks SDK but it's entirely standalone so it can be used across stores. The idea is that for Steam you use the SDK, for everywhere else you slot this in.

Today, September 4 they released GameNetworkingSockets 1.2.0 which adds major new features:

  • Added support for peer-to-peer connections.
    • NAT-punched connections, using google webrtc's ICE implementation.
    • Plugin architecture for signaling service.
    • Symmetric connect mode
    • For full details, see
  • Reworked callback mechanism, improving compatibility with Steamworks version.
  • Easier Windows configuration using vcpkg
  • Numerous bugfixes, etc.

With the addition of P2P with NAT punching, it really is become quite a feature filled free and open source networking solution for game developers. Nice work from Valve.

You can find it on GitHub.

Article taken from
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. Find me on Mastodon.
See more from me
The comments on this article are closed.

Purple Library Guy Sep 4, 2020
Who's Nat, and why are they punching him?
bubexel Sep 4, 2020
Quoting: Purple Library GuyWho's Nat, and why are they punching him?
Nat is a system from routers to redirect ports. Punch holing is a technique to connect two pc's without open ports on the NAT. Is a way too fool it usually via UDP port. Both pcs connect to a romete server. Then NAT open a UDP port to the client machine for a outgoing connection. Then both clients start communicate each other via those ports.

The idea is connect two or more players to play together without a game server. One of the players will act as a server

Sorry for my english. Im not the best explaining such things.

Last edited by bubexel on 4 September 2020 at 7:15 pm UTC
Captain_Rage Sep 4, 2020
Thank you, Valve! <3
Phlebiac Sep 4, 2020
Quoting: bubexelSorry for my english

Subtle sarcasm is easy to miss for a non-native speaker.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.