【教程】抛砖引玉——param文件的修改(太刀已知数据补全,未知数据大幅完善)

大家好,这里是唯。这是来到蘑菇之后自己写的首个有意义的教程。之前写的都比较基础,这次稍微讲深一点的东西。

param文件一直存在,会改的大佬也不少,但是貌似还没人出教程说明过具体的修改,所以这里就稍微分享一下个人经验,如有错误欢迎指正。

本帖是经帖友:解得好不如接得好 的启发而写,之前一直不清楚param文件怎么打开,在这里道谢。

ps:修改param属于修改fsm的进阶教程,有fsm基础的朋友在此基础上修改param应该会比较得心应手。

(注:人物、技能、衣装、物品在m佬的编辑器里已经可以很直观的修改,本教程不加赘述。本教程重点在于修改武器的param)


要用到的工具:MHW-Editor


最新版MHW-Editor下载链接:(鉴于授权问题不予转载,请直接去原址,谢谢)

github:https://github.com/Synthlight/MHW-Editor

github免登陆:https://github.com/Synthlight/MHW-Editor/releases/latest

N网:https://www.nexusmods.com/monsterhunterworld/mods/2068

(感谢m佬和吴下阿毛提供的链接)




一、什么是param文件?

param文件是储存了mhw各种判定的参数的文件,修改param可以改动一些判定。

举几个例子:

Q:太刀原本最多7跳,我想要20跳,怎么办呢?

A:改param。

Q:太刀那个登龙延迟太气人了,能不能不落地才有判定?

A:可以,改param。

说到这里,大家应该对param文件对判定的影响有了一定的了解,那么,具体怎么改呢?请往下看。


二、武器编号

想修改武器的param文件,必须知道武器编号。简单的说一下武器编号,个人整理的,也不是什么新奇的东西,编号和文件无关,就用fsm的图来展示了。

mhw共有十四把武器,所以对应的编号是0-13。

在这里展示的只有0-11,因为12和13个人没有闲心去测试,听大佬说12和13的fsm也是可以互换的,咳咳,跑题了。总之12和13一个是轻弩的编号,一个是重弩的编号,具体谁是谁,感兴趣的朋友可以自行测试,也可以在我的帖子里补充。

首先你要知道你想修改的武器是什么。因为本人的惯用武器是太刀,最熟悉的也是太刀,同时大家最喜欢的武器也是太刀,太刀几乎是修改频率最高的武器,所以这里拿太刀举例,其他武器希望诸君能举一反三,自行探索。


那么,我们首先记住太刀的编号,wp03。


三、param文件路径(太刀为例)


如图是已经用部分解包器解包出来的文件路径,如果是其他武器,就在对应的文件夹里,比如大剑wp00,就在wp00文件夹里找。解包和封包的操作是很基础的,实际操作也不难,就和解压还有压缩文件是一样的道理,其本质是一样的,一上手就会用了,这里不多赘述,如果实在不会的可以参照其他教程,都有提及。


四、文件界面(太刀为例)

用MHW-Editor打开已经解包出来的param文件,如图所示。

好的,那么简单说明一下界面吧。我自己也不是很懂,所以如果有说错的地方欢迎指正,有代码基础的朋友应该更容易看懂这种界面,很直观了。

Name:名字,这里可以理解为类型的名字。    

Data:数据

Type:类型,指的是数据类型。简要的给没有代码基础的朋友说一下要用到的数据类型。

string:字符串类型,单个字母,一串字符,一堆文字,一串数字之类的,都可以理解为字符串类型。(这里实际用不到,只是帮助理解界面)

ulnt(更正为uint):无符号整型 4个字节 和int的区别是 没有负数 所以正值的范围更大

float:单精度浮点数。

如图,对于不了解计算机编程的朋友而言,你只要知道float代表小数就行了。我们改动的重点一般也是float。


