question

metathias@gmail.com avatar image
metathias@gmail.com asked

Unreal Dedicated Server, Custom game server.

I just recently integrated PlayFab into my Unreal Engine 4 project, My project uses a separate Dedicated server to host the the game level (just 1 at all times) (kind of an action MMO). It was my understanding that the Custom Game Server would be what i would want to use to host my game server, I need the dedicated server because the game runs basically a 24/7 server arena that players can log into at any given time. Im posting here because i've exhausted all avenues i know community, tutorials, github notes, C++ notes, examples, plugins, every .cpp, and .h i can think of to find out more, And theres not much to go on *really nothing* when it comes to working with UE4 dedicated servers.

 

This brings me to my questions.

1. How do i package unreal dedicated server to be upload able to the custom       game service

2. Is it possible to actually do what im attempting?

3. Is there any plans to allow dedicated unreal engine servers to be built and       uploaded to the custom game server service.

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 answered

We currently have developers using Unreal servers in our service, so yes, this is absolutely supported.

The way to do this is to create a build in Unreal which has the headless server as the target, and then package that, along with any other files it needs, in a Zip, which you upload to our service for hosting. All the info on how to do this is in our tutorial, here: https://api.playfab.com/docs/custom-game-servers/.

I believe your goal is achievable, though I think there are aspects of the implementation we should probably discuss 1-on-1. The way custom game servers work in PlayFab is that a game server executable runs as a game server instance, while instances run on a game server host - which is an EC2 server. We run as many servers as needed to make sure that you'll always have available capacity for users looking to join a game, based on the minimum available instances setting you define.

So, the way this would work is that a player looking to join a game would either be directed to an instance which has enough capacity for another user, or else a new instance would be started. And if the creation of that instance means that there's now less than the minimum available instance level you've set, we start spinning up a new host server in EC2.

This allows you to always have capacity available 24/7 for players. To be clear, for any non-trivial player base, a single server cannot host all players, so the key is to determine what information is needed when a server starts. "Full" MMOs require extremely deep database integration, in order to synchronize that information across all servers. But this is where I think we need to define your needs more closely - and for that, we do realize you need privacy concerning your design. Please feel free to email us the specifics of your service architecture to devrel@playfab.com, and we can work with you on the plan for how best to approach it.

10 |1200

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

metathias@gmail.com avatar image
metathias@gmail.com answered

Hey Brandon Thanks for the quick reply. I have poored over the  information given at https://api.playfab.com/docs/custom-game-servers/  quite a few times, uploading my dedicated server executable and necessary files as many different ways as i can. My dedicated server has been tested extensively with regular ip connections, I've put the mandatory things asked for in my engine (in blueprint, But not in GameLevel (I put my API stuff in the GameInstance, Is that not ok?)). The .exe is built by Unrealengine, Its a WindowsServer build, The executable will actually load without any surrounding files, And runs just fine, If i try to upload the .exe by itself to the server it uploads just fine, But i get an invalidpackage error, If i zip it up it just stop at 10% and acts like nothing just happened. Having some sort of example package would be nice, or more specifics, If i can manage to get it working, I'd be happy to submit a sample simple template unreal dedicated server project, and maybe the final built package that for sure runs on the custom game server. So everyone can see a working example top to bottom.

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 answered

We have an example custom game server written in Unity, which you can use as the basis for how to put together your zip file - the source and instructions are here: https://playfab.com/blog/a-free-playfab-custom-game-server/.

If you're still having issues, can you post your zip to a dropbox-type site (or your own ftp) and send a link to us at devrel@playfab.com? We can have a look, to see what the issue is.

10 |1200

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

Michael Berlin avatar image
Michael Berlin answered

@Brendan I'm looking to do a similar execution as this other user, and the pages you reference are no longer available. Is there a new protocol to follow to achieve this result? If so would you be able to point me in the right direction?

Thanks

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.

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.