This is something that I've been thinking about quite a bit with regards to the privacy aspect of peer to peer gaming. Sure you can get it setup but unfortunately if you want to host a game on your computer and have people join then this means you have to give out your external I.P address which isn't a very comforting thought for some people who care about privacy.

Are there any modern methods these days of getting around that problem? I'm wondering for example if you could create some kind of peer to peer global list for games created by players and then have them join an ID generated by the game code rather than having their I.P address for all to see.

To simplify what I'm thinking about:

. PlayerHost creates game

. separate ID is created for the I.P address the PlayerHost is using to create the game

. Player1 looks at lists and sees PlayerHost ID but not the I.P address which is hidden

. Player1 joins the game and the client connects to the PlayerHost's I.P address but is unaware of what the I.P address is

It's likely complicated to implement this way but I'm wondering if it's possible because I think that with modern technology now it should absolutely be a thing to be able to create some kind of peer to peer global games list for people to join and create games.

I mean we can do it to a degree for stuff like Bittorrent so why not gaming?

@Lethn said: This is something that I've been thinking about quite a bit with regards to the privacy aspect of peer to peer gaming. Sure you can get it setup but unfortunately if you want to host a game on your computer and have people join then this means you have to give out your external I.P address which isn't a very comforting thought for some people who care about privacy.

Those people should probably consider using dynamic I.P. Though chances are they already are...

It's partly for me as well because I'd like to be able to host a game on my PC rather than waste money on anything fancy for testing :D so could I get my hands on my own I.P address then and have people connect to that? I didn't know that was a thing.

Oh LOL there are services that literally advertise this for gaming, thanks.

a month later

I'm doing a major necro on this post but bear with me mods, I found a tutorial on using hamachi to setup a minecraft server and one thing it does generate an I.P address for you for free. It looks like this may be the best free way to test a peer to peer multiplayer game without giving away your I.P address. Have a server created using the I.P address given by hamachi rather than your own global I.P address that can get DDOS'd by strangers etc.

After you go up more than 5 players etc. then you can of course start scaling it up and paying for more professional hosting.

I just had an extra idea when I was discussing this problem with someone else on another site. What about VPNs does anyone know if it's possible to connect to a VPN I.P address and then to the local host? Or would Godot just blindly try connecting to the VPN server and it wouldn't work?

@Lethn said: I'm doing a major necro on this post but bear with me mods, I found a tutorial on using hamachi to setup a minecraft server and one thing it does generate an I.P address for you for free.

No worries, theres no strict rule against it so long as theres a good reason for it, especially if it's by the OP. :+1:

Godot's high-level multiplayer API uses UDP exclusively, so TCP-only proxy solutions will not work. Also, Hamachi is known to be a lagfest :)

a year later