Giter Club home page Giter Club logo

hotpatcher's Introduction

Github Stats👋

hotpatcher's People

Contributors

909185693 avatar crazyshader avatar crazytuzi avatar deathlyrage avatar hxhb avatar stlnkm avatar troutzhang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hotpatcher's Issues

UE4.27 cook content 时候会直接崩溃

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x000000000000003e

UE4Editor_Core
UE4Editor_HotPatcherEditor!TArray<FString,TSizedDefaultAllocator<32> >::CopyToEmpty<FString,int>() [D:\UE4\UE_4.27\Engine\Source\Runtime\Core\Public\Containers\Array.h:2652]
UE4Editor_HotPatcherEditor!TArray<FString,TSizedDefaultAllocator<32> >::operator=() [D:\UE4\UE_4.27\Engine\Source\Runtime\Core\Public\Containers\Array.h:441]
UE4Editor_HotPatcherEditor!FOriginalCookerContext::GetCookConfig() [D:\ue4_project\HotPatcherProject\Plugins\HotPatcher\Source\HotPatcherEditor\Public\Model\FOriginalCookerContext.h:204]
UE4Editor_HotPatcherEditor!SOriginalCookWidget::RunCook() [D:\ue4_project\HotPatcherProject\Plugins\HotPatcher\Source\HotPatcherEditor\Private\Cooker\OriginalCooker\SOriginalCookWidget.cpp:230]
UE4Editor_HotPatcherEditor!UE4Tuple_Private::TTupleBase<TIntegerSequence >::ApplyAfter<FReply (__cdecl SOriginalCookWidget::*const &)(void)const ,SOriginalCookWidget * &>() [D:\UE4\UE_4.27\Engine\Source\Runtime\Core\Public\Templates\Tuple.h:306]
UE4Editor_HotPatcherEditor!TBaseSPMethodDelegateInstance<1,SOriginalCookWidget const ,0,FReply __cdecl(void),FDefaultDelegateUserPolicy>::Execute() [D:\UE4\UE_4.27\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:290]
UE4Editor_Slate

Mods 下内容看不到

Mods下内容下载不下来,找的时候也找不到,是权限问题吗?如果不下载,不影响吧?v76这样,现在v77也是这样的

An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.

I've just pull the master branch and put it under the Engine/Plugins/ directory, but UE5 complains about requiring category specifier for all properties exposed to blueprint in this plugin as almost none of them has been put into any categories yet. I got 169 these errors. Is there anyway to surpress this error?

I've seen other plugins fixing this issue like this. Has there anyone encountered this problem before?

模型nanite后,hotpatcher-80版本打包pak,加载报错

模型nanite后,5.1 hotpacher 打包pak,加载报错 Assertion failed: !HasStreamingData() || StreamablePages.GetBulkDataSize() > 0 [File:D:\build++UE5\Sync\Engine\Source\Runtime\Engine\Private\Rendering\NaniteResources.cpp] [Line: 270]

报错地方 #if !WITH_EDITOR
check(!HasStreamingData() || StreamablePages.GetBulkDataSize() > 0);
#endif
}

mesh数据自己打到exe里测试没问题

UE5 Linux Case Sensitive File System Build Error

Building against Unreal Engine 5.0 release with Linux. I think unreal engine renamed this file so we would have to add a #if ENGINE VERSION MAJOR == 5 then use a capital M in the include.

