sifu 武器mod制作经验 武器贴图缺少解决办法

umodel把整个weapons导出来

umodel密钥

0x40A266F41FDBCE91312FBB86060D2E9425B7D922C0CF0031F634CAD9AECB49DA

打开MI_Traditional_WoodenStick_01_A.props.txt可以看到父材质是这个

解包出来只有txt和mat

复制代码
UnrealPak.exe "G:\Sifu\Sifu\Content\Paks\~mods\a\LeviathanAxe_machete.pak" -extract "E:\blender\woodstick"

UnrealPak.exe "G:\Sifu\Sifu\Content\Paks\pakchunk0-WindowsNoEditor.pak" -extract "E:\blender\woodstick" -cryptokeys="E:\blender\Sifu-MOD-TOOL\UnrealPakTool\UnrealPakTool\Crypto.json"

用base64密钥

QKJm9B/bzpExL7uGBg0ulCW32SLAzwAx9jTK2a7LSdo=

unrealpak导出的uasset,ue识别不了

拆一下别人的模型

贴图名称可能没那么严格 严格得一匹

你遇到的错误:

复制代码

text

编辑

复制代码
Package ... is too old

Unreal Engine 在加载或烘焙(Cook)资源时,检测到 .uasset 文件的版本低于当前引擎支持的最低版本


🔍 根本原因

你从 Sifu 游戏的 cooked pak 文件中提取出的 .uasset 是:

  • Cooked(烘焙后)格式
  • 针对 UE 4.26 编译
  • 但被当作"源资产(source asset)"放入了你的 UE 项目中

而 Unreal Editor(尤其是 4.27+ 或 5.x)在 加载或烘焙时会校验包版本

如果它认为这个 .uasset 太旧(比如标记为 UE 4.24 或更早),就会拒绝处理,并报 is too old

⚠️ 注意:即使 Sifu 是 UE 4.26 的,它的 cooked 资产在文件头中可能被标记为更低兼容版本,或者引擎在反序列化时无法识别其格式。


✅ 正确认知:Cooked 资产 ≠ 可编辑资产

类型 来源 能否在 UE 编辑器中使用?
Source Asset .uasset from .uproject Content folder (未打包) ✅ 可编辑、可烘焙
Cooked Asset .pak 提取的 .uasset 不可直接用于编辑或烘焙

你目前的做法相当于:
把游戏运行时的"成品"当"原材料"塞回工厂 → 工厂说:"这原料太旧/格式不对,拒收"。


✅ 解决方案

✅ 方案 1:不要将提取的 cooked 资产放入你的项目 Content 目录

这是最根本的解决方式。

  • 你从 Sifu 提取的 .uasset/.uexp 只能用于查看或参考(用 FModel、UModel)
  • 不能直接复制到你的 UE 项目里参与烘焙
  • 如果你想做 MOD,应:
    • 修改原始资源(如贴图 .png
    • 自己的 UE 项目重新创建材质/网格
    • 或使用 运行时替换 pak 文件 的方式(不经过编辑器)

✅ 方案 2:如果你坚持要用这些资源(高级)

方法 A:降级你的引擎版本
  • 使用 UE 4.26.2(Sifu 官方版本)
  • 即便如此,cooked 资产仍可能无法加载(因为缺少 uasset header 中的编辑信息)
方法 B:用 UModel 导出为 FBX + 材质参数
  1. 用 UModel 打开 Sifu
    • 设置路径:G:\Sifu\Sifu
    • 输入 AES 密钥(hex)
  2. 找到 SK_Machette_03_A_Weapon_NoSheen
  3. 导出为 FBX + textures
  4. 在你的 UE 项目中 重新创建材质和网格,使用导出的贴图

这是 MOD 制作者的标准流程:提取 → 重建,而不是直接复用 cooked 资产。

方法 C:跳过烘焙(仅用于运行时测试)

如果你只是想在编辑器中"看一眼",可以:

  • 将文件放在 Content 外(如 Plugins/MyMod/Resources/
  • 通过代码动态加载(LoadObject),但依然可能失败

✅ 方案 3:重命名或删除这些文件(快速修复烘焙错误)

如果你只是不小心把它们放进去了,而并不需要:

复制代码

cmd

编辑

复制代码
# 删除导致错误的文件
del "E:\blender\ue4\weapon\Content\Items\Weapons\OneHanded\新建文件夹\*.uasset"
del "E:\blender\ue4\weapon\Content\Items\Weapons\OneHanded\新建文件夹\*.uexp"

然后重新烘焙,错误消失。


🛠 补充:为什么叫 "too old"?

UE 每个 .uasset 文件头包含一个 PackageFileVersion,例如:

  • UE 4.26 → 版本号约 517
  • UE 5.0 → 522+

cooked 资产有时会使用简化格式 ,版本号被设为较低值(如 500),而你的引擎(比如 4.27)要求最低 518,于是报错。

这不是时间意义上的"旧",而是 格式版本不兼容


✅ 总结

问题 原因 解决方法
Package ... is too old 使用了从 .pak 提取的 cooked 资产 ❌ 不要放入项目 Content ✅ 用 FModel/UModel 查看 ✅ 重建资源(FBX + 贴图)

💡 记住:pak 里的 .uasset 是"成品",不是"设计图"。你不能把汽车拆下来的零件直接装进另一辆不同型号的车里------至少要适配。


如果你告诉我你的最终目标(例如:我想在自己的游戏里用这把刀的模型),我可以给你一步步操作指南!

武器贴图缺少解决办法

所有材质都要有

https://www.bilibili.com/video/BV1vvvHBrERD

===============================================================================

题外话

fmodel可以查看uasset

我有修改这个文件夹名字

这三个占位符在这个文件夹内