属性修改 - HaoJun0823/CODEVEIN-Mod-Guide GitHub Wiki

视频:https://youtu.be/UW1NVZS4L_U

伙计们,我来讲一讲如何修改血码与装备的属性与需求。 这是一个比较简单但是需要细心的工作,我是通过修改二进制(Hex Hack)的方式修改uasset实现的。所以这仍然有限制。

你需要准备一个Hex Editor,我使用的是HxD Hex Editor(https://mh-nexus.de/en/hxd/),这是免费并有用的,当你安装以后,我们就可以开始了:

1.解开游戏的数据档案。

使用Umodel即可,我们要导出的内容在:{Umodel的目录} \Game\Characters\Blueprints\Player

Umodel

文件夹BloodCode,Jinkaku,Ketsuki,Weapons里面的"DA_"文件可以依照本教程修改。

找到你需要修改的对象文件,并把它复制出来,建立一个可以替换游戏源文件的路径。

这次我们演示如何修改亡蚀爪牙,这个位于:{您提取后的目录}\Game\Characters\Blueprints\Player\Jinkaku\Gauntlet\DA_JinkakuArticle_Gauntlet9

The exported file

我们需要uasset(索引)和uexp(数据?)两个文件,而且我们修改的目标总会是“DA_”开头的,请忽略“BP_”,因为那些文件我目前并不知道如何解释。

把这两个文件复制出来,然后建立一个打包Mod的文件路径,用于覆盖游戏的原始文件,这个文件的路径应该是这样:

就像我这样: Super_Venous_Claw_1_53_P\CodeVein\Content\Characters\Blueprints\Player\Jinkaku\Gauntlet

简而言之,从哪里拿的,就放到哪里去,注意您提取文件根目录的是“Game",但实际上我们需要"CodeVein\Content"

Your established path

然后,我们可以打开Hxd Hex Editor,开始修改。

HxD

3. Replace content

我们只打开uasset(uexp为了后续版本更新的保证兼容性),

Open the uasset file

不要慌张,我们Ctrl+F(或者"编辑"菜单下的"搜索"),来打开搜索界面:

Find

输入两个"::“之后,"查找目录"选择“all”,最后,点击"搜索全部"按钮。

Result

你可以在底部看到结果,我们要修改的内容,就是这些。

原理:C++中引用对象的方式是::,所以我们可以替换这些子引用。

你可以从https://sethclydesdale.github.io/code-vein-builder快速查询你需要的数据:

这件装备拥有以下属性:

需求: STR D+ MND D+

增幅: STR C+ DEX E MND C+ D

所以你可以从搜索框发现以下内容:

ECharacterAttributeRank::B_Plus ECharacterAttributeRank::D_Plus ECharacterAttributeRank::C_Plus ECharacterAttributeRank::E ECharacterAttributeRank::D

注意:如你所见,这些引用是不重复的,因为这并不是实际上的属性数值定义,所以当你把C_Plus替换为S_Plus时,游戏会把该装备所有的C+换成S+,无论是在属性还是在要求。

知道这些以后,你就可以开始修改了,我打算把D和E换为S,B_Plus和C_Plus换为S_Plus。

注意,因为偏移问题,你只能修改相同长度的内容,所以我们不能把D改为任何Plus,也不能把D_Plus改为D。

知道这些计划以后,请你打开游戏中包含S_Plus、S和E_Plus的文件,我这里从这些血码下手:

DA_BloodCode_JounoRokugai.uasset DLC\DA_BloodCode_DLC_Hannibal.uasset DLC\DA_BloodCode_DLC_Strength.uasset

请用HxD打开这三个文件,并和上面一样,去搜索::

我们先演示如何替换D_Plus为E_Plus

让我们切换到DA_BloodCode_JounoRokugai,因为这个血码有一个E+属性,我们需要复制这个血码的E_Plus和后面的几位引用,来替换D_Plus。

Find

我们可以点击搜索结果中的条目迅速定位,然后,我们找到ECharacterAttributeRank::D_Plus,注意,并从::之后选择,并避免复制到最后的四位(20 00 00 00 或者 16 00 00 00 或者1B 00 00 00)

Copy

Don't need care that.

然后我们回到DA_JinkakuArticle_Gauntlet9,找到D_Plus,同样选中,然后Ctrl+V,替换,当你替换成功后,文字会变红,也不会弹出消息框。

paste

现在,你可以保存了,这就意味着成功。

重复上面的操作,从DA_BloodCode_DLC_Hannibal复制S替换,从DA_BloodCode_DLC_Strength复制S_Plus替换,我们就可以快乐地结束了。

Paste all!

当你都换好后,文件应该如下:

然后保存!这个文件就做好了!现在去打包!看:https://github.com/KarbonAKitt/CVWiki/wiki/Packaging-Your-Mod#prepping-folders-for-the-pak

Package!

为什么打包提示三个文件?因为HxD会帮你备份,请你删除掉它备份的那个uasset文件就可以了。

现在去游戏看看。

ummm...

如你所见,效果不理想…我们替换的内容变得混乱了,一些装备的确如此,但是如果你按照这个教程去替换血码是没有问题的。

这就是全部,注意以下几点问题:

Plus只能和Plus替换,普通的也只能和普通的替换,这是位置偏移问题。

避开20 00 00 00 或者 16 00 00 00 或者1B 00 00 00。