In file included from /home/user/workspace/pot/pot-UE5/Game/Plugins/HotPatcher/Intermediate/Build/Linux/B4D820EA/UnrealEditor/Development/HotPatcherCore/Module.HotPatcherCore.gen.cpp:9: In file included from /home/user/workspace/pot/pot-UE5/Game/Plugins/HotPatcher/Intermediate/Build/Linux/B4D820EA/UnrealEditor/Inc/HotPatcherCore/GameFeatureProxy.gen.cpp:8: In file included from /home/user/workspace/pot/pot-UE5/Game/Plugins/HotPatcher/Source/HotPatcherCore/Public/GameFeature/GameFeatureProxy.h:6: In file included from /home/user/workspace/pot/pot-UE5/Game/Plugins/HotPatcher/Source/HotPatcherCore/Public/CreatePatch/HotPatcherProxyBase.h:5: In file included from /home/user/workspace/pot/pot-UE5/Game/Plugins/HotPatcher/Source/HotPatcherRuntime/Public/CreatePatch/HotPatcherContext.h:12: �[1m/home/user/workspace/pot/pot-UE5/Game/Plugins/HotPatcher/Source/HotPatcherRuntime/Public/BaseTypes/FPackageTracker.h:5:10: �[0m�[0;1;31mfatal error: �[0m�[1m'HAL/PlatformFilemanager.h' file not found�[0m #include "HAL/PlatformFilemanager.h" �[0;1;32m ^~~~~~~~~~~~~~~~~~~~~~~~~~~ �[0m1 error generated.

v74版本打补丁包断言失败

打热更包出现下面的断言失败:
image

可能相关的配置如下:
image

经二分排除定位法确定导致问题的提交记录如下:
image

关于RecursiveWidgetTree字段的问题

测试环境:UE4 4.25引擎,插件版本:V73
大佬你好,我目前遇到了UMG子控件热更不生效的问题。
问题1:
我有个工程,有UMG MainUI和SubA两个蓝图,MainUI由LevelBP创建显示,SubA是直接挂在Main上面。引用关系如图。
image
此时,讲道理,我修改SubA的内容,仅对SubA进行pak和热更,游戏内并不会实际生效,而带上Main连同SubA一起Pak,热更新就可以成功。
大佬对此类问题给的解法是在By patch时勾选RecursiveWidgetTree,我这边,仅修改SubA的内容,勾选后RecursiveWidgetTree,发现依旧只打了SubA
image
是我的设置哪里出错了吗?

问题2:
我发现不止是UMG子控件,可能其他的子控件也有类似问题,比如一个蓝图引用了一个mesh,只pak这个蓝图后,提示mesh丢失,RecursiveWidgetTree是支持所有资源(不止是UMG蓝图)引用查询和自动化添加到pak列表的吗?

Mods repositories are empty.

Hi,

I tried to pull the repository with git bash, and it prints the message below.
Could you please check with it?

Thank you in advance :)

`Cloning into 'C:/Work/gitlab/HotPatcher/Mods/HDiffPatchUE'...
ERROR: Repository not found.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
fatal: clone of '[email protected]:hxhb/HDiffPatchUE.git' into submodule path 'C:/Work/gitlab/HotPatcher/Mods/HDiffPatchUE' failed
Failed to clone 'Mods/HDiffPatchUE'. Retry scheduled
Cloning into 'C:/Work/gitlab/HotPatcher/Mods/HotChunker'...
ERROR: Repository not found.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
fatal: clone of '[email protected]:hxhb/HotChunker.git' into submodule path 'C:/Work/gitlab/HotPatcher/Mods/HotChunker' failed
Failed to clone 'Mods/HotChunker'. Retry scheduled
Cloning into 'C:/Work/gitlab/HotPatcher/Mods/HotMultiCooker'...
ERROR: Repository not found.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
fatal: clone of '[email protected]:hxhb/HotMultiCooker.git' into submodule path 'C:/Work/gitlab/HotPatcher/Mods/HotMultiCooker' failed
Failed to clone 'Mods/HotMultiCooker'. Retry scheduled
Cloning into 'C:/Work/gitlab/HotPatcher/Mods/RemakePak'...
ERROR: Repository not found.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
fatal: clone of '[email protected]:hxhb/RemakePak.git' into submodule path 'C:/Work/gitlab/HotPatcher/Mods/RemakePak' failed
Failed to clone 'Mods/RemakePak'. Retry scheduled
Cloning into 'C:/Work/gitlab/HotPatcher/Mods/libzstd'...
ERROR: Repository not found.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
fatal: clone of '[email protected]:hxhb/ue-zstd.git' into submodule path 'C:/Work/gitlab/HotPatcher/Mods/libzstd' failed
Failed to clone 'Mods/libzstd'. Retry scheduled
Cloning into 'C:/Work/gitlab/HotPatcher/Mods/HDiffPatchUE'...
ERROR: Repository not found.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
fatal: clone of '[email protected]:hxhb/HDiffPatchUE.git' into submodule path 'C:/Work/gitlab/HotPatcher/Mods/HDiffPatchUE' failed
Failed to clone 'Mods/HDiffPatchUE' a second time, aborting
`

UE5.0.2 Version v77.0 热更新上去的pak使用软引用路径找不到资源

我打好一个基础版本并且导出release以后,在Content下创建了一个Test文件夹,然后导入了一个骨骼网格体,然后用刚刚生成的release打了一个新的pak,放到Windows/xxx/Content/Pak里以后启动应用程序,利用软路径加载刚刚导入的网格体(SkeletalMesh'/Game/Test/f_tal_unw_top.f_tal_unw_top'),说找不到
LogStreaming: Warning: LoadPackage: SkipPackage: /Game/Test/f_tal_unw_top(0xB9942B520D383582) - The package to load does not exist on disk or in the loader

pak包应该是正确被挂载上了?
LogPakFile: Display: Found Pak file ../../../xxx/Content/Paks/beta0.2_Windows_001_P.pak attempting to mount.
LogPakFile: Display: Mounting pak file ../../../xxx/Content/Paks/beta0.2_Windows_001_P.pak.
LogPakFile: Warning: IoStore container "../../../xxx/Content/Paks/beta0.2_Windows_001_P.utoc" not found
LogPakFile: Display: Mounted Pak file '../../../xxx/Content/Paks/beta0.2_Windows_001_P.pak', mount point: '../../../xxx/Content/Test/'

这个是我有什么配置不正确吗?

Android平台加载pak出现错误

image
image

在Windows平台的PAK没有问题,在Android上出现了上面的报错
第二张图里面的场景就是第二张图提示错误的场景名
image
image

如果不加载这个pak,可以正常打开TestMap场景,打包的PAK文件只有一个lua修改(第一张图信息)

对于UE5正式版本还会支持吗

我之前使用UE5.0.1的时候我的安卓项目无法打包
排查了一圈发现主页上写着不支持正式版,不知道当前版本是否已经静默支持,如果支持了作者方便回复一下最好
现在正式版已经更新了3个小版本了,应该算是比较稳定了,不知道作者有没有支持正式版的想法

如何在IOS平台使用HotPatcher

作者你好,我看了你在windows上的教程,看到也是支持ios的,但在ios上是如何处理,比如我打包程序到ipad没有看到pak文件。

76.3 ue5.0.3 打包报错

UATHelper: Packaging (Windows): ERROR: Unable to instantiate module 'UnrealEd': Unable to instantiate UnrealEd module for non-editor targets.
UATHelper: Packaging (Windows): (referenced via Target -> CmdHandler.Build.cs)
PackagingResults: Error: Unable to instantiate module 'UnrealEd': Unable to instantiate UnrealEd module for non-editor targets.

请问二进制补丁方案和 Pak 的运行时重组方案,有没有在正式项目中应用呢?

您好,我们有幸通过您的两篇文章 UE 热更新:资源的二进制补丁方案虚幻引擎中 Pak 的运行时重组方案 了解到这两个方案。我们对这两个方案很感兴趣,目前也在自行做一些探索,但是我们在做运行时 Patch 时遇到了问题。

首先是二进制补丁方案,我们最初的做法是下载到包含二进制补丁的 Pak 后,先将它解压缩,把里面的二进制补丁还原成资源文件后,重新打包成 Pak。这种做法会有安全问题,因为在还原过程中,资源文件会裸露在本地。后来我们改为将整个 Pak 加载到内存,再把内存中还原好的资源文件打包成 Pak,这样就不需要做 Pak 的解压缩和压缩了。但是这样会有另一个问题,就是 Pak 通常会比较大,特别是作为基础包资源的 Pak,导致内存占用过高。

然后是 Pak 运行时重组方案,我们对此感兴趣是因为想了解增量更新 Pak 的可能性,例如我们想更新一个 Pak 中的某几个文件,我们只需要重组这几个文件的 PakEntry,PakEntryContent 和 PakIndex 即可,而不需要重新构建整个 Pak。不过根据您的文章,增量更新 Pak 应该很难实现,因为修改 Pak 中的文件涉及到所有数据块的偏移,索引的修改等,这个过程就相当于是重新构建整个 Pak 了。

考虑到目前无法实现增量更新 Pak,我们打算改用您提供的思路,即修改引擎的 PakFile 模块,在加载资源文件时还原二进制补丁。不过这个思路可能会有这样的问题,由于每次还原后的资源文件并没有写出到本地,如果某个资源文件经历了多次修改,那么它就需要进行多次还原——例如资源文件 A 在1.1,1.2,1.3 版本中都有修改,那么在加载资源文件 A,至少是在首次加载时,就需要从 1.0 开始连续做三次还原,从而降低了资源加载的效率,而且这种影响是随着版本迭代而不断增加的。

因此,我们想了解这两个方案有没有用到正式的项目中,如果有,我们想请教运行时 Patch 问题的解决方法,以及 Pak 增量更新的可能性。

4.21版本by release打包会报错,4.26版本正常。使用hot patcher版本75.2&76.1

LogMissionNotificationProxy: Display: [2022.08.26-03.17.59:523][ 0]LogTemp: Display: Loaded TP LinuxTargetPlatform
LogMissionNotificationProxy: Display: [2022.08.26-03.17.59:578][ 0]LogTemp: Display: Loaded TP LuminTargetPlatform
LogMissionNotificationProxy: Display: [2022.08.26-03.17.59:578][ 0]LogTemp: Display: Loaded TP LuminTargetPlatform
LogMissionNotificationProxy: Display: [2022.08.26-03.17.59:578][ 0]LogTargetPlatformManager: Display: Building Assets For Windows
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: === Critical error: ===
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error:
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: Assertion failed: bInitialized [File:D:\Build++UE4\Sync\Engine\Source\Runtime\ShaderCore\Private\ShaderCore.cpp] [Line: 241]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: GShaderHashCache::Initialize needs to be called before GShaderHashCache::GetPlatformIncludeDirectory.
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error:
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error:
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: [Callstack] 0x00007ffe361c4f69 KERNELBASE.dll!UnknownFunction []
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: [Callstack] 0x00007ffde5d9cd1a UE4Editor-Core.dll!FWindowsErrorOutputDevice::Serialize() [d:\build++ue4\sync\engine\source\runtime\core\private\windows\windowserroroutputdevice.cpp:63]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: [Callstack] 0x00007ffde5b7a967 UE4Editor-Core.dll!FOutputDevice::LogfImpl() [d:\build++ue4\sync\engine\source\runtime\core\private\misc\outputdevice.cpp:71]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: [Callstack] 0x00007ffde5ab0df7 UE4Editor-Core.dll!FDebug::AssertFailed() [d:\build++ue4\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:417]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: [Callstack] 0x00007ffde7f8e69c UE4Editor-ShaderCore.dll!FShaderHashCache::ShouldIgnoreInclude() [d:\build++ue4\sync\engine\source\runtime\shadercore\private\shadercore.cpp:201]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: [Callstack] 0x00007ffde7f428e1 UE4Editor-ShaderCore.dll!GetShaderIncludes() [d:\build++ue4\sync\engine\source\runtime\shadercore\private\shadercore.cpp:714]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: [Callstack] 0x00007ffde7f42925 UE4Editor-ShaderCore.dll!GetShaderIncludes() [d:\build++ue4\sync\engine\source\runtime\shadercore\private\shadercore.cpp:719]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: [Callstack] 0x00007ffde7f42925 UE4Editor-ShaderCore.dll!GetShaderIncludes() [d:\build++ue4\sync\engine\source\runtime\shadercore\private\shadercore.cpp:719]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:372][ 0]LogWindows: Error: [Callstack] 0x00007ffde7f42925 UE4Editor-ShaderCore.dll!GetShaderIncludes() [d:\build++ue4\sync\engine\source\runtime\shadercore\private\shadercore.cpp:719]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:373][ 0]LogWindows: Error: [Callstack] 0x00007ffde7f1947a UE4Editor-ShaderCore.dll!AddShaderSourceFileEntry() [d:\build++ue4\sync\engine\source\runtime\shadercore\private\shadercore.cpp:411]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:373][ 0]LogWindows: Error: [Callstack] 0x00007ffde7f3cf71 UE4Editor-ShaderCore.dll!GetAllVirtualShaderSourcePaths() [d:\build++ue4\sync\engine\source\runtime\shadercore\private\shadercore.cpp:432]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:373][ 0]LogWindows: Error: [Callstack] 0x00007ffde7f25208 UE4Editor-ShaderCore.dll!BuildShaderFileToUniformBufferMap() [d:\build++ue4\sync\engine\source\runtime\shadercore\private\shadercore.cpp:875]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:373][ 0]LogWindows: Error: [Callstack] 0x00007ffde7f4ae21 UE4Editor-ShaderCore.dll!InitializeShaderTypes() [d:\build++ue4\sync\engine\source\runtime\shadercore\private\shadercore.cpp:948]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:373][ 0]LogWindows: Error: [Callstack] 0x00007ff6a224cf57 UE4Editor-Cmd.exe!FEngineLoop::PreInit() [d:\build++ue4\sync\engine\source\runtime\launch\private\launchengineloop.cpp:1941]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:373][ 0]LogWindows: Error: [Callstack] 0x00007ff6a2245783 UE4Editor-Cmd.exe!GuardedMain() [d:\build++ue4\sync\engine\source\runtime\launch\private\launch.cpp:135]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:373][ 0]LogWindows: Error: [Callstack] 0x00007ff6a22459ea UE4Editor-Cmd.exe!GuardedMainWrapper() [d:\build++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:145]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:373][ 0]LogWindows: Error: [Callstack] 0x00007ff6a22548da UE4Editor-Cmd.exe!WinMain() [d:\build++ue4\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:276]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:373][ 0]LogWindows: Error: [Callstack] 0x00007ff6a225584e UE4Editor-Cmd.exe!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:283]
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:456][ 0]LogWindows: Error: [Callstack] 0x00007ffe37817034 KERNEL32.DLL!UnknownFunction []
LogMissionNotificationProxy: Error: [2022.08.26-03.18.03:456][ 0]LogWindows: Error: [Callstack] 0x00007ffe389a2651 ntdll.dll!UnknownFunction []
LogMissionNotificationProxy: Error: The Release Mission is faild.

