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 README_P2P.md
- 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.
Who'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
Sorry for my english
Subtle sarcasm is easy to miss for a non-native speaker.
See more from me