my project not loading off external hard drive

my project is not loading off external hard drive. it gives me a crash error.

Hey there @anon51061666! I work all of my projects from an external drive myself, so this is a bit concerning! May I see the crash and logs? You can find them in the Saved/Crashes and Saved/Logs folders respectively in your project. Knowing the crash stack trace can help us determine the issue!

The common issues I see are that some externals have separate permissions when attached that can cause issues, this usually comes with some sort of storage software.

LoginId:
EpicAccountId:
Fatal error: [File:./Runtime/CoreUObject/Private/Misc/PackageName.cpp] [Line: 770] FilenameToLongPackageName failed to convert ā€˜ā€¦/ā€¦/ā€¦/ā€¦/ā€¦/ā€¦/ā€¦/Volumes//Unreal Projects/MyProject2/Content/ExternalObjects/FirstPerson/Maps/FirstPersonMap/7/ZX/._JUGNISA5MV8V8FE530PDPQ.uassetā€™. Attempt result was ā€˜/Game/ExternalObjects/FirstPerson/Maps/FirstPersonMap/7/ZX/._JUGNISA5MV8V8FE530PDPQā€™, but the path contains illegal characters ā€˜.ā€™

FPackageName::FilenameToLongPackageName(FString const&) Address = 0x10e5c6a74 (filename not found) [in UnrealEditor-CoreUObject.dylib]
UE::Core::Private::Function::TFunctionRefCaller<GetOnDiskExternalObjectPackages(FString const&)::$_17, bool (char16_t const*, bool)>::Call(void*, char16_t const*&, bool&) Address = 0x11926db24 (filename not found) [in UnrealEditor-Engine.dylib]
FDirectoryVisitorFuncWrapper::Visit(char16_t const*, bool) Address = 0x10b098116 (filename not found) [in UnrealEditor-Core.dylib]
IPlatformFile::IterateDirectoryRecursively(char16_t const*, IPlatformFile::FDirectoryVisitor&)::FRecurse::Visit(char16_t const*, bool) Address = 0x10b0a615d (filename not found) [in UnrealEditor-Core.dylib]
UE::Core::Private::Function::TFunctionRefCaller<FApplePlatformFile::IterateDirectory(char16_t const*, IPlatformFile::FDirectoryVisitor&)::$_1, bool (dirent*)>::Call(void*, dirent*&) Address = 0x10afb2d71 (filename not found) [in UnrealEditor-Core.dylib]
FApplePlatformFile::IterateDirectoryCommon(char16_t const*, TFunctionRef<bool (dirent*)> const&) Address = 0x10af6b9ea (filename not found) [in UnrealEditor-Core.dylib]
FApplePlatformFile::IterateDirectory(char16_t const*, IPlatformFile::FDirectoryVisitor&) Address = 0x10af6b8c6 (filename not found) [in UnrealEditor-Core.dylib]
void ParallelForImpl::CallBody<IPlatformFile::IterateDirectoryRecursively(char16_t const*, IPlatformFile::FDirectoryVisitor&)::$_15, TArray<FString, TSizedDefaultAllocator<32> > >(IPlatformFile::IterateDirectoryRecursively(char16_t const*, IPlatformFile::FDirectoryVisitor&)::$_15 const&, TArrayView<TArray<FString, TSizedDefaultAllocator<32> >, int> const&, int, int) Address = 0x10b0a55e1 (filename not found) [in UnrealEditor-Core.dylib]
IPlatformFile::IterateDirectoryRecursively(char16_t const*, IPlatformFile::FDirectoryVisitor&) Address = 0x10b067ae7 (filename not found) [in UnrealEditor-Core.dylib]
IPlatformFile::IterateDirectoryRecursively(char16_t const*, TFunctionRef<bool (char16_t const*, bool)>) Address = 0x10b0689f4 (filename not found) [in UnrealEditor-Core.dylib]
FFileManagerGeneric::IterateDirectoryRecursively(char16_t const*, TFunctionRef<bool (char16_t const*, bool)>) Address = 0x10b0b83a0 (filename not found) [in UnrealEditor-Core.dylib]
void FExternalPackageHelper::LoadObjectsFromExternalPackages(UObject*, TFunctionRef<void (UActorFolder*)>) Address = 0x1191ffaf5 (filename not found) [in UnrealEditor-Engine.dylib]
ULevel::PostLoad() Address = 0x1191fe787 (filename not found) [in UnrealEditor-Engine.dylib]
UObject::ConditionalPostLoad() Address = 0x10e9546b5 (filename not found) [in UnrealEditor-CoreUObject.dylib]
UObject::PostLoadSubobjects(FObjectInstancingGraph*) Address = 0x10e954c7d (filename not found) [in UnrealEditor-CoreUObject.dylib]
AActor::PostLoadSubobjects(FObjectInstancingGraph*) Address = 0x11834062c (filename not found) [in UnrealEditor-Engine.dylib]
UObject::ConditionalPostLoad() Address = 0x10e954449 (filename not found) [in UnrealEditor-CoreUObject.dylib]
EndLoad(FUObjectSerializeContext*, TArray<UPackage*, TSizedDefaultAllocator<32> >) Address = 0x10eacf789 (filename not found) [in UnrealEditor-CoreUObject.dylib]
LoadPackageInternal(UPackage
, FPackagePath const&, unsigned int, FLinkerLoad*, FArchive*, FLinkerInstancingContext const*, FPackagePath const*) Address = 0x10eacd61e (filename not found) [in UnrealEditor-CoreUObject.dylib]
LoadPackage(UPackage*, FPackagePath const&, unsigned int, FArchive*, FLinkerInstancingContext const*, FPackagePath const*) Address = 0x10ead10ad (filename not found) [in UnrealEditor-CoreUObject.dylib]
LoadPackage(UPackage*, char16_t const*, unsigned int, FArchive*, FLinkerInstancingContext const*) Address = 0x10eac9cb7 (filename not found) [in UnrealEditor-CoreUObject.dylib]
UEditorEngine::Map_Load(char16_t const*, FOutputDevice&) Address = 0x12bb85466 (filename not found) [in UnrealEditor-UnrealEd.dylib]
UEditorEngine::HandleMapCommand(char16_t const*, FOutputDevice&, UWorld*) Address = 0x12bba33c5 (filename not found) [in UnrealEditor-UnrealEd.dylib]
UEditorEngine::Exec(UWorld*, char16_t const*, FOutputDevice&) Address = 0x12bb9f874 (filename not found) [in UnrealEditor-UnrealEd.dylib]
UUnrealEdEngine::Exec(UWorld*, char16_t const*, FOutputDevice&) Address = 0x12c8895da (filename not found) [in UnrealEditor-UnrealEd.dylib]
FEditorFileUtils::LoadMap(FString const&, bool, bool) Address = 0x12c015247 (filename not found) [in UnrealEditor-UnrealEd.dylib]
FEditorFileUtils::LoadDefaultMapAtStartup() Address = 0x12c02846b (filename not found) [in UnrealEditor-UnrealEd.dylib]
FUnrealEdMisc::OnInit() Address = 0x12c7dc403 (filename not found) [in UnrealEditor-UnrealEd.dylib]
EditorInit(IEngineLoop&) Address = 0x12c7da18b (filename not found) [in UnrealEditor-UnrealEd.dylib]
GuardedMain(char16_t const*) Address = 0x100ac259c (filename not found) [in UnrealEditor]
-[UEAppDelegate runGameThread:] Address = 0x100add725 (filename not found) [in UnrealEditor]
-[FCocoaGameThread main] Address = 0x10b21acbc (filename not found) [in UnrealEditor-Core.dylib]
Unknown() Address = 0x7ff81c1e23bc (filename not found) [in Foundation]
_pthread_start Address = 0x7ff81b379259 (filename not found) [in libsystem_pthread.dylib]
thread_start Address = 0x7ff81b374c7b (filename not found) [in libsystem_pthread.dylib]

