制作一个简单的Sifu人物替换Mod

这篇具有很好参考价值的文章主要介绍了制作一个简单的Sifu人物替换Mod。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

为什么做

突发奇想 某日看到了sifu mod相关的视频,虽然人刚到静心堂,但是还是想搞花活,于是就开始研究起来。一开始还算顺利,但是后来有一个mod死活安装不上去,游戏启动就是会报错,应该是游戏版本不兼容的问题,所以打算自己研究一下。

虽然过程看起来很简单,但是中途需要大量试错,因为没有在论坛上找到对应教程(大概是我搜索技能比较菜),所以一部分内容是自己摸索的,写下来主要也是为了记录一下,万一后面哪天又用到了呢,而且这样的思路其实对于大部分UE4的游戏都是可行的。

参考资料

Sifu Mod 网站:NexusMods
在本文攥写的时候,一部分2月份更新的Mod是失效了的,尤其是使用内部角色来做人物替换的Mod,也是本文诞生的原因之一
比如:
Play as The Flash Kicks
My collection of swaps
Play as Kuroki

Sifu Modding:神秘链接

UE4游戏密钥:Collection of AES encryption keys for UE4 games

UE4解包:使用Umodel解包UE4工程

其他UE4游戏Moding:仙剑7贴图mod教程

UE4模型替换类Moding:UE4引擎替换模型类mod制作指北

开始动手

准备

硬件
  • 遇到问题善于使用搜索引擎的你
  • 有一点英语能力的你(或者翻译软件)
  • 有一点计算机基础的你(或者朋友)
  • 计算机(废话)
软件
  • (必备)UE资源(pak – uasset)解包软件:umodel
  • (必备)UE资源(uasset – pak)打包软件:Epic Games\UE_4.2x\Engine\Binaries\Win64\UnrealPak.exe(本来想单独提取出来分享的,但是一直没有成功,建议还是安装一个,实在不行的话试试这个)
  • (几乎必备)Unreal Engine:官网
  • (可选)UE资源(uasset – uasset)编辑软件:UAssetGUI
  • (可选)建模软件:你熟悉的

建议自行下载软件,如果你实在下不了,请看文末QA

一些默认设置

对于Sifu来说,使用的UE版本为4.26.2(我怎么知道?问就是猜的软件的属性里面有写),因此使用软件时遇到
选择UE版本的都是选4.26
选择UE版本的都是选4.26
选择UE版本的都是选4.26
打包用的软件是UE自带的,所以打包的时候最好也是选来自4.26的(没试过换版本打包,可能行可能不行)

资源来源

  • 游戏文件(使用这个可以保证版本兼容)
  • 别人做好的mod(可以先从这个下手,因为相对更容易成功)

如何处理

对于游戏文件我们要使用umodel软件(启动以后不要关黑框框)来解包,目录选择为游戏目录,可以只到Sifu,具体到Paks更好(如果你已经安装过mod,建议先移开mod文件夹,或者把游戏的主要pak和sig移动到其他地方再打开)

制作一个简单的Sifu人物替换Mod
中途可能会让输入密钥,密钥可以在这里找到,笔者当前版本的密钥是
0x40A266F41FDBCE91312FBB86060D2E9425B7D922C0CF0031F634CAD9AECB49DA
如果解包的是别人的mod则不需要密钥。

如何导出

如果解包的是模型骨骼贴图材质的话,选中文件后选择Export。如果解包的是其他资源(例如蓝图)的话选择Save Package。

本文以替换人物为例,所以解包的是BP_FightingPlayer,具体在Game/Blueprints/BP_FightingPlayer.uasset(请留意这个路径,一会儿还要用到)

制作一个简单的Sifu人物替换Mod
导出会生成两个文件BP_FightingPlayer.uasset和BP_FightingPlayer.uexp。
不要自己找不到自己的导出文件夹嗷,一会儿还要用的。

如何编辑

如果你解包的是模型骨骼贴图材质的话,接下来在建模软件中编辑即可,具体可以参考上面的资料,本文重点是简单人物替换,因此不在此详述。

使用UAssetGUI来打开刚才导出的BP_FightingPlayer.uasset,忽略错误提示(如果有),此时界面应该如下

