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.
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.