This is great - thanks for posting - I can definitely use Pion in the game I'm working on and it's pretty great that it can compile to wasm and work on the frontend (for the clients)
>Right now, this can only support two players on the same computer
So the example only currently works with 2 clients on the same computer? Seems like a pretty substantial limitation. How much more work is it to support other computers and 2+ clients?
"Server dependence: You need to host or use two different servers (Signaling + STUN/TURN). Can use Google’s STUN, but combining signaling and STUN into one server would be nice."
I'm curious about using Tailscale with this. I don't think you can just do Tailscale Funnel? But maybe you could? Maybe Tailscale Share, and the client has to also be on Tailscale?
So, having talked to people in the WebRTC community about this, you should be able to use WebRTC in a local network without having to connect to STUN/TURN
STUN/TURN matters because if you are connecting to a remote peer, you have no idea how to reach them. STUN/TURN gives you a "map" to get to the remote peer.
If you are on a VPN that doesn't matter very much (see: Hamachi)
Have you looked at Trystero https://oxism.com/trystero to establish the WebRTC connection? I used it on a small PoC last week and it worked well. Thanks to latching on to various decentralized services (Nostr etc) you don’t need your own TURN/STUN server etc.
reply