制作一个简单的Sifu人物替换Mod
接下来可以暂时把这个放一边,现在可以去游戏资源里面挑一个你想要替换的角色。回到umodel软件中,在Game/Characters里面寻找角色,如果你熟悉UE4工程规范的话,你寻找资源是很快的。我们要找的资源一般在Meshes文件夹下,以SK_开头,如果你双击打开这个资源能看到角色(按O键可以快速返回目录),一般就是找对了(Class为SkeletalMesh,Skeleton为Base_skeleton)

制作一个简单的Sifu人物替换Mod
此时需要记下两个东西,
一是 资源路径,图中为:/Game/Characters/PNJ/FlashKick/Meshes/Hideout03/SK_FlashKick_Hideout_03_Geisha_01
二是 资源名称,图中为:SK_FlashKick_Hideout_03_Geisha_01

挑选好了以后就可以开始修改了,回到UAssetGUI来,依次修改

  • Name Map 中的 40到43 行(共4行),修改 Name列 为资源路径(默认值为/Game/Characters/MainChar/W/Meshes/SK_W_MainChar_01之类的)
  • Name Map 中的 60到63 行(共4行),修改 Name列 为资源路径(默认值和上一个差不多)
  • Name Map 中的 1664 行,修改 Name列 为资源名称(默认值为SK_W_MainChar_01)
  • Import Data 中的 -524 行,修改 ObjectName列 为资源路径(默认值为/Game/Characters/MainChar/M/Meshes/SK_M_MainChar_01)
  • Import Data 中的 -658 行,修改 ObjectName列 为资源名称(默认值为SK_W_MainChar_01)

修改完成后保存(不出意外的话文件名应该没变,还是BP_FightingPlayer.uasset,这里文件名要保证不变才行)。

(之后游戏更新mod可能会失效,因此在新版本游戏中可能需要重新寻找这些位置,我目前使用的方法是,将当前版本可用的mod解包,和当前版本游戏的对应文件做对比,找出应该修改的值。)

如何打包

新建一个文件夹用来存放mod,名称中最好不要有非ascii字符(中文,全角符号什么的)。本例为My_mod_P,在文件夹中新建文件夹Sifu,然后将之前修改好的文件 按相同路径(之前留意的那个) 存入,本例中为 My_mod_P\Sifu\Content\Blueprints,也就是把修改好的 BP_FightingPlayer.uasset 和没有动过的 BP_FightingPlayer.uexp 放在这个路径下。

(如果你很仔细的话会发现,之前的明明是Game/Blueprints,怎么这里不一样,因为这里需要 把Game改成Content,然后再放入Sifu,Game只是umodel软件个性的显示)
(关于如何确定这样的文件结构,比如为什么最外面是Sifu,可以(1)参考游戏本身的目录结构(2)查其他教程资料(3)解包其他现成mod来看(在umodel打开时留意mount point))

创建一个pack.bat文件,和Mod文件夹在一起最好,内容为

@echo "%~1\*.*" "..\..\..\*.*" > "%~dp0PAK-filelist.txt"
"Epic Games\UE_4.26\Engine\Binaries\Win64\UnrealPak.exe" "%~1.pak" -create="%~dp0PAK-filelist.txt" -compress 

其中的第二行的UnrealPak路径请修改为你自己的。
创建完成之后,拖住Mod文件夹到这个pack.bat上就会开始生成了。
此时同目录会生成一个 mod名称.pak 的文件,本例中为My_mod_P.pak
(如果这个pak文件大小为0,请检查bat脚本、路径、UnrealPack等)

如何装Mod

把上一步生成的pak放在游戏目录的 Epic Games\Sifu\Sifu\Content\Paks~mods 下,Paks目录下原本是没有~mods的,需要自行创建。然后还需要把一个sig文件也拷到~mods目录下,并且改为和mod同名。
sig文件哪里来的呢,一是直接从"Epic Games\Sifu\Sifu\Content\Paks\pakchunk0-WindowsNoEditor.sig"拷贝,二是从其他可用mod里面拷贝。在本例中没有区别,都可以运行。

总体流程

以下为流程图,配合文字食用效果更加
制作一个简单的Sifu人物替换Mod

后记

QA

Q:游戏闪退了咋办?
A:请仔细按照步骤来。

Q:没有生效咋办?
A:请仔细按照步骤来,如果蓝图资源来自游戏,那么可以试试使用改别人的mod,但是先确保当前版本这个mod可用,例如Play as Kuroki。

Q:这个只能用游戏内的资源替换吗?
A:是,如果你需要导入来自其他地方的人物,请参考参考资料,或者等我有时间再写一个教程(开始挖坑),或者直接去mod网站找现成的。