ConvertToFullSandboxPath 返回永远是Empty

FlibHotPatcherEditorHelper.cpp
FString ConvertToFullSandboxPath( const FString &FileName, bool bForWrite )
传入的FileName是相对路径,下面又拿了Project的绝对路径,用StartsWith判断不会通过。
我这边按如下图方案做了修改 目前看了下应该没问题了
企业微信截图_16430219908533

打包出错

UATHelper: 正在打包 (Windows (32-bit)): [1/4] Module.HotPatcherRuntime.cpp
UATHelper: 正在打包 (Windows (32-bit)): F:/UE4Project/Test/Plugins/HotPatcher/Source/HotPatcherRuntime/Private/MountListener.cpp(37): error C2660: ��UMountListener::OnMountPak��: ���������� 1 ������
UATHelper: 正在打包 (Windows (32-bit)): F:\UE4Project\Test\Plugins\HotPatcher\Source\HotPatcherRuntime\Public\MountListener.h(35): note: �μ���UMountListener::OnMountPak��������
UATHelper: 正在打包 (Windows (32-bit)): [2/4] Module.HotPatcherRuntime.gen.cpp

UE4.24打包时报错

其他插件没有被打包进去

我新加入了一个插件,但是打包后,新插件效果没生效,
新加的插件应该没有被打进去,是需要什么特殊设置吗?

I plan to use it in ue5 preview 2. I try to compile this plug-in in ue5c + + new project, but the incidence is wrong ~ ~ can you help me solve it

Severity Code Description Project File Line Suppression Status
error C2440 "=": cannot convert from "int" to "EShaderPlatform" hotpatchertext1 D:\UE5Test\hotpatchertext1\Plugins\HotPatcher\Source\HotPatcherCore\Private\Cooker\MultiCooker\MultiCookerProxy.cpp 128
Parameter error C2660 "RecompileShadersForRemote": function does not accept 7 hotpatchertext1 D:\UE5Test\hotpatchertext1\Plugins\HotPatcher\Source\HotPatcherCore\Private\Cooker\MultiCooker\MultiCookerProxy.cpp 135
Error MSB3073 Command "D:\UE5\UE_5.0\Engine\Build\BatchFiles\Build.bat hotpatchertext1Editor Win64 Development -Project="D:\UE5Test\hotpatchertext1\hotpatchertext1.uproject" -WaitMutex -FromMsBuild" exited with code 6. hotpatchertext1 C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.MakeFile.Targets 45

Cook Content 报错