Hrm, looks like a file inside the projects hierarchy is making it past the 255 character file path limit. Could you try moving your project higher in itā€™s hierarchy of folders or shortening the names of what itā€™s contained in?

Technically thereā€™s a way to change the limit in windows as well but it involved registry changes.

I moved it up a folder and thatā€™s the most I cold go. it still says the same thing.

Alright so thatā€™s not great. So for reference, I donā€™t recommend messing around the registry until other options are exhausted, even when we know the effects as other applications can have adverse effects. However, Iā€™ll bring you the information regardless. If the error is correct and you indeed want to lift the path size cap, Iā€™ve got some resources. However if the second line of the error is correct, there is an asset in your external actors folder (which comes from world partition) thatā€™s pitching the illegal characters error that could be tossed to be able to open the project temporarily. However this has the possibility to cause errors in the level, so back up the project beforehand.

Disclaimer: One or more of these links are unaffiliated with Epic Games. Epic Games is not liable for anything that may occur outside of this Unreal Engine domain. Please exercise your best judgment when following links outside of the forums.

Important staff response on the matter:

More step by step tutorial:
https://knowledge.autodesk.com/support/autocad/troubleshooting/caas/sfdcarticles/sfdcarticles/The-Windows-10-default-path-length-limitation-MAX-PATH-is-256-characters.html

