Playing Realism Invictus over a VPN with more than two players?

sqwishy

Chieftain
Joined
Jul 27, 2014
Messages
56
I've been trying to set up a game of Realism Invictus with more than two people. We're on steam using the beta branch so it's the gamespy version. We realized pretty quickly that using a direct connect doesn't work with more than two people because, I guess, it server doesn't act like a hub for players to route through.

I set up wireguard as a VPN so we could connect through that. I was hoping that would "just work" because each player can route to each other through the VPN server. But when a third player joins it tries to broadcast some UDP port 2056 which doesn't broadcast. I had a program (socat) on the VPN server listen for those packets and broadcast them to the clients and eventually all three of us could join the lobby; but, when we started the game, nobody could move units, build cities, or take any actions. (I think the chat in-game worked but, now that I think about it, maybe players could only chat with the host and not each other.)

Should that have worked? Did I set up the VPN wrong? Or is there still some GameSpy infrastructure that the game is trying to use even when connecting over direct IP on a layer 3 tunnel like wireguard?

I saw some posts by Lord Parkin mentioning something about GameSpy's NatNeg? https://forums.civfanatics.com/thre...-team-players-use-evolve.531068/post-13377145 Is this for a udp hole-punching kinda thing? Technically, the point of the wireguard vpn is to avoid needing that. Ideally we would be able to see each other on the local area network in-game. But we can't, and I'm not sure why, so that's why I've been trying to use direct connect over the VPN.

I feel like it would be nice to not have to deal with modifying binaries or account creation that comes with the GameSpy replacements that I'm aware of.

Any advice on setting up a game with three or more players over wireguard/a VPN? Or are group multiplayer games these days played using some sort of public GameSpy reimplementation?
 
Or is there still some GameSpy infrastructure that the game is trying to use even when connecting over direct IP on a layer 3 tunnel like wireguard?
Yeah, that's the common understanding. People mostly use Zulan's code hosted on civ.kvali.pro, but there's also an option to use OpenSpy.net
Any advice on setting up a game with three or more players over wireguard/a VPN?
Heh, I'd like to hear that myself... Any particular reason you avoid using Steam version? It works out of the box for 3-4 players.
Ideally we would be able to see each other on the local area network in-game. But we can't, and I'm not sure why
You need to match check sums, including base game. Of course, Direct IP is also a solution.
 
Heh, I'd like to hear that myself... Any particular reason you avoid using Steam version? It works out of the box for 3-4 players.
The manual for Realism Invictus recommends using the steam beta branch/GameSpy version, so my friends suggested that.

But I have played multiplayer RI games in the past on the steam version with no issues. I have experienced issues in other mods using the steam version but I don't know for certain of issues in RI. So it might be worth double checking in the RI thread about if it's really still a concern or not.

Two of my friends tried using openspy and one of them had issues creating an account. Like it wouldn't let them log in or something. I'm not too sure about the details but it seemed more complicated/fragile than it needed to be.

Do you happen to know if the civ.kvali.pro thing is just a broker for NAT traversal or something vs a hub for every connection? I don't want to play with 400ms of latency between players but if it's just for brokering connections then it's not a big deal. It's just when I've come across this it seems there is little information about what it's doing, it's just a link to an exe you can download from a stranger and little explanation. The web site makes it seem like the exe is optional because it's just swapping out gamespy's host/domain names but I thought elsewhere I read something about a public key/certificate being in the exe that needed to be modified too so just changing the hosts file isn't enough? idk
 
Do you happen to know if the civ.kvali.pro thing is just a broker for NAT traversal or something vs a hub for every connection?
It should be this way, as server only gets involved at initial connection and when people reconnect, but I hasn't checked for sure. Code's public at Github.
I thought elsewhere I read something about a public key/certificate being in the exe that needed to be modified too so just changing the hosts file isn't enough?
First time I hear about this. For everyone I know who preferred hosts file it always was enough. If you don't trust an "exe from a stranger", feel free to hex edit the original file, civ.kvali.pro is the server's domain too.
 
I don't know if you'll find that relevant, but we've recently (as in a couple of days ago) had a three-player RI game using ZeroTier One (all players used Steam Civ 4 rolled back to the original version).
 
I don't know if you'll find that relevant, but we've recently (as in a couple of days ago) had a three-player RI game using ZeroTier One (all players used Steam Civ 4 rolled back to the original version).
I'll look into ZeroTier and see if it's easier for those of my friends who don't enjoy fussing with tech issues as much as I do. Do you happen to know if there are known issues playing Realism Invictus on the steam release of civ 4 vs the original/beta branch? Or is it sorta, know knows, just try it and see what happens sorta thing? ^_^
 
I'd assume it's more critical to ensure everyone's version is the same. ZeroTier is relatively hassle-free to set up in my experience, at least for everyone who's not the admin - players just install a client, then join a specific network the admin tells them to, then direct IP connect to a specific IP address the admin tells them to.
 
Back
Top Bottom