> If you’re looking for a way to have peer-to-peer multiplayer without setting up your own server, have a look at Steam’s Networking API which also has a Godot integration via GodotSteam, or have a look at the Epic’s NAT P2P API. Both provide NAT hole punching support with relay services as a fallback.<p>Steam used to work this way iirc, but they now always use a relay. This is user friendly, because with normal peer to peer your IP address is given to other players. DDOSing, bringing down Twitch streams, and all sorts of unfun things can result from that. Of course, this does give steam your users' IP addresses.
I’m not familiar with Godot networking primitives in 3.X, but 4.0 contains WebRTC support which, combined with a STUN/TURN server, solves the hole-punching problem. You need to run a signaling backend to pass connection info between the peers, but you’ll probably want to build a messaging service anyway for matchmaking.
This is awesome! As someone new to Godot that wants to learn how to build multiplayer asteroids, should I try to build something standalone or browser based? Do you recommend any tutorials to get started?
The cost of servers these days, you really shouldn't be playing with NAT hole punching except for your own interest/fun.<p>The number of simultaneous players on your little indie game are just not going to cause one medium sized server to break a sweat.