好了,我们可以看到,对应的栏目下方,都有显示,比如这里的意思就是类型的名字是武器,编号是03,储存类型是字符串类型。

顺便一提,unk指的是unknown,也就是未知数据,换句话说,是工具作者没有测试出来的内容,感兴趣的可以自行修改探索,不多赘述。


五、具体判定修改对照(太刀为例子)

1、锐利度相关

Sharpness Consumed (Melee Only):近战武器的斩味消耗。

Guard Knockback Sharpness Usage: Small:防御时消耗斩味-防御冲击小

Guard Knockback Sharpness Usage: Medium:防御时消耗斩味-防御冲击中

Guard Knockback Sharpness Usage: Large:防御时消耗斩味-防御冲击大

Weapon Sweet-spot:刃中补正

继续往下翻,如图。


2、防御角度和防御性能

这里对于太刀而言或许不是很重要,但如果涉及到长枪铳枪之类的武器,就很重要了。

Guard Angles:防御角度

Gurad Angle(Both Sides):两侧的防御角度(单位是角度)

Knockback Threshold Small:防御性能小

Knockback Threshold Medium:防御性能中

Knockback Threshold Large:防御性能大

值得一提的是,Knockback Threshold Small、Knockback Threshold Medium、Knockback Threshold Large为ushort型,理论数值不能超过255,但是在Knockback Threshold Small、Knockback Threshold Medium、Knockback Threshold Large的其中一个设置为255时,均会出现任何攻击都会导致防御大后退的现象,个人猜测是存在一个上限值,但不知道上限是不是100,也不知道防强珠子会不会导致防御大后退。——引自帖友:解得好不如接得好 的结论,在此再次鸣谢。


3、气刃槽相关

如图。

Spirit Gauge Decay:气刃槽的衰减速度

Unk93:气刃一式耗气值

Unk94:气刃二式耗气值

Unk95:气刃三式耗气值

Unk96:气刃大回旋耗气值

Unk97:踏步气刃斩耗气值

Unk100:跳跃气刃斩耗气值

Unk101:跳跃气刃三连斩耗气值

Unk104:滑走拔刀斩耗气值

Gauge Required to Active Foresight That Gives 45 I-Frames:见切有判定的气刃槽要求


Unk105: 白黄刃兜割回气buff持续时间 

UNK106:红刃兜割后回气buff的持续时间

UNK107:白黄回气的速度

UNK108:红刃回气的速度/刃状态下气刃兜割的回气BUff速度

Unk109: 小居合回气buff持续时间

Unk110:小居合叮到后的回气buff时间
Unk111:小居合回到满气需要的时间(单位:秒)
Unk112:小居合叮到后满气需要的时间(单位:秒)

Gauge Duration: White:白刃持续时间(单位是秒)

Gauge Duration: Yellow:黄刃持续时间(单位是秒)

Gauge Duration: Red:红刃持续时间(单位是秒)

Gauge Consumption for Helm + Iai Spirit Slash:大居合,气刃兜割消耗开刃等级

Gauge Damage Buff: White:白刃伤害增幅倍率

Gauge Damage Buff: Yellow:黄刃伤害增幅倍率

Gauge Damage Buff: Red:红刃伤害增幅倍率

Gauge No-Decay Time after Spirit Gauge Upgrade:开刃后不掉刃的时间

Foresight Slash Damage Multiplier on Successful Evasion:见切成功时的伤害增幅倍率

Foresight Slash Super Armor Time on Successful Evasion:见切成功后的霸体时间

Unk133,效果是纳刀术加速对特殊纳刀的效果倍率,默认是0.4,不知道具体是怎么计算的,但是首先必须要装备纳刀术,其次数值越大特殊纳刀速度越快,不影响正常收刀速度。改纳刀速度推荐通过修改UNK133然后插纳刀3实现、实测是纳刀3的情况下改成1.5-1.8会比较合适,有效果,也不会显得十分突兀


