游戏精英
 
- 贡献度
- 651
- 金元
- 39069
- 积分
- 6511
- 精华
- 0
- 注册时间
- 2008-11-12
|
本帖最后由 silasa 于 2025-3-26 22:48 编辑
老规矩,先要感谢
突突党的福音,教你如何修改枪械属性
某消光的MOD修改指南 v1.0
两个帖子,给了我思路和数据的参考。
1、枪械(inventory_gen.scr)
重要参数(以下是修改过的,请对比自己的原版数据):
DamageRangeMelee(110.0 *0.01); 先纠个错,这里不是射程,是近战距离,无效但必须的数据
HeadSmashProb(1.0); 以下四项分别是爆头、断头、断臂、断腿的几率,1.0=100%
HeadCutProb(1.0);
ArmsCutProb(1.0);
LegsCutProb(1.0);
CutTypesGroup(CutTypesGroup_Holes);
DamageType(DamageType_Bullet);
Mesh("wn_rifle_a.msh");
AnimPrefix("m16");
HudIcon("weapon_rifle");
ShotTime(0.09); 射速,个人觉得没必要改。射速过快,动画显示会增加系统负担,造成卡顿
ShotSound("mosin_shot_XX.wav");
BaseSoundPrefix("mosin");
DefaultBulletId("Bullet_Rifle"); 子弹类型,没必要改
AmmoCount(40); 弹夹容量,无限子弹改0
ReloadTime(0.5); 上弹时间,过小的话会抽风
EmptySound("m16_empty.wav");
TwoHanded(true);
HolderElement("r_thigh");
HolderOffset([0.0,0.0,0.0] *[0.01, 0.01, 0.01]);
HolderAngle([0.0,90.0,-90.0]);
HandOffsetSprint([0.0,-0.005,0.0]);
HandOffset(HandModification_Normal, [0.0,0.0,0.0]);
HandRot(HandModification_Normal, [0.0,0.0,0.0]);
HandOffset(HandModification_Custom, [0.0,0.0,0.0]);
use HitEffects_Firearm();
use PickupSounds_Default();
ClipReload(true);
FxNameShell("BerettaGunfireShell");
ShootFx("m16_muzzle_flash_sequence.fx");
AimBlurStart(25.0);
AimBlurEnd(35.0);
ShootStatAccuracy(100.0); 精准度,100最大
MoveAcurancyLoseFactor(0.0); 移动时散射,改成0就是移动精准了。
JumpInertiaFactor(0.2); 跳跃影响
DuckInertiaFactor(0.3); 潜水影响
ShootMinAngle(0.0027); 以下三项是准星大小以及射击时准星变大幅度,全部减小十倍,准星就变成了一个小十字,射击时浮动很小
ShootMaxAngle(0.021);
ShootAngleVel(0.0145);
ShootAngleCooldown(1.0); 重要参数:准星恢复速度,1.0不知道是不是最大值,不过已经非常快了。
ShootVertRecoil(0.01); recoil相关的全是后坐力选项,不用犹豫,全部减小十倍,后坐力就非常小(之所以不全部改成0,一是怕麻烦,二是不至于完全失真)
ShootVertRecoilSpread(0.01);
ShootHorzRecoil(0.0);
ShootHorzRecoilSpread(0.01);
ShootRecoilTime(0.015); 重要参数:后坐力恢复速度。与准星恢复速度不同,这个值要减小才快。以上两个恢复速度参数,即使其他的参数不修改,只改这两项的话,射击时已经很舒服了,既保留了真实手感,又不影响射击快感。
ShootMode(ShotMode_Single); 射击模式,single是单发,automatic是自动,burst是三连发,看个人喜好
BulletsPerShot(1); 散弹枪数据,每一发有多少个子弹,普通枪械也可以改大于1,威力暴增
AimFov(4.0); 右键放大倍数,不可改太高,因为没找到放大动画的参数,原版放大时间很短,所以一旦你改得超过4,你会发现按右键的时候,可能会卡顿,那是因为远景迅速的变成近景,系统负担变大。
MaxReboundCount(3);
DamageSize(1.0);
AiHitSound("bullet");
StatsType(StatsType_Pistol);
Price(10350); 价格
FF_EffectName("Shot_StrongRiffle");
FF_Left(0.3);
FF_Right(0.4);
FF_Duration(0.1);
FF_FadeOut(0.0);
CriticalProb(0.0); 致命几率
CriticalDamage(1.0); 致命伤害倍数
DamageHeadMult(8.0); 爆头伤害倍数
DamageToPhysicsObjects(17.5); 对可破坏场景的伤害,比如可以踩塌的顶棚。
FirePointRange(0,500.0 *0.01); 以下参数(FirePoint)决定了枪械在各个距离的伤害,FirePointRange指定射程,FirePointDamage指定该射程内的伤害,FirePointForce指定该射程内的冲击力。
FirePointDamage(0,184.0); 如果想把警用步枪改狙击枪,就把所有射程的伤害都改成一样的即可。
FirePointForce(0,100.0);
FirePointRange(1,1000.0 *0.01);
FirePointDamage(1,184.0);
FirePointForce(1,100.0);
FirePointRange(2,4000.0 *0.01);
FirePointDamage(2,184.0);
FirePointForce(2,100.0);
FirePointRange(3,10000.0 *0.01);
FirePointDamage(3,184.0);
FirePointForce(3,100.0);
Color(Color_Blue);
GenType(GenType_Firearm);
ShotTailDelay(0.5);
AchType(AchType_Pistol);
NameGender(0);
PriceMult(1.1);
ShootAnimFactor(1.0);
HandInertiaFactor(0.0);
HandInertiaRotFactor([0.0,0.0,2.0]);
BulletSpeed(350.0); 子弹速度
NoiseType("NONE"); 噪音,吸引僵尸的,理论上改成NONE就应该不吸引僵尸了,实际游戏中,还是会产生跑酷僵尸,可能是因为僵尸被枪打死和被爆炸物炸死的效果是一样的,但是跑酷僵尸不会奔向你,而是奔向被打死的僵尸…………另外有些枪械没有这个参数,可以自己在最后添加。
}
Item("Firearm_RifleAGen", CategoryType_Firearm) 每个枪械后面都有这一段,这一段是右键瞄准模式下,变化的参数,其实就是准星,后坐力,散射等参数。和上面一样,把准星散射后座力减小十倍就可以保持一致了。
{
CategoryType(CategoryType_Firearm);
UsageType(UsageType_Aim);
UpgradeLevel(0);
HandOffset(HandModification_Normal, [0.0,0.0,0.0]);
HandRot(HandModification_Normal, [0.0,0.0,0.0]);
HandOffset(HandModification_Custom, [0.0,0.0,0.0]);
ShootMinAngle(0.00);
ShootMaxAngle(0.01);
ShootAngleVel(0.019);
ShootAngleCooldown(1.0);
ShootVertRecoil(0.029);
ShootVertRecoilSpread(0.018);
ShootHorzRecoil(0.0);
ShootHorzRecoilSpread(0.012);
HandInertiaFactor(0.0);
}
2、弓箭
弓箭要变成直射,需要动的参数有好几个
重要参数(以下是修改过的,请对比自己的原版数据):重要参数(以下是修改过的,请对比自己的原版数据):
Item("ZZZZ_Bow", CategoryType_Firearm)
{
Name("&Melee_Bow_N&");
Description("&Melee_Bow_D&");
DamageType(DamageType_Arrow);
UsageType(UsageType_Normal);
DefaultBulletId("ZZZZ_Bullet_Arrow");
AmmoType(AmmoType_Arrow);
BulletSpeed(100); 弹速,数值越大,箭支飞行速度越快
BulletGravityFactor(0.1); 重力影响,想把弓箭变成枪就改0,原版是0.5,所以弓箭的抛物线那么明显
Visibility(true);
ItemType(ItemType_Bow);
PhysicsScript("single_dropped_inventory.phx");
UpgradeLevel(0);
Condition(-1.0);
CriticalProb(0.0); 致命几率
DuckInertiaFactor(0.1);
DamageHeadMult(5.0); 爆头伤害倍数
DamageToPhysicsObjects(17.5); 场景破坏伤害值
FirePointRange(0,5000.0 *0.01); 和枪械一样,指定射程内伤害和冲击
FirePointDamage(0,240.0);
FirePointForce(0,25.0);
StaminaUsage(0.01); 体力消耗
SwingSpeed(1.3); 这个应该是拉弓的速度吧,不确定
Mesh("wn_bow_classic_composite_a.msh");
BarrelHelperName("arrow_pose");
AnimPrefix("Bow");
HudIcon("weapon_bow_recurve");
TwoHanded(true);
ThrustAngle(10.0); 这个是箭支插入的角度,原版是30,和抛物线是一致的。
DestroySound("break_wooden_weapon_00.wav");
AiHitSound("bow");
use HitEffects_Sharp();
BloodSplatFactor(0.25); 这个是血花扩散的大小?几率?
use PickupSounds_Default();
DamageSize(15.0);
StatsType(StatsType_Cut);
LootLevel(8);
LootType(LootType_Sharp);
FF_Left(0.6);
FF_Right(0.6);
FF_Duration(0.2);
FF_FadeOut(0.0);
Color(Color_Blue);
AchType(AchType_BigAxe);
NameGender(1);
SwayMaxAngle(0.0); 这个不太清楚是什么最大角度,不过弩这里是0,所以我也改成了0,
JumpInertiaFactor(0.1);
EnablePenetration(false);
ShotTime(0.5); 射速
Price(6000); 价格
}
Item("ZZZZ_Bow", CategoryType_Firearm) 瞄准模式下参数的变化
{
UsageType(UsageType_Aim);
BulletSpeed(120.0);
SwayMaxAngle(0.0);
BulletGravityFactor(0.1);
}
这么一分析就看出来了,弓箭要直射,弹速,射角,重力是最重要的。
附上自己魔改的文件,
里面包含了近战武器的修改,近战武器提升了物理冲击倍数,冲击特效和电击+毒素特效的武器可以把敌人打飞得更高了。
加强版枪械与弓箭修改.rar
(35.99 KB, 下载次数: 849)
把游戏目录下,DW文件夹里的data3.pak用winrar打开,然后把附件解压后得到data文件夹拖进去,即可。
感谢
L2233提供的消音参数。
需要手动添加一条:Silenced(true);
已将消音参数加入所有inventory_gen.scr里的枪械
inventory_gen.rar
(19.11 KB, 下载次数: 608)
|
评分
-
2
查看全部评分
-
|