x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Steam install on Mac fails to open descriptor file

When I try to launch my game from Steam on Mac (packaged and uploaded, then installed via Steam), it immediately gives this "Failed to open descriptor file ../../../steamapps/GardenWars.uproject" error and fails to load.

descriptorfile

It launches fine if I just run the packaged app directly (before uploading to Steam). It also works fine on Windows when installed via Steam.

I've found several other "Failed to open descriptor file" threads but they're mostly old and I'm not sure how to apply any of the suggested solutions to a Steam installation.

It's a compiled project, from the Github 4.13 release. I built Development Editor directly on the Mac, then packaged the game via the editor, using shipping/distribution. The app does launch no problem after being packaged... but I have no idea why a shipping packaged app starts looking for this uproject file once it's been uploaded?

Product Version: UE 4.13
Tags:
descriptorfile.png (345.0 kB)
more ▼

asked Nov 01 '16 at 07:38 AM in Packaging & Deployment

avatar image

Spoondog
397 12 21 35

avatar image Steve Hardister ♦♦ STAFF Nov 01 '16 at 05:48 PM

Hi Spoondog,

Did you see this note on the following docs page, Online Subsystem Steam:

Contrary to Windows, Steam Overlay on Mac requires game to be launched using Steam client. For this you first need to add the game to your library using "Add a Non-Steam Game to My Library" option from Steam's Games menu.

Did you do this on your Mac?

Let me know,

Steve H.

avatar image Spoondog Nov 01 '16 at 06:47 PM

Steve,

This is not about the Steam overlay - the packaged/shipping game fails to start after being uploaded to Steamworks.

The exact same packaged build launches fine before uploading to Steam (i.e. using the "Add a Non-Steam Game to My Library" option).

avatar image Steve Hardister ♦♦ STAFF Nov 01 '16 at 08:21 PM

This is how I am testing. Please verify that this is the same way you are producing the error:

  1. In UE4.13, Package for Mac

  2. Add .exe to Steamworks Library using the "Add a Non-Steam Game to My Library" option

  3. Launch Game from Steamworks Library

Is this the point you are getting the error? Have you tested this with a blank Third Person Blueprint project?

Lastly, on another AnswerHub post where they were experiencing this same error on a PC, they resolved this by adding a blank C++ element. While I was hesitant to suggest this since you are on a Mac, since your building from GitHub in the first place, this should not be difficult. Simply add a blank C++ actor in one of your folders in your Content Browser and compile. Then package for shipping.

Try this and let me know if it does not resolve your issue:

Reference: Failed to open descriptor file error

avatar image Spoondog Nov 02 '16 at 05:48 AM

"Please verify that this is the same way you are producing the error".

This is not the way I'm producing the error - if I launch using those steps, it works fine. I am past that stage now and trying to actually release the game by uploading it to Steamworks (as in, uploading to my depot at partner.steamgames.com, then installing it via the Library in the Steam Client, then launching it as a customer would). When run this way, the game gives this error.

I did already have a blank C++ class but I went ahead and generated another one anyway as you describe, and compiled + packaged for shipping (with full rebuild enabled just in case). Unfortunately the error still occurs.

I haven't tried building without a pak file yet or ticking random project settings (just hoping I'd get lucky for some reason and it'll work). I was also going to try inject the uproject into the packaged app and give it a uproject launch parameter manually, but that seems like a long shot too.

Is there a programmer that could shed some light on why it's specifically looking in ../../../steamapps/ for the uproject file?

avatar image Spoondog Nov 02 '16 at 08:43 PM

Does the manifest in a packaged Mac app matter? If I inspect the packaged app contents, the name of the app and executable are different to what the manifest says:

Manifest:

 GardenWars-Mac-Shipping.app
 GardenWars-Mac-Shipping.app\Contents\Info.plist
 GardenWars-Mac-Shipping.app\Contents\MacOS\GardenWars-Mac-Shipping
 GardenWars-Mac-Shipping.app\Contents\MacOS\libogg.dylib
 GardenWars-Mac-Shipping.app\Contents\MacOS\libsteam_api.dylib
 GardenWars-Mac-Shipping.app\Contents\MacOS\libvorbis.dylib
 GardenWars-Mac-Shipping.app\Contents\UE4\GardenWars\Content\Paks\GardenWars-MacNoEditor.pak
 etc..