4、大居合相关

lai Sheathe time:特殊纳刀下的纳刀时间

Iai Super Armor on Successful Counter:大居合触发霸体所需要的斩击次数/大居合霸体的时间(待验证)

Iai Spirit Slash Second Hit Part Damage on Successful Counter:大居合成功之后第二跳的伤害

Iai Spirit Slash Second Hit Time Delay:大居合第二下攻击的延迟(单位是秒)。延迟的最长时间是2.5s,再高会丢斩。


4.5、派生相关

Action Param 1:滑走上捞斩

Action Param 2:滑走拔刀斩

Action Param 3:跳跃气刃三连斩

Action Param 4:气刃兜割

Y是高度,Z是前后距离,X是左右距离





5、登龙斩相关

如图。

Helmbreaker Hit Delay of First Hit:登龙第一跳的命中延迟(单位是秒)

Helmbreaker Hit Delay of Hits Between First & Last:登龙第一跳到最后一跳之间的命中延迟(单位是秒)

Helmbreaker Hit Delay of Last Hit:登龙最后一跳的命中延迟(单位是秒)

Helmbreaker Hit Limit:登龙的跳数(单位是次)

Helmbreaker Red Line Delay:登龙判定的红线的延迟(单位是秒)


备注:

所有消耗气刃的招式,都不建议把气刃消耗改为0,因为这样的话不仅会失去气刃攻击的特效,还会让对应的动作值也跌落到无气状态的动作值。


好了。说了这么多没用的,其实都是在汉化和帮助大家理解这个界面,接下来我们进入实战。


六、判定的修改

前面说的,Helmbreaker Red Line Delay这玩意儿,实际上不仅仅是红线伤害判定,更是万恶的掉刃判定。很多人都经历过延迟伤害结算被打到,或者说没打到却掉刃的情况吧。那么就要修改这个数值。

如图。我们把Data一栏对应的登龙跳数改成20,然后把红线延迟改成0。点一下左上角的save,然后打包成mod进游戏里测试。

如图,现在我们就达到了我们的理想状态:

登龙变成了20跳,而且登龙结束我们并没有掉刃。

这只是一个简单的例子而已。学会用MHW-Editor看param文件之后,你就可以按照自己的想法修改自己不喜欢的判定,来达到自己理想的效果。

顺带一提,我这里只是改了跳数,而没有改伤害,所以20*150,如图,大概是3000的伤害,每一跳150。可能有朋友之前见过那种,只是改了登龙的跳数,比如那个很有名的30跳mod,却没有修改伤害。那是怎么做到的呢?现在而言很简单了,用m佬的编辑器,自己计算一下,修改一下伤害就好了。

举个简单的例子,比如以前一跳150,七跳就是1050。如果你修改成了14跳,又不想增加登龙本身的伤害,只要把一跳的伤害降到75就好了,这个可以通过动作值减半来实现。

大家的热情真的超乎我的想象,是诸位源源不断的补充数据,才能让本教程更加完善。有的地方有大佬重复测试,测试结论不一致,在此保留所有版本的结论供读者学习验证。

最后,感谢m佬,霜之哀伤,Xovea,门与卒,AKITSUKIKANNA的帮助,经过他们的测试数据补全,太刀方面的param已知数据已经补全,未知数据方面已有大幅度补全。

好了,还是那句话,授人以鱼不如授人以渔,可能有人觉得教程收的有点贵,一方面是因为这是首个武器方面详细的param教程;另一方面是,通过学习,大家创造的mod所产生的价值应该远超我的教程收取的影响力,对吧?(笑)

希望大家能够通过本教程,做出更多优秀的mod,有所探索,写出比我更好的教程,谢谢大家。





by 爱尔斯蒂亚 发布于 2020-07-25
打赏后可直接下载附件 赠人玫瑰 手留余香
2个大佬推荐该主题
默认
最新
1