引擎: 4.27.2 Development 源码编译
hotpatcher: #41e461ca
复现: 起一个带StartContent的新项目, targetplatform 勾选之前没Cook过的两个或更多平台, 点CookContent

Log:

LogCookPage: The Cook Mission is Staring...
LogCookPage: CookCommand:E:/UnrealEngine/LocalBuilds/Engine/Windows/Engine/Binaries/Win64/UE4Editor-Cmd.exe "E:/Test/Test.uproject" -run=cook -targetplatform=WindowsNoEditor+Android_Multi -Map=Minimal_Default+StarterMap -Iterate -UnVersioned -CookAll -Compressed 
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:603][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'AllDesktop'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:618][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:618][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_ASTC'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:618][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_DXT'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:618][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_ETC2'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:618][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'AndroidClient'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:618][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_ASTCClient'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:618][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_DXTClient'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:618][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_ETC2Client'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:618][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_Multi'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:618][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_MultiClient'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:634][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'IOSClient'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:634][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'IOS'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:651][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Lumin'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:651][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'LuminClient'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:659][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'MacNoEditor'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:662][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Mac'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:665][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'MacClient'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:669][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'MacServer'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:676][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'TVOSClient'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:676][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'TVOS'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:682][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'WindowsNoEditor'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:686][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Windows'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:689][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'WindowsClient'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:693][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'WindowsServer'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:693][  0]LogTargetPlatformManager: Display: Building Assets For Android_Multi
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:693][  0]LogTargetPlatformManager: Display: Building Assets For WindowsNoEditor
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:699][  0]LogAudioDebug: Display: Lib vorbis DLL was dynamically loaded.
LogMissionNotificationProxy: Display: [2022.07.27-07.38.31:724][  0]LogTextureFormatOodle: Display: Oodle Texture 2.9.0 init RDO Off
LogMissionNotificationProxy: Display: [2022.07.27-07.38.32:012][  0]LogShaderCompilers: Display: Using Local Shader Compiler.
LogMissionNotificationProxy: Display: [2022.07.27-07.38.32:425][  0]LogDerivedDataCache: Display: Max Cache Size: 512 MB
LogMissionNotificationProxy: Display: [2022.07.27-07.38.32:463][  0]LogDerivedDataCache: Display: Loaded Boot cache: C:/Users/WANGXIAOBIN-PC/AppData/Local/UnrealEngine/4.27/DerivedDataCache/Boot.ddc
LogMissionNotificationProxy: Display: [2022.07.27-07.38.32:469][  0]LogDerivedDataCache: Display: Performance to C:/Users/WANGXIAOBIN-PC/AppData/Local/UnrealEngine/Common/DerivedDataCache: Latency=0.02ms. RandomReadSpeed=1375.28MBs, RandomWriteSpeed=212.46MBs. Assigned SpeedClass 'Local'
LogMissionNotificationProxy: Warning: 7.27-07.38.32:781][  0]LogDerivedDataCache: Warning: Shared data cache path (\\***.******.***\*********) is unavailable so cache will be disabled.
LogMissionNotificationProxy: Warning: 7.27-07.38.33:846][  0]LogPython: Warning: 'EMatchRule' and 'MatchRule' have the same name (MatchRule) when exposed to Python. Rename one of them using 'ScriptName' meta-data.
LogMissionNotificationProxy: Display: [2022.07.27-07.38.33:980][  0]LogAudioCaptureCore: Display: No Audio Capture implementations found. Audio input will be silent.
LogMissionNotificationProxy: Display: [2022.07.27-07.38.33:980][  0]LogAudioCaptureCore: Display: No Audio Capture implementations found. Audio input will be silent.
LogMissionNotificationProxy: Display: [2022.07.27-07.38.34:399][  0]LogCook: Display: CookSettings for Memory: MemoryMaxUsedVirtual 0MiB, MemoryMaxUsedPhysical 16384MiB, MemoryMinFreeVirtual 0MiB, MemoryMinFreePhysical 1024MiB
LogMissionNotificationProxy: Display: [2022.07.27-07.38.34:399][  0]LogCook: Display: Mobile HDR setting 1
LogMissionNotificationProxy: Display: [2022.07.27-07.38.34:400][  0]LogCook: Display: Creating asset registry
LogMissionNotificationProxy: Display: [2022.07.27-07.38.34:555][  0]LogCook: Display: Discovering localized assets for cultures: en
LogMissionNotificationProxy: Display: [2022.07.27-07.38.34:579][  0]LogCook: Display: Iterative cooking summary for Android_Multi,
LogMissionNotificationProxy: Display: Considered: 0,
LogMissionNotificationProxy: Display: File Hash missmatch: 0,
LogMissionNotificationProxy: Display: Packages Kept: 0,
LogMissionNotificationProxy: Display: Packages failed save kept: 0,
LogMissionNotificationProxy: Display: Missing Cooked Info(expected 0): 0
LogMissionNotificationProxy: Display: [2022.07.27-07.38.34:587][  0]LogCook: Display: Iterative cooking summary for WindowsNoEditor,
LogMissionNotificationProxy: Display: Considered: 460,
LogMissionNotificationProxy: Display: File Hash missmatch: 0,
LogMissionNotificationProxy: Display: Packages Kept: 460,
LogMissionNotificationProxy: Display: Packages failed save kept: 7,
LogMissionNotificationProxy: Display: Missing Cooked Info(expected 0): 0
LogMissionNotificationProxy: Display: [2022.07.27-07.38.34:588][  0]LogCook: Display: Sandbox cleanup took 0.031 seconds for platforms Android_Multi WindowsNoEditor
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:797][  0]LogShaderLibrary: Display: Reading asset info file E:/Test/Saved/Cooked/Android_Multi/Test/Content/ShaderAssetInfo-Global-GLSL_ES3_1_ANDROID.assetinfo.json: found 71 existing mappings
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:797][  0]LogShaderLibrary: Display: Loaded asset info E:/Test/Saved/Cooked/Android_Multi/Test/Content/ShaderAssetInfo-Global-GLSL_ES3_1_ANDROID.assetinfo.json for the shader library E:/Test/Saved/Cooked/Android_Multi/Test/Content/ShaderArchive-Global-GLSL_ES3_1_ANDROID.ushaderbytecode: 71 entries
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:806][  0]LogShaderLibrary: Display:
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:806][  0]LogShaderLibrary: Display: Shader Library 'Global' (GLSL_ES3_1_ANDROID) Stats:
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:806][  0]LogShaderLibrary: Display: =================
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:806][  0]LogShaderLibrary: Display: Assets: 1, Unique Shadermaps: 71 (7100.00%)
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:806][  0]LogShaderLibrary: Display: Total Shaders: 577, Unique Shaders: 565 (97.92%)
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:806][  0]LogShaderLibrary: Display: Total Shader Size: 1.30mb, Unique Shaders Size: 1.30mb (99.51%)
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:806][  0]LogShaderLibrary: Display: === Extended info:
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:806][  0]LogShaderLibrary: Display: Minimum number of shaders in shadermap: 1
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:807][  0]LogShaderLibrary: Display: Median number of shaders in shadermap: 2
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:807][  0]LogShaderLibrary: Display: Maximum number of shaders in shadermap: 110
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:807][  0]LogShaderLibrary: Display: Number of shadermaps referencing top 10 most shared shaders:
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:807][  0]LogShaderLibrary: Display:     3, 3, 2, 2, 2, 2, 2, 2, 2, 2
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:807][  0]LogShaderLibrary: Display: Textual dump saved to '../../../../../../../Test/Saved/Shaders/GLSL_ES3_1_ANDROID/ShaderDebug-Global-GLSL_ES3_1_ANDROID/Dump.txt'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:807][  0]LogShaderLibrary: Display: =================
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:808][  0]LogShaderLibrary: Display: Reading asset info file E:/Test/Saved/Cooked/WindowsNoEditor/Test/Content/ShaderAssetInfo-Global-PCD3D_SM5.assetinfo.json: found 191 existing mappings
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:809][  0]LogShaderLibrary: Display: Loaded asset info E:/Test/Saved/Cooked/WindowsNoEditor/Test/Content/ShaderAssetInfo-Global-PCD3D_SM5.assetinfo.json for the shader library E:/Test/Saved/Cooked/WindowsNoEditor/Test/Content/ShaderArchive-Global-PCD3D_SM5.ushaderbytecode: 191 entries
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:828][  0]LogShaderLibrary: Display:
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:828][  0]LogShaderLibrary: Display: Shader Library 'Global' (PCD3D_SM5) Stats:
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:828][  0]LogShaderLibrary: Display: =================
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:830][  0]LogShaderLibrary: Display: Assets: 1, Unique Shadermaps: 191 (19100.00%)
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:830][  0]LogShaderLibrary: Display: Total Shaders: 1963, Unique Shaders: 1952 (99.44%)
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:830][  0]LogShaderLibrary: Display: Total Shader Size: 5.10mb, Unique Shaders Size: 5.09mb (99.93%)
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:830][  0]LogShaderLibrary: Display: === Extended info:
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:830][  0]LogShaderLibrary: Display: Minimum number of shaders in shadermap: 1
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:830][  0]LogShaderLibrary: Display: Median number of shaders in shadermap: 3
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:830][  0]LogShaderLibrary: Display: Maximum number of shaders in shadermap: 264
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:830][  0]LogShaderLibrary: Display: Number of shadermaps referencing top 10 most shared shaders:
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:830][  0]LogShaderLibrary: Display:     3, 3, 2, 2, 2, 2, 2, 2, 2, 1
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:832][  0]LogShaderLibrary: Display: Textual dump saved to '../../../../../../../Test/Saved/Shaders/PCD3D_SM5/ShaderDebug-Global-PCD3D_SM5/Dump.txt'
LogMissionNotificationProxy: Display: [2022.07.27-07.38.35:832][  0]LogShaderLibrary: Display: =================
LogMissionNotificationProxy: Display: [2022.07.27-07.38.36:031][  0]LogCook: Display: Cooked packages 467 Packages Remain 300 Total 767
LogMissionNotificationProxy: Display: [2022.07.27-07.38.36:031][  0]LogCook: Display: Cook Diagnostics: OpenFileHandles=162, VirtualMemory=533MiB
LogMissionNotificationProxy: Warning: 7.27-07.38.36:057][  0]LogOutputDevice: Warning:
LogMissionNotificationProxy: Display: Script Stack (0 frames):
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:805][  0]LogWindows: Error: === Critical error: ===
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:805][  0]LogWindows: Error:
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:805][  0]LogWindows: Error: Assertion failed: New.Num() == Succeeded.Num() [File:E:/UnrealEngine/Engine/Source/Editor/UnrealEd/Private/Cooker/CookPackageData.cpp] [Line: 167]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:805][  0]LogWindows: Error:
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:805][  0]LogWindows: Error:
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:805][  0]LogWindows: Error:
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:805][  0]LogWindows: Error: [Callstack] 0x00007ffa12094fd9 KERNELBASE.dll!UnknownFunction []
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:805][  0]LogWindows: Error: [Callstack] 0x00007ff9cf50ca66 UE4Editor-Core.dll!ReportAssert() [E:\UnrealEngine\Engine\Source\Runtime\Core\Private\Windows\WindowsPlatformCrashContext.cpp:1644]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:805][  0]LogWindows: Error: [Callstack] 0x00007ff9cf510ae8 UE4Editor-Core.dll!FWindowsErrorOutputDevice::Serialize() [E:\UnrealEngine\Engine\Source\Runtime\Core\Private\Windows\WindowsErrorOutputDevice.cpp:78]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:805][  0]LogWindows: Error: [Callstack] 0x00007ff9cf23132d UE4Editor-Core.dll!FOutputDevice::LogfImpl() [E:\UnrealEngine\Engine\Source\Runtime\Core\Private\Misc\OutputDevice.cpp:61]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:806][  0]LogWindows: Error: [Callstack] 0x00007ff9cf185975 UE4Editor-Core.dll!AssertFailedImplV() [E:\UnrealEngine\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:104]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:806][  0]LogWindows: Error: [Callstack] 0x00007ff9cf186fc0 UE4Editor-Core.dll!FDebug::CheckVerifyFailedImpl() [E:\UnrealEngine\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:461]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:806][  0]LogWindows: Error: [Callstack] 0x00007ff9c9c895cd UE4Editor-UnrealEd.dll!UE::Cook::FPackageData::AddCookedPlatforms() [E:\UnrealEngine\Engine\Source\Editor\UnrealEd\Private\Cooker\CookPackageData.cpp:167]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:806][  0]LogWindows: Error: [Callstack] 0x00007ff9c9cc568d UE4Editor-UnrealEd.dll!UCookOnTheFlyServer::PumpSaves() [E:\UnrealEngine\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:2460]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:806][  0]LogWindows: Error: [Callstack] 0x00007ff9c9cda50f UE4Editor-UnrealEd.dll!UCookOnTheFlyServer::TickCookOnTheSide() [E:\UnrealEngine\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:1165]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:806][  0]LogWindows: Error: [Callstack] 0x00007ff9c9b0e97b UE4Editor-UnrealEd.dll!UCookCommandlet::CookByTheBook() [E:\UnrealEngine\Engine\Source\Editor\UnrealEd\Private\Commandlets\CookCommandlet.cpp:997]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:806][  0]LogWindows: Error: [Callstack] 0x00007ff9c9b39088 UE4Editor-UnrealEd.dll!UCookCommandlet::Main() [E:\UnrealEngine\Engine\Source\Editor\UnrealEd\Private\Commandlets\CookCommandlet.cpp:663]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:806][  0]LogWindows: Error: [Callstack] 0x00007ff6381da7ea UE4Editor-Cmd.exe!FEngineLoop::PreInitPostStartupScreen() [E:\UnrealEngine\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:3434]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:806][  0]LogWindows: Error: [Callstack] 0x00007ff6381d18cd UE4Editor-Cmd.exe!GuardedMain() [E:\UnrealEngine\Engine\Source\Runtime\Launch\Private\Launch.cpp:132]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:807][  0]LogWindows: Error: [Callstack] 0x00007ff6381d1c5a UE4Editor-Cmd.exe!GuardedMainWrapper() [E:\UnrealEngine\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:137]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:807][  0]LogWindows: Error: [Callstack] 0x00007ff6381d4c7d UE4Editor-Cmd.exe!LaunchWindowsStartup() [E:\UnrealEngine\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:273]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:807][  0]LogWindows: Error: [Callstack] 0x00007ff6381e60a4 UE4Editor-Cmd.exe!WinMain() [E:\UnrealEngine\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:320]
LogMissionNotificationProxy: Error: [2022.07.27-07.38.38:807][  0]LogWindows: Error: [Callstack] 0x00007ff6381e7fea UE4Editor-Cmd.exe!__scrt_common_main_seh() [d:\a01\_work\12\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
LogMissionNotificationProxy: Display: ProcWorker CookThread return value 3.
LogMissionNotificationProxy: Error: The Cook Mission is faild.
LogSlate: Window 'Hot Patcher' being destroyed
LogSlate: Window 'Hot Patcher' being destroyed

4.24版本在IOS平台进行加载含有动画序列的pak时,程序闪退。求大佬帮助一下。谢谢。

在4.24打包的IOS下进行动态加载引用动画序列(AnimationSequence)的蓝图类的pak时(被引用的动画序列的相关一起打进了pak包里),程序闪退。我看了一下日志,刚好就在执行LoadClass()这一步的时候崩了。这个情况在4.26的安卓运行时也会出现。但是4.24和4.26的windows都能正常加载运行。然后我进行了一些尝试,发现动画序列里依赖了引擎的两个压缩设置。在4.26里
是图片1,我将这两个依赖项复制到当前路径下,并且把动画序列的依赖项改为当前目录下的,再进行打包pak。结果4.26的安卓就能正常加载运行了 。然后我想用同样的方法对4.24的进行改动,但是发现4.24动画序列的两个依赖项和4.26的不一样。如图2
。并且4.24的这个压缩模式的依赖好像改不了。我就彻底没办法了。麻烦帮忙看一下。谢谢了
b028b01114841b980f19d86fcba838b
a1e6bfcbb3ebac515ac521e68f1cd5f

Error when using encryption on patch

LogMissionNotificationProxy: Display: [2021.11.03-22.12.25:810][ 0]LogHotPatcher: Display: Generating Pak list of Chunk 1.0.1. LogMissionNotificationProxy: Display: [2021.11.03-22.12.25:816][ 0]LogHotPatcherCommandlet: Display: Create Pak Commandline: %s: "C:/Users/tommy/Desktop/packaged/Windows/1.0.1/WindowsNoEditor/1.0.1_WindowsNoEditor_001_P.pak" -create="C:/Users/tommy/Desktop/packaged/Windows/1.0.1/WindowsNoEditor/1.0.1_WindowsNoEditor_001_P_PakCommands.txt" -AlignForMemoryM apping=0 -compress -compressionformats=Zlib -encrypt -encryptindex -encryptionini -sign -projectdir="C:/Users/tommy/Documents/Unreal Projects/testproject/" -enginedir="D:/UnrealEngine/Engine/" -platform=Windows LogMissionNotificationProxy: Warning: 1.03-22.12.25:819][ 0]LogPakFile: Warning: A legacy command line syntax is being used for crypto config. Please update to using the -cryptokey parameter as soon as possible as this mode is deprecated LogMissionNotificationProxy: Warning: 1.03-22.12.25:819][ 0]LogOutputDevice: Warning: LogMissionNotificationProxy: Display: Script Stack (0 frames): LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:440][ 0]LogWindows: Error: === Critical error: === LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:440][ 0]LogWindows: Error: LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:440][ 0]LogWindows: Error: Assertion failed: SourceEngineConfigDir.EndsWith(L"Config/") [File:D:/UnrealEngine/Engine/Source/Runtime/Core/Private/Misc/ConfigCacheIni.cpp] [Line: 3632] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:440][ 0]LogWindows: Error: LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:440][ 0]LogWindows: Error: LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:440][ 0]LogWindows: Error: LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:441][ 0]LogWindows: Error: [Callstack] 0x00007ffb4d9e4f99 KERNELBASE.dll!UnknownFunction [] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:441][ 0]LogWindows: Error: [Callstack] 0x00007ffa786d9d56 UE4Editor-Core.dll!ReportAssert() [D:\UnrealEngine\Engine\Source\Runtime\Core\Private\Windows\WindowsPlatformCrashContext.cpp:1616] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:441][ 0]LogWindows: Error: [Callstack] 0x00007ffa786dd508 UE4Editor-Core.dll!FWindowsErrorOutputDevice::Serialize() [D:\UnrealEngine\Engine\Source\Runtime\Core\Private\Windows\WindowsErrorOutputDevice.cpp:78] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:441][ 0]LogWindows: Error: [Callstack] 0x00007ffa783ee74d UE4Editor-Core.dll!FOutputDevice::LogfImpl() [D:\UnrealEngine\Engine\Source\Runtime\Core\Private\Misc\OutputDevice.cpp:61] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:441][ 0]LogWindows: Error: [Callstack] 0x00007ffa78385095 UE4Editor-Core.dll!AssertFailedImplV() [D:\UnrealEngine\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:104] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:441][ 0]LogWindows: Error: [Callstack] 0x00007ffa78387130 UE4Editor-Core.dll!FDebug::CheckVerifyFailedImpl() [D:\UnrealEngine\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:461] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:442][ 0]LogWindows: Error: [Callstack] 0x00007ffa78380e81 UE4Editor-Core.dll!FConfigFile::AddStaticLayersToHierarchy() [D:\UnrealEngine\Engine\Source\Runtime\Core\Private\Misc\ConfigCacheIni.cpp:3632] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:442][ 0]LogWindows: Error: [Callstack] 0x00007ffa7839f8c0 UE4Editor-Core.dll!FConfigCacheIni::LoadExternalIniFile() [D:\UnrealEngine\Engine\Source\Runtime\Core\Private\Misc\ConfigCacheIni.cpp:4064] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:442][ 0]LogWindows: Error: [Callstack] 0x00007ffa778f4762 UE4Editor-PakFileUtilities.dll!LoadKeyChain() [D:\UnrealEngine\Engine\Source\Developer\PakFileUtilities\Private\PakFileUtilities.cpp:1646] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:442][ 0]LogWindows: Error: [Callstack] 0x00007ffa778e5ff9 UE4Editor-PakFileUtilities.dll!ExecuteUnrealPak() [D:\UnrealEngine\Engine\Source\Developer\PakFileUtilities\Private\PakFileUtilities.cpp:4869] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:442][ 0]LogWindows: Error: [Callstack] 0x00007ffaac7b87d0 UE4Editor-HotPatcherEditor.dll!<lambda_5b3b7089ea35ba72bfd8d70e8bdcbc26>::operator()() [C:\Users\tommy\Documents\Unreal Projects\testproject\Plugins\HotPatcher\Source\HotPatcherEditor\Private\CreatePatch\PatcherProxy.cpp:1024] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:442][ 0]LogWindows: Error: [Callstack] 0x00007ffaac7dde8b UE4Editor-HotPatcherEditor.dll!UE4Function_Private::TFunctionRefCaller<<lambda_5b3b7089ea35ba72bfd8d70e8bdcbc26>,void __cdecl(void)>::Call() [D:\UnrealEngine\Engine\Source\Runtime\Core\Public\Templates\Function.h:549] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:443][ 0]LogWindows: Error: [Callstack] 0x00007ffaac7c0ade UE4Editor-HotPatcherEditor.dll!UE4Function_Private::TFunctionRefBase<UE4Function_Private::TFunctionStorage<0>,void __cdecl(void)>::operator()() [D:\UnrealEngine\Engine\Source\Runtime\Core\Public\Templates\Function.h:677] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:443][ 0]LogWindows: Error: [Callstack] 0x00007ffaac8ab83a UE4Editor-HotPatcherEditor.dll!FThreadWorker::Run() [C:\Users\tommy\Documents\Unreal Projects\testproject\Plugins\HotPatcher\Source\HotPatcherEditor\Public\ThreadUtils\FThreadUtils.hpp:50] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:443][ 0]LogWindows: Error: [Callstack] 0x00007ffaac80dac6 UE4Editor-HotPatcherEditor.dll!PatchWorker::CreatePakWorker() [C:\Users\tommy\Documents\Unreal Projects\testproject\Plugins\HotPatcher\Source\HotPatcherEditor\Private\CreatePatch\PatcherProxy.cpp:1057] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:444][ 0]LogWindows: Error: [Callstack] 0x00007ffaac7ddbda UE4Editor-HotPatcherEditor.dll!UE4Function_Private::TFunctionRefCaller<bool (__cdecl*)(FHotPatcherPatchContext &),bool __cdecl(FHotPatcherPatchContext &)>::Call() [D:\UnrealEngine\Engine\Source\Runtime\Core\Public\Templates\Function.h:540] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:444][ 0]LogWindows: Error: [Callstack] 0x00007ffaac7c0bdf UE4Editor-HotPatcherEditor.dll!UE4Function_Private::TFunctionRefBase<UE4Function_Private::TFunctionStorage<0>,bool __cdecl(FHotPatcherPatchContext &)>::operator()() [D:\UnrealEngine\Engine\Source\Runtime\Core\Public\Templates\Function.h:677] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:444][ 0]LogWindows: Error: [Callstack] 0x00007ffaac819d86 UE4Editor-HotPatcherEditor.dll!UPatcherProxy::DoExport() [C:\Users\tommy\Documents\Unreal Projects\testproject\Plugins\HotPatcher\Source\HotPatcherEditor\Private\CreatePatch\PatcherProxy.cpp:182] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:444][ 0]LogWindows: Error: [Callstack] 0x00007ffaac8679ef UE4Editor-HotPatcherEditor.dll!UHotPatcherCommandlet::Main() [C:\Users\tommy\Documents\Unreal Projects\testproject\Plugins\HotPatcher\Source\HotPatcherEditor\Classes\Commandlets\HotPatcherCommandlet.cpp:125] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:445][ 0]LogWindows: Error: [Callstack] 0x00007ff600269329 UE4Editor-Cmd.exe!FEngineLoop::PreInitPostStartupScreen() [D:\UnrealEngine\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:3369] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:445][ 0]LogWindows: Error: [Callstack] 0x00007ff60026089d UE4Editor-Cmd.exe!GuardedMain() [D:\UnrealEngine\Engine\Source\Runtime\Launch\Private\Launch.cpp:127] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:445][ 0]LogWindows: Error: [Callstack] 0x00007ff600260bfa UE4Editor-Cmd.exe!GuardedMainWrapper() [D:\UnrealEngine\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:137] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:445][ 0]LogWindows: Error: [Callstack] 0x00007ff600274add UE4Editor-Cmd.exe!WinMain() [D:\UnrealEngine\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:268] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:445][ 0]LogWindows: Error: [Callstack] 0x00007ff600276b82 UE4Editor-Cmd.exe!__scrt_common_main_seh() [D:\a01\_work\26\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:446][ 0]LogWindows: Error: [Callstack] 0x00007ffb4e337034 KERNEL32.DLL!UnknownFunction [] LogMissionNotificationProxy: Error: [2021.11.03-22.12.47:446][ 0]LogWindows: Error: [Callstack] 0x00007ffb4fc82651 ntdll.dll!UnknownFunction []

