question

Garrett Fleenor avatar image
Garrett Fleenor asked

Unable to connect to Unreal Server

I've got a server build uploaded and running (I think, the panel says it's running), but I'm unable to connect.

I Matchmake(), receive a IP, port, and auth token, but when I attempt to connect to that, the connection just times out. When I test it locally and on a remote server of my own, I am able to connect just fine.

I'm running Unreal Engine and the Blueprint SDK. I believe I have everything set up just fine, but I'm not sure if it is.

These are my command line Parameters:

/Game/Maps/ThirdPersonExampleMap -PORT=<server_host_port> -game_id=<game_id> -game_mode=<game_mode> -game_build_version=<game_build_version> -title_secret_key=<title_secret_key> -ABSLOG=<log_file_path>
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Garrett Fleenor avatar image
Garrett Fleenor answered

For whomever finds this question by searching: The issue is that UE4.15 automatically links to the Vulkan SDK if you have it installed on the server you build your server executable with. The PlayFab servers don't have the Vulkan runtime installed, thus causing the server to crash on initialization.

I uninstalled the Vulkan SDK from my build server and it's working just fine now.

1 comment
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

brendan avatar image brendan commented ·

So everyone has this info, another developer ran into a similar issue with log files not being written to the correct folder. In their case, it was due to missing external DLLs - so, one other thing you could check if you run into this.

0 Likes 0 ·
brendan avatar image
brendan answered

What logging do you have enabled on the server right now? When you call Matchmake, we pass back the specifics on the server the client should connect to, but we can't control how the client then attempts to make that connection. Can you confirm that the server is listening on the correct port? What does the server hear on that port? If it's nothing, can you get a wireshark capture on the client side to see what it's attempting?

4 comments
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Garrett Fleenor avatar image Garrett Fleenor commented ·

I have no ability to see what is going on with the server. It doesn't seem to be responding to anything. As for server logs, I'm not getting any. As you can see, I pass the ABSLOG parameter into server (as indicated in the documentation), but it's not returning logs to me. It's a black box at this point.

As for connecting to the client, I used the UE 'Open' command, passing in the IP and Port. I tested this on both a server running locally on my own machine and a server running on a small AWS instance I was running, using similar command line arguments as the PlayFab server. Both connected fine. Trying to connect to the server running on the PlayFab service timed out.

Is it possible to attach a remote debugger to the server? Or maybe rdp into it? Either of those things would do wonders toward helping me figure out what is going on with it.

0 Likes 0 ·
brendan avatar image brendan Garrett Fleenor commented ·

Unfortunately, we can't expose direct access to servers in our EC2, as that would require a different security model, to ensure that you could only access the servers running your game builds. What Title ID is this for, and what are the specifics of the parameters you're passing into the Matchmake call, and the response info you get back?

0 Likes 0 ·
Garrett Fleenor avatar image Garrett Fleenor brendan commented ·

My Title ID is 1EA3.

My Request to matchmake is this:

Request: {
    "BuildVersion": "a1",
    "Region": "USCentral",
    "GameMode": "Social",
    "LobbyId": null,
    "StatisticName": null,
    "CharacterId": null,
    "StartNewIfNoneFound": true
}

and an example response looks like this:

{
	"code": 200,
	"status": "OK",
	"data": {
		"LobbyID": "18269869128587243421",
		"ServerHostname": "54.86.230.153",
		"ServerPort": 9000,
		"Ticket": "C71F5B0C913FD77B-0-72942534063BE722-1EA3-8D491A1B4942E9B-6910CAAA0D27A1DF.67AFFDB95CD34D77",
		"Expires": "2017-05-02T21:27:07.1454875Z",
		"Status": "Complete"
	}
}

I have tested setting the port of my server in both of my configurations to 9000 and connected to that with the same 'open' parameters ('open ip:port') and it works.

Also, I just noticed that all of my "archived games" are all very short (around 10 seconds each). I wonder if that is relevant.

0 Likes 0 ·
Show more comments

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.