Actual filenames:

 GardenWars.app
 GardenWars.app\Contents\Info.plist
 GardenWars.app\Contents\MacOS\GardenWars
 GardenWars.app\Contents\MacOS\libogg.dylib
 GardenWars.app\Contents\MacOS\libsteam_api.dylib
 GardenWars.app\Contents\MacOS\libvorbis.dylib
 GardenWars.app\Contents\UE4\GardenWars\Content\Paks\GardenWars-MacNoEditor.pak
 etc..

I'm guessing the manifest isn't really used, since the packaged app runs fine before uploading to the Steam server, but thought it worth a mention.

avatar image NaturalPanic STAFF Nov 02 '16 at 08:42 PM

Can you compare the behavior if you run the game from steam UI (causes the error you describe) to launching the installed game directly from the steam folder on your system (skipping steam UI)?

avatar image Spoondog Nov 02 '16 at 08:46 PM

Hi - yes it appears to happen exactly the same (descriptor file error pops up immediately).

avatar image Spoondog Nov 02 '16 at 09:53 PM

Small update - I tried a couple of easy things as a test:

  1. Deleting the depot on Steamworks and re-uploading (in case it was corrupt or something). No change.

  2. Added the uproject file into the packaged app, and put the path to it directly in the steam launch arguments - it does find the uproject file after that, but it just exits silently (I have logging enabled in shipping which normally works but it doesn't seem to write to a log when launched from steam... at least not anywhere that I can find it. I'm guessing it doesn't get a chance to write it since it exits so quick).

EDIT: I tried a "clean" in Xcode, removed intermediate/saved and built the engine/project from clean again. No joy. I also tried renaming the app and executable to GardenWars-Mac-Shipping (as they are named in the manifest attached above), but still without any luck.

I'm happy to PM you a passworded build (and give you Steam dev access to the game if necessary).

avatar image Spoondog Nov 03 '16 at 09:29 PM

After reading around some more I have a feeling it's a file permissions thing - I'm going to try and upload it using Steamcmd from a Mac rather than using the Steampipe GUI tool on Windows.

avatar image NaturalPanic STAFF Nov 03 '16 at 10:39 PM

Hi Spoondog,

Thanks for the update, hopefully Steamcmd resolves your issue and we begin looking at why. I'm continuing to investigate as well, and will let you know when I find something.

Cheers,

Jonathan

avatar image Spoondog Nov 03 '16 at 11:26 PM

Here's the info I got from Valve:

Sounds like file permission/symlink issues. Windows doesn't support Unix-style permissions or symlinks, so there won't be any when you upload from Windows. Uploading from Mac should solve it, but if you tend to upload from Windows mostly, you might consider running a script that will apply permissions during installation. See https://steamcommunity.com/groups/steamworks/discussions/0/340412122413479784/#c340412122418671842 (link requires steam partner access)

avatar image Spoondog Nov 03 '16 at 11:57 PM

I'm also not able to get the Steam overlay showing on Mac, which seems to be the only thing blocking release - there's an existing thread about it here:

https://answers.unrealengine.com/questions/264695/steam-gets-initialized-but-overlay-not-working-mac.html

(and https://answers.unrealengine.com/questions/393834/steam-integration-on-osx-broken-after-49-update.html)

...don't suppose there's any progress that can be reported on that?

avatar image NaturalPanic STAFF Nov 07 '16 at 04:24 PM

I've updated the thread you linked with the up-to-date state of where we are with this issue.

(comments are locked)
10|2000 characters needed characters left

1 answer: sort voted first

The problem was uploading it the build to Steam from Windows - it screws with the packaged app, something to do with file permissions.

I fixed it by uploading from a Mac using the osx version of Steamcmd that comes with the sdk. This might be worth adding to the UE4 Steam docs perhaps.

Apparently you can still use Windows to upload if you do this ContentPrep stuff, but it looked a hornet's nest to me so uploading from a Mac is OK for now.

more ▼

answered Nov 03 '16 at 11:03 PM

avatar image

Spoondog
397 12 21 35

(comments are locked)
10|2000 characters needed characters left
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question