FPakFile 方法调用参数个数不正确的

UE版本:4.22.3
PackageProject 时,报以下错误
E:\UE4_Project\MyProject\Plugins\HotPatcher\Source\HotPatcherRuntime\Private\FlibPakReader.cpp(292): error C2661: 'FPakFile::FPakFile': no overloaded function takes 4 arguments

错误位置:

FPakFile* UFlibPakReader::GetPakFileInsByPath(const FString& PakPath)
{
	FPakFile* Pak = NULL;

#if !WITH_EDITOR
	FPakPlatformFile* PakFileMgr = (FPakPlatformFile*)FPlatformFileManager::Get().GetPlatformFile(FPakPlatformFile::GetTypeName());
	IPlatformFile* LowerLevel = PakFileMgr->GetLowerLevel();
	if(LowerLevel)
	{
// 版本判断应该改为 > 22 ??
#if ENGINE_MINOR_VERSION > 21
		Pak = new FPakFile(LowerLevel, *PakPath, false, true);
#else
		Pak = new FPakFile(LowerLevel, *PakPath, false);
#endif
	}
#endif
	return Pak;
}

查看函数签名如下:

FPakFile::FPakFile(IPlatformFile* LowerLevel, const TCHAR* Filename, bool bIsSigned)

新Patcher的Release.json文件内包含了资源改径前后的路径(存在2份)

