My blacklist files seem to be being ignored.
[EDIT: Still a problem] Attached is a sample project - very small - that I’m trying to strip to an absolute minimal spec. I’ve tried a few different paths but none of them seem to work - if someone could tell me what’s wrong I’d be very grateful!
[EDIT: Worked out!] A second question is how to get RunUAT or similar to build only the DLC plugin (that’s what cookDLC is meant to be doing).
75604-ue4cooker.zip (87 KB)
I worked out how to cook the DLC (cunning use of all new Eye Technology applied against the output from the profile launcher).
SessionName below matches the custom launch profile name created in the ProjectLauncher.
“C:\Program Files (x86)\Epic Games\4.10\Engine\Build\BatchFiles\RunUAT.bat” BuildCookRun -project=“C:/Users//Documents/Unreal Projects/UE4Cooker/UE4Cooker.uproject” -noP4 -clientconfig=Development -serverconfig=Development -nocompile -nocompileeditor -rocket -utf8output -platform=Win64+Win64 -targetplatform=Win64 -cook -map= -unversionedcookedcontent -pak -dlcname=DLC -basedonreleaseversion=1.0 -compressed -stage -package -cmdline= -Messaging -addcmdline=-SessionId=54E658F4468616D31A34EEB8C0D85FE1 -SessionOwner=ThomasShepherd -SessionName=‘DLC’
I’d like to verify that you’ve resolved your issue that you were originally having?
Nope. I’ll probably be back testing in that area later in the week. Is there anything obviously wrong with the blacklists I have in the zip attached to my first post?
The success post above was to confirm I could build DLC.
So, I was able to run your RunUAT without any trouble, once I changed the location to match what’s on my computer. So hopefully that isn’t an issue you’re experiencing any longer.
Looking into the Pakblacklist issue you’re running in to, I was unable to find much information on it. However, I did find an [AnswerHub post] which has a suggestion that may actually help you. Please try their suggestion and let me know.
How do you use PakBlacklist-Shipping.txt? - Mobile - Epic Developer Community Forums
We have not heard back from you in a few days, so we are marking this post as Resolved for tracking purposes. If you are still experiencing the issue you reported, please respond to this message with additional information and we will offer further assistance.
I’ve followed that post - and a couple of others but have yet to reduce the created pak file size.
For instance, I’d like to remove all Engine/Content/Slate files from my WindowsNoEditor build. I’ve created a PakBlackList-Development.txt file in my Build/WindowsNoEditor folder and put the fully qualified path in it:
C:/Program Files (x86)/Epic Games/4.11/Engine/Content/Slate/
Then I delete:
- MyProject/Build/WindowsNoEditor anything that isn’t a black list file
Looking at the built pak file using UnrealPak pakname -List (where pakname is MyProject\Saved\StagedBuilds\WindowsNoEditor\MyProject\Content\Paks\MyProject-WindowsNoEditor.pak) I can see that there’s a lot of Engine/Content/Slate files in there.
Which makes me think the blacklist isn’t working.
Note that RunUAT works fine in that the pak file created is valid and there are no errors, it’s just 13MB for a completely empty project and I’d like to reduce that to the bare minimum which is what I thought the black lists were meant to help with.
I’ve also tried this (relative path from Engine/Binaroes/Win64 binaries)
So one question it would be good to get info on is:
Is there anyway to tell if the blacklist file is being picked up? For instance some reassuring output that says “Found PakBlacklist-Development.txt”.
Do you have ‘use pak file’ selected in your packaging settings?
Yes - I’m building pak files. What would help would be clarification from the devs on two points:
- Supported path formats (relative to what, etc)
- How do we know if the system is even using the file (output).
Thank for following up !
I packaged your project using the format …/…/…/Engine/Content/EditorMeshes/ColorCalibrator/ (example) and noticed that files were excluded from the build. It went from 217 megabytes originally to 174 megabytes once packaged using the method above to exclude files.
If you’re using 4.9 or above, you can place a text file in your projects Build/Platform/(TargetPlatformFolder) directory which tells the cooker to exclude partial or complete file-paths from being packaged into your project.
Example - Blacklist Text File Location & Name: TappyChicken/Build/Android/PakBlacklist-Shipping.txt:
The first three entries should be safe for any project, but there may be cases were the AssetRegistry.bin is needed at runtime depending on your project. It is highly recommend that you thoroughly test to ensure that the content you are removing will not negatively impact your project.
Please check out the following links:
Yep - 'fraid to say I’ve followed those directions with multiple variations and not been able to remove files from my pak that I’m trying to nuke.
Given the process as outlined is pretty simple either I’m missing something silly, or there’s a issue with the process that prevents it working in my environment.
Before we continue though perhaps you could confirm that you can remove slate content from your pak file.
- Add this line to your black list file: …/…/…/Engine/Content/Slate/
- Build the pak file (perhaps delete intermediate, saved and anything that isn’t a blacklist file under your build directory before approaching this? I read that someone needed to so I’ve been doing it religiously each attempt).
- Confirm that your pak file does not contain Engine/Content/Slate content
To do this last step use UnrealPak to list the files within the resultant pak file. For instance:
Unrealpak "C:\Users\\Documents\Unreal Projects\StagingTest\Releases\1.0\WindowsNoEditor\StagingTest-WindowsNoEditor.pak" -List > FileList.txt
I am looking into this, I will respond back once I have finished investigating.
So, I have looked into this further, and I have noticed that the Project\WindowsNoEditor\Engine\Content\Slate stays behind once it’s packaged, even when you use the UnrealPak to verify. With that being said, I have submitted a bug report to our Developers. I will update this post when UE-26771 has been fixed, or if there has been clarification provided that wasn’t included in our documentation.
I’m looking into this however everything seems to be working correctly for me.
I see in the log
Project.CreatePakResponseFileFromStagingManifest: Applying PAK blacklist file E:\stream1\Samples\Games\MemoryGame\Build\Win64\PakBlacklist-Development.txt
Project.CreatePakResponseFileFromStagingManifest: Excluding E:\stream1\Samples\Games\MemoryGame\Saved\Cooked\WindowsNoEditor\Engine\Content\EditorMeshes\EditorPlane.uasset
Project.CreatePakResponseFileFromStagingManifest: Excluding E:\stream1\Samples\Games\MemoryGame\Saved\Cooked\WindowsNoEditor\Engine\Content\EditorMeshes\ColorCalibrator\M_ChromeBall.uasset
Project.CreatePakResponseFileFromStagingManifest: Excluding E:\stream1\Samples\Games\MemoryGame\Saved\Cooked\WindowsNoEditor\Engine\Content\EditorMeshes\ColorCalibrator\M_ClearCoat.uasset
Project.CreatePakResponseFileFromStagingManifest: Excluding E:\stream1\Samples\Games\MemoryGame\Saved\Cooked\WindowsNoEditor\Engine\Content\EditorMeshes\ColorCalibrator\M_ClearCoatBlack.uasset
Project.CreatePakResponseFileFromStagingManifest: Excluding E:\stream1\Samples\Games\MemoryGame\Saved\Cooked\WindowsNoEditor\Engine\Content\EditorMeshes\ColorCalibrator\M_ColorGrid.uasset
Project.CreatePakResponseFileFromStagingManifest: Excluding E:\stream1\Samples\Games\MemoryGame\Saved\Cooked\WindowsNoEditor\Engine\Content\EditorMeshes\ColorCalibrator\M_GreyBall.uasset
Project.CreatePakResponseFileFromStagingManifest: Excluding E:\stream1\Samples\Games\MemoryGame\Saved\Cooked\WindowsNoEditor\Engine\Content\EditorMeshes\ColorCalibrator\SM_ColorCalibrator.uasset
Project.CreatePakResponseFileFromStagingManifest: Excluding E:\stream1\Samples\Games\MemoryGame\Saved\Cooked\WindowsNoEditor\Engine\Content\EditorMeshes\ColorCalibrator\T_ColorGrid.uasset
then when I test the pak file those files are missing.
MrFred you are a genius
Win64, I had my black list files in WindowsNoEditor and Windows.
Also you answered the question about what output to be looking for.
The thing that I don’t see answered here or on any of the documentation is where the paths are relative to defined in the blacklist file. Does anyone know?
UnrealUAT.exe I suspect - so C:\Program Files (x86)\Epic Games\4.11\Engine\Binaries\Win64 in my case. However it maybe that your own project directories are mounted relative to this somehow - also I’m not sure why you would need the extra …/ and Engine/ in the below example so maybe I’m just wrong…
Clarification on this front would be awesome!
I also used WindowsNoEditor and failed, the correct path for a Win64 game is: