#packaging
1 messages · Page 21 of 1
@vital rune thats because that level has bb cached values. I had the same issues over 60 levels.
@sacred crown read the error. Above it says there is a log in your app data and roaming
I do notice is says this
No Visual C++ installation was found. Please download and install Visual Studio 2022 with C++ components.
Yeah thats weird. Can you paste that into chatgpt and confirm? The format sucks on my phone.
I think its a mismatch of vs
What is your project version in your build.cs?
V4 or latest?
I don't use chatgpt and its Unreal 5.4.4
sorry if I am being dumb where I find build.cs? day been stressful so my mind is a bit cloudy
Im not at computer. I can show you later.
All games have a build.cs file and it says what version of mvc you use in it.
I see, wonder this, the game started out as a GameJam project and decide to reboot it. I made a copy of the projected and then use the copy to build the game.
this
not sure if I am looking in the right folder
ah, I'm not sure then, you would need a C++ class and then make the project files and it would be in the source folder
otherwise I think it uses the engine files? not sure
I see thanks for the help though, what is odd was able to package early versions of this game and and the original GameJam version had no issues packaging. and all are using 5.4.4
starting in 5.4, this became an issue
should I try installing 5.6 and see if that might solve the problem
I installed 5.6 and migrated the game over there and luckily it all packaged everything fine
the problem was presented very clearly in the log: you don't have VS2022 installed, only 2019
you should install VS2022 with the required workloads
I asked if that was the issue
well yeah, it is the issue
yeah, just the other guy never said that it was
checking if this is correct
yes and it can be the latest version. the details are really in the workloads and components you install because they need to be specific
a lot of people run the default settings and end up with errors covered by the second pin
I'm not really going to handhold, but you need to install VS2022, yes
and you need to pick the desktop and game dev workflows, and then go into individual components and install what's mentioned in the pin
okay, just trying to be sure I don't screw this up
I'm not sure what you think the worst could happen is, if you miss a component that you need to install you just modify the installation from the VS installer
True just some anxiaty, it does seem related to Steam Online Subsystem, moment I enable the plugin to the game project the error happens and it turns out it happens on both u5.4 and u5.6
that's because you enabled a plugin. a BP only project with the default plugin set is going to use a precompiled executable
ah I see I see
Visual Studio 2022 compiler version 14.44.35213 is not a preferred version. Please use the latest preferred version 14.38.33130
I'm confused by the version they are asking namely cause I don't see that number in Visual Studio to install
Oh never mind I think I spot it
pin #2?
Oh thought you where talking something in the visual studio installer not discord
that's weird though, why would 2019 work in 5.6 but need 2022 in 5.4???
so far my experience was that to run 5.6 you need 2022 and this means updating the compiler version as well
which then bugs out all packaging prior to 5.6
unless you change your packaging version from v# to .latest
and i'd expect the opposite, you need 2022 in 5.6, not 5.4, unless his editor preferences are all over the place
It took awhile the the game package successfully, really thank you so much on helping me with this
------ Building 2 action(s) started ------
[1/2] Link [x64] ProjectBinary-Win64-Shipping.exe
Module.OnlineSubsystemSteam.cpp.obj : error LNK2005: "public: virtual int __cdecl FInternetAddrSteam::GetPort(void)const " (?GetPort@FInternetAddrSteam@@UEBAHXZ) already defined in Module.SteamShared.cpp.obj
Module.OnlineSubsystemSteam.cpp.obj : error LNK2005: "public: virtual class FName __cdecl FInternetAddrSteam::GetProtocolType(void)const " (?GetProtocolType@FInternetAddrSteam@@UEBA?AVFName@@XZ) already defined in Module.SteamShared.cpp.obj
Module.OnlineSubsystemSteam.cpp.obj : error LNK2005: "public: virtual class TArray<unsigned char,class TSizedDefaultAllocator<32> > __cdecl FInternetAddrSteam::GetRawIp(void)const " (?GetRawIp@FInternetAddrSteam@@UEBA?AV?$TArray@EV?$TSizedDefaultAllocator@$0CA@@@@@XZ) already defined in Module.SteamShared.cpp.obj
Module.OnlineSubsystemSteam.cpp.obj : error LNK2005: "public: virtual unsigned int __cdecl FInternetAddrSteam::GetTypeHash(void)const " (?GetTypeHash@FInternetAddrSteam@@UEBAIXZ) already defined in Module.SteamShared.cpp.obj
Module.OnlineSubsystemSteam.cpp.obj : error LNK2005: "public: virtual void __cdecl FInternetAddrSteam::SetAnyAddress(void)" (?SetAnyAddress@FInternetAddrSteam@@UEAAXXZ) already defined in Module.SteamShared.cpp.obj
Moved the project to 5.6, now OnlineSubsystemSteam keeps erroring out. Didn’t touch anything extra and builds fail. Any idea why?
Iirc in 5.6 the steam oss was split into two modules so that could he the reson why, I don’t remember the full name of the new module but iirc it had to do something with “sockets”
Okay thanks I'll look at
ok, just got to my PC, the plugin is called SteamSockets if including that doesn't help then I'd recommend checking contents of the plugins if there isn't some mismatch after upgrade (if you're using source code from git directly rather than epic game store build)
Fixed the issue but now I’m hitting another one. I checked the forums, installed Steam Sockets and switched the net driver, but when I join the lobby and start the game I get a “NetDriverListenFailure” on the server and a “PendingConnectionFailure” on the client.
Sadly can't help with that since I don't really do use steam oss, might be best to ask in #online-subsystems now since it's not a compilation/linking issue anymore
Okay, thanks!
we went over this, it was due to the enabling of the Steam OSS plugin. with a BP only project, if you leave plugins default then you don't need to bring a compiler
I don't think any of the 5.x releases are compatible with VS2019
anybody kno why my packaged project results r different from my editor results ? i'm using unreal engine 5.6 and i want to prevent an hism wall from adding which works perfectly fine in the editor but when i package it the hism wall is still added which i don't want .
@lean dawn force rebuild, it might be cached and packaged again when it shouldn't
When in doubt, nuke binaries and intermediate to sanity check
new errors 🆕🔥
chatgpt says, its related to... RAM? 😮
chatgpt: And before the crash, a lot of shaders fail to compile, especially for Nanite, Volumetric Clouds, Lumen, etc. 💬
although that could be related to this issue
Although recently Ive been experiencing some weird sudden spikes in my GPU, and everytime I had those unexpected spikes today my PC would go really slow, I never had this before, im not sure but I feel like this could be related somehow
Ill try again deleting CDD (local & global), saved & Intermediate
I'm sorry for asking probably an simple question, but how do I do that? I just have the action "AI move to" in the event graph of my enemy character
"That" as in reset the BB value properly liek you suggested
lemme grab my old project
so here's what I did
I forced the BB values on begin play
then I created this service called BTS check state
this goes and fetches the data before engaging the AI BT
in your case and what happened to me also, you BB values are probably not getting set properly nor are they getting checked/updated live. So what happens is you get an overflow to a negative max float and the BT cannot do the action. in my case, all my moveto vectors were -maxfloat and nobody would move.
Ironically, this wasn't a problem on mobile? But it was on PC.
I debugged this by creating a text on top of my AI NPCs that were logging their BB values live. Just get the BB values and set text
and when running the game in PIE, no problems
turns out, the BB values are loaded and cached before running the game
I'm not the best with programming so it may take me a bit to get something similar but thanks!
Honestly by looking into the stuff I disconnected, it looked like it wasn't even using the BB and BT to begin with lol
but in the packaged game, no cache exists
ah??
hm
always start with basics
do you have the volume?
forgot what it was called
and then debug the BT/BB values
Last time this happened the issue was I wasn't building the levels and cooking content
But now it doesn't work for the build
Yeahhhh
All the character does is patrol
thats fine but man this is gimped
you can use the basic ai moveto
you can use BT/BB
and you can even make your own spline movements
The screenshot is the basic ai moveto?
yeah
but the way you did it is kinda janky
wait why is it chasing player at the end??
To loop 😭
I followed it from some random tutorial YEARS ago
Like 2 years ago I think
Honestly I should probably refresh the ai lol
I tried disconnecting it and yeah the enemy stops after patrolling once lol
This feels like more of a packaging question.
How is your games versioning handled?
All manually with custom solutions, or does something in UE already manage stuff?
(I see all these like build version, build configuration, and BuildSettings.
But, from a google search either all of them, or the specific ones I found, seem to be about the engine itself, if 5.2 is compatible with 5.5 sort of deal.
Not so much is my game compatible with another persons game version
Am I missing something, or is that engine versioning basically what should be used for game versioning?
There's a version string in ( probably ) DefaultGame.ini ( not at pc now to verify ).
Our pattern is to automate : manipulating the .ini file during automated builds, so x.y.z major.minor.patch we have for example 1.32.z and the builder substitutes the current ChangeList number in place of z
Thanks for the input.
Was I correct in assuming the other metrics.
build version, build configuration, and the buildsettings section, are all like engine/ editor sort of things?
is there a way to enable debug logs to be printed for UAT? I can see in the source code one of the logs that I am interested in is being printed using LogDebug
<@&213101288538374145> surprisingly, Discord caught this as spam
I am a bit confused. Theres defaultGame and defaultEngine .ini files in the game/config folder. They will only affect this game. Is there something unclear?
The things I was listing was the code names/ functions.
And, the code just lead to one of those compile time macros.
So, wasn’t sure where it’s read from/ handled by.
Recently reinstalled UE 5.4 and now the linux toolchain isn't detected?
Platform Linux is not a valid platform to build. Check that the SDK is installed properly and that you have the necessary platorm support files (DataDrivenPlatformInfo.ini, SDK.json, etc).```
Hi, in UE 5.3, both AMD FSR3 (I've tested multiple versions) and Nvidia DLSS 4 (Also tested with DLSS3) work in the editor side by side, and I can switch between upscaler during the editor gameplay, but when I create a shipping build of the game, it no longer launches if both plugins are enabled. (no build errors)
When launching the .exe I get this error instantly:
LowLevelFatalError [File:D:\build++UE5\Sync\Engine\Source\Runtime\D3D12RHI\Private\D3D12Util.cpp] [Line: 903]
Interfaces.CopyCommandList->Close() failed
at D:\build++UE5\Sync\Engine\Source\Runtime\D3D12RHI\Private\D3D12CommandList.cpp:284
with error E_INVALIDARG
In defaultengine.ini I have set both off by default to avoid situation where both plugins try to activate at the same time:
r.NGX.DLSS.Enable=0
r.FidelityFX.FSR3.Enabled=0
also console commands on starting map and game instance:
r.NGX.DLSS.Enable 0
r.FidelityFX.FSR3.Enabled 0
Any ideas why this happens? Has anyone managed to get both work side by side in 5.3 shipping build?
Hi guys. Last time I packaged games on 4.27.
For my current project, I need to package the game on 5.5.4.
I use Project Launcher.
The problem is that there is no Crash Reporter in the packaged game.
I tried specifying it in the project settings, tried adding it to UAT -CrashReporter.
I also added to DefaultGame.ini
[/Script/UnrealEd.ProjectPackagingSettings]
IncludeCrashReporter=True
But it doesn't help, in the packaged project I just get a ‘Fatal Error’ without the crash reporter.
How do I add a crash reporter to a packaged project via Project Launcher?
I'm wondering, is it possible to build a mobile and desktop game from the same project, but where the mobile game uses different assets then the desktop game.
So that in the end, even though the desktop game might be a few GB's, the mobile version is just a few MB?
Also in general, when packagin a game, unused assets will be stripped away right? But if a asset is referenced by a BP, even though the BP is not used, it will still be packed right?
there are certainly teams that do that
and it's all based on references from the maps you cook (and C++ CDOs, but no one should use constructorhelpers if they can avoid it)
and you can control things like texture resolution per-platform
though to have that be effective you need to be thoughtful about texturegroups in the project
What's the fast way of dealing with these goddamn struct errors again?
I've tried going to the impacted classes and refreshing all nodes but it always seems like I missed one. Google alludes to a mythical "refresh all nodes" plugin, but their github page 404s
Hi ! Any ideas why a packaging would be stuck after this ?
UATHelper: Packaging (Android (ASTC)): Execution of commandlet took: 32.60 seconds
Thanks ChatGPT
Why doesn't the new project launcher in 5.6 make sounds when it completes or fails like the old one? 🙁
I just want to minimize and come back when its done without having to keep checking on it.
Verbatim errors?
I was more after the copied and pasted error from the output (ie. verbatim)
Hello,
We recently moved to UE5.6 from 5.4 and noticed that the project packaging process seams to be broken.
We are on source build and build the project for windows and all Consoles.
UE5.4 does always build a correct standalone build on all platforms. Same project in 5.6 with no code changes and in the cooking stage we frequently get Access Violation error hinting to some blueprint cast.
But even with verbose logging there are no details on any file. We validated and recompiled every Blueprint in the project.
We can restart the cook process multiple times and in roughly 1 out of 10 times it successfully completes and we can build the standalone version.
This leads us to be leave there is no problem with our project and rather the engine.
A fresh engine install, cleaning of saved, intermediate and other generated folders does not change the results.
For testing UE5.5 does also produce the same error with the same frequency.
5.4 is as previously said not an issue.
Does anyone know what changed in between this versions or if this is a known issue?
We would need to move to newer UE versions due to consoles…
You need to share what the error actually is
That's the issue..there is no real error.
We get an access violation error with a stack trace for a blueprint cast.
There is no file given where this appears..we validated and recompiled every blueprint and there is no error and issue.
As the game does fully compile sometimes there can't be an error with the files and something with the engine
Sanity check :
- does a blank or template project package correctly
I am going to assume yes. - something is wrong with your project. inspect packaging log
Yes blank project packages.
This project does package also sometimes.
Package log just shows the access violation error without showing any details even with verbose logging.
This is the issue. The log does not state and sometimes it does pack and most of the time it fails while no changes are made in-between.
post a failing log for inspection
All Blueprints validated, recompiled and saved. No issues and as I said in 5.4 it does compile without any issues as well.
Interesting... it's not a perfect match, but we had something that sounds somewhat similar a year back with LinkerLoad intermittent crashes, which seemed to be caused by heavy dependency issues.
Now I can't say for sure if this is the case for you, but you might want to take a peek at
- how heavy are the linkages when viewed with Reference viewer, is there loads and loads of stuff using the crashing bp?
There are also plugins that detect circular dependencies, which might be of interest. Having circular dependencies is not a direct road to hell, I ran it recently and we had hundreds of them and things are still running : E
Repeat Caveat : This is just a shot in the dark, an educated guess...
Looking back, we were getting EXCEPTION_STACK_OVERFLOW
not EXCEPTION_ACCESS_VIOLATION. Hmm
I don't know which bo is causing issues
I assumed it would be the one mentioned just before the crash, but not certain
UATHelper: Cooking (XSX): LogBlueprint: Display: Time Compiling: 11.588297784328461 ms. Time Reinstancing: 1.2613013386726379 ms.
UATHelper: Cooking (XSX): LogWindows: Error: begin: stack for UAT
UATHelper: Cooking (XSX): LogWindows: Error: === Critical error: ===
UATHelper: Cooking (XSX): LogWindows: Error:
UATHelper: Cooking (XSX): LogWindows: Error: Fatal error!
UATHelper: Cooking (XSX): LogWindows: Error:
UATHelper: Cooking (XSX): LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000110```
ie BP_BaseShell
The last BP before the crash is a small used by one other blueprint.
We use Interfaces for nearly everything. There are newrly no direct dependencies
If you are using an engine source fork, you might be able to add more log tracing...
I presume you've already done the "Instigators and Names" thing mentioned in Pins
Yeah..we more or less done everything. The confusing part is, it sometimes works correctly. And knowing it works perfectly in 5.4 does indicate the project is fine.
My biggest suggestion is that the build process in 5.6 has some issues.
Maybe a race condition with the compiling on multiple threads where one sometimes finishes before the dependency is ready. But at this stage it's just guessing.
It's maximum frustration as nothing makes sense.
very tricky stuff indeed. Without a solid repro, it may be very hard to trace for epic as well, but posting to the bug report forums may still be in order ( or UDN aka Epic Pro Support if you have access )
- Are you already committed to 5.6? If not, step back...
No we still have the 5.4 stuff. We did not make any changes so far. But we need 5.6 for the planned Switch 2 release.
So we are kind of committed to it.
What I forgot to mention. I also tried to remove all default game mode, game instances and start maps.
Wo not or less package an empty project. Still the same issue.
We don't have UDN access. We request it every 2 month for the last 24 years. Nothing.
All our previous critical bug reports where fixed by epic 2-3 years after. So I'm not counting on Epic on this one either ....
UDN has been very good to us - but it is a paid service. it seems very odd that they would not be getting you on board if you are in a veteran company and making money and prepared to pay for it... huge balldrop from their business service : (
During all the time, we only had contact with epic 3 times.
- Purchasing UDK (UE3)
- Getting invited to UE4 Alpha
- Console verification
Everything else was a let down. No support, no communication, no answers. Nothing.
Doing all console stuff without UDN is a big pain 😅
We got nothing 👍🏻
somehow you have dropped through the cracks
maybe... ping ari arnbjörnsson?
he might facilitate a reconciliation...
We write them every 2 month from various mail addresses to ask for UDN access for over a decade....
anyhow, back to the problem at hand, recap
- problem is intermittent ( how many times of of x attempts? )
- problem cannot be reproduced with template project
I guess I would keep stabbing at it, by fully stripping out like all the content, and re-test. if no repro, you know for sure there's something funky in there. Then proceed with binary search tactic : restore everything, but delete only 50% of content...
This is not a fun procedure
This is you? https://www.polygon-art.com
Discover Polygon Art's latest games and immerse yourself in worlds of adventure and excitement. Explore our newest releases and upcoming projects.
Yes. And yes we are in the process of it. It just takes forever.
Have you reached the point where you are having to pay for engine licensing?
Not yet.
That at the latest would be the defining point... I forget how much UDN costs since I don't handle the money, but if you are ready to pony up some significant money to get proper support then I would recommend contacting ari and asking for an assist
ahhhh
Epic Pro Support is available as an additional purchase for licensees with ≥10 seats.
I'm not sure if that's always been the case, but looks like they don't care about some solo indie dev : (
but... even that is confusing, since game devs don't pay for seats as far as i recall. "reach out to us", "for licensees on custom terms"
anyway, we have drifted a bit off topic
not sure what else to say on the packaging issue... we are still on 5.4 so not sure what is going on
Yeah the seat limit is stupid. Makes absolutely sense.
Well seems like nothing left then to dig through a 500gb project...🫣
- is the fail rate fairly large, like 50% or more?
- do you have automated build systems?
I maybe missed it, so you do get successful builds as well right? hmm hmm
1 out of 20 attempts is successful. (Full rebuilds required). At this rate developing and testing on consoles is impossible
yeah, that's going to need a solve : E
even with an autobuilder that's not going to work out
at risk of repeats
- make sure there is clarity on where it is crashing. Always at the same point? Is the BP_BaseShell just before the crash the instigator or not?
If the instigator thing remains unclear, I would consider
- source fork to add more logs in the relevant area, at least make sure it's crashing on the same bp / bps regularly
I'm totally grasping at straws here but I'm at the end of my rope.
Have you ever seen any hitching with specific Enhanced Input Actions, only on a specific machine, and only on a shipping build?
I have a packaged build that multiple people including myself can run normally. However, when I run the .exe (not even through Steam, I've closed Steam as part of troubleshooting) on my laptop, I get extreme hitching, down to <1 fps for a couple seconds, only on two specific enhanced input actions, even when those input action events are completely unlinked from all the logic. Again, this only happens on my laptop. Maybe on a whim someone has seen something like this before. It works perfectly fine in the editor (and in a development build) on my laptop. I've built from both my laptop and my desktop tower and it behaves the same, affecting only my laptop. I updated my drivers and it didn't resolve.
- The freeze follows the IA asset itself (no matter what key or button it’s bound to)
- I've rebound the IAs in-game to totally different inputs and it still freezes only on those specific input actions
- It happens on both KBM and gamepad
- It doesn’t happen with other IAs
- It still happens with no logic wired
- It only affects my laptop
- It only happens in a Shipping build
- It doesn’t happen on other machines
I'm totally stumped, y'all.
Resolved: The winning advice:
also i'd check if your clearing nay save data on your laptop thats stored most likley in any %appdata% it maybe trying to call multiple inputs or something strange
I wanted to try out incremental cooking, but when I specify -cookincremental, the log still says FULL COOK: Neither -legacyiterative nor -cookincremental were specified. Deleting previously cooked packages for platform Windows and recooking all packages discovered in the current cook.. I assume this is because of another thing a couple of lines earlier: LogEditorDomain: Display: Cycle detected in parents of class /Script/RigVMDeveloper.RigVMUnitNode. Allow flags for editordomain and incremental cooking will be invalid. I also tested this in a blank project with the same behaviour
The error is misleading, it really checks for s presence of a metadata file, which only gets created after first full cook with cookincremental enabled
So if you let it run to completion, you should have new oplog in your local zen and next time you run it - unless the oplog is missing or the metadata file is gone (or some of the hashes changed) it will do incremental recooking
Hey! Did you ever find a solution for this?
I'm developing a mobile game and had been able to package for Android without issues. But suddenly, today, cooking stopped working, even for Windows. Now, when I try to launch the build, I get this error:
"Game files required to initialize the global shader library are missing from [...] Please make sure the game is installed correctly."
Would really appreciate any insight if you managed to fix it!
well that usually means the cook didn't happen at all
or something didn't stage correctly
Yes, on the first attempt, the cook fails and cancels the packaging process. But I couldn't find any useful error message explaining why the cook failed.
Then on the second attempt and onwards, the cook step doesn't fail, it just seems to do nothing, and results in a broken build.
UATHelper: Packaging (Windows): Running UnrealEditor Cook for project [...].uproject
UATHelper: Packaging (Windows): Commandlet log file is E:\UnrealEditors\UE_5.6\Engine\Programs\AutomationTool\Saved\Cook-2025.08.06-22.36.05.txt
UATHelper: Packaging (Windows): Running: E:\UnrealEditors\UE_5.6\Engine\Binaries\Win64\UnrealEditor-Win64-DebugGame-Cmd.exe [...]
UATHelper: Packaging (Windows): Took 3.42s to run UnrealEditor-Win64-DebugGame-Cmd.exe, ExitCode=0
UATHelper: Packaging (Windows): Cook command time: 3.44 s
UATHelper: Packaging (Windows): ********** COOK COMMAND COMPLETED **********```
I was able to get it working by running the packaging directly from the command line using RunUAT instead of through the editor.
So it seems like the issue might be related to how the cook is triggered via the Editor UI, possibly skipping steps or not cleaning up properly after a failed attempt.
When in doubt, I usually delete Intermeditate + Binaries folders. In any case, running from commandline is a good habit imo - starts you on the road to setting up a dedicated build machine and CI : )
UDN (Which we're now calling EPS, Epic Pro Support) for games is always handled through a Custom License.
EPS for non-games (like plugin makers, movie studios, etc.) is handled through Seat licenses.
For the Seat-Based License, you need to purchase at least 10 seats to be eligible to also buy EPS. I'm not sure how much EPS costs on top of that.
For games: With a Custom License, you pay money up front (can't say how much as it's one of those "contact us to learn more", but it's not cheap) to lower the UE royalty percentage, and you also get 2-year access to UDN, which you can pay to extend. This Custom License is usually per game, but bigger publishers sometimes negotiate a multi-game license.
For the vast majority of game studios, they don't handle the Custom License; their publisher does. The publishers get a custom license because they are expecting a certain number of sales, and have calculated that it's often cheaper to get a custom license with a reduced royalty rate rather than paying the standard "5% past first million" rate.
EPS doesn't often make sense for indies that are self-publishing because of the price. I only recommend it to studios that are already spending millions on dev and marketing budgets.
For Console help, which @covert plank mentioned, even though you don't have access to EPS console support, you should be able to get access to the free console NDA-d EDC forums. If you have access to those, they should show up under the "Platforms & Builds" category of the EDC main categories page: https://forums.unrealengine.com/categories?tag=unreal-engine
If you don't see them, you might not have access to them. You can request access to them for free at https://forms.unrealengine.com/s/form-console-access-request. You, of course, need to be a registered console developer for the platform you're applying to.
Thanks for the update! @covert plank info for you too
Hey guys! I have a beginner question: do I need to compile the editor before packaging my project?
I tried packaging for Android, with a clean project folder, deleted Saved, Intermediate, DDC and Binaries, using the -nocompileeditor flag on the command line, but I encountered an error during the cooking phase. The error said it couldn't find:
<ProjectFolder>\Binaries\Win64\<ProjectName>Editor.target
Without the -nocompileeditor flag, everything works fine. I'm a bit confused about why this happens 😅
yes, the cooker is a commandlet and needs a working editor
I found a workaround for my issue, but my issue seems different from yours. In my case, UnrealEditor-Cmd.exe wasn't working at all and here's what I had to do circumvent that:
#packaging message
My issue is also specific to 5.6. My project is actually in 5.3, I was just trying it in 5.6 to evaluate if it was worth to actually migrate
it was very curious that the log was referring to the debuggame executable
and then a question about editor binaries
Is the project launcher actually used by studios to package builds for distribution? I've found it to be extremely buggy and impractical to use (if it weren't for the time required to figure out buildgraphs or the UAT, I'd use that instead)
From my experience no… not really… most studios have fully automated CI pipelines using horde, jenkins etc… which spits out final data… in case of horde you feed it buildgraph (xml-based scripts) which call tools like UBT or UnrealEditor to do things like build, cook, pack etc… same goes for jenkins except you script it in whatever Jenkins uses
TLDR: no
Brief advantages of using CI builder
- build on every change to catch typos, missing files etc human errors
- nightly builds for QA : mark tickets with CL, pass the ticket to QA, they check the changes the next day
- any build you want at the press of a button
- automate all repetitive grunt work like uploading to providers
#automation channel for more
Yeah we have access to those Forums. They are mostly useless 😄
in a professional setting, the project launcher will mostly be used for adhoc local builds and launching on device
Id like to do that indeed for my company, but were just too small and ive got too much to do with other tasks... And hiring devops isnt exactly the cheapest job.
But ill keep working on it, maybe fix the build graph i stsrted a while ago for starters
Heyas, how can I enable logs/print/screen messages in my shipping builds? (without modifying a souce engine)
I'd be fine with a dev build, however it saves the game inside the project folder, which makes steam sometimes delete the savegame when updating
Cant be done without modifying source afaik
I've seen mixed messages, as well as this:
bUseLoggingInShipping = true; in build.cs
Does that require the source mod, or maybe works on it's on?
You can try reading the engine code, searching for that variable
Mmm, sidequest: Is there a way to get the user directory path?
Would make things much easier
the main issue is unreal dev build saving within it's own folder only
I think FPath or FPaths provides it
Got access to My Documents using FPlatformProcess::UserDir(), sadly FPath only gives you what unreal wants you to use (the project folder when on development build)
This is Target.cs and requires a unique build environment (therefore, source build)
Yup, just went down that path, but custom save locations to Documents/My Games solved all the issues with development build. 🙂
Thanks though!
Dedicated server packaged build opens in the background on windows, no output window appears, running the exe from cmd looks like it closes immediately?
I know running with -log does show a window, and closing said window kills the server.
I would assume some automatic thing can be added somewhere to force -log
But, thats about it from me sadly.
ok using -log opened a window but its not printing anything
theres an error running the server in debuggame but its wierd that in the shipping package its not printing anything
Could not find based-on AssetRegistry file root/Releases/Windows/Windows/Metadata/AssetRegistry.bin for platform Windows. When cooking DLC, AssetRegistry.bin is expected to exist Release/<platform> for each platform being cooked. (Or use DevelopmentAssetRegistryPlatformOverride=<PlatformName> to specify an override platform that all platforms should use to find the AssetRegistry.bin file). Terminating the cook.
I'm getting this weird error when trying to package a mod.
What I've tried - making a manifest file and copying the assetregistry.bin from somewhere else.
setting in DefaultGame.ini
[/Script/UnrealEd.CookOnTheFlyServer]
DevelopmentAssetRegistryPlatformOverride=Windows
I can't seem to find any other solutions online. Would appreciate any help. Thanks
Your mod kit will have to distribute the asset registry the game was originally cooked with so it can tell which assets to include in the cook.
Or if this is a third party game you're modding, then a Discord/forum specific to modding that game would be a more appropriate place to post.
so i need to package the base build first?
When you package the actual game, you'll need to create a release (this is what it's referred to in project launcher)
That will generate an AssetRegistry.bin file in the expected location
And when you package a mod then it's packaging against that release
What is a release? when I make a build it just creates a exe file with a few other files. No release file.
I updated to 5.6.1 last night so i could fix my splash screen not loading as the video only showed black. Now i cant build my project at all, can anyone help?
Not that familiar with Android stuff but in the changes between the 5.6.0 and 5.6.1 releases there were some version increases to the Android SDK, NDK, and build tools: https://github.com/EpicGames/UnrealEngine/compare/5.6.0-release...5.6.1-release
Sorry to bother you suddenly.
I have a question about a World Partition level.
When I package a World Partition level in Unreal Engine 5.6 and play it, the game crashes with the following error:
appError called: assertion failed: CurrentState == ELevelStreamingState::Removed || CurrentState == ELevelStreamingState::Unloaded
This happens whether I set the runtime to Spatial Hash or Hash Set.
It seems to be the same issue described in the following post, and forcing the assets to always load prevents the crash:
https://forums.unrealengine.com/t/world-partition-cell-stuck-in-loading-state/2548257
However, the level in question only contains a single static mesh, which makes this very puzzling.
Since I plan to use World Partition for performance optimization, I do not want to rely on the “always loaded” workaround.
I would like to identify the root cause and resolve it, but I’m currently at a dead end.
Any ideas or suggestions would be greatly appreciated.
I am Japanese and not very good at English, so I apologize if my explanation is unclear
Hi everyone, I’m running into an issue with World Partition in UE 5.4. After I walk through a certain area, move far away, and then return, one of the runtime cells never finishes loading (it’s “stuck” on loading). What I’ve observed: Using wp.Runtime.ToggleDrawRuntimeCellsDetails I can see the cell transitions to “loading” bu...
I was wondering (and this might not be the correct place to ask this so let me know) if anyone knows how to change the drive/location the zen storage ddc puts its data?
Unknown function doesn't give much clues. Maybe look at the whole log to see what precedes this?
LogOutputDevice: Warning: Script Stack (0 frames) :
LogStats: FPlatformStackWalk::StackWalkAndDump - 0.067 s
LogOutputDevice: Error: === Handled ensure: ===
LogOutputDevice: Error: Ensure condition failed: SkeletonBoneIndex != INDEX_NONE ```
something funky going on
It depends on few factors like unreal version etc… as some releases output goes into program data… but new unreal versions go into the appdata folder… Ill send you whole path when I actually look it up
Thank you!
After updating to 5.6.1, the cooking process stopped working again. Now, I have to add the following argument to the command line to avoid using the -Cmd.exe version (which, for some reason, skips cooking):
-unrealexe="<UE_FOLDER>\Engine\Binaries\Win64\UnrealEditor.exe"
Before the update, I was able to package my project for Android without specifying -unrealexe.
Does anyone know why the -Cmd.exe executable skips the cooking process, or what might be causing this behavior?
What's weird is that renaming UnrealEditor-Cmd to UnrealEditor makes it work (yes, the same file). At least that's what happened in my case. I tried opening a bug report at https://issues.unrealengine.com/ but it was ignored...
Just guessing here… but it looks like a file path length issue… which is strange because it’s not that long.
yea... but mine happened in 5.6.0, when I get some time I'll test it int 5.6.1
(renaming the original UnrealEditor to UnrealEditor-Cmd made that file stop working too)
so definitely isn't the file itself...
I just renamed the root folder to remove a whitespace between two words. After that, the package works without the -unrealexe flag again via the command line, and it also runs successfully in the Editor. I still find it strange, because this root folder has been the same since last year, containing several projects I’ve worked on across multiple versions of Unreal.
<@&213101288538374145> you missed one
Cleanup didn't work I guess. Discord API sucks.
there it goes, ty
Mine didn't have whitespaces, but it was inside another folder with whitespace. Moved it out of it but the issue still occurs. I think they made the system so complex that it now has life of it's own...
Anyone know why my game is packaging without all of the assets in a level? I'll notice anywhere from 10-100 assets won't show up in a packaged build, each time seemingly random. It took me 5 days of repeated attempts before it finally worked for me for 2 maps, but my full game has 20 maps 💀 I've tried removing the HLOD from my landscape without much luck.
This seems unusual.
Are all the assets in the level, placed beforehand, or spawned?
Are the Maps included in Packaging settings ( "List of maps to include in packaged build" )?
Have you acquainted yourself with Packaging -> Primary Assets etc?
It is strange! All the assets are placed beforehand, the map IS in the packaging list so I got that worked out. I'm not familiar with "Primary Assets"?
Hi all, how can I force ue to generate a pdb file in a shipping build? I already tried adding bUsePDBFiles = true in my target.cs, even bCreateMapFile = true, still no pdb in sight
Hi.
Anybody know why my project would cook and package successfully but crash almost instantly with a "fatal error" and no other info when trying to launch the packaged product?
Sorry if wrong channel BTW
not without more info like a log or a stack trace to look at
Where can I find the log for a packaged game? There does not appear to be one in the packaged games folder
if it's shipping, it won't have one
a development build will naturally give more info
Ok, ty. I will try a development build and go from there
Hello, anyone got the reccommended sdk, ndk and java versions for unreal 4.27 for oculus quest! Thanks!
attempting to use unrealpak.exe to extract, modify config files, repak but get Failed to open descriptor file... - Has anyone successfully unpaked, modified, repak'd a shipping packaged game?
that gets a solid "why" over me rather than using something like CustomConfig
we want to deploy existing packaged builds to a variety of environments and in order to do so we need to change lots of engine, game, etc. .ini values post-build. we can achieve this in dev builds by including Saved/Config variants in our steam packages but this won't work in shipping builds
seems like https://github.com/trumank/repak may work
I looked at the customconfig stuff it sounded like I'd need to set those before we BuildCookRun with runuat. I'm trying to find a solution for after we have the packaged build
Better to do things before. CustomConfigs, Jenkins/Horde/TeamCity, python scripts etc for the win
we use teamcity but we have build configs separate from deploy configs for both clients and servers. we have about 7-8 diff environments builds and servers could be deployed to so for various purposes we like the ability to deploy any already created build to any environment - or even create a new environment a deploy an old build there, only paying a 10min deploy script cost instead of the cost and risk of recreating the build which could be from a different engine version
it seems like the flexibility of being able to modify any .ini value and repak an existing build is appealing?
I did have a successful test yesterday doing this but I had to nest the pak path up 3 levels from the unrealpak tool and maintain a directory structure that more mimics the staged build <> unrealpak tool. I might could modify the tool to not be so finnicky but don't want to maintain a modified version of it
I think it's just not how things are meant to be done in terms of signing security and such.
If you really want to have maximum flexibility I would consider some other form of trickery, like maybe a completely exposed setup .json file, or ingame settings or somesuch. If you have a backend, you could give certain clients custom privileges etc
There's also +AllowedConfigFiles=
yeah if we could cached the intermediate staged build and then just perform final operations on the already cooked/compiled game that could work but runuat doesn't seem granular enough to support that without heavy modification
In the end, if you have a builder setup already, saving say 10 minutes here or there might not be worth the effort, even cumulatively
it saves about 1.5hr by not rebuilding and it avoids risk of something in the environment changing or non-deterministic build result for any reason that could crop up when promoting from staging > production for example
wah that's a heavy build time : E
everytime i make a project, i have to include the maps in the packaged build in the project settings ?
5.3.2 i didn't have to do that, but 5.5.4 i did
guys i loaded assets using FSoftClassPath but now its not working in build
how to fix this?
is this just using hardcoded paths (bad) or is there a UPROPERTY somewhere that actually references the asset?
If I want to dynamically include modules depending on the build configuration I would do that in the Build.Cs of my including module right? But say I have a whole plugin like an imgui plugin for example and a custom module which extends that plugin for my own needs, how can I approach keeping it in builds only if I want to set some flag? Like say a shipping build could keep it if I need to debug something in shipping but I never want to actually include that plugin or module in my final shipped game?
I'm not sure if I am making sense but TLDR: I want to keep both a imgui plugin and module in my own game project only if a flag is set, otherwise strip it.. The module part I think Is simple enough I just set the do something like if Type != Shipping || bKeepDebugStuffInShipping (names are obviously for demonstration here but how about the entire imgui plugin since that is defined at the .uproject level?
Any help would be greatly appreciated
There are several options that I know of
- Whitelisting plugins per platform
"WhitelistPlatforms" : [ "IOS" ] - Using some pre-build scripting and CI solution like Jenkins, TeamCíty, Horde
- Using build arguments ( -ubtargs ) that can be read by ProjectDefinitions, for example:
if (Target.ProjectDefinitions.Contains("MY_CUSTOM_DEF=1"))
You can make as many Target.cs files as you want, and control what modules get built or which plugins are enabled from Target.cs
Usually for debug modules, you'd just control that by bBuildDeveloperTools (iirc), since that can correlate with the module type
So I have spent like an hour setting up a shared target rules function and shared base, I add the imgui plugin to disabled plugins if we are building shipping and no matter what I do I am still able to search for imgui in the binary and see entries.. I am definitely adding the plugin to the targets disabled plugins array though
I am trying to remove it entirely from a shipping build but still find myself unsuccessful
Well you probably have something there that is including it through Build.cs and that module is being included in the build
I'll check again but as far as I am aware only two modules directly reference the imgui module as a dependency in their build.cs and I check if the ReadOnlyTargetRules contains ImGui in the disabled plugins array, if so I dont add it as a dependency at all
Yeah nothing.
Plugin A has imgui as a plugin in the .uplugin file as such
{
"Name": "ImGui",
"Enabled": true,
"Optional": true
}
Inside of that plugin I have a module that depends on the ImGui module and that checks the ReadOnlyTargetRules like so before adding as a dependency
int Index = Target.EnablePlugins.FindIndex(PluginName => PluginName.Equals("ImGui", StringComparison.InvariantCultureIgnoreCase));
if (Index >= 0)
{
PublicDependencyModuleNames.Add("ImGui");
}
I also have a module in my project that depends on my plugin module and it does the same check as above before depending on it
My shared rules implementation reads as so
string ImguiDefine;
bool bEnableImGuiInShipping = false;
if (bIsShipping && !bEnableImGuiInShipping)
{
Target.DisablePlugins.Add("ImGui");
ImguiDefine = "IMGUI_KEEP=0";
}
else
{
Target.EnablePlugins.Add("ImGui");
ImguiDefine = "IMGUI_KEEP=1";
}
Target.ProjectDefinitions.Add(ImguiDefine);
Then all my own dear imgui code is wrapped in IMGUI_KEEP macros to strip them
Does anything here stand out
this seems oddly overengineered? Targets have bBuildDeveloperTools, which is off for shipping, and there's the module type DeveloperTool that only enables the module when that's true
It might be overengineered I agree but should this not work as is? I will try the developer tools approach I suppose and see but I figured this would accomplish the same thing
Typically I would have a module for my developer tools, that would be in the uproject/uplugin as DeveloperTool, and that being the only thing depending on ImGui
typical usage of optional plugin dependency would be
Plugin D has one module: ModuleD
Plugin A has optional dependency on Plugin D
Plugin A has two modules: ModuleAA, ModuleAB
ModuleAB has a dependency on ModuleD
this way any Project that uses Plugin A can always use ModuleAA
and add dependency on ModuleAB under condition that Plugin D is enabled.
to package Plugin A - you must have Plugin D present
If I want to dynamically include modules depending on the build configuration I would do that in the
in your game module you would add the dependency
if (Target.bBuildDeveloperTools) PrivateModuleDependencies.Add("ModuleAB");
here you can also manage that define
devtools usually simply use appropriate host type, and automatically excluded without any additional magic and just checking #if WITH_EDITOR or with dev tools
I've changed the imgui plugins own module imgui to DeveloperTools, my own plugin that depends on imgui also as a developer tool and the other module as a developer tool and then I have the same branch as above but I also added Target.bBuildDeveloperTools = true/false depending on the branch.
I'll let you know if the final binary still has mentions of imgui directly from imgui
Seems to have worked 🎉
Still not sure why my original approach did not though..
No matter what I try, I can't get the inverse to work or compile at all. I can exclude it easily but nothing I do will allow a developer tool in shipping, which was my goal in creating a dynamic way to keep it in shipping if needed but most of the time I wont need it
I hit this every time, even in an empty fresh project.
UATHelper: Packaging (Windows): ERROR: Non-editor build cannot depend on non-redistributable modules. D:\Dev\Path\MyProject-Win64-Shipping.exe depends on 'Settings', 'AITestSuite', 'MassEntityTestSuite', 'DesktopPlatform'.
UATHelper: Packaging (Windows): Dependant modules 'Slate', 'MassEntityTestSuite', 'MassEntity', 'RenderDocPlugin'
UATHelper: Packaging (Windows): Non-editor build cannot depend on non-redistributable modules.
UATHelper: Packaging (Windows): Result: Failed (OtherCompilationError)
@winged moss @gritty helm
Are you both sure developer tools is what I want here?
I don't have the appropriate information to know what's your module and what isn't and I'm sure it usually shows the Build.cs chain in the output
what i am trying to find out is are you absolutely certain you can use bBuildDeveloperTools in a shipping build via a target.cs
Even inside of a blank project, I still get this error is why I ask
For example a blank project with a single newly created plugin and I set the plugins module type to be DeveloperTool and in the proejct.Target.cs I enable bBuildDeveloperTools it errors
I implore you to try it if you get a chance and let me know how you go but from what I can tell it is a no go for shipping.
Why would you? That's what test builds are for...
Well I suppose I don't know much about them. Are they 1-1 with shipping builds? As in, if I crash only on shipping due to something I am doin in debug/development saving me but in shipping it is no longer there or whatever may be causing a crash in shipping only, is it going to happen in test as well. I just don't know anything about test builds at all. I am fairly new to the world of build practices with unreal, I have spent most of time writing code and not dealing with packaging shipping builds and distribution things.
Test and Shipping aren't the same, they're close... but Test builds till have things like console enabled and some developer tools like debug camera etc.... but it is closest to shipping as you can get unless you actually build shipping
here... finally found the table ... took me a while
it's part of the presentation Ari did few years back about debugging... here's whole article https://dev.epicgames.com/community/learning/tutorials/dXl5/advanced-debugging-in-unreal-engine - the table is in the "Build Configurations" section (duh)
Thank you for that
Hello guys I have a problem when I try to package for windows my ue5 project, I got this error :
UATHelper: Cooking (Windows): /Engine/Generated/Material.ush:3659:27: error: no matching function for call to 'asuint'
and then I got the knowned :
UATHelper: Packaging (Windows): BUILD FAILED PackagingResults: Error: Unknown Error
(I update visual studio, Drivers, create virtual memory on my ssd, resave and recompile the project, restarted my computer and all the basics stuff)
I just update my project to UE 5.6.1 and I never got this error, if anyone have any information to fix this I am open, Thank you !
hmm, this is certainly weird one, since asuint is a HLSL keyword/function that should exist for sure (https://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlsl-asuint) and it has existed since SM4 which is DirectX 10
do you have bit more context as to what specific material is failing or just this?
since it is highly likely that it's a broken/corrupted material
My project use SM5, I have completly no idea which material is cause this problem
if you check whole log this error should come somewhere in the middle and nod just in the summary... and around that area there should also be "Cooking XXXXX"
yeah, asuint exists since SM4 and it just means that the material is trying to pass something into the asunit function which it can't accept
Yeah thx, I will check this when I come back to my mc
@proven stone I fixed the problem thank you, yes it was a specific material which was not compatible with 5.6 so I reimported the texture and I remake the material now it's worked
Hardcoded, oh is it bad? What's the best way then? Direct reference set from bp?
of course it's bad. hardcoded paths are extremely volatile and the cooker won't know anything about them
that's why BPs are typically used for asset references, UDeveloperSettings are also very useful
Hey! I'm just wondering if anyone has been able to package their project as shipping in 5.6? No matter what I do it ends up being a developer build.
what process are you using to initiate packaging?
I can confirm that using UAT/UBT works just fine
Thanks for the reply! I've been trying the Project Launcher and the normal short cut, havent tried UAT/UBT before. I'll give it a go, thanks.
pushd "%~dp0..\..\.."
call .\Engine\Build\BatchFiles\RunUAT.bat BuildCookRun -p4 -project=./MyGame/MyGame.uproject -cook -stage -archive -archivedirectory=./MyGame/PackagedDev -package -compressed -pak -prereqs -targetplatform=Win64 -build -target=MyGame -clientconfig=Shipping -utf8output -compile
pause
This is what I use for local packaging in the most simple way, I have this in MyGame/Build/BatchFiles/RunLocalPackage_Shipping.bat
You might need to tweak some flags like -p4 if you're not using p4... or path to the RunUAT.bat if you're using build from epic games store etc.
Thanks for that, I appreciate the help!
thanks, now i moved everything to UDataAsset and using reference through udevelopersettings
i think we cant use this, i got this error when i tried to use asset refernce in udeveloper settings
Not allowed to use 'config' with object variables [UnrealHeaderTool Error]
well, you can't use TObjectPtr, you either need to use TSoftObjectPtr, TSubClassOf or TSoftClassPtr etc.. i.e. anything that's just a link/path to a file rather than whole hard reference
because developer settings and CDOs in general are initialized relatively early during engine startup where some of the systems are not yet fully established... and hard reference would require the asset in question to become loaded... resulting in a crash in 101% of the cases from my experience
once you have your class or soft pointer simply call .LoadSynchronous() on it... (do not use .Get() since that in most cases will return nullptr unless the asset was previously loaded somewhere else) - or better yet, use Streamable manager/Asset Manager or AsyncMixin to load the data asynchronously, although those are bit more advanced topics/ways of doing things
thanks i am using TsoftObjectPtr now(worked), and i async load it in my initialize of gameinstance subsystem
yeah , i had this issue too, now i use once i load the asset
Did anybody ever encounter this error during packaging? I can't find where it is setting the -cookonthefly flag. I have deactivated it in the platforms dropdown and in the project launcher but the packaging always fails with this error.
"Can't use both -cook and -cookonthefly"
I am using a fresh build of the Meta fork for the engine
Can anyone give me some guidance on how to make a demo of my game? It's a fairly large open world so I don't want players to have to download the whole thing. I was thinking about just copying my project into a duplicate and then creating a boundry for the demo and deleting assets that arent visible outside the boundry? I just feel like there might be a smarter way to do it?
The answer I gave in the other channel is relevant
you should have source control so copying the project is redundant
tee hee i dont have source control setup but you are correct, I should do that and it will solve the duplication problem
Well you should do that immediately
At least the approach there is that you could make a demo release branch
You just need to create a new target for your demo, if you want to change the map then it can be done in the custom config.
using UnrealBuildTool;
using System.Collections.Generic;
public class MyGameDemoTarget : MyGameTarget
{
public MyGameDemoTarget(TargetInfo Target) : base(Target)
{
GlobalDefinitions.Add("MYGAME_DEMO=1");
CustomConfig = "Demo";
}
}```
making a branch is also interesting though
In the other channel I also suggested modifying a copy of the existing map. If it was separate levels then you could just cook the maps you want to include, but it sounded like the game was a single open world
yes it's interesting I didn't think of that when I made my demo target
having the Target.cs is still useful though since you can gate functionality pretty easily
Yes the issue at hand is that most of my game is one large open world level with a few smaller levels. I don't want to package the whole open world in the demo which is why I'm here. I think modifying a copy is the best route.
Yeah it seems more straightforward even though with custom config you can do whatever you want. Found that trick in Lyra's code
Hi! I have recently updated to UE5.6 (git, release branch), but not able to package my project because of this error.
[dotnet build] D:\Software\UE\UE_5.6_Git\Engine\Source\Programs\AutomationTool\AutomationUtils\AutomationUtils.Automation.csproj : error NU1902: Warning As Error: Package 'Magick.NET-Q16-HDRI-AnyCPU' 14.7.0 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-6hgw-6x87-578x [D:\Software\UE\UE_5.6_Git\Engine\Source\Programs\Shared\EpicGames.ScriptBuild\EpicGames.ScriptBuild.csproj]
I tried to google it and on forums people say that I need to update some csproj files and set version of Magick.NET to 4.7.0. But as I can see the version is already 4.7.0.
Does anybody know any other ways to fix this issue?
I have also tried 4.8.0, same error
Oh, I just noticed that with 4.8.0 those are not errors, but warnings.
You can use 14.8.1
Here I go again with my errors
I solved a lot of them but many errors like these ones at the top I don't understand
for example... what the fuck does this mean?
LogOutputDevice: Error: [Callstack] 0x00007ff829641c6f UnrealEditor-AnimGraphRuntime.dll!UnknownFunction []
You’ll need to uppgrade the library to 14.8.1 as others have said because there are security vulnerabilities in the library, here’s a diff of what needs to be changed (this was updating to 14.8.0 because thst was before latest round of vulnerabilities #automation message)
Please install debugging symbols from epic games launcher… it will help identifying what function it is
is that a plugin?
Epic. Games launcher, if you open the details for your installation then there will be an option to install them
Am not by the pc so I can’t send more precise instructions
ok ty
Enabling debugging symbols makes it possible to meaningfully debug crashes and step through code, but increases build size and time.
ok I guess, I'll use it to learn what the problem is and then I will turn it off.
But I haven't used a loooot of C++, is C++ learning required to understand how to debug my packaging errors?
So far I've only been a beast in blueprint but never really delved into a lot of c++ although I can kind of understand some things because it looks similar to other languages i used before
This Magic thing : it looks like some Gauntlet issue. Are you even using Gauntlet testing?
Regarding c++ needs, generally no, you don't need to master c++ to solve packaging problems. Being able to read code is def a plus of course : )
I can read but not write anything in c++
yes
what is Gauntlet?
No, I dont think im using anything called Gauntlet
So, upfront, I haven't had this issue, but am interested to understand why it would be a problem for you.
Groundwork :This Magick thing is included, as far as I can see only in Gauntlet.Automation.csproj:
<Reference Include="Magick.NET-Q16-HDRI-AnyCPU, Version=7.24.1">
I assume you might be able to change the version there, but would that cause new issues? perhaps worth a try.
The question though, for me is how come Gauntlet is being included in your packaging process if you are not actually running any automated testing...
Another observation : this is "Warning As Error" - that means we could be just skipping this problem completely. Are you using Visual Studio or Rider to compile your game project, or is this blueprint only?
blueprint
I tried to generate some c++ file before but never really actually did anything with it so I deleted it again some months ago
could it be related to the fact that I tried something like this before, I might have clicked here
It only affects UE 5.6 where epic some advanced enabled auditing .... and Migick.NET is ancient (as in first released in 1990) image manipulation library... and recently there's been a streak of CVEs found within the library
and since epic treats warnings of this sort as errors it fails to build pretty much everything because the libray is inlcuded by couple of unreal's build and automation infrastructure.... (AutomationTool, AutomationUtils and Gauntlet) ...
The easy way t oget rid of this issue is to simply update the library version, currently to version 14.8.1 - in three csproj files, as seen here #automation message (this was posted before 14.8.1 was a thing, so it references 14.8.0 so just change the number)
afterwards everything will work or do following fix:
Change 19219 by {REDACTED} on 2025/08/28 04:05:11
Disable nuget audit for the dotnet Development configuration.
Nuget packages will continue to be audited for other configurations as these are urgent issues to address, but this will prevent blocking errors for licensees and CI while they are addressed.
#submittool SubmitTool-Development-5.5.3.CL-18723
Affected files ...
... //{REDACTED}/Main/Engine/Source/Programs/Shared/UnrealEngine.csproj.props#6 edit
Differences ...
==== //{REDACTED}/Main/Engine/Source/Programs/Shared/UnrealEngine.csproj.props#6 (text) ====
33a34,36
> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Development|AnyCPU' ">
> <NuGetAudit>false</NuGetAudit>
> </PropertyGroup>
As this is what epic themself chose to ultimately do too (CL description is taken from change description on epic's side)
is there a tip to speedup deployment on console ? It looks like it redeploys everything even when I made absolutely no changes to the game...
with full deployments using packages, no there's not... you could use zen streaming to stream uncooked builds from your machine to the console... it's not representative of the final cook, but it speeds things up since instead of full deploy you only deploy the binary and then stream assets over the network
which from my experience on my home network makes time between starting the deployment and actually playing close to a minute instead of 15-20 😄
It's kind of weird because it seems that unreal touches all the uasset files even without changing them, which causes the tools to send them again to the console... This is silly
how would I go about setting up my project to generate different builds targeting different stores? most recommendations seem to be: 1) use different branches so each branch can carry different configuration files (to configure the online subsystem, for example) or 2) add .target.cs files and set CustomConfig = "Foo", which only works for source builds
seems like a very basic thing, but I just can't figure that out
- is still the best option but if you're deadset on an EGL engine for whatever reason, you should be able to inject a static config layer even though it's a little more jank than CustomConfig
we use ifdefs
passing argument to runuat
-ubtargs=<your custom args>
reading them in
[CommandLine(Prefix = "-ProviderX")]
public bool ProviderX= false;
ProjectDefinitions.Add(ProviderX? "PROVIDER_X=1" : "PROVIDER_X=0");```
I was trying to avoid source builds this time around because I did this a while ago on a different project and ended up spending a lot of time fetching and building the engine rather than creating a game...
It's not source engine dependent, just c++ project
sorry, was replying to sswires' comment
@Karma how would you go about customizing .ini options using that? or do you just skip the configs and do it all in code? (not sure if that works for things like the online subsystem configuration)
For .ini manipulation ( and the whole build setup ) we use python scripts ( and jenkins runs the whole show )
I see... source build doesn't sound so bad then 🙂
Depends, I would maybe be more worried having to remember to keep multiple ini files synced
I think I prefer having one and adjusting it as needed
I was kind of hoping for something really simple like statically, version-controlled .ini files that would be picked up depending on whatever configuration I want to build
although, even with different targets configured it's not entirely trivial to build them other than with RunUAT
I mean, build testing the configuration right from within the IDE doesn't seem to work
probably not something that's very useful to begin with, I suppose
I think CustomConfigs might be the correct way in reality... we just went down an old known path
Another question for us, that would actually be good to know is how granular it is, like we have 2 or 3 different flavors of android apk - if it is just platform variants, and not fully configurable, that wouldnt work out
my understanding is that you can set CustomConfig to whatever value you choose and it'll then basically create a complete .ini config layer in a directory named after that
And presumably just add/overwrite very specific things
so you could probably have however many variants as you'd like but simply adding .target.cs files for each and setting different values in those
I will have to check it out before starting next project : )
are those Python scripts run via the target.cs files, or outside of RunUAT?
Theoretically any plugin/custom store code/etc that can run on PC should be able to be tested on PC Editor
We have a master build.py which goes through a long range of actions, pre and post the actual runuat. We have crossplatform game so there's a lot of variety in setups and plugins, and then theres dev, staging, shipping...
I might've been doing it wrong; I was naively adding GameEGS.target.cs and GameSteam.target.cs files and they did show up in the IDE, but when I tried to run them, it gave me an error that the corresponding directory didn't exist in the project 🤷
passing -target=GameEGS to RunUAT did work, so I assumed that was the way it was meant to be used
Hmm... done a full cleanup and rebuild? ( intermediate + binaries )
haven't tried that... but it also looks like the projects in the solution aren't complete for some reason
the project that it created by default has all of the sources included, but the EGS and Steam variants don't
trusty old Visual Studio will actually run the build, but it doesn't actually compile any files
I'm probably probably doing this completely wrong, but I'm mostly just guessing, haven't been able to find any references to look at
I'm fairly certain you need a full rebuild to have a target switch work ( based on : if we have say "moduleX" enabled or disabled in our base config, and we change that on the fly, it won't kick in until rebuild )
D'oh! I was only adding TargetType.Game targets and then tried to build with the "Development Editor" configuration selected, which doesn't work
if I add TargetType.Editor targets, they work with that configuration
it's still not quite the same as with the default project, because that seems to automatically switch between the Game and Editor targets depending on what configuration I select in the IDE
You fetch the engine once per release and you build the editor once, and if it's a native project then it only builds what's required. But packaging should be delegated to CI anyway
And even with a binary build, you don't really need to use ubtargs, you can define separate targets
yeah, at the time I was tracking ue5-main, so it ended up being a bit wild
it was surprisingly stable, though
Unless you have a good reason, I would definitely stick to the release branches. If you need a fix from main it's better to just cherry pick that individually
I do this as a hobby, so my reason is "learning" and getting the latest and greatest seemed like a good idea to achieve that
fully agree that it's a bad idea for production
It's not really representative of what a studio would be doing, even in pre-prod. Main is just a development trunk so the stability and completeness of old and new features will be pretty inconsistent
When a preview version comes out, that upcoming release would've been branched so that might be a better drop off point to test the latest and greatest
it's not exactly bleeding edge at that point anymore, though 🙂
anyway, yes, if you want to actually release something, definitely not the way to go
I never quite figured out how to get off ue5-main and onto a release branch
I tried once (for 5.6, I think) but ended up unable to open the project because the assets had all been saved by a newer version
You should be able to switch the branch and pull
And yes that's also another reason to not use main
Assets are stamped with that version's ...version and are not backwards compatible
it might've worked if I had caught the right branching point
For a real project you'd likely be making a branch to prepare an engine upgrade as well
release branches are branched off of ue5-main at some point, though, so if I time it right I should be able to continue on the release branch instead of ue5-main, right?
when a release is branched, main will be updated for whatever the next version number is
right, so if I track ue5-main and then 5.7 is branched, I should be able to branch to 5.7 if I decide to stick to that
that way I should be able to get out of that uasset versioning thing
incidentally it looks like 5.7 was branched just a few days ago, so maybe I should give that a try
Hello
I want to automate the build and packing of android game using Jenkins. How to properly hide Android KeyStorePassword during build process?
I see the following solutions, but they have disadvantages:
-
Use a script to write KeyStorePassword value directly to DefaultEngine.ini before starting the build. Roll back DefaultEngine.ini after packing finish.
Problem: What if the key can be retrieved from the apk? Or is it not worth worrying about? -
Override KeyStorePassword value by UBT cmd parameter -ini:Engine:[/Script/AndroidRuntimeSettings.AndroidRuntimeSettings]:KeyStorePassword="PASSWORD"
Problem: Password string will be write to build log file, where other team member can see him. Perhaps there is a way to hide key in log?
What other solutions exist to this problem?
we should really be in #automation but let's see
we use python scripts to set the .ini values
we have assumed the password could not be data mined : E
( we are not trying to erase it after build process either )
so I was able to confirm this... getting off the ue5-main train works if you switch to a release branch when it's created, but you have to make sure your last build before the switch was based on a commit before branch point
once past the branch point, all the packages would get saved with the new version, which means you'd need to wait for the next release to make the switch
Thanks for the answer.
I found that KeyStorePassword gets removed from packaged builds due to IniKeyDenylist=KeyStorePassword entry in BaseGame.ini (Along with other secret data)
nice trace! perfect
Hey there having an issue on 5.6 where when I put my game on steam none of the multiplayer lobbies are showing
Does it cause you to crosspost too?
didn't know which one was suitable and this one is empty
Hello, I am not sure if this is the correct place (hopefully it is).
I downloaded UE from git, created project and tried to build/package it with UAT, but it says that my Win.Automation.dll and other automation dlls are missing. I looked on the internet and they said that those should have been downloaded with launching Setup.bat which i launched several times. Did anyone encounter missing automation dlls?
Previously when I was using epic launcher solution - all dlls are in place and project packaging runs fine.
Did you build the entire source to get the dlls?
(or whatever else might be missing)
Hello @mystic atlas , I opened the UE.sln, added my project (add existing), then on my project solution I generated vs files again. In VS I did do the solution Build (took around 4 hours). I guess this should generate everything necessary right? But it might be, that I did some steps wrong or in wrong order.
The first 2 steps weren't really necessary. And, yeah, that should have built everything.
I now opened just the Engine solution and its building something, but at start it still listed AutomationTool errors, where it could not find the Automation.dlls - hopefully they will be created in some other build phase.
first time packaging and getting this:
PackagingResults: Warning: Visual Studio 2022 compiler is not a preferred version
PackagingResults: Error: Unknown Error
i spent a lot of time fixing bugs but now left with this, AI said the visual studio warning wouldnt stop the packaging, where do i start with this?
blueprint only btw, i have not written any c++ on this project
You didn't need to involve an LLM that was always going to spout gibberish. This issue is so common it's the 2nd from the top pin
fun thing i got really close to that. but didnt see the individual components, give me a moment
i think im a step further, but it looks like this now:
LogStreaming: Warning: Failed to read file '../../../Engine/Platforms/VisionOS/Content/Editor/Slate/Launcher/Platform_VisionOS_128x.png' error.
LogStreaming: Warning: Failed to read file '../../../Engine/Platforms/VisionOS/Content/Editor/Slate/Launcher/Platform_VisionOS_24x.png' error.
PackagingResults: Error: Unknown Error
idk why visionOS is there, i cant find it active anywhere
Well that says "warning" anyway. Can you share the full log?
trying to cook atm, give me a moment
full log, do you mean just all the text or the appdata logs?
cooking succeeded, trying to package again
Either. Because the last thing you see isn't always the problem
And these shouldn't be two separate manual actions anyway
found a fatal error LNK1181 in the logs, give me a moment to google it and see if i can figure it out my self and if not ill post the logs
seems there still is something missing from my visual studio, mind taking a look at what i have checked? also, does it matter if i have multiple of the MSVCv143 build tools just to be safe i got the right one? im pretty clueless on this part
Can you just share the actual error?
But we'll steal his project!
issue should be here:
no, i just like to try and fix it my self first, and if its a dumb error i dont like to bother others with it too much
You're causing more bother by not giving the actual log so people can look at it.
should i post the entire log or is this enough?
delayimp.lib should come from the MSVC toolchain
can i add multiple to be safe or is that bad?
i also found it should be the msvc, the pinned node specified which one i should pick, but can i also include the newest etc or does it have to be only that one
can you show what with "14.38" in the name you have checked
it should be present on disk
I asked to show what you installed in the VS installer
under "individual components"
search 14.38 and show what you ticked. this definitely does not look correct
yeah that's not what the pin told you to install. that's the ARM toolchain
there's one specifically for x86/64, the CPU type you're actually compiling for
give me a moment
okei it worked now, wish i had asked for help yesterday but at least my log is bug free now
sorry for missreading, i really tried to read it many times to be sure but sometimes i still overlook things
Hey there having an issue on 5.6 where when I put my game on steam none of the multiplayer lobbies are showing, using advanced session btw
Reposting this again and again won't really help you, your best bet is to either check logs for what you're missing or go ask at the discord for Advanced sessions... the plugin is made by the same author behind VR UE... since I'm 99.9% sure they'll be able to support you on their discord
idk how to see the logs, its pushed to steam theres no logs.
make a development build then
you can have logs for shipping, but requires a source build
its 5.6 normal not source
When I check the game in editor it runs like this, when I run the packaged game it uses 50% of my CPU, is this normal? it does however not change the usage much when i perform different actions even when trying to push it.
I removed all binds I could find, i also noticed the cpu usage drops with a few % every time a "tick gate" is opened and goes back up when it closes
sorry if its the wrong place to ask
how does cook on the fly works
when i add/edit assets it will cook them ?
for testing i just enabled it and didnt see anything in the console, i expected it to start cooking what isnt cooked
Yeah I was just stating what you can do with a source build
But a dev build will likely help you diagnose
And that's something you can do with the EGL engine
DebugGame Editor rebuild (from git) causes
190>CSC : error CS0006: Metadata file 'D:\UEProjects\UnrealEngine54\Engine\Platforms\VisionOS\Binaries\DotNET\AutomationTool\AutomationScripts\ref\VisionOS.Automation.dll' could not be found
190>CSC : error CS0006: Metadata file 'D:\UEProjects\UnrealEngine54\Engine\Binaries\DotNET\AutomationTool\AutomationScripts\Platforms\Windows\ref\Win.Automation.dll' could not be found```
How to get those dlls?
yea thanks, still any idea on the issue is appreciated i tried a lot
I'm not sure what exactly is happening here. I upgraded from 5.5 to 5.6.1 (source engine) and I've tried this with the 5.6 binary engine too. But every time I package it's always returns an error of this:
PackagingResults: Warning: 'UStruct::IsChildOf' was called with a null 'this' pointer - this is no longer supported. UATHelper: Packaging (Windows): LogWindows: Error: appError called: Assertion failed: IsThisNotNull(this, "UStruct::IsChildOf") [File:F:\creddick_DOA_main\Engine\Source\Runtime\CoreUObject\Private\UObject\Class.cpp] [Line: 2758]
I've tried Reloading, Refreshing All Nodes and Compiling all of the blueprints. It's never the same blueprint it's compiling right before the error occurs on packaging either. I've tried quite a bit at this point. I'm not sure if anyone else has been encountering this too?
Hello, I migrated my project from 5.5.4 to 5.6.1, and without adding any assets and using (as far as I can tell) equivalent packaging settings, with the same maps selected for cooking, the output size increased from 2gb to 8gb. Are there any resources on how to optimize the output size, ideally for 5.6 specifically?
I cannot get my assets to package into a small chunk
no matter what it just disrespects all my chunk settings, whether manual, via asset label, using directories to always cook
Get my 12 hour course on how to make 2D games with Unreal Engine:
https://tinyurl.com/Ultimate2D
Support the channel on Patreon:
https://www.patreon.com/CobraCode
Write up with additional information:
https://tinyurl.com/UnrealTiny
This video is the Ultimate Guide on how to reduce packaged game size with Unreal Engine and make your executable...
lucky you I came across this while trying to fix my packaging issue
oh you did post here. you'll probably need to share what your settings are, and the process you're using to package your project
I'm only trying to package a small mod and there are so many relevant settings idk where to start 😅
I just came across asset manager settings and theyre not good so I'll try that first
I managed to fix it somehow
I think it was clearing the asset manager of silly settings that came from who knows where
Thanks, this helped reducing it by 1gb, but the size is still massive compared to what it used to be. Are there any tools to profile asset size pre or post packaging?
I found this tool that did what I need. However to make it show the sizes and not just the assets, I had set this setting in project settings as shown. The tool then can use the .ucookedmeta file in <project_dir>\Saved\Cooked\WindowsClient<Target>\Metadata
I figured out my issue, it was a bug/unexpected behavior with third party plugin (wwise in this case, had to uncheck "Package as Bulk Data" in plugin project settings, it duplicated the entire sound bank for every event)
and here's me not even able to package a single soundbank lol
glad you got it figured out
Is there a way to get RunUAT.bat BuildGraph BuildEditorAndTools with a foreign project(ie, the game project is not under the engine root)?
With cooked output now being stored using the Zen system in 5.6 (as opposed to loose files in the saved/cooked folder), does this mean it's no longer possible to see an overview of cooked files? I liked being able to check the loose files in saved/cooked folder to see if any unwanted assets or directories were getting cooked, but from what I can tell, this is no longer possible?
Nvm. It seems you can output loose files again by selecting "Loose files (legacy)" option in the new project launcher. Previously I tried disabling anything related to using Zen in project settings, as well as in the project launcher, as well as disabling Zen autolaunch in BaseEngine.ini, but none of those things seemed to stop cooked output from going to the Zen local storage location
hi guys i am trying to upload my ios Build
ERROR on validation This app was built with the iOS 17.5 SDK. All iOS and iPadOS apps must be built wit
UE 5.5.4 and xcode 16.4
so, do you have correct OS and XCode for your unreal version?
no
this old looks like for UE4
ah, this is the requirements page: https://dev.epicgames.com/documentation/en-us/unreal-engine/ios-ipados-and-tvos-development-requirements-for-unreal-engine?application_version=5.5
unreal docs can still be a bit of a mess
Did u solve this?
having the same error
try to
- refresh this blueprint Nodes
- Create a copy of same struct and use this one instead
- Change the location of the current struct or class
I have macOS 15 Sequoia , i can not install xcode 15 not supported
no offence, but chatgpt?
the error doesnt even tell which struct or blueprint, as the previous guy said
with debugging symbols and logging
not chat GPT but i have the similar error when I upgrade my project and have two rewrite plugins.
for me also refresh doesnt work , but said it maybe will work for you , but in my case it was the exact blueprints name.
I have a game based on Lyra and I'm trying to remove as much as possible from the cooked content. It looks like many things are getting cooked that we don't use in our maps. I've removed everything in "Assets to Scan" (except the game feature data which is required), both in the project and in the plugins assets. I set the default map and game mode to the default UE ones; in the list of maps to cook, I've chosen just the default UE template; I've deleted the Primary Assets labels that are on the root of Content (game content and plugins content); but still I'm getting 5000 unused assets coming along
you'll have to attach to UnrealEditor-Cmd.exe to actually see
but BP structs are semi-cursed for stuff like this
I've already emptied all the "assets to scan" in each gamefeature plugin
I finally got this all working and wanted to post some notes to help the next people.
-
Do not use UnrealPak tool directly to unpak/repak. I got this working for our windows build to only find UnrealPak doesn't support unpacking on linux which blocked our dserver builds. afaict superficially its because of the hard-coded slashes for pak file path here - https://github.com/EpicGames/UnrealEngine/blob/release/Engine/Source/Developer/PakFileUtilities/Private/PakFileUtilities.cpp#L4056
-
Instead I utilized RunUAT and split into two parts. Our build steps cook+stage (override -stagingdirectory) and publish that as an artifact. Our deploy steps later are able to use RunUAT to -pak -skipcook -archive. The only weird parts were where I had to copy from our loose build into the Saved/Cooked dirs. Would've been nice if I could just run the commands on the loose build in place by -skipstage and -stagingdirectory but that didn't work
Anyway hope this helps someone one day
Not yet. Something odd be happening with packaging builds because of this error :/ .
I've readded rules like this in the Project Settings, as well as in the data of every plugin (with their respective directories), but there are maps still being cooked while I don't reference them
Ok sooo, I managed to solve my issue. Here's what I found/did to fix it:
During the build I ensured I had a very strong verbosity with the logs
[Core.Log]
LogBlueprint=VeryVerbose
LogCook=VeryVerbose
Adding this to the DefaultEngine.ini to get a better look at things in the log when it's cooking
What I found out:
- I think for those at least in Source Control and for me at least, The files it hangs up on before hitting the IsChildOf is null stuff in the log, I rename the asset, clean the redirectors, push to Perforce, Re-name it back to what it was, clean those redirectors again, push to Perforce. It seems to resolve those issues (Keep in mind that is if you don't have any questionable structs being bad if that is the case, would go through the blueprints and refreshing all nodes on those blueprints :/)
- I had one last pesky problem and it was actually a bad map. It didn't show open as a bad map in editor, but packaging, it reeaallyy did not like packaging that map. Luckily in my scenario it was a development throw away map. Just created a new map and had that as a development map and deleted the old one. That seemed to finish the job with my last hiccup
I hope this helps for those having the Struct::IsChildOf is null issue!
Keep in mind I've been figuring this out for a week and a half now 😅
(I've set all cook rules to Unknown instead of Always Cook of course)
Slight tangent but that sounds like you're cooking your development maps. It would be best to only cook what's needed
True, but in our dev cycle we want to include that map. The game is not released yet, but its for smoke testing as well on a lot of things.
Hi I tried to zip my project into a connected USB drive, does anyone know what this is?
no matter what I press it doesn't let me save
UATHelper: Packaging (Windows): at AutomationTool.Automation.ExecuteAsync(List1 CommandsToExecute, Dictionary2 Commands) in D:\build++UE5\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\AutomationUtils\Automation.cs:line 270
UATHelper: Packaging (Windows): at AutomationTool.Automation.ProcessAsync(ParsedCommandLine AutomationToolCommandLine, StartupTraceListener StartupListener, HashSet`1 ScriptModuleAssemblies) in D:\build++UE5\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\AutomationUtils\Automation.cs:line 164
UATHelper: Packaging (Windows): (see C:\Users\user\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Program+Files+Epic+Games+UE_5.4\Log.txt for full exception trace)
UATHelper: Packaging (Windows): AutomationTool executed for 0h 0m 22s
UATHelper: Packaging (Windows): AutomationTool exiting with ExitCode=1 (Error_Unknown)
UATHelper: Packaging (Windows): BUILD FAILED
PackagingResults: Error: Unknown Error
I get this error can anyone help?
It would help to post a more complete log of the error
i cant send it because of the discord's limit
i can dm it to you part by part if you wanna try to help
but just give me 15-20 mins i got work to do rn
Just send the whole file as .txt
I'm not going to do stuff over DM
You can attach files directly to discord, or use a pastebin/gist
uh i didn't know that
wait a sec
@summer dock @winged moss
This looks like you're using a custom icon that can't be read
uh i changed it
actually i just used another method to create an ico file
it works now
thx mate
Hello, sorry to bother you, but were you ever able to fix this issue?
Can anyone help me out with the rules for including non-stock fonts in shipping packages? I have a project that packaged shipping runs fine when I use the stock Roboto font, but if I swap the single UI data asset reference to point at the imported font, the shipping crashes immediately at start up when it tries to find said font. All the FontFaces are set to inline to be sure they're packaged inside the uasset.
I can't say I've ever had grief with fonts. What is the crash?
PistePerfect-Win64-Shipping.exe!UObjectBaseUtility::GetInterfaceAddress(class UClass *) C++ PistePerfect-Win64-Shipping.exe!FSlateFontInfo::GetCompositeFont(void) C++ PistePerfect-Win64-Shipping.exe!FCompositeFontCache::GetFontDataForCodepoint(struct FSlateFontInfo const &,char32_t,float &) C++ PistePerfect-Win64-Shipping.exe!FSlateTextShaper::PerformKerningOnlyTextShaping(wchar_t const *,int,int,struct FSlateFontInfo const &,float,class TArray<struct FShapedGlyphEntry,class TSizedDefaultAllocator<32> > &) C++
Etc... I've scoured through various settings and the only thing that fixes the crash is reverting the imported font to Roboto. The Editor runs fine.
This is pretty badly formatted, but you probably need to catch this in a debugger. For example what is FontObject?
Apologies about the formatting - this is my C&P from Visual Studio catching the crash. I just grabbed the top of the callstack. FontObject is likely to be my FSlateFontInfo from the data asset I'm using to inject the desired font import.
well you need to sure sure that everything is set as expected using the debugger
but saying you're "injecting" a font does make me think you're doing something non-standard
Hey, i m trying to copy files after the packaging in the root of the output directory using PostBuildSteps
I found a TargetOutputDirectory variable but it doesn t seem to be evaluated, any ideas ?
I usually am... 🐒
I eventually sorted it by some combination of setting a PrimaryAssetLabel that explicitly cooks the asset pointing at the font, and then pinned that DataAsset in a UPROPERTY after it was loaded. I think the latter was possibly the key ingredient.
checks notes Yep I am still me.
It's weird. The more that's building, the more I'm connecting the dots on this issue. As soon as I think I have the issue resolved, it shows its head on the Struct::IsChildOf issue again.
That being said though, whenever new changes come in from Source Control, that's when it seems to fail the build. What seems to never fail after what I did after prior to all of the Blueprint recompiling, refreshing, and renaming and naming it back again, it seems to delete the DerivedDataCache, Intermediate, Saved and Binaries whenever new changes come about and then build, so far, build successfully. Never had this issue prior to UE 5.6.1 . Maybe something changed on cooked content after new changes from Source Control come about and Unreal doesn't know what to do about those previously cooked changes when packaging? Because when doing it again right after, it fails
Donating my cook log for the UStruct::IsChildOf/Exception access violation cook error since 5.6.1
when I try to uploadn my game with steampipe build uploader I got those error code. how can I fix it. There is no place here where I can enter the SteamGuard code.
ERROR: An error (-102) has occurred during uploading. Please check you correctly entered your credentials and steamguard code if applicable.
when steamcmd expects a steamguard code it'll prompt you
if this is the only useful information you see, then I would do the first thing, check your credentials
steamcmd opens and immediately closes. all my credentials correct I checked them few times
C:\Users\yasar\OneDrive\Masaüstü\sdk\tools\ContentBuilder\builder\steamcmd.exe +login XXXXXX "XXXXXXXXX" +run_app_build "C:\Users\yasar\OneDrive\Masaüstü\sdk\tools\ContentBuilder\scripts\app_***********.vdf" +quit
*** ERROR: An error (-102) has occurred during uploading. Please check you correctly entered your credentials and steamguard code if applicable. ***
anyone have a helpful guide to packageing on mac? I got a mac to port my game over with but im haveing trouble figureing it out
follow the docs for your engine version https://dev.epicgames.com/documentation/en-us/unreal-engine/macos-development-requirements-for-unreal-engine?application_version=5.6
possibly relevant : https://dev.epicgames.com/documentation/en-us/unreal-engine/using-modern-xcode-in-unreal-engine?application_version=5.5
Does anyone have any tips for packaging and cook settings for Landmass? I keep getting errors and can’t find anything online
'''Post errors'''
Removing some of these assets can result in a broken Landscape Editor (Engine crash on landscape editor load) The temp fix im using right now is simple and listed below, go into the source, find and nuke the reference, these assets have no impact on my editor / packaged build when the edits below are performed, im not entirely sure but i assume...
Incase anyone has the same issues
please post as text ( or .txt file ), easier to read + copypaste stuff
ah I guess you found the solution
Could anyone tell me why my game is seeing UDP messages when in the editor, but it loses it when I package it for shipping? im at a total loss
My iOS build size is only 200 MB, and I think it’s missing the maps. The original Android build is around 1.5 GB, but when I upload it to iOS TestFlight, it shows as just 200 MB and crashes on launch.
yeah, builds should be roughly same size : something is definitely wrong
Any clue , I am scratching my head from last 4 hours what wrong 😑
Compare the successful droid packaging log to to your ios packaging log, perhaps you might find some clues there
I am building it Xcode , not know much about it
building it in the IDE isn't going to do the cook
Is it possible to debug issues and or crashes in packaged builds? I occasionally see this in my packaged build but it does not happen in debug builds or in editor. I cannot figure out what is causing it. I am on 5.5
Hey how do have my build be register by windows so it isn’t detected as a virus whenever some installs it from the internet?
Are the Cooking step in the Project launcher and the 'Cook Content' under platform the same thing? One seems faster.
Launcher is "By the book"
If you look at the log, you will see the exact commands being run
Hello, I'm having a problem with packaged builds complaining about dx12 RHI. is this a good channel for this?
I'm having an issue with ue5.6 always packaging for a "development" build, when it should be packaging a shipped build. Has anyone experienced this or know of a fix for it?
I've seen someone else having the same issue here, but seems to only hapepn when packaging through the GUI... when packaging through commadline or other methods it doesn't happen... so I recommend trying one of the other ways to cook the game
Thanks mate. I seen your post to the other member. I tried your batch file method. It actually worked, when all other methods failed. It just doesn't initialize steam subsystem for some reason.
As far as I know your best bet might be something like BugSplat ( but I haven't had time to integrate that... )
Though the question was about debugging, which is possible either through -waitfordebugger or -basedir
BugSplat is a pretty nice turnkey solution for collecting crash dumps, I've used it on a couple of projects in the past
We tried to roll our own but BugSplat was way ahead of anything we could build internally
can anyone help me understand what I'm not understanding about the asset manager? in my game, I have data assets that have different soft references to skeletal mesh assets for a customization system I have that sets the current asset to use for the player's mesh, there's 4 different skeletal mesh assets referenced in this DA but only the 1st and default one works correctly, the others don't load/exist in the shipping build... I tried adding all of them to a PAL set to Always Cook, but it still doesn't load them, the only thing that fixes it is to add hard references to them in an array on the player pawn
I guess I've misunderstood what PALs are for, they're mainly for managing chunks?
I figured it out, it was a logic issue... I was getting a texture from an unloaded mesh, loading the mesh before grabbing the texture is the fix
Dumb question.... if I use bUseZenStore=true how do I make a non-streaming packaged builds?
answer seems to have been add -pak to the buildcookrun
In 5.7 Preview1 (from Github) for Windows x64, "Package Project" and "Cook Content" are grayed out. The Windows 11 SDK is installed properly (10.0.22621.0) and I even did a Force Update. I haven't seen this issue in previous versions of the engine. Not sure if it's something I can fix or may just be a bug in 5.7 preview. Has anyone seen these grayed out before?
the MSVC toolchain was updated to 14.44, so do you have that installed?
I didn't have 14.44 installed. I installed it and recompiled and it is still grayed out.
what do you see? have you tried packaging via command line and/or the project launcher?
I haven't used the command line or project launcher before because package project always worked.
And when you expand the Windows submenu?
Packaging via the editor is pretty much the least preferable way to package anyway
I'm trying the project launcher to see how it works. I always assumed it was like playing stand alone instead a PIE or to simulate a device like Android.
Project Launcher worked, it cooked/Packages the project into the Saved folder.
I also figured out why it is grayed out. See the black dot on the left of Windows, I clicked it and it turned white and Package Project became clickable.
Hi, in UE 5.6 when I try to build and launch the game through Rider IDE, with 'game' as target, and in any build configuration mode (DebugGame/Development/Shipping) I get the following error:
I did not get this error in 5.5 so I assume it is the result of new changes made to the packaging process involving Zen storage in 5.6. I've already tried adding the -pak argument to my build configuration(s), but to no avail. Has anyone encountered this, or have any ideas on how to prevent it? I would really like to be able to debug my game through Rider in shipping configuration again
if you want to run without cooking and packaging the game you need to launch the editor target with -game otherwise uncooked game is trying to connect to the editor through zen streaming which is the error you're seeing
Gotcha. In versions prior to 5.6 though I had no issue running with 'game' target, which was helpful for debugging issues that occur in shipping builds. So I'm just uncertain why I'm now seeing this Zen error where previously I could launch 'game' target with debugging fine
Not entirely sure if this counts as packaging but: I've been tasked with making sure our users can't modify CVars via ini files, and could use some pointers on how to do that.
Right now, if I modify the Engine.ini file in LocalAppData in a shipping build the game seems to load and apply the CVars under [SystemSettings] and then it deletes them from the file. And I honestly don't understand why it does this.
What's the point in removing them if it's going to just apply them anyway?
Anybody know how to read UBTArgs in a specific module? Maybe overshooting here, but trying to make OnlineSubSystemSteam use a different set of achievements (and dev appid) when building a demo build. I see that <project>.Target.cs can use the CommandLine attribute and set defines in GlobalDefinitions and ProjectDefinitions, but I'm worried that setting GlobalDefinitions will recompile the whole project any time I swap from demo to not.
really would jsut like to read ubtargs from the module rules
Confirmed, all engine modules recompile if I do this via a Target.cs & globalDefinitions, that's not really acceptable
read values from + modify configuration files instead?
question has anyone had any problems packaging games with Unreal's default built-in landscape brush material brush for waters & lakes & rivers & mountains & stuff?
These all look experimental & beta mode and therefore very unstable, so my question is it its still possible to package with those bp_brushes in the game
some people advised me against using Unreal's built-in blueprint brushes
can probably package ( try it? ) but anything marked experimental is going to be a risk factor
I did try it and it didn't work
but Ive been seeing alot of other new people trying to make it work and I was just curious
you can make guesses and possible fixes based on the errors in the packaging log, but in the end, experimental is what it is - fun stuff to try out, but shouldn't build anything too serious around it
Im not new to Unreal but I see a lot of newbies using that built-in water for games
I totally agree
When doing additional target with custom configs, do I also need to specify the custom config in cook command itself or should the target be enough?
I've set a custom config, that adds some assets to never cook directory. When I simply run the BuildCookRun with -target=Some, the cook step completely skips my custom config.
I would recon, it would pull the CustomConfig from the target, but it doesn't, only works when i do -CustomConfig=SomeConfig
Some.Target.cs
public class SomeTarget : SomeBaseTarget
{
public SomeTarget(TargetInfo Target) : base(Target)
{
BuildEnvironment = TargetBuildEnvironment.Unique;
CustomConfig = "SomeConfig";
Console.WriteLine($"[TEST] Custom Config = {CustomConfig}");
}
}```
well does the build output help any with this?
not sure why BuildEnvironment = TargetBuildEnvironment.Unique; is there. changing this value on a binary engine doesn't do a whole lot, and CustomConfig sets defines in the engine
- Not that I noticed, though I didn't let the build to finish, as its 4h iteration time. Will have to check in the morning once it finishes for the full output.
The target is definitely used when building executable (as it prints my debug text). It doesn't seem to be passed at all to the cook step though, so I guess that's why the custom argument helps. - For the environment, just did it as a sanity check, since I noticed
RequiresUniqueBuildEnvironmentattribute on theCustomConfigproperty.
If you are using a source build then by virtue it's a unique build environment, and you need a source build to use this option properly
Hello, I'm trying to package my server for Linux, but it's saying "A required platform SDK is missing: LinuxServer".
Previously I installed the right cross-compile toolchain for 5.5 (the version I'm on) from docs, but I have the error regardless. In the past I had the toolchain for 5.2, and the compilation button in Project Launcher would let me through to then tell me that I must have at least clangd 18.x, even though I already had it. Deleting 15.0.1 made it not let me even try to compile.
If I do echo %LINUX_MULTIARCH_ROOT%, it tells me C:\UnrealToolchains\v23_clang-18.1.0-rockylinux8, so it should be correct.
Does anyone know what it might be?
Update: had to restart the computer after installing the newest clangd. Now it works correctly
Unreal 4.27 during plugin build/packing via CMD or editorUI keep using VS2017 and a certain thirdparty which i plan to use on can't work with VS207
anyone knows how to change toolchain for GameBuild verson?
my plugin Editor build is using VS2022 toolchain and never gets any issue.
error file
note: my PC has vs2022 and vs2017 is installed.
Unreal 4.27 does support VS 2019 toolchains but you might be able to get it building with 2022 toolchains. UBT will always use its preferred toolchain version if its available, otherwise it will typically pick the newest. If you built once with a non-preferred toolchain and then installed a preferred toolchain you must delete Intermediate for it to pick it up and rebuild. Sounds more like in this case you would like to force it to use a specific toolchain regardless of its preferred version, to do that you can specify it in BuildConfiguration.xml
my log showing for UE4Game build plugin packing it keep selecting the VS2017 toolchain and I have found no way to change it to VS2022;
AI keep suggesting that to use source build and edit the place where it keep defaulting to VS2017 or edit the .h in a way that works with older VS2017.
and this mesg is when im using EPIC's luncher verson.
should I delet VS2017 and have only VS2019 so it auto picks it?
as per ur sguuestion i deleted intermids of my project yet when building plugin for game its picking vs2017.
- Deletd Packed/HostProject/ and project/plugin Intermediate.
- Create/update %AppData%\Unreal Engine\UnrealBuildTool\BuildConfiguration.xml: with
<?xml version="1.0" encoding="utf-8"?>
<Configuration xmlns="https://www.unrealengine.com/BuildConfiguration">
<WindowsPlatform>
<Compiler>VisualStudio2022</Compiler>
</WindowsPlatform>
</Configuration>
- Re-run BuildPlugin. it still picked vs2017 for game build.
yet to del the plugin's intermd
first, do yourself a favor and put it in your project not in some user level folder
<PROJECT_DIRECTORY>/Saved/UnrealBuildTool/BuildConfiguration.xml
https://dev.epicgames.com/documentation/en-us/unreal-engine/build-configuration-for-unreal-engine
Second, you want CompilerVersion:
CompilerVersion : The specific compiler version to use. This may be a specific version number (for example, "14.13.26128"), the string "Latest" to select the newest available version, or the string "Preview" to select the newest available preview version. By default, and if it is available, we use the toolchain version indicated by WindowsPlatform.DefaultToolChainVersion (otherwise, we use the latest version).
https://dev.epicgames.com/documentation/en-us/unreal-engine/build-configuration-for-unreal-engine
Third, stop asking AI and go find docs instead.
There's also tons of people who have posted about this and got help setting up specific tool chain versions here on the discord, you can search for those and read the conversations
If you want to keep asking AI just internalize that it will be dead wrong quite often. It's a souped up Google search, so it can be wrong just as often as forum posts are wrong
buildconfiguration in project folder was added only in 5.3, any earlier has to use appdata or documents
oof
totally spaced that i should more properly go find 4.27 docs here 😓
- yea AI could not the actual cause but still when we don't get it won;t hurt to seek some info.
- thanks for the tip but the issue wasn't any of these.
3.issue solved
so if i have VS 2017 installed during Plugin Packing using BuildPlugin from automation tool for game build pack it will force to select VS 2017.
and i uninstalled VS2017 since onxx runtime was facing issues with VS2017
not having VS2017 install and control via that html allowed me to even use VS2022.
finally i can pack my plugin with my water section 🙂
@craggy cobalt
Hi, trying to package in 5.7 to play a bit with it (experimental) but the package and cool option are grayed out. At least doesn’t work like in 5.6 and previous version and I’m a bit lost. Any idea here ?
hit windows for both?
Mm I do feel like a moron right I know…. Forgot to tick the Little dot right to Windows as just clicking on Windows would not work
never mind 🙂 that happens often , imagining what i went through last 4 months with RDG and custom vertex factory
And now starts debugging 🙂
good luck
Thanks
"UATHelper: Packaging (Windows): LogCookCommandlet: Display: GarbageCollection... (Exceeded Max Memory)" ..I have 32 GB ram, was able to package the project in 4.27, but struggling in UE5.6, it seemed to loop, and then the GC kicked in, again and again. I wonder what to do now..
"UATHelper: Packaging (Windows): Cook stalled probably because of memory settings being too restrictive and triggering garbage collection."
"UATHelper: Packaging (Windows): CookSettings.MemoryMinFreePhysical: Available physical memory 1005MiB is less than 2048MiB."
32GB is incredibly low to start with. And since your paste says UATHelper, I assume you're also packaging from the editor, which does no favours to the low memory headroom
Yup, I've got an ancient machine, 8-10 year old components, except the gfx card which is new. Nowadays 32GB is low. I didn't know you could package outside editor, looking into it. I managed to get it to package though, in editor, finished without errors, and running two instances of the game one on Sandboxie and one outside, with two steam accounts and the works, so I am closer to getting to test multiplayer on steam! Which is so far so good.
I've recently use goolge drive desktop to backup my UE5.6 project
While packaging, UE5 report an error saying it coulding delete intermediate and staging folders.
I tried turn off google drive sync and close the app and it still couldn't delete it - I end up manualy delete these folders and packaging works.
Anybody encounter similar issue?
Hey, anyone here experienced with chunking?
I am using Primary Asset Labels to make sure some of our assets are put in their own chunks when packaging. However, due to references and dependencies, lots of assets get duplicated during packaging, bloating our build size. I understand why it happens but I cannot eliminate all those dependencies, so I thought I could use Force One Chunk Per File and a "Shared" asset label that covers all Content to ensure Assets with more than 1 chunk get put into Chunk 0 only. However, now all assets get put into Chunk 0 and I don't know how to solve this.
UATHelper: Packaging (Windows): LogScript: Warning: Script Msg: No world was found for object (/Game/Blueprints/Constructs/BP_PC_Ship_AirQuantumSlicer_001.Default__BP_PC_Ship_AirQuantumSlicer_001_C) passed in to UEngine::GetWorldFromContextObject().
PackagingResults: Warning: Script Msg: No world was found for object (/Game/Blueprints/Constructs/BP_PC_Ship_AirQuantumJumbler_001.Default__BP_PC_Ship_AirQuantumJumbler_001_C) passed in to UEngine::GetWorldFromContextObject().
I get 1000s of these when packaging, I have over 100 blueprints that inherit from c++ classes, actors that have a constructor that makes components and need GetWorld in them, but when prototypes are constructed there is no world object hmm.. Or something..
The packaged version works, but IDK how to silence this warning..
you should really be using source control
Thank you for the suggestions. Do you encounter delete folder error while using source control?
you wouldn't even have deriveddatacache/intermediate/saved in source control to begin with
I see. Thank you for the advice!
I'm about to lose my mind. My 5.7 project has been working fine. I packaged it, people are playing on the dedicated servers, etc. When I package now the packaging works but nobody can run it. Nothing happens. Even the dedicated server does the same. No process starts, no log file is made with a dev build, not so much as a flicker. Anyone seen this?
While I am not on 5.7, Sanity checklist
- you have version control, and can verify whether some changes have been made that might cause it?
- have tried deleting intermediate + binaries and rebuild?
Hey, is there any usefull tutorial on how to correctly setup DLCs via pugin? the official docs only show it for patching and everything only is just showing some hacking around it for steam.
We want and need the propper way. we simply don't find usefull informations on it
are you at least using GFPs? you can setup chunking rules in the game feature actions
We are not using GFP I think. we use regular chunking. It's simply unclear how to correctly use this pipeline
then a primary asset label I guess, you can specify a unique chunk ID in there, and at least then, you can make sure the pak/ucas files matching that chunk are a part of the DLC instead
you can cook the DLC individually, since that's how a lot of UGC implementations in Unreal work
but to me, for both DLCs and UGC, game feature plugins make a ton of sense
generally the correct way is to make a plugin (either a GFP or normal plugin) and then use the CLI (that's the only way I know of) to cook that plugin separately as a DLC (there are special options for that) which will provide separate pak files which are based on the base game which can then be put alongside normal game.... but honestly, I've not really done DLC cooking since like UE 4.5 so I don't remember anymore - all I know is that there was a nice documentation on the old old wiki (while it still was a wiki based documentation) but it got lost with move to the new documentation system years ago
can't provide much more complete informations other than this... although sswire's solution would most likely work too, but wouldn't prevent you cross-linking the chunks and thus your game potentially crashing or failing due to lack of those paks
these days I'd also recommend using GFPs as they're hybrid between a plugin and built-in module/folder etc. they have different mechanisms for loading which explicitly allow for auto registration etc. etc.
Hello, so I have a small problem to which I can't find a solution on the internet.
I have a game with pixal art textures. Inside the editor and in the preview they look crisp and clean, as they should, but as soon as I package the game and export it, inside the .exe, the textures are all blurry and even have texture errors.
First picture is how it should look like and second one is how it looks in the .exe
I don#t know what could be the cause of it. The options of the textures themself work and I checked the packaging options.
Also here are the packaging settings. I am sorry to not have them included earlier.
Help is still needed ;-;
1st sanity check : if you run in Standalone mode on editor, does problem reproduce?
checklist
- Texture Compression - are you using "no compression" for the pixel textures?
- mipmaps maybe?
I am just shooting ideas around. Maybe show also an example of a specific texture setting
Hi thank you so much for your suggestions. I will send a screenshot
These are the texture settings of the closet, you can see in the screenshot, with the texture errors.
No this doesn't reproduce the problem.
Also I am using no MipMaps. Could that be the cause?
No, I think that is good at least to start with
I have turned them off, because I read multiple times that they can cause blurry problems.
Given that nobody else has yet chimed in, I will give my usual strategy:
Fire up a blank project, set up the simplest possible test of your assets, like just one light, one quad and your pixel texture, and see how it looks when packaged there. If it works like that, it might give clues
Ok I will write you again once everything is setup
From left to right compression types:
- VextorDisplacementmap
- UserInterface2D
- BC7 (DX, optional A)
I just packaged the wrong world so I will need another 5 minutes
All of them look exactly the same.
So no issues in the test project
Ok so it turned out, it was the binary configuration. I packeged with "shipping" at the main project and here at the test with "Use project settings". Once I used "Use project settings" in the main project the export worked and the textures look crisp and clean in the .exe
Thank you for your trouble shooting trick. I should do that more often in the future.
@summer dock And special thank you for taking your time to help me. I really appreciate that ^^
Glad to hear you got it traced : )
How would I resolve those errors?
I solved alot of errors, most of them are gone, but now I have some new different remaining errors like these.
this looks like corrupt files to me
how can they be removed?
cooking is based on references (unless your map list is empty then iirc it cooks everything) so I would assume something is still referencing it, but the only surefire way would be removing those assets from the filesystem. this is an important reminder to use source control as it's very easy to get yourself out of spots of bother like this
I need help or a good tut on how to package a DLC to steam. Any plugins or documentation would help
Simplest approach
- just pack it in with the core game
- put it behind a boolean flag : dlc_AB01_owned yes / no
- query the owned value from steam account
Thanks for that info can you elaborate more for clarity?
I don't think that's an ideal solution anyway. We were talking about this the other day. With game features or a primary asset label, you can set a specific chunk for the DLC plugin's assets go in, you can have the associated Pak/UCAS files from that chunk to be a part of the DLC app.
The other approach is how a lot of UGC implementations do it: cooking just the plugin
sswires is def worth listening to on this : but do tell which bit are you struggling with?
Optimally you could do a small test, like maybe create a folder DummyDLC, put some assets in there, and see if you can toggle the feature on/off as needed.
Then you want to be able to read the purchase status to control the toggle.
Finally, for clean separation packaging, maybe see if you can find the previous posts on the subject sswires mentions
Game features are pretty damn nice. Would fully recommend GFPs for a bunch of use cases. Live services, games designed to have longer shelf lives with frequent content updates that don't quite fall under that label, UGC/modding, DLC.
It def looks interesting : https://forums.unrealengine.com/t/tutorial-how-to-create-a-new-game-feature-plugin-and-experience-in-lyra/627240
In this tutorial we’re going to create our own Game Feature Plugin in Lyra, and expose it so that it can be selected as an Experience in the Lyra Front End UI. This is the preferred way to build content on top of the systems and frameworks that make up Lyra. https://dev.epicgames.com/community/learning/tutorials/rdW2/unreal-engine-how-to-crea...
That said, if somebody wants the easiest, most painless way forward for something relatively small, it might be conveivable to just take the 'easy way' to start with
Lyra might be an overwhelming example of them, but the gist of it is that you can easily activate and deactivate them at runtime really easily, the GFA asset has a modular list of actions you can perform based on that
Like with a DLC GFP you could have a GFA saying "add this item to the loot table"
I can't find any docs on "GFA" at a quick glance though?
Game feature action
When you create a GFP that's the asset it creates at the root of the plugin, acting as a manifest of sorts setting up what the GFP does
I am definitely interested in this area, as I want to do our next game a lot better in terms of initial install size and granular feature downloads
Thank you guys for the help
Hello people, i'm having a problem where shaders don't compile on the packaged game when i change the scalability settings.
i use quality switches on the materials.
they do compile on the editor, and they seem to be cooked.
i get this error.
it was working before, so i think i broke something. i'm using 5.6
[2025.10.19-05.45.35:326][881]LogMaterial: Error: Tried to access an uncooked shader map ID in a cooked application [2025.10.19-05.45.35:326][881]LogMaterial: Warning: Invalid shader map ID caching shaders for 'GhostFB_DM', will use default material. [2025.10.19-05.45.35:326][881]LogMaterial: Can't compile GhostFB_DM with cooked content, will use default material instead [2025.10.19-05.45.35:326][881]LogMaterial: Warning: [AssetLog] /home/nande/work/repos/LifeDev/Build/Linux_dev/LifeDev/Content/LifeDev/Game/Env/Ghost/GhostFB_DM: Failed to compile Material for platform SF_VULKAN_SM6, Default Material will be used in game.
edit: fixed. it was the flag "discard unused quality levels"
Hi everyone! From reading the past posts on this server, it seems that chunking with Primary Asset Labels is a bit broken? I can package new chunk paks but all of them are way to small and don't contain any assets. I'm specifically interested in putting certain font faces into a new chunk because they make the final bundle too big for upload to google play store. Also checking Label Assets in My Directory does nothing. I'm currently on version 5.5, is this system maybe fixed in higher versions of the engine?
asset labels worked fine in 5.5 so it must be something with the way you use them... could you share a configuration of one of them?
I'll send a few screenshots soon, but just a quick question: if I try to move one asset bundle 1 that is referenced in bundle 0, will it even allow packaging in bundle 1?
it does, we use PALs for chunking too where we have shared game feature which is pretty much "Game assets" it goes into it's own chunk and then we have the campaign etc. chunks which are separate game features and it lines up properly
all pak files get loaded into the virtual file system during engine startup and are treated as that, one big virtual file system instead of individual pak files... so there shouldn't be any issues
And if I understo correctly, you have to first package with Generate aab setting turned off and then on?
I want to package these fonts for install time delivery (for now, ideally it would be on demand depending on the chosen language)
Here are my settings (I don't know if I included everything relevant)
And in the final .obb that I extract, I get 2 .paks where the chunk1 one contains only the PAL asset (because IsRuntimeLabel is checked, if I left it unchecked it wouldn't even generate chunk1 pak).
I reimplemented chunking in a new empty project and this time it did create a new chunk immediately (without having to mark IsRuntimeLabel), but it also included only non-font assets ...
ok, so the way your asset labels is set up is kinda weird... if you want to use PALs just for chunking you want to not have runtime labels... you generally want to use Unknown cook rule so only what's referenced gets cooked etc.
this is how we've got ours set up
wait, in the new test project I forgot to reference these fonts and now they got packaged into chunk1
but that still doesn't explain why it doesn't work in my main project ...
in certain cases (honestly not sure why or when) unreal decided to duplicate assets across the chunks... I don't know why as it doesn't happen in our project but I've heard few folks having that happening to them
I've set up chunking few years ago so I don't really remember if there's something specific I had to do
Did you setup chunking for an android project? Or Windows?
cross-platform
android, ios, ps5, xbx, windows, linux and mac
same setup, works everywhere
at least in chunking department, there are platform specific things related to always configure, but just shoving files into chunks works fine with PALs
I'll backtrack throughout the project history and see where the setup starts working and try to identify the problem. Thanks for help 👍
Hey everyone, has anyone ever seen this issue when packaging a game? It all runs smoothly until the end (I'm using an external zen server on linux) but right when the project is done, the last step fails - all the other packages went to the zen server smoothly.
`LogCook: Display: Finalize package store(s)...
LogZenStoreWriter: Display: Flushing...
LogZenStoreWriter: Display: Saving Zen filesystem manifest 'F:/UE56_Builds/Project_UE56/Saved/Cooked/Windows/Project/Metadata/zenfs.manifest'
LogZenHttp: Error: Error while connecting to http://192.168.1.65:8558: Failed sending data to the peer
LogOutputDevice: Warning:
Script Stack (0 frames) :
LogWindows: Error: appError called: Fatal error: [File:D:\build++UE5\Sync\Engine\Source\Developer\IoStoreUtilities\Private\ZenStoreWriter.cpp] [Line: 723]
Failed to append OpLog and end the build pass`
Oh and all other projects build and package just fine
My package doesn’t have the .exe file when I punch it to GitHub? Has anyone had that happen. It has the file when I commit it to git desktop.
Idk man, I’m still trying to figure out how a pipeline works. Any advice? I’m open to anything to help me share my project with my friends
- Make sure you are using the .gitignore ( no Build, Intermediate, Binaries etc to repo )
- Collaborators run on their own machines - if they have fast machines, they can also package themselves as needed - though mostly you are fine running in PIE / Standalone
- Distribute builds as needed to a shared location, like google cloud or whatever
- If you get to the point you are getting dedicated QA staff, you want an #automation setup of some flavor to do Nightly Builds ( or even earlier if you are inclined - there are major advantages to having an autobuilder : catch packaging issues fast with a build on every change. nightly builds ensure you always have a functioning build, and QA checks issues with speed. Deployment to target platforms becomes a matter of pressing a button instead of tinkering with command line )
Never heard of that so thank you for the advice.
Do you like Google cloud for a finished build?
For a packaged build you just need somewhere to store it, and between friends Google Drive, OneDrive, etc is good enough
It is pretty convenient. Later you want to be pushing to for example, Steam beta branches before you go live
If you want to distribute it to the masses then you use a platform (like Steam) or a CDN like S3
The $100 entry fee might be worth it for the ease of use
But your source control should be for just your project sources, not a method of distributing built binaries
gotcha, that makes sense. my source control is working well through git and im waiting for the verification through steam. this is my first multiplayer project and im using steam for it. figured the $100 would be worth it in the end
switched to google drive... instantly better. I feel silly for the original question now. I thought i had to do all of that through git. but it turns out that at the end of the day they are just files. I made it to complicated
I need some help but I do not have information - first time ever making a shipping build and I do not know where to look.
When I make a development build everything works fine but when I make a shipping build it crashes instantly without any logs at all.
Does anyone have any advice as to where I can look to even start figuring out what's wrong?
How do we customize the output shipping build name? I thought it would use Project Displayed Title or something like that, but currently the exe files are named the same as the project.
the exe is named after the target
I have a UE5.5 shipping build for Windows that I'm preparing for public release. Do I need to somehow code sign the EXE so that Windows doesn't distrust it? I'm not finding a lot of information on the topic in my searches. Thanks!
Not really an Unreal thing, even when I was at a studio using a different engine, an unsigned executable was causing false AV detections. Signing the exe bumps up the trustworthiness of your exe up a lot, so it's definitely worth the cost to avoid the player support headache
Thanks. I'm realizing now it doesn't really have to do with anything in UE. It's just Windows EXE. I'm looking into how I can sign without having to pay too much. It's a free game.
Free might be hard to justify, but you can use the same cert to sign anything you release
signing certificates are generally expensive, although there are some providers that can provide relatively cheap certificates especially if you're open-source project although those are mostly based in EU/Europe, so if you're in US you'll have hard time getting hold of those... since modern security practices require use of hardware tokens and shipping those to US securely can be quite pricy
Although it's worth saying that you don't really need to sign your executables if you distribute through steam, EGS etc. as in most cases such applications don't get the smart screen popup (which is the primary case companies sign their applications - other than to generally verify their authenticity... but that's not really necessary for smaller teams)
Nah we still had false AV detections even when the game was launched by Steam
Thanks for the info! I'm in the US and my current case is a free release of a UE5.5 Shipping build on itch.io I wanted to see how that went before looking at Steam next. It's really just a portfolio piece, but I'd like to reach as many players as possible.
I'm going through UE games on itch to see how often I get Windows warnings on launch now.
It looks like the warnings are fairly common, so maybe not an issue for a test release
indies certainly don't sign their games... that's usually domain of larger studios or teams
so if you're planning on shipping on itch you don't have to worry about code-signing
Hi, I'm trying to package a single test level in my project to debug some stuff. I created a new launch profile with the Project Launcher tool and under the "Maps to cook" section I selected only the single test map I want to package. However after packaging, the resulting executable seems to be identical to my regular full build profile, IE, all the normal game levels are included, instead of just the single level.
Anyone know why it's not building just the single level? I tried some different settings in project launcher, like disabling 'incremental cook', changing content scheme to 'loose files' etc but got the same result every time (multiple maps being built). Is there some cache of cooked files somewhere I need to clear out, and that's why it keeps adding the additional maps?
Can try deleting Intermediate and Binaries to sanity check
Thanks. I ended up just changing the game startup level to my test map in project settings, which more or less achieved what I wanted. Initially I thought it would be cleaner to cook only assets associated with the test level, but I think the quickest way to do that would be using the migration feature which felt like overkill for my purposes
looking for assistance on UE5.6,
making a top down game, and all works well in PIE and in Standalone player, but when I try to package for windows I get this error:
LogCrowdFollowing: Warning: Unable to find RecastNavMesh instance while trying to create UCrowdManager instance
things I've tried:
Navmesh volume and recast are in their levels
Made sure the runtime generation is equal, in project settings and in actor placed
Supported agents are enabled
setting crowd manager class to "nothing" removes the warning but still can't package
already installed the SDK and .Net core 3.1
Warnings are not fatal to packaging. I would suggest to share more of your packaging log
will this help?
It'll help if it's actually attached as a text file
But I can see it
You don't have a valid Visual Studio install
I said valid, you have to install the required components as well
You need the 14.38 toolchain installed
huh, you right, forgot to check the c++ box...
Also see the 2nd pin in the channel so the correct toolchain is installed
MSVC v143 - VS 2022 C++ x64/x86 build tools (v14.38-17.8)
thank you kindly for the assistance! was able to build now
LogStreaming: Error: Couldn't find file for package /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_B requested by async loading code. NameToLoad: /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_B
LogStreaming: Error: Couldn't find file for package /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_C requested by async loading code. NameToLoad: /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_C
LogStreaming: Error: Couldn't find file for package /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_D requested by async loading code. NameToLoad: /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_D
LogStreaming: Error: Couldn't find file for package /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_E requested by async loading code. NameToLoad: /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_E
LogStreaming: Error: Couldn't find file for package /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_G requested by async loading code. NameToLoad: /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_G
LogStreaming: Error: Couldn't find file for package /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_F requested by async loading code. NameToLoad: /Game/WORKING_INVENTORYYYYYYY/TreeCutting/SM_Tun_Nor_Bush_EuropeanSpindle_Set_01_F```
# why do I keep seeing this error?
What I've done:
Renamed/deleted a folder, I fixed redirectors, I validated assets, I deleted those static meshes
I even looked into the outliner, they're not there either.
I also deleted Saved, Intermediate and DerivedDataCache to refresh everything in memory
Hi! Im working on loading maps from pak files and i am running into a very specific issue. The paks are mounted and the maps are loading alright. But world partition cant find its external actors in the pak. The files in question are there in the manifest (Flagrun/Plugins/GameFeatures/FeetOnTheGroundMap/Content/FeetOnTheGroundMap1/Generated/727PKPVPGEOX5D1HNWZE4XTFL.[uexp & umap]).
But it looking at the logs it seems like the game is looking for them in another folder:
(LogLevelStreaming: Display: Failed to find streaming level package file: /FeetOnTheGroundMap/FeetOnTheGroundMap1/Generated/727PKPVPGEOX5D1HNWZE4XTFL. This streaming level may not load or save properly.).
The solutions i see to the problem is either moving the external actor files to a corresponding folder or making the map refer to the correct folder. The former feels like its the easiest, but when i try to copy the files using BlueprintFileUtils it writes files on disk and not within the games file system. How would i do this correctly?
LogClass: Error: BoolProperty FFabAssetMetadata::IsQuixel is not initialized properly. Module:Fab File:Private/FabBrowserApi.h
LogAutomationTest: Error: LogClass: BoolProperty FFabAssetMetadata::IsQuixel is not initialized properly. Module:Fab File:Private/FabBrowserApi.h [log]
does anyone know what this is?
it's an oversight in UE 5.5 implementation of FAB, where low-level primitives in the library (in this case a bool) are not initialized by default, easiy fix is to update to UE 5.6 where the default values are fixed or simply add = false; in the FabBrowserApi.h
or even easier, just ignoring the error is fine if it's not failing your builds
its failing my builds
yeah, then simply add the = false; inside the FabBrowserApi.h and it will fix it
as I've said it's been fixed in later releases of the fab plugin
but I don't think it was ported to 5.5 or something like that
all I know is that in 5.6 we don't see the error anymore
Hi guys, I am encountering this problem when packaging my game: "PackagingResults: Error: OodleDecode: compressed buffer starts with zero byte; invalid or corrupt compressed stream." I was able to build my game two weeks ago, but this happened out of nowhere. I've tried deleting DerivedDataCache from appdata folder and removing DDC, saved, intermediate folders in my project folder, but they weren't helping. Anyone has insights or experiences on this? Much Appreciated!
I am also getting a stacking call like this but don't know if it has something to do with this error.
lots of memory related warnings before it, are you sure you're not OOM?
packaging outside the editor can free up some memory
okay I will try that, thanks! The weird thing is that I was able to build normally previously, never had this error before.
I tried packaging in the editor again, but got a different output log info before and after it.
So it is OOM somehow when it says"Garbage collection triggers ignored: Out of memory condition has been detected, but is only 1s after the last GC", a few lines above the red line
Problem is solved by building my game on a better machine. Thanks for your help! 🙂
Hello. Unreal Engine 5.6. Has anyone had a problem with a packaged project with WP? After I walk through a certain area, move far away, and then return, one of the runtime cells never finishes loading (it's ‘stuck’ on loading). Using debugging, I can see that the cell remains in loading mode and I get the following message in the logs:
LogLevelStreaming: Warning: Couldn't find ULevel object in package '/Game/Levels/test/Generated/DU4FGH3ZXA2TTEXHTXA9I2DGN'
After checking exactly what object it is, it turns out that it is simply LandscapeStreamingProxy. The problem does not occur in the editor. I used packing with the option to pack everything with content, but it did not help. The only thing that helps is to disable streaming or remove all actors from the map and leave only static meshes. I have actors on the map that have Is Spatially Loaded set to False because I need them to be constantly available. The player is a pawn that has a WorldPartitionStreamingSource component and is the only source of streaming. I tested new levels and the same thing always happens.
Please help!
"UE 5.6.1 cook crash — EXCEPTION_ACCESS_VIOLATION"
Hello! So I've tried to understand as of why my project will not cook anymore. I did a full cook and build about 7 days ago (plus multiple ones previous weeks) without any issues at all. Yesterday I thought I'd try to cook and package a build to bring with me to test my optimization work on my work computer but I the cooking will fail at all times, with the same error pointing to a null reference. However, it does not give me any information regarding the fail at all, it does not even begin the process, it fails at 0 out of x cooked files.
I've also tried to cook on a older backups that I made a months ago but the same error happens there, even though I always have it as standard to cook and package the project before backing it up to make sure it's a fully functional build. The log output is identical each time and as I said, it does not tell what's wrong, from what I can tell.
I would more then appreciate any kind of help at all since this is years of work! 🙏
You don't have debug symbols and you can increase the log verbosity (top pin). And please say you mean source control rather than "backups". It's much harder to detect bitrot with just copying your project folder now and again
Hey, had again a failed packaging as another nu.get package has security issues and requested an update. Thistime it crashed the netire project and I can't package at all.
G:\UnrealEngine-5.6.0-release\Engine\Source\Programs\UnrealBuildTool\UnrealBuildTool.csproj : warning NU1701: The package "Microsoft.Build 17.14.28" was restored using ".NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8, .NETFramework,Version=v4.8.1" instead of the project target framework "net8.0". This package may not be fully compatible with your project.
any ideas how to fix? as far as I remember does 5.6 not correctly work with Net 8.0 ?!
this is beyond messed up. having the required Net SDK installed breakes all console integration. UE 5.6 is more or less useless right now
since you're in control of your source build. upgrade this package. but this is a warning, so if this is blocking packaging then there's likely something else
I was on the latest working nuget version which worked fine yesterday on packing. today it blocked packing so I updated. The new version is looking for Net SDK 8. Upgrading this causes all console integrations to break. So yeah there is not much moving forward
I now need to roll back and supress all warnings
I would suggest sharing the entire log
Hi there! During cooking I see some error logging that is actually part of my gameserver gamemode code. Is cooking creating the gamemode to do some kind of optimization ? the code is c++ only and concerns static functions that are used for callbacks, the function that logs is part of a plugin. How can gamecode functions be called during cooking ? any insight is very appreciated
Kind hard to tell without the actual error
But things like the constructor will be called for constructing the CDO
I'm not sure if this is the right place or not. (I understand ue5-main isn't the best to use, but it's been consistent across multiple pulls, so I feel like it's more than just a "oh shoot, it's broken" thing)
Cooking and packaging my game works fine, but as soon as I go to open it (both Shipping and DebugGame), it fails to read the shadermap.
Fatal error: [File:Z:\UEVFS\Root\Engine\Source\Runtime\RenderCore\Private\GlobalShader.cpp] [Line: 812]
Could not load section 0 (of 435) of the global shadermap.
Nitrocore_Win64_DebugGame!FGlobalShaderMap::LoadFromGlobalArchive() [Z:\UEVFS\Root\Engine\Source\Runtime\RenderCore\Private\GlobalShader.cpp:803]
Nitrocore_Win64_DebugGame!TryLoadCookedGlobalShaderMap() [Z:\UEVFS\Root\Engine\Source\Runtime\Engine\Private\ShaderCompiler\ShaderCompiler.cpp:5380]
Nitrocore_Win64_DebugGame!CompileGlobalShaderMap() [Z:\UEVFS\Root\Engine\Source\Runtime\Engine\Private\ShaderCompiler\ShaderCompiler.cpp:5554]
Nitrocore_Win64_DebugGame!FEngineLoop::PreInitPreStartupScreen() [Z:\UEVFS\Root\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:3277]
Nitrocore_Win64_DebugGame!GuardedMain() [Z:\UEVFS\Root\Engine\Source\Runtime\Launch\Private\Launch.cpp:146]
Nitrocore_Win64_DebugGame!GuardedMainWrapper() [Z:\UEVFS\Root\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:123]
Nitrocore_Win64_DebugGame!LaunchWindowsStartup() [Z:\UEVFS\Root\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:277]
Nitrocore_Win64_DebugGame!WinMain() [Z:\UEVFS\Root\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:335]
Nitrocore_Win64_DebugGame!__scrt_common_main_seh() [D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll
The cook works fine, and when checking the packaged files, all of the shader files are present and are able to be parsed.
thanks, yes I added some error logging and see the GameMode's constructor and deconstructor are called, thats probably the source of my issue
It also seems that code changes in the constructor/deconstructor require a full clean and rebuild (clean intermediate files etc), I assume this is also related to CDO ?
could CDO be calling any other functions than constructor/deconstructor ? for example static functions that are used for callbacks ?
well you still haven't shared any additional information
"static function used for callbacks" as in delegates? where are they bound, and since it's static, instantiation would be irrelevant
and you can attach to the cooker if you want to add a breakpoint
thanks for your respone, it had nothing to do with the callbacks, there was some cleanup code in gamemode's deconstructor, for an object that was initialized in InitGame(). As the cooker calls the constructor and deconstructor this object was not initialised and the cleanup code logged an error. I solved it with an initialize flag that is set in InitGame() so the cleanup code is only executed if InitGame() has been called, not by the cooking process..
LogShaderCompilers: Display: Job FClusteredShadingPS(permutation 64, format PCD3D_SM5) compile time exceeded threshold (34.366s)
UATHelper: Packaging (Windows): LogShaderCompilers: Display: Job FClusteredShadingPS(permutation 80, format PCD3D_SM5) compile time exceeded threshold (38.995s)
UATHelper: Packaging (Windows): LogShaderCompilers: Display: Job FClusteredShadingPS(permutation 32, format PCD3D_SM5) compile time exceeded threshold (142.620s)
UATHelper: Packaging (Windows): LogShaderCompilers: Display: Job FClusteredShadingPS(permutation 48, format PCD3D_SM5) compile time exceeded threshold (147.267s)
These shaders are taking time?
got this error while packaging for windows
LogTurnkeySupport: Warning: Turnkey failed to run properly, full Turnkey output:
Running AutomationTool...
Using bundled DotNet SDK version: 8.0.300 win-x64
Starting AutomationTool...
Parsing command line: -ScriptsForProject="D:/unreal projects/FPSTemplate_5_6/FPSTemplate.uproject" Turnkey -utf8output -WaitForUATMutex -command=VerifySdk -ReportFilename="D:/unreal projects/FPSTemplate_5_6/Intermediate/TurnkeyReport_3.log" -log="D:/unreal projects/FPSTemplate_5_6/Intermediate/TurnkeyLog_3.log" -project="D:/unreal projects/FPSTemplate_5_6/FPSTemplate.uproject" -Device=Win64@DESKTOP-VGAOF51
Initializing script modules...
Building 29 projects...
Build 29 projects time: 3.76 s
AutomationTool encountered an error before a log file was set, see 'D:\UnrealEngine\Engine\Programs\AutomationTool\Saved\Logs\ErrorLog.txt' for more details
AutomationTool executed for 0h 0m 5s
AutomationTool exiting with ExitCode=1 (Error_Unknown)
BUILD FAILED
there's probably more of the log you're missing than this, but you need Visual Studio installed with the correct components
An update on my issue and how i managed to solve it, maybe itll help someone in the future. I solved it by appending ”Content/” to my content path when mounting the PAK. This makes it so that /FeetOnTheGroundMap/Content/FeetOnTheGroundMap1/Generated/... becomes /FeetOnTheGroundMap/FeetOnTheGroundMap1/Generated/... in the file system which allows the levelstreaming system to find the packages.
Do you find solution ?
Me too facing issue both in binary and source versions
update the visual studio and Magick
14.9
that's not the problem though.
[2025.11.04-19.24.43:210][ 0]LogTurnkeySupport: Warning: Turnkey failed to run properly, full Turnkey output:```
So, I would check your engine version and setup documentation to make sure you have jumped through all the hoops
Thank you Karma. I will try with 14.9
If possible can you share vsconfig file for 5.6.1 incase I have missed any components to install
Already followed and cross verified
can anyone tell me how I can enable iterative or incremental cooking so the engine doesn't full cook everytime?
Updated Magick to 14.9 but this happens in source based editor also happening crash. How can I fix this ?
you posted the latter issue in #engine-source the other day but never followed up
Hello, I'm getting inconsistent packaging results after changes. Usually when do regular dev things, packaging from cmd works fine. However, sometimes it decides to fail pretending that I haven't compiled something.
The last thing I've done is created ParseLaunchOption in MESS_KismetUtils that I use in GM_Game. When running packaging through cmd specifically it fails with following errors
LogBlueprint: Error: [AssetLog] H:\UE\UE_5.5_Source\Projects\MESS\Content\GameModes\GM_Game.uasset: [Compiler] In use pin Return Value no longer exists on node Parse Launch Option . Please refresh node or break links to remove pin. from Source: /Game/GameModes/GM_Game.GM_Game
LogBlueprint: Error: [AssetLog] H:\UE\UE_5.5_Source\Projects\MESS\Content\GameModes\GM_Game.uasset: [Compiler] Could not find a function named "ParseLaunchOption" in 'MESS_KismetUtils'.
Make sure 'MESS_KismetUtils' has been compiled for Parse Launch Option from Source: /Game/GameModes/GM_Game.GM_Game
If I try to package from project launcher, it packages fine, but it's inconvenient to package from the editor for various reasons. Usually it gets fixed by recompiling my solution from UE5.sln, e.g. from VS specifically, but I use rider for the majority of the time.
It already happened multiple times, but I usually try to ignore that by packaging from project launcher trying to focus on what I'm working on rather than switch fixing this, but it's too annoying to ignore/work around at this point.
One thing to mention though -- anytime I compile my solution from VS, it pretty much compiles/links like 300~ files. If I try to recompile in Rider immediately after, it seems to compile/links same 300~ files. I use Development Editor configuration in VS, and Rider is using DebugGame Editor. I don't see how it affects each other.
Compiling from Rider also causes some issues with Redpoint EOS Config module that prevents me from starting cooking only after some time after I compile with Rider. So, I compile with UE5.sln, try to cook + package the game, everything goes fine, I compile from Rider, do some regular dev stuff, and it still works fine, but eventually, like after half a day or the next day it fails again.
I can't see any pattern, it's so random. Initially I assumed it might be related to unity builds; maybe some files VS compiles the right way get put in the same module (or whatever the thing is called unity build unifies object files in), but then eventually one of the files from that module get recompiled forcing those files to get recompiled from Rider, breaking what VS somehow fixes. However, switching to unity builds didn't change anything, it's as consistent as it was.
I tried recompiling from VS and Rider multiple times subsequently to get a minimal example of what it's doing when I compile with no changes. E.g. I compile in VS to fix the issue, compile in Rider, and compile again in VS.
https://gist.github.com/Tonetfal/1ce4d07061f46252cb12cf28d2cea99d
Does anyone know why it might be happening?
a lot of things going on here, but Development and DebugGame are completely different build configurations that are independent of each other
the cooker uses the Development Editor binaries
I see, but why does it fail to build Development Editor binaries when running through cmd? I do have -compile option, so it should compile what it's missing
That's my packaging command
call %UAT_PATH%/RunUAT.bat ^
BuildCookRun -build -project=%UPROJECT% -cook -stage -package -compile -nocompileeditor ^
-targetplatform=%PLATFORM% -target=%TARGET% ^
-server -serverconfig=%SERVER_CONFIG% ^
-unversionedcookedcontent -skipeditorcontent -iterativecooking ^
-map=%MAPS% ^
-distribution ^
-archive -archivedirectory=%OUTPUT_DIR% ^
-zenstore -compressed -pak ^
-utf8output -nop4 -CrashReporter
-nocompileeditor is there for one
Oh, I thought it's related to some editor content. My bad
Hopefully that fixes it, thank you 🙏
Even if I don't make any changed it runs a full cook, and im not sure where I can use these commands..
UATHelper: Packaging (Windows): LogCook: Display: FULL COOK: Neither -legacyiterative nor -cookincremental were specified. Deleting previously cooked packages for platform Windows and recooking all packages discovered in the current cook.
that is indeed default behavior, you can specify -cookincremental when calling Cook from commandline (or inside INI) and it will use local zen server to cache data between cooks... I'm not sure if there is anything exposed to UI so you can easily check a checkbox etc.
also worth noting is that legacyiterative is a deprecated thing (hence legacy in it's name) and cookincremental is currently experimental in UE 5.6 so you might get some issues while using those
seems like you can enable the legacyitterative through Project Settings -> Engine -> Cooker from UI and it will be used whne playing from editor and through Platforms -> Cook menu (as the options suggest)
but if you state a more specific goal you're trying to achive we might be able to help further
I tried checking these but they didn't do anything it still ran a full cook everytime
Im just trying to reduce the packaging time, every time I package it goes for an hour +, because it is doing a full cook
I was on UE5.4 working fine and it would only cook the specific changes, when i migrated the project to 5.6 it always does full
im not really familiar with using the command line , could you explain how I can go about running a command or even better where I should put that argument in which ini?
we use following command for local testing:
pushd "%~dp0..\..\.."
call .\Engine\Build\BatchFiles\RunUAT.bat BuildCookRun -p4 -project=./OurGameNameHere/OurGameNameHere.uproject -cook -stage -archive -archivedirectory=./OurGameNameHere/PackagedDev -package -compressed -pak -prereqs -targetplatform=Win64 -build -target=OurGameTarget -clientconfig=Development -utf8output -compile
pause
this file is placed in OurGameNameHere/Build/BatchFiles/RunLocakPackage.bat you'll have to tweak things like removing -p4 if you're not using perforce etc.. and also you'd specify the -iterativecooking etc.
you might have to tweak other things depending on if you're using engine from epic games store or locally cloned from git/perforce etc.
also you mnight have to put following thing into your project's DefaultEditor.ini for iterative cooking to work:
[CookSettings]
+IncrementalClassScriptPackageAllowList=Allow,<ProjectRoot>
(just copy and paste)
and while you're at it you could put:
[CookSettings]
CookIncremental=true
into the same file which would mean things would use incremental cooking by default but all of this depends on your workflow and needs
Now anytime I package from cmd, I will need to recompile those 300 files anytime I want to launch the editor from debug game. I don't get why since it's compiling same DebugGame (SERVER_CONFIG is DebugGame)
yeah I'm not sure what your engine setup is like but they're different targets, so it shouldn't make a difference, but different targets, build configurations, types, etc, are all independent of each other
you should only get recompilation if you passed -clean
Yeah, that's what I would expect 😔
Same here
@silver cedar did you manage to get it working?
ah okay thanks
I just don't understand what's the need for all this when it was perfectly doing that on its own in older versions
I know this is convenient in a lot of cases but for someone who just wants to package in editor without long cook times why not have a way to enable that in engine, or by default
Still Mysterious piece of art. I wonder now why Mega game jam submission time extended
Incredible
anyone know how to fix the metahuman thing here?
I tried deleting the metahuman plugin, turning it off and on , deleting the intermedaite from the engine to rebuild, alas nothing works
I'm trying to figure why this happens:
When I package my game that has 68 levels , the file size is around 10gb
When I package a demo of the game, that has only 4 levels, the size is 3.6gb. I was expecting a way smaller file for the demo, I'm sure I missed something, does anyone know why is it like this?
you crossposted, but this is an extremely vague question without knowing what you game is like
you should audit what is going into the build
how can I do that ?
I see, when I click audit on an asset is showing me the disk size, but how would I make sure that it only packages the assets in those 4 levels ?
what's included in the cook is based on what is actually referenced by those levels
I'm having an issue with a global shader from the FSR 4 plugin not being cooked, has anyone had this issue before? (please ping if answering!)
specifically the FFXFIAdditionalUICS shader
Fatal error: [File:C:\...\Engine\Source\Runtime\Engine\Private\ShaderCompiler\ShaderCompiler.cpp] [Line: 4572]
Missing global shader FFXFIAdditionalUICS's permutation 0, Please make sure cooking was successful.
I figured it out! The plugin had the EngineVersion field specified to 5.5.0, and we're on 5.5.1. The editor loaded fine because we can click on load anyways, but the cook process didn't load the plugin
Removing the field (which I wanted to do anyways) fixed the issue
can you even package in 5.6 or 5.5
it only works in 5.4 for me,
they just say "failed to launch" in any project in 5.5 or 5.6
well you need to be specific in which errors you see
because of course you can
I'm unable to package using the launcher version of 5.7 and I'm curious if anyone else is running into this issue. The 'package project' option is disabled.
I've tried:
- Upgrading an existing 5.6 project that could build
- Starting with a fresh 5.7 project using the Blank project default and the nDisplay project default
- Verifying engine files
- Restarting my computer
- Uninstalling and reinstalling the engine
- All platforms are checked under Project Settings > Supported Platforms
"windows" is not checked
(based on what I've seen previously)
failing that, try from UnrealFrontend or packaging via the command line. packaging via the editor is fairly wasteful resources wise
Do you mean like this?
notice the circle isn't filled in white for "Windows"
what happens if you click the "Windows" part
Did someone try out substrate with the 5.7 version? Does it reduce performance?
how/why?
BuildCookRun should give you enough in Google. When you cook via the editor, it actually launches a second headless version of the editor and that's what does the cooking. So you're paying the cost to keep the editor idle during what's already a processor/memory intensive task
Is VS 2026 the new norm for packaging with UE 5.7 ??
Packaging is showing errors almost right after that warning for me. Was packaging well in 5.6 and before.
UATHelper: Error: Packaging (Windows): Module.GeometryAlgorithms.2.cpp.obj : error LNK2001: unresolved external symbol __std_mismatch_4
UATHelper: Error: Packaging (Windows): Module.GeometryAlgorithms.2.cpp.obj : error LNK2019: unresolved external symbol __std_minmax_element_d referenced in function "struct std::pair<double *,double *> __cdecl std::_Minmax_element_vectorized<double>(double * const,double * const)" (??$_Minmax_element_vectorized@N@std@@YA?AU?$pair@PEANPEAN@0@QEAN0@Z)
UATHelper: Error: Packaging (Windows): reverb_onset_compensator.cc.obj : error LNK2019: unresolved external symbol __std_minmax_element_f referenced in function "struct std::pair<float *,float *> __cdecl std::_Minmax_element_vectorized<float>(float * const,float * const)" (??$_Minmax_element_vectorized@M@std@@YA?AU?$pair@PEAMPEAM@0@QEAM0@Z)
UATHelper: Error: Packaging (Windows): reverb_node.cc.obj : error LNK2019: unresolved external symbol __std_max_element_f referenced in function "float * __cdecl std::_Max_element_vectorized<float>(float * const,float * const)" (??$_Max_element_vectorized@M@std@@YAPEAMQEAM0@Z)
UATHelper: Error: Packaging (Windows): C:\GameDev\UE\FAB\Menu\OGMainMenuSystem5.7\Binaries\Win64\OGMainMenu-Win64-Shipping.exe : fatal error LNK1120: 4 unresolved externals```
Updated my VS 2022 to the latest version and it still does the same. The project is a bp only project. VS 2026 and VS 2019 also failed to package, but they did not state which errors stopped them from doing so
You need to install the 14.44 toolchain
Yea just did, then it worked. Forgot to say here. Thank you very much nevertheless!
Holy crap how annoying
Hi, just Switched to another PC but i cant build anymore :/ ? any ideas ?
sound like a missing lib "delayimp.lib", make sure you have MSVC v143 installed
yeah i was missing that
now its getting 10 seconds further but still another error -.-
Ideas 😛 ?
ew. Engine Version: 1012 Package Version: 1013 hm alot oof these
was not there before
could i be on the wrong UE version :/ ?
hm that cant be it im 100% it was on a 5.4 UE and thers only 1 available
it must be related to this ?
https://gyazo.com/0936073dcf895ed907c3fb2dac577664