步骤1 : 当by release-> 打包一个基础包的时候出现一个指定目录的所有资源文件的Base1.0_Release.json文件。

步骤2 : 在编辑器里,将A目录的蓝图资源,移动到B目录去(重定向与不重定向都已尝试,也保存了)。

步骤3 : 当by patcher-> 打包一个补丁包时,基于Base1.0Release.json打包新包生成的Patcher1.1_Release.json文件时。

【问题所在】 : 该Patcher1.1_Release.json的资源路径里包含了该资源的2份路径,分别是移动前与移动后。
文件:Patcher1.1_Release.json
{
旧路径: "/Game/Blueprint/NewBlueprint": {...}
新路径: "/Game/Geometry/NewBlueprint": {...}
}

需要注意的是:新路径是在
"moduleCategory": "Game",
"assetDependencyDetails":
{
........
}
该分类的最下方。

;------------------------------------上方问题导致的延续问题----------------------------------------
当打包新的包时会基于上一个版本的release.json里的所有资源进行比较。
当发现上一个版本有一个 新路径和旧路径的资源时。判断当前版本没有老版本的旧路径资源(当前磁盘不存在)
就判定在当前版本里diff.json文件里。delete 分类下{} 就包含了这个旧资源路径被删除。

Warnings / Errors for uninit variables

