侵略行为 MOD的制作教程 如何修改游戏本身的心得
侵略行为 MOD的制作教程 如何修改游戏本身的心得
修改方法综述:
Uses:
英文原版,不管哪个升级档,不然或许会造成对应困难
Moddingsuite 我用的是0.8.2..如果不知道该如何使用这款修改器的,请看这里
首先,游戏里面有哦很多限制,再也不复当年帝国时代II里面那样民兵砍城墙的盛况……
小兵(我改的是Felin)并不能攻击建筑……其中或许有一些设定,但我不知道它是如何实现的,所以,暂时,我还不会修改这点,于是这方面的知识或许还需要大家一起试验……
下面我要讲的,是如何找到单位的位置:
理论上讲,有两种方法:
一种是找到TAllU。。。那个东西,猜出ClassNameForDebug的名字之后直接手工二分法找单位在哪里,而后直接读到单位id
比如,Felin的ClassNameForDebug里面是含有Felin的……但是M993的name是Unit_HEMTT_recolteur
so,必须使用其他技巧……
找到一个可用的ZZ_Win.dat(比如77000508版)和最新Ndf_Win.dat,使用Moddingsuite打开这两个文件
从ZZ_Win.dat找到unites.dic(选择uslocalisationunites.dic那个,这就是我要求使用英文版的原因……对应相当优秀,另外建议大家先对文件大小排序一下,我们要改的都是大文件……)
然后通过在搜索框中输入单位名称找到单位名称的Hash,或许有三个,或许有五个……这只能一个一个试试了……我没有其他更好的方法。
当然请确保你输入的名称的确是单位的名称……毕竟这里单位名称并不是那样好找的……
这三个(或者更多)Hash之中有一个会被写在NameInMenuToken上面,这个就是那个单位的名称,当然,如果你觉得这样重复得太厉害,你搜索单位描述也是一样的……虽然后者或许要多打些字
于是……在Ndf_Win.dat的everything.ndfbin(最大的那个包)之中找到TTypeUnitModuleDescriptor,选择右边的筛选,条件选NameInMenuToken(打开筛选框之后双击左边的那个框,之后按N)
于是你就选中了NameInMenuToken,此后双击右边那个框,输入Hash,几个Hash大约会中一个。。
之后点那个看起来像搜索键的按钮,按钮功能是看看到底是哪个instance调用了你选择的这个instance,一般调出来的东西就是你要修改的单位……
如何修改单位属性:
单位属性是用单位instance里面的ModuleXX来储存的,一般一个单位会存30多个Module,游戏通过读取这些Module来理解单位所拥有的技能,所以如果你想修改一个单位,你必须修改单位包含的module(一般就是:数据类型栏双击-弹出窗口-再找到想修改的数据类型双击-新窗口-……-终于找到Float或者UInt32类型数据-修改数值)
所以,下面的操作都有一个不断追码的过程,我省略了这点,但第一行的链接里面有向下追引用的各种截图,可以看看……
如何修改武器:
武器似乎是独立的,这比红龙不知好了多少倍……
我不确认是否给小兵换上新武器之后他们就能攻击建筑,只是我修改了武器之后小兵再也不能进房间跟别人肉搏了……都是别人干我的份……
修改武器需要最终修改到名叫TAmmuXXXXXXXXXX的东西里面存放的instance,那里面带Max的一般是射程,带damage的一般是伤害(大约有个suprise的,那个是惊吓伤害,似乎并没什么卵用……我喜欢同时修改射程和攻击力(PhysicalDamage)。。基本上改完这个跟射程之后敌人就再见了……)
玩战役的时候我从未从地图上看到一个敌人站立超过5秒钟……
!请记住,想修改杀伤力请修改TAmmuXXXXX下面的instance,module里面的Damage其实应当改名Hit Points更合适……如果你从Module里面直接选到Damage……然后把MaxDamage改成了700000——恭喜你做出了HP700000的生物(大约是死不掉的……)
如何修改移动速度:
其实这个很简单,有个带Move******的东西,一改就好,当然,鉴于不止一个单位用了这个module,你懂的……
解决方法是复制,create a copy,就是你追码用的那个钮的右边那个纽,点开会多出这个选项……
一般这个纽是点不动的……会弹出提示,说这不是一个Top Object……但你只要先点一下追码按钮左边的那个钮……一切就安静了……
之后,你就可以将单位的移动module选成你复制的那个,然后修改……
这样就不会有其它生物收到你的修改效果了……
修改资源以及资源储备
首先每隔几秒加钱是有module实现的,所以理论上可以通过修改使得任意单位获得这个能力,但这样做,我并不保证会不会出现其他问题。。
所以我更倾向于更改具有资源生产能力的单位:比如自动加钱的主基地……
首先,记住一个Instance:17457,这个是美国基地的造钱module……
理论上用这一句话就可以让大家忘乎所以地修改了……
另外id=97,100,112分别生产三大资源。。
这些个instance是如何找到的我不细说,无非就是各种追名字追引用……
得到了这些,我们就可以直接处理了……
以下是修改美军基地生产方法(17457)的简明流程
最开始,查找17457的引用,发现有2个单位引用了17457,不过没关系,经查证这两个都是美国的家伙,不用理会……
于是开始修改,否则要新建17457的副本之后修改这个副本的相关信息,不然电脑或许也会收到你修改带来的福利……
17457-双击它的default栏,在弹出对话框中双击transformationformulas
在弹出的对话框里新建两个条目,然后让这三个条目分别指向97,100,112(当然,过程有些繁琐,但一般做到这里都会明白该如何处理的)
于是你的基地就同时拥有了制造钱,铝和稀土的能力……
有些美中不足之处是生产速度实在捉急……不过没关系……可以通过建立并修改97,100,112的副本来弥补这点……
当然记得均衡修改,否则你会发现你的基地里面幸福地堆满了稀土——但你只有1单位的铝……(虽然不影响生产,不过看上去很难看,不是么……)
点击进入PKVS《侵略行为》游戏论坛专区