Update: 31st March - code is up.
In a rather helpful move for developers, Valve is about to open source 'GameNetworkingSockets' and it won't require Steam.
You can see the source here on GitHub, including the fact that it will use the 3-Clause BSD license. What's interesting is that since it won't require Steam (they're pretty clear on that), this could possibly help with developers who need multiplayer functionality and end up not doing Linux builds outside of Steam. Given this quote:
The intention is that on PC you can use the Steamworks version, and on other platforms, you can use this version.
It's entirely possible that's exactly what they're hinting at. This is something we've seen lately, with GOG games not having a Linux version due to this very reason like Serious Sam's Bogus Detour and Heroes of Hammerwatch as two quick examples of this, so it's quite exciting to hear about.
Here's what it will feature:
- Connection-oriented protocol (like TCP)
- ... but message-oriented instead of stream-oriented.
- Mix of reliable and unreliable messages
- Messages can be larger than underlying MTU, the protocol performs fragmentation and reassembly, and retransmission for reliable
- Bandwidth estimation based on TFP-friendly rate control (RFC 5348)
- Tools for simulating loss and detailed stats measurement
From what they say on it currently, it's "Coming soon" with the actual GitHub repo being mostly empty for now (insert a joke here about ValveTime). Great to see Valve continue to put more out in the open—good stuff!