We are making a online multiplayer game and we are having issues when it comes to using ClientTravel when connected to steam. In our game, we are using steam for the overlay and lobbies, but we aren’t using steam sessions. We have a dedicated server. We use Playfab for matchmaking and then send all the players to the correct server, once matched together.
The client successfully get matched with other player, put fail when it tries to travel to the server. I checked that it wasn’t that the client get the wrong IP addresse, but it gets the correct one.
I was able to make the client use the IpNetDriver, but it leads to an error saying that the unique_net_id is incompatible. I tried following the advice from this post (UE4 incompatible_unique_net_id) but it just leads to the server crashing once the players connect.
Could it be that Unreal is designed to not support having the client and dedicated server not use the same online subsystem?
When working with Dedicated servers and using Steam Online Subsystem you need to be careful with the NetDriver that you specify in your DefaultEngine.ini.
The NetDriver is the class that will be responsible for listening and creating connections.
The Ue4 Steam online subsystem documentation page, says for you to add this line piece of code in your DefaultEngine.ini:
In order to be able to use Online Susbsystem Steam Session interface.
If you don’t add it (or remove it), you will be able to use the steam resources (such as the overlay or the authentication) without messing up with the NetDriver, consequently, not messing up with your dedicated server connection.