单机游戏

当前位置 /首页/单机游戏 > /列表

腐烂国度PC版 武器数据修改方法教程 怎么改武器

腐烂国度PC版 武器数据修改方法教程 怎么改武器

腐烂国度PC版 武器数据修改方法教程 怎么改武器

腐烂国度使用的是CE3引擎,也就是孤岛2用的引擎,虽然PAK目录结构发现变化,但是还是可以找到一些文件位置的

关于武器耐久和车辆不损及精度问题请看帖子中的回复引用

1.备份

备份目录下的 改名成

备份State of DecayGame目录下的levels文件夹

注:备份之后,一定要把 删除

2.下载

下载,解压至State of DecayGame文件夹下(感谢鬼畜thexshadow)

PS:电脑出问题,一上传网络就卡死,而且需要重启恢复,哪位同位帮转储下

汉化版可用的在这里,点此下载 (感谢 ch87819)

英文原版

点此下载 (感谢2636315131 )

点此下载

如果你要是对文件不信任的话,可以自己解压(感谢鬼畜thexshadow,感谢zjslqshqz)

点此下载

简单使用方法

安装Quick_BMS_GUI_Installer_

archive file 选择要解压的PAK文件

script file 选择你下载压缩包里的(解压出来使用)

folders --> set output folders 解压输出目录

上面3项设置完成后,点 extract 完成解压

3.修改

腐烂国度的武器配置文件都在State of DecayGamescriptsentitiesitemsxmlweapons目录下

值得注意的是有些文件名并不是游戏中物品的实际名称,比如Wooden Branch(游戏人物出生时手里拿的树枝)

他的配置文件名是,

其实只要打开查看下列行,就能知道具体是什么武器了

-------------------------------------------------------------------------------------------------

以assaultrifle_文件为例,这是什么武器,当然是M4A1步枪了了

弹药类型

---------------------------------------------------------------------------------------------------------------------

射速

装填时间

膛内允许的子弹数量

rate应该指的是射速 (感谢newiss)

bullet_chamber则是膛内允许的子弹数量,弹夹容量30,最大装弹数是30+1=31 (感谢newiss)

----------------------------------------------------------------------------------------------------------------------

弹夹大小

伤害

伤害降最小距离

伤害每米衰减

问:怎么改武器的损耗度?找了半天也没有找到。一把好的武器用着用着就损坏了,真是让人郁闷。

答:看了一遍没有找到相关的词句,不过精度问题貌似这里可以解决,编译人员还贴心地加上了说明……

以M4A1为例:

距离5米处着弹点散布的最大范围(米?)

每击发一发子弹造成弹散的范围(米?)

弹散的恢复时间(秒?)

影响射击精度的最低人物移动速度

影响射击精度的最低人物移动时间

影响射击精度的最低人物转身速度

影响射击精度的最低人物转身时间 (分钟?)

各种动作姿态下的弹散乘数

跳是1.5倍

蹲是0.85倍

冲刺是1.2倍(WTF?)

正常边跑边打是不变

精度问题貌似这里可以解决,编译人员还贴心地加上了说明……

以M4A1为例:

距离5米处着弹点散布的最大范围(米?)

每击发一发子弹造成弹散的范围(米?)

弹散的恢复时间(秒?)

影响射击精度的最低人物移动速度

影响射击精度的最低人物移动时间

影响射击精度的最低人物转身速度

影响射击精度的最低人物转身时间 (分钟?)

各种动作姿态下的弹散乘数

跳是1.5倍

蹲是0.85倍

冲刺是1.2倍(WTF?)

正常边跑边打是不变

点此进入本站《腐烂国度》游戏论坛专区

引用ch87819 关于武器耐久的修改

耐久是LUA脚本,CE有LUA脚本编辑功能,物品不损的语句在里面

相关语句

function er:OnHit(hit)

local explosionOnly=tonumber(losionOnly or 0)~=0;

local hitpoints = oints;

if (hitpoints and (hitpoints > 0)) then

local destroyed=:IsDestroyed()

if (=="repair") then

:OnHit(hit);

elseif ((not explosionOnly) or (osion)) then

if ((not g_gameRules:IsMultiplayer()) or g_:GetTeam(terId)~=g_:GetTeam()) then

:OnHit(hit);

if (not destroyed) then

if (ge>0) then

if (g_rretHit) then

g_rretHit(g_gameRules, self, hit);

end

end

if (:IsDestroyed()) then

if(Events and royed)then

self:ActivateOutput("Destroyed",1);

end

end

end

end

end

end

end

红字部分我目测就是物品损坏的代码,

替换掉

if(Events and royed)then

self:ActivateOutput("Destroyed",1);

或者删除物品估计就不会坏了

另外车辆不损在这里scriptsentitiesvehiclesimplementationsxml

搜damageMax=就出来各个部件的伤害上限,后面的数值多加几个0车就基本不会坏了

还有比较好的办法是

这种东西用批量替换,把数值全部变成0.0,这是伤害的公式,"bullet" multiplier就是受到子弹(这里是伤害*1000倍,因为这个是油箱的),"collision" multiplier撞击伤害*,"melee" multiplier近战伤害

这些数值改成0后,受到的伤害就全部乘以0了,测试有效,不过要做车辆不损MOD要所有车的属性都修改,太麻烦了,等苦力弄。

感谢各位专家专修改教程的完善,看来我成功达到抛砖引玉的效果了!