Get the server IP from online search results?

I search for advertised servers on Steam using:



gameInterface.AddFindOnlineGamesCompleteDelegate(OnServerQueryComplete);
gameInterface.FindOnlineGames(class'UIInteraction'.static.GetPlayerControllerId(0), SearchSetting);


This returns a OnlineGameSearch, which has a Results array which fills with OnlineGameSettings objects (that holds the various data for each of the servers advertising).

I have added the Steam id for the server to these settings objects. However I want to access the server IP (without having to join it).

I know the underlying code has access to it, as I can see them in the log when the game is requesting the server rules from each advertised server, but I’m not sure how to access them from Unrealscript.

Any ideas?

Note: The reason I want this is because I want to create a list of “Verified” servers. I could use their Steam server id, but I think this can change often, whereas the IP’s will be mostly static.

We get the ip using php when the server updates their info to our database of servers. If the server is still up and running(so it does not get removed). Then we send that info back to the join browser in the menu to display the info when the client refreshes his server list. Such as ip, server name and any other game info we need.

It just seems unnecessary to have to advertise the ip and port again, when they are clearly already advertised (as you can see the game client requesting all servers for the game rules by their ip:port). I just don’t know how to access them while querying the online servers in Unrealscript.

I know that I can call GetResolvedConnectString() from the OnlineSub on the server once the game is hosted and then post that with the advertised game settings. It just seems like needless data when it’s already there (somewhere).