Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice

Question Multiplay Game Server Hosting and Steam (UNREAL ENGINE)

Discussion in 'Game Server Hosting' started by domgamba, Aug 16, 2023.

  1. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15
    Hi,

    I am using Unity's multiplay solution to host my Unreal Engine game.

    I am curious if it is possible to have the dedicate server machine support steam. Currently, players in my game are able to matchmake for other lobbies that are registered through the SteamOnlineSubsystem.

    Do these dedicated machines support steam usage? Or will I be forced to connect players through IP addresses.
     
  2. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15
    For reference, this is the error I am encountering
     

    Attached Files:

  3. danri

    danri

    Unity Technologies

    Joined:
    Jun 21, 2019
    Posts:
    27
    Hello,

    We have run a few tests based on the information you provided, thank you by the way! The problem here appears to be a failure to write to the current working directory of your game server. In theory there is nothing in the Multiplay system that will prevent you from using the SteamOnlineSubsystem. As it says on the UE docs, the steam_appid.txt needs to exist in the CWD - https://docs.unrealengine.com/5.2/en-US/online-subsystem-steam-interface-in-unreal-engine/

    We'll conduct some more investigation to resolve the underlying file permissions problem here.
     
  4. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15
    I appreciate the response!

    I will be uploading a new build with an updated steam_appid file, and I will keep you updated.
     
  5. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15
    I have repackaged my project as a shipping build. I am now receiving an error stating the project does not grant proper permissions to the machine to access to appropriate files.

    I am attaching a screenshot below, and advice is appreciate.
     

    Attached Files:

  6. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15
    My current issue appears to stem from a permissions related problem. I am not too familiar with Linux, however I understand there are ways to grant write permissions to directories. I am unaware of how I can achieve this on the server machine.

    Again, any advice/input is appreciated.
     

    Attached Files:

  7. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15
    Hey, thank you for the reply.

    Thats good to hear, my current issue revolved around permissions restrictions from Linux. I will attach an image of my logs below. It seems as though I need to provide the machine with Read/Write permissions for the project directory, however I am not familiar with how to do that.

    Any advice?
     

    Attached Files:

  8. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15
    I appreciate your help.

    One final question: where would I execute these commands?

    Because the folder structure is being hosted on the Unity Multiplay machines, I am unable to access the terminal of to grant read/write permissions for that machine/user. Is there a way to access the terminal for the Unity server machines?
     
  9. danri

    danri

    Unity Technologies

    Joined:
    Jun 21, 2019
    Posts:
    27
  10. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15
    Thank you for your continued replies/assistance.

    I am attaching a screenshot of a new test. It appears I am still receiving the same error. I even attempted starting a new build configuration and fleet.

    I have also tried providing a pre-made steam_appid.txt file to see if that helps.

    Any further advice/input is appreciated.
     

    Attached Files:

  11. danri

    danri

    Unity Technologies

    Joined:
    Jun 21, 2019
    Posts:
    27
    Hello again,

    Upon further inspection, we can see that while the /game directory now has the correct ownership, the files for your server build (including sub directories) are not writable. A follow up fix will be needed from our side, I will keep you posted with updates.

    In the mean time, the messages shown in your screenshots are only warnings not full errors. So there should not be anything preventing Unreal Engine games from running, this is something we test and validate.

    The events tab on your servers does show that the server is not responding to "query". Query is what Multiplay uses to validate the state of your server and show player numbers in the dashboard - https://docs.unity.com/ugs/en-us/manual/game-server-hosting/manual/concepts/query-protocols. This is an optional feature, so you have two choices here:

    1. Install the Multiplay Unreal SDK in your server build - https://docs.unity.com/ugs/en-us/manual/game-server-hosting/manual/sdk/game-server-sdk-for-unreal

    2. Disable the query protocol in your build configuration, by setting query type to "None" (see attached)

    upload_2023-8-22_9-49-39.png

    At the moment, Multiplay will be killing your server after 120 seconds for not responding to an SQP query
     
  12. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15

    Understood, I have applied and enabled the Unreal Engine SDK and I intend to use the SQP method.

    I have tried looking into the documentation for this, is the Querying done automatically when the plugin is applied? Or is there a function I must call in order to communicate with Unity Multiplay?

    I appreciate your continued help.
     
  13. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15

    I have resolved my issues with SQP. Just looking for the directory permissions now and I should be good to go!
     
  14. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15
  15. danri

    danri

    Unity Technologies

    Joined:
    Jun 21, 2019
    Posts:
    27
    Hello,

    We have a fix for your issue being tested at the moment. I'll come back to you when it is ready.
     
  16. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15
    Awesome thank you so much!
     
  17. danri

    danri

    Unity Technologies

    Joined:
    Jun 21, 2019
    Posts:
    27
    Hello again.

    We have pushed out a fix for the permissions to the /game directory, which should resolve the issue you are seeing with your game server @domgamba.

    Let me know if this works for you.
     
  18. domgamba

    domgamba

    Joined:
    Mar 3, 2022
    Posts:
    15
    thank you so much!

    I am now getting proper communication with the steam online subsystem.

    However, a new problem has presented itself. The error reads "Warning: Steam Dedicated Server API failed to initialize". I have attached a screenshot below of the error.

    In doing some research, I see that this error can arise from not having the proper .so (.dll in windows) files, or having these files be outdated.

    Any feedback is appreciated.

    https://forums.unrealengine.com/t/s...ated-server-api-failed-to-initialize/648650/2
     

    Attached Files: