逸剑风云决吧 关注:57,772贴子:601,185

【抛砖引玉】一个简单的技能修改教程(以云相太极为例)

只看楼主收藏回复

0.参考文献:
https://bbs.3dmgame.com/thread-6458323-1-1.html
https://www.bilibili.com/read/cv26663010/
1.需要的工具

其中PAKTool是打包工具,UAssetGUI是查看uasset文件的工具,UnrealPakViewer用来打开pak文件的工具。
除此之外还需要准备一个编辑器,用来编辑json文件。Windows自带的记事本就可以,也可以使用其他记事本工具,或者干脆使用vscode或者idea之类的编辑器。
2.关键文件

3.相关文件路径
Wandering_Sword-WindowsNoEditor.pak是打包好的资源文件,位于Wandering_Sword\Content\Paks目录下,我们制作好之后的mod也是放在这个文件夹下。千万不要直接修改这个文件。


IP属地:重庆1楼2024-10-27 21:36回复
    4.1
    首先,我们使用UnrealPakViewer打开Wandering_Sword-WindowsNoEditor.pak。根据电脑性能不同,卡顿时间不同,卡顿是正常的。
    按照Wandering_Sword\Content\JH\Tables路径(图一)找到table文件,我们需要修改的skills文件就在里面,同时需要用到的buff文件也在该路径下。
    将这四个文件解压出来(右键extract),路径自定。




    IP属地:重庆2楼2024-10-27 21:44
    回复
      2025-12-24 23:20:29
      广告
      不感兴趣
      开通SVIP免广告
      4.2查看资源文件并寻找云相太极和太极神功。
      用UAssetGUI打开skills.uasset文件(第一次需要在右上角选择版本,选4.27就行),在export data/export 1/table info路径下就是我们的各个技能对象了,有兴趣的可以一个一个看一下。但是现在我们直接找到云相太极(截止2024年10月27日的版本,云相太极是837)。
      其中的lvaction就是升级时对应等级的效果,也就是我们要修改的地方。
      可以看到1级效果里有一个8370号buff(EActionType::ABuffWithStack就是代表这一个对象是buff,EActionType::CAttr一般就是对应血量和内力,EActionType::AJingMaiPoint通过拼音可得是对应经脉点)。接下来我们用同样的方法打开Buffs.uasset文件(新开一个窗口,前面的窗口还要用呢),可以看到是云相太极的buff。
      用同样的方法,找到并记录我们需要用到的太极神功的buff编号并记录下来。



      IP属地:重庆3楼2024-10-27 21:58
      收起回复
        4.3修改云相太极
        将skills.uasset另存为json文件,并用编辑器打开,我这里用vscode举例。
        找到云相太极,往下翻到4级的代码(LvAction4),原本应该有2个代码块,将其中一个代码块复制下来(注意括号对应以及逗号、不要出现中文空格和标点)直接粘贴在后面,然后把type的value改为EActionType::ABuffWithStack,ID的value改为对应的buff序号(图里是8023),Num的value改为1。只改这三个地方记性了,其他的不用改。这样我们就给云相太极增加了一个效果。用同样的方法把其他效果加上,这一步就完成了。最后记得修改云相太极的技能描述(不影响效果,但是可以通过描述判断是否修改成功)。
        顺便说下,我们复制的代码含义就是第4号buff增加85点,没记错的话应该是增加85点真气。


        IP属地:重庆4楼2024-10-27 22:14
        收起回复
          4.4保存并生成pak文件
          将上一步的json文件另存为uasset文件,将除了skills.uasset和skills.uexp之外文件全部删除,然后将整个test文件夹拖动到create-pak.bat批处理文件上完成打包,将得到的pak文件放入Wandering_Sword\Content\Paks目录下,整个修改工作就完成了。
          打包文件路径请务必遵守“mod名称\Wandering_Sword\Content\JH\Tables”的路径。
          这一步要注意最外层的文件名(我这里用的test),不知道逸剑用了什么筛选规则,我最开始用mymod命名文件,进游戏不生效,我将名称改为Wandering_Sword-WindowsNoEditor_MyMod,就生效了。


          IP属地:重庆5楼2024-10-27 22:22
          回复
            哇哦


            IP属地:湖南来自Android客户端7楼2024-10-28 00:30
            回复
              看不懂,先收藏


              IP属地:山东来自Android客户端8楼2024-10-28 02:35
              回复
                昨天忘记把修改后的示例发出来了,比如红框内就是增加的效果。大家修改的时候注意度,适当修改提高游戏性,过度修改降低游戏寿命。


                IP属地:重庆9楼2024-10-28 21:31
                收起回复
                  2025-12-24 23:14:29
                  广告
                  不感兴趣
                  开通SVIP免广告
                  请教下,json文件用记事本修改后如何保存为pak文件


                  IP属地:江苏来自Android客户端10楼2024-10-30 02:24
                  收起回复
                    佬,做绝式技能mod不显示五级十级对应id咋办?技能action5没有对应buff ID


                    IP属地:江西来自Android客户端11楼2024-10-30 02:46
                    收起回复
                      大佬,现在就卡在最后一步打包,按你说的路径弄好之后拖哪个文件夹到打包软件打包出来的都是1kb的pak,是哪里出错了


                      IP属地:江苏来自Android客户端12楼2024-10-30 12:07
                      收起回复
                        UAssetGUI自己就可以编辑uasset文件,不需要用json中转。说实话你这个json我还看不懂了,直接用UAssetGUI编辑uasset其实逻辑可读性更高


                        IP属地:波兰13楼2024-10-30 14:59
                        收起回复
                          云相的逻辑大概是这样的



                          IP属地:波兰14楼2024-10-30 15:05
                          收起回复
                            技能效果不是存放在skill.uasset里的,你需要在这个表格里找每个技能对应的文件然后去改那个文件,比如云相的文件就是\Wandering_Sword\Content\JH\Skills\WD_N_YunXiangTaiJi\GE_WD_N_YunXiangTaiJi_BD.uasset


                            IP属地:波兰15楼2024-10-30 15:09
                            回复
                              2025-12-24 23:08:29
                              广告
                              不感兴趣
                              开通SVIP免广告

                              打开这个文件以后查看Export 2/1/JHExtendSettings,这里包含了特效的第一步判定
                              举例来说,图中第一个JHExtendSettings的类型是EAbilitySystemEventType::PreEndAbility(截图中没有显示,你要点那个JHExtendSettings然后可以在右边表格里Value 2看到),代表这个特效在使用技能后进行判定【注意,这个使用技能指的应该是使用任何技能】
                              JHExtendSettings有两个下属栏目,第一个是Requirements,也就是判定的条件。图中Requirements只有一项,它的数值是50,代表判定的具体条件写在Export 50里
                              第二个栏目是Action,也就是当判定通过之后发生的行动。这里的Action有两项,它们的值分别是12和11,代表具体行动写在Export 12和Export 11里


                              IP属地:波兰16楼2024-10-30 16:50
                              回复