Q:软件可以提供一下吗?
A:建议还是去自己下载,可以保证最新,但是如果确实下不了,我这里(备用)还是尽可能提供了会用到的文件(除了unrealPack,里面包含的那个暂时用不了)。文章来源地址https://www.toymoban.com/news/detail-409972.html

到了这里,关于制作一个简单的Sifu人物替换Mod的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • golang利用go mod巧妙替换使用本地项目的包

      拉了两个项目下来,其中一个项目依赖另一个项目,因为改动了被依赖的项目,想重新导入测试一下。   go.mod文件的require中想要被代替的包名在replace中进行一个替换,注意:用来替换的需要用绝对路径,一开始我用~/Documents/xboot/xboot/tools/reflect没有效果。   这样原

    2024年02月15日
    浏览(54)
  • tkinter制作一个简单计算器

            我们知道tkinter是python常用的UI框架,那么它是如何使用的呢?我们用一个简单的例子来显示它的作用,制作一个简单的计算器,如下图所示。 上图是一个计算器,我们可以看出它一共有20个键,每个按键都表示一个功能,在最上方是一个文本框用来显示数值。接下

    2024年02月11日
    浏览(57)
  • 【HTML】制作一个简单的线性动画

     目录 前言 HTML部分 CSS部分 JS部分 效果图 总结         无需多言,本文将详细介绍一段HTML代码,具体内容如下:         首先新建文件夹,创建一个文本文档,两个文件夹,其中HTML的文件名改为[index.html];CSS的文件名改为[css],里面新建一个文本文档重命名为[normalize.mi

    2024年04月12日
    浏览(45)
  • Unity制作一个简单的登入注册页面

    1.创建Canvas组件 首先我们创建一个Canvas画布,我们再在Canvas画布底下创建一个空物体,取名为Resgister。把空物体的锚点设置为全屏撑开。  2.我们在Resgister空物体底下创建一个Image组件,改名为bg。我们也把它 的锚点设置为全屏撑开状态。接下来我们把我们的图片UI素材导入进

    2024年02月12日
    浏览(58)
  • 制作一个简单的C语言词法分析程序

    C语言的程序中,有很单词多符号和保留字。一些单词符号还有对应的左线性文法。所以我们需要先做出一个单词字符表,给出对应的识别码,然后跟据对应的表格来写出程序 程序主要有循环判断构成。不需推理即可产生的符号我们可以把它包装在函数中,返回值为对应的识

    2024年02月06日
    浏览(45)
  • 使用HTML+CSS制作一个简单的网页

    简单学习了一下HTML和CSS,制作了下面这个网页(第一次做还在学习中),里面包含一些基础的布局包括 导航条、分页栏、悬浮列表 等内容。 网页预览 (网页中的图片与图标均来自阿里巴巴矢量图标库) CSS代码 里面包含悬浮、画面自适应等效果

    2024年02月11日
    浏览(75)
  • Python-如何制作一个简单的登陆界面【记录】

    (1)打开登陆界面后,输入对应的账号和密码,自动进入到主界面程序,登陆界面消失; (2)进入主界面程序后,可以返回登陆界面,同时主界面消失; (3)达到指令要求后,可以注册账号和密码,并保存到数据库。(此功能具体实现暂时不考虑。) 登陆界面展示

    2024年02月11日
    浏览(73)
  • 使用QT制作一个简单的登录-注册界面

    1、作业需求   2、实现过程 1)Widget.h文件 2)Widget.cpp文件

    2024年02月11日
    浏览(44)
  • PyQt5制作一个简单的登录界面

    最近在学习GUI设计,分享做的一些小项目。 这篇文我们讲一下如何制作一个简单的登录界面。 如下: 1、QtDesigner里绘制UI界面并设置属性 布局根据个人喜好,部件颜色、字体、背景属性在styleSheet里设置。 2、材料转换(将.ui文件转.py,.qrc文件转_rc.py) 通过PyUIC和PyRcc即可完成。

    2024年02月03日
    浏览(53)
  • typeScript制作一个简单易懂的区块链(1)

    区块链是一种分布式数据库,它存储在节点上,每个节点都拥有一份完整的数据库副本。当一个节点更新数据库时,其他节点会收到通知并更新自己的数据库。 我们可以使用 CryptoJS 库来计算哈希值。 先简单的理解一下,区块链的每一个区块都包含三个字段:数据、前一个区

    2024年04月28日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包