- 声望
- 点
- 金币
- 枚
- 银币
- 枚
- 铜币
- 枚
- 注册时间
- 2009-10-4
- 最后登录
- 1970-1-1
|
制作MOD的过程中有时需要对大量的Lua文件作出改动,最原始的方法是解压缩出来后一个一个地解码,接着一个一个地修改,然后一个一个地放回去,最后再打包成Big文件。但是这样费时又费力,有没有简便一些的方法呢?运用批注处理的方法我发现解码、修改和覆盖这三个步骤可以简化处理。
首先准备好ModPackager、LuaDC和UltraEdit。然后编写三个bat文件:
a.bat:
@ECHO OFF
FOR %%C IN (*.lua *.wepn) DO luadc %%C
b.bat:
rename *.luadc *.
c.bat:
@echo off
FOR /f "delims=" %%C IN ('dir /ad /b') DO (
copy %%C.wepn %%C /y
)
其中a,bat可以批量解压缩,b.bat可以批量改文件名,c.bat用来可以覆盖原文件。当然这是以修改武器文件为例,对于其他类型的lua文件只需将wepn改成相应的扩展名即可(例如船只是ship)
示例:添加一种新型装甲NewArmour,对所有武器的抗性均为50%。
除了需要修改familylist.lua文件以外还需要在每一个wepn文件内作修改。运用三个bat文件和UE的批量替换功能可以达到事半功倍的效果。
1.解压缩
用ModPackager将Homeworld2.big解压缩至C:\Data下。将a.bat和b.bat放到luaDC目录下,将c.bat放到weapon目录下。
2.批量解码
查找所有wepn文件以及familylist.lua,放到LuaDC目录下,运行a.bat,完成解码。删除所有wepn文件和familylist.lua,运行b.bat将.luadc后缀去掉。
3.批量修改
用UltraEdit打开所有解码后的wepn文件,替换“PlanetKillerArmour = 0, ”为“
NewArmour = 0.5,
},
{
PlanetKillerArmour = 0,
”,替换范围选“All Open Files”;然后对没有“PlanetKillerArmour = 0,”的wepn文件手动添加 “
{
NewArmour = 0.5,
},
”
打开familylist.lua,在armourFamily内添加“
{
name = "NewArmour", },
”
修改完成。
4.批量覆盖
将修改完的familylist.lua放回Scripts中,覆盖原文件;wepn文件则放到weapon目录下,运行c.bat完成覆盖,之后删除weapon文件夹下所有文件(不包括子目录和里面的文件)。
5.重新压缩
用ModPackager将C:\Data压缩成Big包即可。
|
评分
-
查看全部评分
|