?? are you accessing it via a mount point or something?

what if I am using a Mac?

Ahhh that indeed changes the mechanism, since Iā€™m unfortunately bound to my Windows systems I have to do a bit of research on both the limit on MacOS, if itā€™s possible to remove, or if thereā€™s other illegal characters than the usual. From a tertiary search it doesnā€™t look like itā€™s going to be that easy this time around. Is this like a dual booted MacOS that starts that many layers deep? Seeing he ā€œVolumesā€ folder should have made me think about that prior actually. Whatā€™s the actual deepest path? How far are we off from the limit? If possible we could trim some stuff higher in the tree if weā€™re lucky, thought external actors naming conventions are always longer so it might be a big ask for you.

if it helps I am using m1 Mac mini 16gig unified memory(ram) on Mac OS Ventura 13.2.1

trying to put projects on Samsung T7. If it helps volumes stands for all storage locations that are external.

After doing some research it seems that Max path length is roughly 1000 chars for Ventura, however max name size is 255. Does a mock project open at the top level of volumes? Could it just be that the external actorā€™s dots or dashes that caused this misread?

so would I just delete the dashes from external actors?

Unfortunately thatā€™d break the external actors reference (and likely the world partition map itā€™s on but thatā€™s not confirmed). It may help you launch the project, but ultimately it would likely be detrimental. If youā€™d like to give it a shot, back up the project and delete the offending actor and check. I havenā€™t found a solid workaround for this for MacOS users, and havenā€™t found too many instances.

I changed the name of it then reopened the project but it just gave me a different thing in external objects that had a too long name.

changed the name of that then it just wouldnā€™t even open project. it would open a different one instead.

Iā€™m attempting to find a way to disable the world partition one file per actor setup, but it looks like itā€™s been integrated directly into world partition. Before One File Per Actor would create the external actors folder and apply that to all levels, however even if itā€™s disabled, world partition still uses it. Not sure why it would generate illegal characters unless the chars arenā€™t illegal on whatever device you transferred from (if at all).

Alternatively if you arenā€™t using world partitionā€™s features, you could backup your project, copy the content of your level, create a new (non-WP) world and shift the content there and try that one out after deleting the references to the old one and the external actors folder altogether.

so basically I had this other project so like you said I made a copy and put it on external storage but it still says

LoginId:
EpicAccountId:

