General Category > AI War II - Multiplayer & Variants


<< < (2/3) > >>

Ideally you'd only use the IP address for people you know.
The way I imagine handling an IRC-type "hub" would be that clicking on someone's name would fire off the "direct connect to IP" automatically and not show the user's IP address.

Still, having the IP address shown on the game's UI would be a boon due to the number of times I've had to look up my own even when playing with friends (because it changes regularly).  And of course, means that the game isn't reliant on Steamworks.

As I recall, NAT punch-through was listed in the design doc as a "maybe". That's pretty much the main barrier to entry when people try to connect to each other. As I (and many others) have said before, most people are not going to be going out to IRC or whatever, typing LFG AIW to get a pick up group to play a sixteen hour game.

It's a maybe, but a strong one.  It's only a maybe because I don't want to commit to a new technology until I actually fully vet it.  Personally I feel 99.9% that will be an okay thing, but from a professional standpoint I am in no way going to guarantee that, and I've been wrong before (many times).  I won't fully trust it is possible from a professional sense until I see it working. ;)

As a counter point here - the old fashioned IP connecting multi-player was something of a selling point to me. Mainly as I have had bad experiences of more advanced systems not working for me at all. This is not to say I do not support more ways for people to connect and play the game. However please do leave the dumb old system in, if you can.

I know, this topic is kinda old but there's no point in creating a new one. From my experience, there's a nice and standardized way to establish a P2P multiplayer session via STUN. It could be done wrong though. Dying Light implemented it so bad that we had to connect to the game in a specific order to be able to play or a player was kicked instantly. It has nothing to do with STUN itself though, just a bad game protocol implementation, reported lots of time, no answer.

In PAYDAY 2 they used the same scheme and it works flawlessly as long as we played. It's not hard to implement, really, there are tons of libraries out there and you can rely on existing servers across the Internet + setup your own. You'd also not be locked to specific ports, they could and should be chosen randomly. Players won't need to forward ports on their routers. Even two (or more) players each behind an ISP NAT could connect to each other! Only if both are not behind a symmetrical NAT though...

So, if everyone in the party uses Steam, send an external IP:port (obtained via STUN) to the others, they send their address back to the host (if it's possible, I have no experience in Steamworks; if it's not you'd need a master server for that exchange purpose) and you're all set. If some use the DRM-free version, you'll need a master server that just provides the list of hosted games with IP:port altogether. And if none of this works, you could display the user's own external IP:port  so they announce it via any channel be it messenger or a social network or an SMS.

The CPU load and consumed bandwidth on the master server would be negligible anyway.


[0] Message Index

[#] Next page

[*] Previous page

Go to full version