Unreal Engine 4.27. These warnings become errors in Unreal Engine 5.0 release

  LogClass: Display: IntProperty FPakMountInfo::PakOrder is not initialized properly. Module:HotPatcherRuntime File:Public/MountListener.h
  LogClass: Display: EnumProperty FBinariesPatchConfig::BinariesPatchType is not initialized properly. Module:HotPatcherRuntime File:Public/FBinariesPatchConfig.h
  LogClass: Display: EnumProperty FMatchRule::Rule is not initialized properly. Module:HotPatcherRuntime File:Public/FBinariesPatchConfig.h
  LogClass: Display: EnumProperty FMatchRule::Operator is not initialized properly. Module:HotPatcherRuntime File:Public/FBinariesPatchConfig.h
  LogClass: Display: EnumProperty FPlatformBasePak::Platform is not initialized properly. Module:HotPatcherRuntime File:Public/FPlatformBasePak.h
  LogClass: Display: EnumProperty FPlatformExternAssets::TargetPlatform is not initialized properly. Module:HotPatcherRuntime File:Public/FPlatformExternAssets.h
  LogClass: Display: EnumProperty FPakFileProxy::Platform is not initialized properly. Module:HotPatcherRuntime File:Public/FChunkInfo.h
  LogClass: Display: BoolProperty FCookerConfig::bCookAllMap is not initialized properly. Module:HotPatcherRuntime File:Public/FCookerConfig.h
  LogClass: Warning: BoolProperty FExportPatchSettings::bBinariesPatch is not initialized properly even though its struct probably has a custom default constructor. Module:HotPatcherRuntime File:Public/CreatePatch/FExportPatchSettings.h
  LogClass: Display: EnumProperty FReplaceText::SearchCase is not initialized properly. Module:HotPatcherRuntime File:Public/FReplaceText.h
  LogClass: Display: BoolProperty FIoStorePlatformContainers::bGenerateDiffPatch is not initialized properly. Module:HotPatcherRuntime File:Public/FIoStoreSettings.h
  LogClass: Display: EnumProperty FPlatformPakAssets::Platform is not initialized properly. Module:HotPatcherRuntime File:Public/CreatePatch/FExportReleaseSettings.h
  LogClass: Display: IntProperty FPakFileInfo::FileSize is not initialized properly. Module:HotPatcherRuntime File:Public/FPakFileInfo.h
  LogClass: Display: EnumProperty FPlatformExternFiles::Platform is not initialized properly. Module:HotPatcherRuntime File:Public/FPlatformExternFiles.h
  LogClass: Warning: ObjectProperty FHotPatcherContext::UnrealPakSlowTask is not initialized properly. Module:HotPatcherRuntime File:Public/CreatePatch/HotPatcherContext.h
  LogClass: Display: EnumProperty FShaderPatchConf::Platform is not initialized properly. Module:HotPatcherEditor File:Public/ShaderPatch/FExportShaderPatchSettings.h
  LogClass: Display: BoolProperty FShaderPatchConf::bNativeFormat is not initialized properly. Module:HotPatcherEditor File:Public/ShaderPatch/FExportShaderPatchSettings.h
  LogClass: Display: 18 Uninitialized script struct members found including 1 object properties
  LogAutomationTest: Warning: BoolProperty FExportPatchSettings::bBinariesPatch is not initialized properly even though its struct probably has a custom default constructor. Module:HotPatcherRuntime File:Public/CreatePatch/FExportPatchSettings.h
  LogAutomationTest: Warning: ObjectProperty FHotPatcherContext::UnrealPakSlowTask is not initialized properly. Module:HotPatcherRuntime File:Public/CreatePatch/HotPatcherContext.h