Fatal error: [File:./Runtime/CoreUObject/Private/Misc/PackageName.cpp] [Line: 770] FilenameToLongPackageName failed to convert ā€˜ā€¦/ā€¦/ā€¦/ā€¦/ā€¦/ā€¦/ā€¦/Volumes//MyProject/Content/ExternalObjects/FirstPerson/Maps/FirstPersonMap/7/ZX/._JUGNISA5MV8V8FE530PDPQ.uassetā€™. Attempt result was ā€˜/Game/ExternalObjects/FirstPerson/Maps/FirstPersonMap/7/ZX/._JUGNISA5MV8V8FE530PDPQā€™, but the path contains illegal characters ā€˜.ā€™

FPackageName::FilenameToLongPackageName(FString const&) Address = 0x1123afa74 (filename not found) [in UnrealEditor-CoreUObject.dylib]
UE::Core::Private::Function::TFunctionRefCaller<GetOnDiskExternalObjectPackages(FString const&)::$_17, bool (char16_t const*, bool)>::Call(void*, char16_t const*&, bool&) Address = 0x11d056b24 (filename not found) [in UnrealEditor-Engine.dylib]
FDirectoryVisitorFuncWrapper::Visit(char16_t const*, bool) Address = 0x10ee81116 (filename not found) [in UnrealEditor-Core.dylib]
IPlatformFile::IterateDirectoryRecursively(char16_t const*, IPlatformFile::FDirectoryVisitor&)::FRecurse::Visit(char16_t const*, bool) Address = 0x10ee8f15d (filename not found) [in UnrealEditor-Core.dylib]
UE::Core::Private::Function::TFunctionRefCaller<FApplePlatformFile::IterateDirectory(char16_t const*, IPlatformFile::FDirectoryVisitor&)::$_1, bool (dirent*)>::Call(void*, dirent*&) Address = 0x10ed9bd71 (filename not found) [in UnrealEditor-Core.dylib]
FApplePlatformFile::IterateDirectoryCommon(char16_t const*, TFunctionRef<bool (dirent*)> const&) Address = 0x10ed549ea (filename not found) [in UnrealEditor-Core.dylib]
FApplePlatformFile::IterateDirectory(char16_t const*, IPlatformFile::FDirectoryVisitor&) Address = 0x10ed548c6 (filename not found) [in UnrealEditor-Core.dylib]
void ParallelForImpl::CallBody<IPlatformFile::IterateDirectoryRecursively(char16_t const*, IPlatformFile::FDirectoryVisitor&)::$_15, TArray<FString, TSizedDefaultAllocator<32> > >(IPlatformFile::IterateDirectoryRecursively(char16_t const*, IPlatformFile::FDirectoryVisitor&)::$_15 const&, TArrayView<TArray<FString, TSizedDefaultAllocator<32> >, int> const&, int, int) Address = 0x10ee8e5e1 (filename not found) [in UnrealEditor-Core.dylib]
IPlatformFile::IterateDirectoryRecursively(char16_t const*, IPlatformFile::FDirectoryVisitor&) Address = 0x10ee50ae7 (filename not found) [in UnrealEditor-Core.dylib]
IPlatformFile::IterateDirectoryRecursively(char16_t const*, TFunctionRef<bool (char16_t const*, bool)>) Address = 0x10ee519f4 (filename not found) [in UnrealEditor-Core.dylib]
FFileManagerGeneric::IterateDirectoryRecursively(char16_t const*, TFunctionRef<bool (char16_t const*, bool)>) Address = 0x10eea13a0 (filename not found) [in UnrealEditor-Core.dylib]
void FExternalPackageHelper::LoadObjectsFromExternalPackages(UObject*, TFunctionRef<void (UActorFolder*)>) Address = 0x11cfe8af5 (filename not found) [in UnrealEditor-Engine.dylib]
ULevel::PostLoad() Address = 0x11cfe7787 (filename not found) [in UnrealEditor-Engine.dylib]
UObject::ConditionalPostLoad() Address = 0x11273d6b5 (filename not found) [in UnrealEditor-CoreUObject.dylib]
UObject::PostLoadSubobjects(FObjectInstancingGraph*) Address = 0x11273dc7d (filename not found) [in UnrealEditor-CoreUObject.dylib]
AActor::PostLoadSubobjects(FObjectInstancingGraph*) Address = 0x11c12962c (filename not found) [in UnrealEditor-Engine.dylib]
UObject::ConditionalPostLoad() Address = 0x11273d449 (filename not found) [in UnrealEditor-CoreUObject.dylib]
EndLoad(FUObjectSerializeContext*, TArray<UPackage*, TSizedDefaultAllocator<32> >) Address = 0x1128b8789 (filename not found) [in UnrealEditor-CoreUObject.dylib]
LoadPackageInternal(UPackage
, FPackagePath const&, unsigned int, FLinkerLoad*, FArchive*, FLinkerInstancingContext const*, FPackagePath const*) Address = 0x1128b661e (filename not found) [in UnrealEditor-CoreUObject.dylib]
LoadPackage(UPackage*, FPackagePath const&, unsigned int, FArchive*, FLinkerInstancingContext const*, FPackagePath const*) Address = 0x1128ba0ad (filename not found) [in UnrealEditor-CoreUObject.dylib]
LoadPackage(UPackage*, char16_t const*, unsigned int, FArchive*, FLinkerInstancingContext const*) Address = 0x1128b2cb7 (filename not found) [in UnrealEditor-CoreUObject.dylib]
UEditorEngine::Map_Load(char16_t const*, FOutputDevice&) Address = 0x12f96e466 (filename not found) [in UnrealEditor-UnrealEd.dylib]
UEditorEngine::HandleMapCommand(char16_t const*, FOutputDevice&, UWorld*) Address = 0x12f98c3c5 (filename not found) [in UnrealEditor-UnrealEd.dylib]
UEditorEngine::Exec(UWorld*, char16_t const*, FOutputDevice&) Address = 0x12f988874 (filename not found) [in UnrealEditor-UnrealEd.dylib]
UUnrealEdEngine::Exec(UWorld*, char16_t const*, FOutputDevice&) Address = 0x1306725da (filename not found) [in UnrealEditor-UnrealEd.dylib]
FEditorFileUtils::LoadMap(FString const&, bool, bool) Address = 0x12fdfe247 (filename not found) [in UnrealEditor-UnrealEd.dylib]
FEditorFileUtils::LoadDefaultMapAtStartup() Address = 0x12fe1146b (filename not found) [in UnrealEditor-UnrealEd.dylib]
FUnrealEdMisc::OnInit() Address = 0x1305c5403 (filename not found) [in UnrealEditor-UnrealEd.dylib]
EditorInit(IEngineLoop&) Address = 0x1305c318b (filename not found) [in UnrealEditor-UnrealEd.dylib]
GuardedMain(char16_t const*) Address = 0x1048ab59c (filename not found) [in UnrealEditor]
-[UEAppDelegate runGameThread:] Address = 0x1048c6725 (filename not found) [in UnrealEditor]
-[FCocoaGameThread main] Address = 0x10f003cbc (filename not found) [in UnrealEditor-Core.dylib]
Unknown() Address = 0x7ff802c323bc (filename not found) [in Foundation]
_pthread_start Address = 0x7ff801dc9259 (filename not found) [in libsystem_pthread.dylib]
thread_start Address = 0x7ff801dc4c7b (filename not found) [in libsystem_pthread.dylib]

Once youā€™d copied the assets over so a new non world partitioned level, (after youā€™ve made your backup of your project), you can delete the entire external actors folder and old level. Then there should be no external actors causing any issues, however if you need world partition and world composition wonā€™t do, weā€™ll have to get to the root cause, which might just end in a bug report if I canā€™t ascertain a better way.

1 Like

so the problem was the external object which I deleted and now my world works! I will look at all the details later to see if its all correct but it looks good for now.