Connect to Steam dedicated server via raw IP?

Hello there,
I am using Steam for multiplayer, so I can easily browse and connect to my dedicated servers using the Steam server browser or my in-game implementation. It is all working good, but recently I started integrating Amazon GameLift, a matchmaking tool by Amazon which hosts my dedicated servers on their EC2 instances. When matchmaking was successful, I get a raw IP and port back, and I now try to connect to it, but “open ip:port” won’t work, neither ClientTravel does. It tries to connect, then the log’s silent for a minute, and then the connection times out. I found out that Unreal connects to Steam servers by using “open steam.”, but I don’t have that ID, only the IP and port.

Is this normal that we can’t connect to a IP when using Steam, or am I just too dumb?

Thank you

Did you find a solution to this?

I found a solution to this. Steam provides the following function: PingServer.
The description:

Queries an individual game servers directly via IP/Port to request an updated ping time and other details from the server.

So using that function on the raw IP and Port (query port though, so in my AWS example, I have to calculate the query port myself) will return me a gameserveritem_t &server in the callback, which contains the steam ID of the server.
Then the game can connect using

open steam.<steamid>

as a console command.

Hey, yea I did, check out the marked solution :slight_smile:

1 Like

Hey

I am currently trying to get a connection to an AWS GameLift hosted dedicated server using steam. I am at this exact point where I try to get the steam owningid from the IP:PORT.

I try to use PingServer, just like you, but I always get the ServerFailedToRespond() callback. As there are no more error messages than that, I am not sure what to do next.
I think I converted my IP to uint32 correctly, but the server just does not to answer my requests.
I can connect to the server using “Open steam.OwningId” when I get the owning id from the AWS Instances Log message, so the ports seem to be ok.

Do you have any more help? Some directions I could go from here?
What do you mean by “I have to calculate the query port myself”?

kind regards,