多语言补丁不生效

我这边打出来的补丁pak里面包含了多语言的.locres,但是实际游戏里面不生效的。有人知道是为什么吗

UE4.26, HotPatcher版本75.0, 执行打Patch操作,配置多chunk打包 有些差分出的资源不会进任何pak

复现条件:

  1. 配置多chunk 打patch

  2. 勾选Create Default Chunk后

  3. 执行Patch操作,
    结果: 有些差分出来的资源,没进任何pak, DefaultPak里面也没有.但是Diff.json里面是有的
    原因:
    没进入的资源是因为 这些资源不符合任何Chunk的IncludeFileFilters, 但却被其他资源引用到了.
    假设符合上面条件的资源为:B.asset
    在执行PatcherProxy.ParserChunkWorker 里面的
    FChunkAssetDescribe ChunkDiffInfo = UFlibHotPatcherCoreHelper::DiffChunkWithPatchSetting(
    Context.GetSettingObject(),
    Context.NewVersionChunk,
    TotalChunk
    );
    方法里 会将B.asset 排除掉,导致后面的逻辑都不在有B.asset的处理了。
    解决方法:
    修改:
    UFlibHotPatcherCoreHelper::DiffChunkWithPatchSetting方法为:
    FChunkAssetDescribe UFlibHotPatcherCoreHelper::DiffChunkWithPatchSetting(
    const FExportPatchSettings& PatchSetting,
    const FChunkInfo& CurrentVersionChunk,
    const FChunkInfo& TotalChunk
    //,TMap<FString, FAssetDependenciesInfo>& ScanedCaches
    )
    {
    FHotPatcherVersion TotalChunkVersion = UFlibPatchParserHelper::ExportReleaseVersionInfoByChunk(
    TEXT(""),
    TEXT(""),
    TEXT(""),
    TotalChunk,
    //ScanedCaches,
    PatchSetting.IsIncludeHasRefAssetsOnly(),
    TotalChunk.bAnalysisFilterDependencies
    );
    //排除掉 TotalChunkVersion 里面不属于任何ChunkInfo的资源
    /by ssg start
    */
    auto IsRemove = [&TotalChunkVersion](FString &assetName)->bool
    {
    for(auto filter:TotalChunkVersion.IncludeFilter)
    {
    filter = UFlibAssetManageHelper::NormalizeContentDir(filter);
    if(assetName.Find(filter) >= 0)
    {
    return false;
    }
    }
    for(auto specifyAsset:TotalChunkVersion.IncludeSpecifyAssets)
    {
    FString p = specifyAsset.Asset.GetLongPackageName();
    if(p == assetName)
    {
    return false;
    }
    }
    return true;
    };
    TMap<FString,FAssetDetail>& assets = TotalChunkVersion.AssetInfo.AssetsDependenciesMap["Game"].AssetDependencyDetails;
    TArray keys;
    assets.GetKeys(keys);
    for(auto item:keys)
    {
    if(IsRemove(item))
    {
    assets.Remove(item);
    }
    }
    /by ssg end**/

    return UFlibHotPatcherCoreHelper::DiffChunkByBaseVersionWithPatchSetting(PatchSetting, CurrentVersionChunk ,TotalChunk, TotalChunkVersion/,ScanedCaches/);
    }

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.