台服dnf吧 关注:121,414贴子:1,989,863
  • 13回复贴,共1

【nut研究者福音】动态调试写法教程

取消只看楼主收藏回复

先放两张效果图


IP属地:湖北1楼2020-07-22 14:29回复


    IP属地:湖北2楼2020-07-22 14:30
    回复
      2025-09-15 00:44:09
      广告
      不感兴趣
      开通SVIP免广告


      IP属地:湖北3楼2020-07-22 14:30
      回复
        动态调试的作用不用我多说,很多时候写nut要不断的修改和测试,有了动态调试就不需要再关闭游戏-修改pvf-上游戏测试了,可以直接一直测试,直到满意为止


        IP属地:湖北4楼2020-07-22 14:32
        回复
          下面以动态调试魔法旋风为例来说明写法


          IP属地:湖北5楼2020-07-22 14:32
          回复
            首先再dnf.exe目录下新建test.nut


            IP属地:湖北6楼2020-07-22 14:34
            回复
              再打开test.nut文件,在里面写一个函数


              IP属地:湖北7楼2020-07-22 14:36
              回复
                然后打开windstrike.nut文件找到function onSetState_WindStrike(obj, state, datas, isResetTimer),将红框内的内容都放到test.nut内的function setStateWindStrike(obj)下


                IP属地:湖北9楼2020-07-22 14:38
                回复
                  2025-09-15 00:38:09
                  广告
                  不感兴趣
                  开通SVIP免广告
                  操作完之后就是这样的效果


                  IP属地:湖北10楼2020-07-22 14:40
                  回复
                    最重要的一步来了,我们要在function onSetState_WindStrike(obj, state, datas, isResetTimer)下调用test.nut内定义的function setStateWindStrike(obj),因为function setStateWindStrike(obj)是写在pvf之外的,所以在游戏运行时就可以修改function setStateWindStrike(obj)的内容,从而实现动态调试


                    IP属地:湖北11楼2020-07-22 14:41
                    回复
                      调用形式就是这样


                      IP属地:湖北14楼2020-07-22 14:42
                      回复
                        最后关键的来了
                        ,在每次释放技能时读取test.nut文件里的内容,dofile语句执行之后,定义在test.nut内的函数function setStateWindStrike(obj)就可以在pvf内生效了,这一步是关联pvf内外的关键


                        IP属地:湖北16楼2020-07-22 14:45
                        回复
                          教程完毕,写nut是不是更方便了?


                          IP属地:湖北18楼2020-07-22 14:46
                          收起回复
                            因为dofile可以读取pvf以外的nut脚本,所以可以把一些函数放外面,当成一个函数库来用


                            IP属地:湖北19楼2020-07-22 14:48
                            收起回复