Unreal Engine in multi user environment

jkarpenske
New Contributor III

We're having issues trying to install Unreal Engine in our lab of 25 Macs. I've been searching for a solution but have come up empty handed. I found an unanswered question from someone with the same problem in the Epic Games Launcher community, and I've borrowed his description of the problem, as he explained it better than I could:  

We've installed Epic Games Launcher and Unreal Engine 5.2.1 on all of the Macs. When any other user logs in to use Epic Games Launcher and Unreal Engine, in the Unreal Engine section it asks to install Unreal Engine again, not recognizing that there is already a version installed. When you click Install it tries to install it to the exact same place and throws a ‘Directory must be empty’ error. (Obviously the directory isn’t empty because it already contains Unreal Engine)

Unreal Engine is installed to the default /Users/Shared location, and permissions on the /Users/Shared/Epic Games and /Users/Shared/Unreal Engine folders (and their contents) are set to read/write for everyone.

Has anyone else seen this issue, and if so, how did you resolve it?  Epic Support has not been any help - they told us to talk to Unreal Engine support, which is the community boards, unless you have a support contract.

1 ACCEPTED SOLUTION

PaulHazelden
Valued Contributor

I side step the issue. If it just the Unreal Engine you want, then don't even try and access the Epic Launcher.
The Unreal Engine will work with no account signed in to the Epic Launcher. Just hunt through its folder in Shared and you will find the application itself. I make a short cut to that in the Users/Shared/Unreal Engine folder. Then have the Users run that.
Only time I use the Epic launcher is to update the Unreal engine version.

View solution in original post

12 REPLIES 12

AJPinto
Honored Contributor II

This sounds like a problem with how the application is coded. When the application is checking for the existence of the directory, the if is set to exit and fail if the directory exists rather then to skip and move on. I'm inclined to agree with Epic, this is something Unreal Engine Support needs to address (or whoever made the function that is installing Unreal in the game you are dealing with). However, with the investment of the gaming community on macOS, I doubt you will get very far.

 

From a JAMF side of things, you may be able to set a script to run at login to delete the directory(s) that are being looked for by Unreal Engine and reinstall it every time. If you have an Apple Enterprise Support Agreement, you could possible open a case with apple and see if they could/would coordinate with Epic/Unreal; very unlikely but maybe possible.

jkarpenske
New Contributor III

You're right, it's been tough finding support for this.  Our game design program at the University has been using Unreal Engine for years, but this is the first year we've encountered this issue.

Unfortunately, Unreal Engine is about 18-20 GB in size, so deleting it and redownloading it for each user isn't an option.  By the time it downloads, installs, and verifies, it takes about 20 minutes even on our fast connection.

_gsm
New Contributor III

I've only had to do it on Windows where you need to deploy a manifest from a source machine to each of your targets. It's in ProgramData there. There looks to be a manifest file in ~/Library/Application Support/Epic/Epic Games Launcher/Data/Manifests with an extension .item. Try deploying that to the same directory in your user libraries and make sure to flag the launcher with noselfupdate switch.

jkarpenske
New Contributor III

I found the files you mentioned and tried deploying them to other Macs in the lab using Jamf.  Unfortunately, it didn't seem to make a difference.

PaulHazelden
Valued Contributor

I side step the issue. If it just the Unreal Engine you want, then don't even try and access the Epic Launcher.
The Unreal Engine will work with no account signed in to the Epic Launcher. Just hunt through its folder in Shared and you will find the application itself. I make a short cut to that in the Users/Shared/Unreal Engine folder. Then have the Users run that.
Only time I use the Epic launcher is to update the Unreal engine version.

That may work - I will talk with our faculty members and make sure they only need Unreal Engine, and if that's the case, I'll give your suggestion a try.  

That’s what I was doing before. But doing it this way you can’t add assets to the projects which is an essential part of Unreal. Depends on the context but it wasn’t enough for our tutors.

adrianw82
New Contributor II

Hi, I know this is an old thread but I'm having pretty much the same issues. Does anyone have any ideas? Also, where is the program itself within the Shared/Epic Games folder? I wanted to try and package it in Composer.

Qwheel
Contributor II

Added a note to this post about using pkgchunker to chop up large flat PKG's (Composer produces flat pkgs).

https://community.jamf.com/t5/jamf-pro/unreal-setup-for-lab-environment-compiling-shaders/m-p/269905

I've been having a bash at UE5 myself.

I think I'm up to where most people are up to - files are in the right place but the library isn't detected in Epic Games Launcher. I'm not surprised, the same thing happens on our Windows platform.

I haven't managed to successfully configure the firewall rules either. My normal method doesn't seem to work, and I'm tried many different combinations to stop them coming up. Anyone able to offer some insight on what name/bundle ID to use?
(Coincidentally, we can't stop the fireall prompts on Windows either).

I also have a issue when building lighting - there's an error that comes up. The log that it points you to isn't helpful at all. Wondering if anyone else has any insights there. I know about building the lighting as we have to test this on Windows as there's some %appdata% .exe shenangans that happens that get's blocked by applocker in our environment.

Adding this here incase anyone wants to know how to add an alias to the UE5editor.app, to your Applications folder, via Terminal.
ln -s /Users/Shared/Epic\ Games/UE_5.3/Engine/Binaries/Mac/UnrealEditor.app /Applications;

jpallagrosi
New Contributor II

I found a way of automating this. Please check out my work here https://github.com/jpallagrosi/unrealEpic_multiUser

Basically snap the install of Epic and UE and add the post script unrealEpic_multiUser.sh in the policy.

It will deploy a script and a LaunchAgent. epicManifests_cp.sh will wait until the logged in user launches Epic and move the files from the local admin to the user's Library. AppleScript will prompt the user to relaunch Epic as sometimes UE doesn't sync the first time but then UE will be visible and can be launched from Epic. 

It does work for us but if you feel like we can improve the workflow please let me know or/and log an issue in Git.

Thank you for sharing your work!  I'll give this a try next year - for this semester we just put a shortcut to the Unreal Engine app on the Users' desktops, and I don't want to make any further changes now that the semester is well underway.  

This will likely be my strategy as well, for now. Does that eliminate the firewall popup? We actually had to go back to Unreal 5.2 because of Quixel Bridge not loading properly.