弹头真短,就7关,游侠发布的第一天下了到现在打穿无数遍了。无聊之余研究了一下改造武器,这里写出来跟大家分享一下。
crysis修改武器很简单,不需要特别的工具软件,只要你有IE浏览器和winrar就可以了。不要被下边长长的代码吓到了,其实修改非常简单!
首先warhead的武器数据保存在X:Crysis WARHEADGame文件夹里的Warhead_GameData.pak文件里,这个文件可以用WinRAR等压缩软件直接打开,打开后进入
Warhead_GameData.pakScriptsEntitiesItemsXMLWeapons(无需解压,可以直接在这里改,改前记得备份哦!),在这里可以看到很多XML文件,这些就是武器的数据,文件名就是对应的武器,下面以SCAR(别说不知道这是什么,这是美军初始武器)为例介绍如何修改:
直接在winrar里双击SCAR.xml,IE浏览器打开,这时只能看不能改,点<查看>---<源文件>这时记事本打开就可以修改了。每个武器的都包含9个大类,就是如下红字部分,在浏览器里可以单击收拢展开。蓝字是说明,一般不做修改。绿字代表常用修改部分。
- <item name="SCAR" class="Weapon" category="medium" priority="12">
+ <params> 关键字
<param name="giveable" value="1" /> 1为可以得到,0得不到,这个一般不改
<param name="selectable" value="1" /> 可否选择,1可选,0不可选。比如C4的遥控器就是不可选的,武器都是可选的,除非你不想用!
<param name="pose" value="rifle" /> 持枪姿势
<param name="mass" value="20" /> 质量,可能代表重量
<param name="melee_attack_firemode" value="melee" /> 近战模式
<param name="raiSeable" value="true" />
<param name="raise_distance" value="0.80" />
<param name="attach_to_back" value="1" />
<param name="bone_attachment_01" value="back_item_attachment_01" />
<param name="bone_attachment_02" value="back_item_attachment_02" />
- <dualwield>
<suffix value="akimbo_" />
</dualwield>
</params>
<ai_descriptor handler="instant" burstBulletCountMin="1" burstBulletCountMax="10" burstPauseTIMeMin="0.8" burstPauseTimeMax="3.5" singleFireTriggerTime="-1" /> ai描述类,所有武器的这一类基本就一句,没什么好改的。
+ <ammos>弹药
<ammo name="bullet" extra="0" amount="40" minAmmo="25" /> amount是初始弹夹子弹数量,如果想把弹夹容量改为50,还要修改后边firemodes类中的<param name="clip_size" value="50" />, minAmmo好像是每个捡到弹夹的补给量。
<ammo name="scargrenade" extra="0" amount="0" AccessoryAmmo="1" />
<ammo name="tacbullet" extra="0" amount="0" accessoryAmmo="0" />
<ammo name="tagbullet" extra="0" amount="0" accessoryAmmo="5" />
</ammos>
+ <geometry>几何,主要是模型视觉效果
<firstperson name="objects/weapons/us/scar/scar_l-c_fp.chr" angles="0,0,0" position="0,0,0" />
<thirdperson name="objects/weapons/us/scar/scar_l-c_tp.cgf" angles="0,0,0" />
- <boneAttachments>
<attachment target="firstperson" name="magazine" bone="magazine" />
<attachment target="firstperson" name="silencer_attach" bone="silencer_attach" />
<attachment target="firstperson" name="muzzle_Flash_effect" bone="weapon_term" />
<attachment target="firstperson" name="muzzle_flash_light" bone="weapon_term" />
<attachment target="firstperson" name="muzzle_flash_smoke" bone="weapon_term" />
<attachment target="firstperson" name="attachment_top" bone="attachment_top" />
<attachment target="firstperson" name="attachment_bottom" bone="attachment_bottom" />
<attachment target="firstperson" name="shell_grenade" bone="shell_grenade" />
<attachment target="firstperson" name="grenade_flash_effect" bone="grenade_term" />
<attachment target="firstperson" name="grenade_flash_light" bone="grenade_term" />
<attachment target="firstperson" name="attachment_side" bone="attachment_side" />
<attachment target="firstperson" name="attachment_side_light" bone="attachment_side" />
<attachment target="firstperson" name="attachment_side_Laser" bone="attachment_side" />
</boneAttachments>
</geometry>
+ <actions>动作,做各种动作时的视觉声音效果,比如开枪的声音和动作. 每个声音后边都有一个参数radius="n",这个就是声音传播范围,如果这个范围内有敌人,他可以听到你从而提高警觉并发现你,可以看到消音后警觉范围是20,而不消音是200
- <action name="select">
<animation target="firstperson" name="select_01" />
<animation target="owner" name="select" />
<sound target="thirdperson" name="sounds/weapons:scar:select" radius="2" />
</action>
- <action name="deselect">
<animation target="firstperson" name="deselect_01" />
<animation target="owner" name="deselect" />
<sound target="firstperson" name="sounds/weapons:scar:deselect" radius="2" />
<sound target="thirdperson" name="sounds/weapons:scar:deselect" radius="2" />
</action>
- <action name="idle" children="1">
<animation target="firstperson" name="idle_%hand%_%suffix%01" speed="0.7" />
<animation target="owner" name="idle" />
</action>
- <action name="pickedup">
<sound target="firstperson" name="Sounds/weapons:weapon_accessories:pickup_weapon_fp" radius="5" />
<sound target="thirdperson" name="Sounds/weapons:weapon_accessories:pickup_weapon" radius="5" />
</action>
- <action name="fire">
<animation target="firstperson" name="fire_bullets_%hand%_%suffix%01" />
<animation target="owner" name="shoot" />
<sound target="firstperson" name="sounds/weapons:scar:fire_fp_single%env%" radius="200" static="1" />
<sound target="thirdperson" name="sounds/weapons:scar:fire_3rd_single%env%" radius="200" static="1" />
</action>
- <action name="spin_down">
<sound target="firstperson" name="Sounds/weapons:scar:fire_fp_tail%env%" radius="5" static="1" />
<sound target="thirdperson" name="Sounds/weapons:scar:fire_3rd_tail%env%" radius="5" static="1" />
</action>
- <action name="spin_down_silenced">
<sound target="firstperson" name="Sounds/weapons:scar:fire_silenced_fp_tail" radius="5" static="1" />
<sound target="thirdperson" name="Sounds/weapons:scar:fire_silenced_3rd_tail" radius="5" static="1" />
</action>
- <action name="rapid_fire">
<sound target="firstperson" name="Sounds/weapons:scar:fire_fp_loop" radius="250" static="1" synched="1" />
<sound target="thirdperson" name="Sounds/weapons:scar:fire_3rd_loop" radius="250" static="1" synched="1" />
</action>
- <action name="rapid_fire_silenced">
<sound target="firstperson" name="Sounds/weapons:scar:fire_silenced_fp_loop" radius="20" static="1" synched="1" />
<sound target="thirdperson" name="Sounds/weapons:scar:fire_silenced_3rd_loop" radius="20" static="1" synched="1" />
</action>
- <action name="fire_silenced">
<animation target="firstperson" name="fire_bullets_%hand%_%suffix%01" />
<animation target="owner" name="shoot" />
<sound target="firstperson" name="sounds/weapons:scar:fire_silenced_fp_single" radius="18" static="1" />
<sound target="thirdperson" name="sounds/weapons:scar:fire_silenced_3rd_single" radius="18" static="1" />
</action>
- <action name="fire_gl" children="1">
<animation target="firstperson" name="fire_grenade_%hand%_%suffix%01" />
<animation target="owner" name="shoot" />
<sound target="firstperson" name="sounds/weapons:scar:fire_grenademode_fp" radius="25" static="1" />
<sound target="thirdperson" name="sounds/weapons:scar:fire_grenademode" radius="25" static="1" />
</action>
- <action name="change_firemode">
<animation target="firstperson" name="switch_firemode_%hand%_%suffix%01" />
<animation target="owner" name="firemode" />
<sound target="firstperson" name="sounds/weapons:weapon_accessories:change_firemode" radius="5" />
<sound target="thirdperson" name="sounds/weapons:weapon_accessories:change_firemode" radius="5" />
</action>
- <action name="change_firemode_Zoomed">
<animation target="owner" name="firemode" />
<sound target="firstperson" name="sounds/weapons:weapon_accessories:change_firemode" radius="3" />
<sound target="thirdperson" name="sounds/weapons:weapon_accessories:change_firemode" radius="3" />
</action>
- <action name="reload_chamber_empty">
<animation target="firstperson" name="reload_chamberempty_01" speed="1.25" />
<animation target="owner" name="reload_chamber_empty" />
- <!-- <sound target="thirdperson" name="sounds/weapons:scar:reload_chamberempty" radius="5" />
-->
</action>
- <action name="reload_chamber_full">
<animation target="firstperson" name="reload_chamberfull_01" speed="1.25" />
<animation target="owner" name="reload_chamber_full" />
- <!-- <sound target="thirdperson" name="sounds/weapons:scar:reload_chamberfull" radius="2" />
-->
</action>
- <action name="empty_clip">
<sound target="firstperson" name="Sounds/weapons:scar:dryfire_fp" radius="2" />
<sound target="thirdperson" name="Sounds/weapons:scar:dryfire" radius="2" />
</action>
- <action name="null_fire">
<sound target="firstperson" name="Sounds/interface:hud:null_fire" radius="2" />
</action>
- <action name="enter_modify">
<animation target="firstperson" name="enter_modify_%hand%_01" speed="2.05" />
<animation target="ownerloop" name="modify_weapon" />
</action>
- <action name="leave_modify">
<animation target="firstperson" name="leave_modify_%hand%_01" speed="2.25" />
<animation target="ownerloop" name="idle" />
</action>
- <action name="zoom_in">
<animation target="firstperson" name="zoom_in_%suffix%01" speed="2.0" />
</action>
- <action name="zoom_out">
<animation target="firstperson" name="zoom_out_%suffix%01" speed="2.0" />
</action>
- <action name="reload_gl" children="1">
<animation target="firstperson" name="reload_grenade_%hand%_%suffix%01" />
<animation target="owner" name="reload_gl" />
- <!-- <sound target="thirdperson" name="sounds/weapons:scar:reload_grenademode" radius="5" />
-->
</action>
- <action name="melee">
<animation target="firstperson" name="melee_%suffix%01" />
<animation target="owner" name="melee" />
- <!-- <sound target="thirdperson" name="sounds/weapons:melee:fire" radius="5" />
-->
</action>
- <action name="hit">
<sound target="firstperson" name="sounds/physics:bullet_impact:melee_impact_mw" radius="5" />
<sound target="thirdperson" name="sounds/physics:bullet_impact:melee_impact_mw" radius="5" />
</action>
- <action name="offhand_on">
<animation target="firstperson" name="remove_arm_%offhand%_01" speed="2.5" />
</action>
- <action name="offhand_off">
<animation target="firstperson" name="grab_weapon_%offhand%_01" />
</action>
- <action name="fire_tac" children="1">
<animation target="firstperson" name="fire_tactical_%hand%_%suffix%01" />
<animation target="owner" name="shoot" />
<sound target="firstperson" name="sounds/weapons:scar:fire_tac_fp" radius="2" static="1" />
<sound target="thirdperson" name="sounds/weapons:scar:fire_tac" radius="2" static="1" />
</action>
- <action name="raise">
<animation target="firstperson" name="raise_%hand%_%suffix%01" />
</action>
- <action name="idle_raised">
<animation target="firstperson" name="idle_raised_%hand%_%suffix%01" />
</action>
- <action name="lower">
<animation target="firstperson" name="lower_%hand%_%suffix%01" />
</action>
</actions>
+ <layers>图层,决定谁遮盖谁,比如消音器遮盖枪管,消音器肯定要在上层
- <layer name="silencer">
<animation target="firstperson" name="silencer_on_layer_01" layerId="1" />
</layer>
- <layer name="scope">
<animation target="firstperson" name="scope_on_layer_01" layerId="2" />
</layer>
- <layer name="gl">
<animation target="firstperson" name="launcher_on_layer_01" layerId="3" />
</layer>
- <layer name="modify_layer">
<animation target="firstperson" name="modify_layer_%hand%_01" layerId="4" />
</layer>
- <layer name="flashlight">
<animation target="firstperson" name="flashlight_on_layer_01" layerId="5" />
</layer>
- <layer name="lever_layer_01">
<animation target="firstperson" name="firemode_single_layer_01" layerId="6" />
</layer>
- <layer name="lever_layer_02">
<animation target="firstperson" name="firemode_rapid_layer_01" layerId="7" />
</layer>
</layers>
+ <firemodes>开火模式,修改最多的一类!
- <firemode type="default"> 默认开火模式
- <fire>
<param name="ammo_type" value="bullet" /> 子弹类型,如火箭发射器的Value=rocket,一般不改
<param name="rate" value="700" /> 开火速率,数值越大越快
<param name="damage" value="120" /> 武器伤害值,越大越猛
<param name="reload_time" value="2.75" /> 换弹夹的时间(crysis换弹夹已经很快了,米必要改,又不是CS)
<param name="bullet_chamber" value="1" /> 枪膛容弹量,一般不改
<param name="clip_size" value="50" /> 弹夹容量
<param name="helper_tp" value="weapon_term" />
<param name="nearmiss_signal" value="OnNearMiss" />
<param name="damage_drop_per_meter" value="0.1" /> 子弹的伤害下降值/m(就是子弹飞过一米伤害下降多少,现在知道为什么远距离打人半天打不死了吧?)
<param name="damage_drop_min_distance" value="50" /> 伤害下降最短距离(就是子弹飞出这个距离后开始伤害下降,这个距离之内完全伤害)
</fire>
- <recoil>武器后坐力,个人认为后坐力没必要改,游戏菜单里可以调节后坐力的
<param name="max_recoil" value="4" /> 最大后坐力
<param name="attack" value="0.4" />
<param name="decay" value="1.25" />
<param name="maxx" value="30" />
<param name="maxy" value="0" />
<param name="randomness" value="0.0" />
- <hints>
<hint x="0.02" y="0.00" />
<hint x="0.02" y="0.00" />
<hint x="0.10" y="0.00" />
<hint x="0.28" y="0.00" />
<hint x="0.35" y="0.00" />
<hint x="0.43" y="0.00" />
<hint x="0.50" y="0.00" />
<hint x="0.50" y="0.00" />
<hint x="0.50" y="0.00" />
<hint x="0.50" y="0.00" />
</hints>
</recoil>
- <spread>后坐力造成的散射
<param name="min" value="1.5" />
<param name="max" value="3.0" />
<param name="attack" value="0.8" />
<param name="decay" value="0.5" />
<param name="speed_m" value="1.5" />
</spread>
- <muzzleflash>枪口火焰
<firstperson effect="muzzleflash.AssaultRifle.SCAR" helper="muzzle_flash_effect" light_helper="muzzle_flash_light" light_radius="2" light_time="0.010" light_color="1,1,0.8" light_diffuse_mult="8" />
<thirdperson effect="muzzleflash.AssaultRifle.SCAR_tp" helper="weapon_term" light_helper="weapon_term" light_radius="2.5" light_time="0.01" light_color="1,1,0.8" light_diffuse_mult="8" />
</muzzleflash>
- <reject>弹壳弹出
<firstperson effect="weapon_fx.shells.scar" helper="shells" />
<thirdperson effect="weapon_fx.shells.scar" helper="shells" />
</reject>
</firemode>
- <firemode name="Rapid" type="Rapid">连续射击模式
- <tracer>
<param name="geometryFP" value="objects/effects/tracer_standard_new.cgf" />
<param name="geometry" value="objects/effects/tracer_standard_new.cgf" />
<param name="effectFP" value="weapon_fx.tracer.standardfp" />
<param name="effect" value="weapon_fx.tracer.standard" />
<param name="speed" value="300" />
<param name="speedFP" value="1100" />
<param name="frequency" value="3" />
<param name="helper_fp" value="weapon_term" />
<param name="helper_tp" value="weapon_term" />
</tracer>
- <outofammotracer>
<param name="geometryFP" value="objects/effects/tracer_standard_red_new.cgf" />
<param name="geometry" value="objects/effects/tracer_standard_red_new.cgf" />
<param name="effectFP" value="weapon_fx.tracer.standardfp" />
<param name="effect" value="weapon_fx.tracer.standard" />
<paran name="speed" value="300" />
<param name="speedFP" value="1100" />
<param name="frequency" value="2" />
<param name="helper_fp" value="weapon_term" />
<param name="helper_tp" value="weapon_term" />
</outofammotracer>
- <fire>
<param name="autozoom" value="1" /> 连续开火时的视野自动缩进,不喜欢可以设置为0
<param name="ooatracer_treshold" value="5" />
</fire>
- <rapid>
<param name="min_speed" value="0.001" />
<param name="max_speed" value="0.001" />
<param name="acceleration" value="2.35" />
<param name="deceleration" value="-3.0" />
</rapid>
- <recoil>
<param name="angular_impulse" value="0.3" />
<param name="back_impulse" value="0.3" />
</recoil>
- <muzzlesmoke>
<firstperson effect="muzzleflash.AssaultRifle.shiten_smoke" helper="muzzle_flash_smoke" />
<thirdperson effect="muzzleflash.AssaultRifle.shiten_smoke_tp" helper="weapon_term" />
</muzzlesmoke>
- <muzzlesmoke_ice>
<firstperson effect="weapon_fx.gun.cold_steam_on_barrel" helper="muzzle_flash_smoke" />
<thirdperson effect="weapon_fx.gun.cold_steam_on_barrel" helper="weapon_term" />
</muzzlesmoke_ice>
</firemode>
- <firemode name="Single" type="Single">单发射击模式,狙击和高斯步枪没有连续开火模式,只有Single模式,这类武器涉及到开火速率,有一项<param name="rate" value="90" /> 数值越大开火越快。
- <tracer>
<param name="geometryFP" value="objects/effects/tracer_standard_new.cgf" />
<param name="geometry" value="objects/effects/tracer_standard_new.cgf" />
<param name="effectFP" value="weapon_fx.tracer.standardfp" />
<param name="effect" value="weapon_fx.tracer.standard" />
<param name="speed" value="375" />
<param name="speedFP" value="1100" />
<param name="frequency" value="2" />
<param name="helper_fp" value="weapon_term" />
<param name="helper_tp" value="weapon_term" />
</tracer>
- <outofammotracer>
<param name="geometryFP" value="objects/effects/tracer_standard_red_new.cgf" />
<param name="geometry" value="objects/effects/tracer_standard_red_new.cgf" />
<param name="effectFP" value="weapon_fx.tracer.standardfp" />
<param name="effect" value="weapon_fx.tracer.standard" />
<paran name="speed" value="375" />
<param name="speedFP" value="1100" />
<param name="frequency" value="2" />
<param name="helper_fp" value="weapon_term" />
<param name="helper_tp" value="weapon_term" />
</outofammotracer>
- <fire>
<param name="ooatracer_treshold" value="5" />
<param name="auto_fire" value="true" />
</fire>
- <recoil>
<param name="angular_impulse" value="0.3" />
<param name="back_impulse" value="0.3" />
</recoil>
</firemode>
- <firemode name="Tac Sleep" type="Single" enabled="0">战术副挂(麻醉针)
- <fire>
<param name="ammo_type" value="tacbullet" />
<param name="clip_size" value="-1" /> 弹夹容量
<param name="damage" value="30" /> 伤害值
<param name="rate" value="6" /> 开火速率,数值越大越快
<param name="hit_type" value="tac" />
<param name="helper_tp" value="weapon_term" />
</fire>
- <actions>
<param name="fire" value="fire_tac" />
<param name="fire_cock" value="fire_tac" />
</actions>
- <reject>
<firstperson effect="" helper="" />
<thirdperson effect="" helper="" />
</reject>
</firemode>
- <firemode name="GrenadeLauncher" type="Single" enabled="0">榴弹发射器
- <fire>
<param name="ammo_type" value="scargrenade" /> 子弹类型
<param name="clip_size" value="1" /> 弹夹容量
<param name="max_clips" value="10" /> 最大弹药携带量
<param name="rate" value="40" /> 开火速率,越大越快
<param name="damage" value="250" />
<param name="reload_time" value="3.2" />
<param name="bullet_chamber" value="0" />
<param name="helper_tp" value="weapon_term" />
<param name="aim_helper" value="1" />
<param name="distance" value="-1" />
</fire>
- <muzzleflash>
<firstperson effect="muzzleflash.AssaultRifle.grenade" helper="grenade_flash_effect" light_helper="grenade_flash_light" />
<thirdperson effect="muzzleflash.AssaultRifle.grenade_tp" helper="grenade_term" light_helper="grenade_term" />
</muzzleflash>
- <reject>
<firstperson effect="" helper="" />
<thirdperson effect="" helper="" />
</reject>
- <actions>
<param name="fire" value="fire_gl" />
<param name="fire_cock" valueh="fire_gl" />
<param name="reload_chamber_empty" value="reload_gl" />
<param name="reload_chamber_full" value="reload_gl" />
<param name="reload" value="reload_gl" />
</actions>
</firemode>
- <firemode name="melee" type="Melee"> 近战
- <melee>
<param name="helper" value="collision" />
<param name="offset" value="0.35" />
<param name="damage" value="65" /> 伤害值
<param name="impulse" value="60" /> 冲击力
<param name="delay" value="0.10" /> 攻击延时
<param name="duration" value="0.45" /> 持续时间
</melee>
- <actions>
<param name="attack" value="melee" />
</actions>
</firemode>
</firemodes>
+ <zoommodes>缩放模式,瞄准时的一切都在这里改,包括很多人关心的瞄准时抖动的问题,一共4种瞄准方式:ironsight,reflexsight,assaultscope和Sniper scope,前三种type="Ironsight",狙击镜的type="scope"说明前三种不能缩放,狙击镜可以缩放,下边主要以狙击镜为例说明修改
- <zoommode name="ironsight" type="IronSight"> 机械瞄准
- <zoom>
<param name="suffix" value="ironsight_" />
<param name="suffix_FC" value="fc_" />
<param name="support_FC_IronSight" value="true" />
<param name="dof_mask" value="textures/weapons/ironzoom_blurmask.dds" />
<param name="zoom_in_time" value="0.2" />
<param name="zoom_out_time" value="0.2" />
- <stages>
<stage value="1.4" />
</stages>
</zoom>
- <zoomSway>
<param name="maxX" value="0.012" />
<param name="maxY" value="0.015" />
<param name="stabilizeTime" value="1.5" />
<param name="minScale" value="0.25" />
<param name="strengthScale" value="0.75" />
<param name="strengthScaleTime" value="0.75" />
<param name="crouchScale" value="0.75" />
<param name="proneScale" value="0.0" />
</zoomSway>
- <spreadMod>
<param name="max_mod" value="0.1" />
<param name="attack_mod" value="1.0" />
<param name="decay_mod" value="1.0" />
<param name="speed_m_mod" value="1.0" />
<param name="min_mod" value="0.0001" />
<param name="rotation_m_mod" value="1.5" />
<param name="spread_crouch_m_mod" value="0.75" />
<param name="spread_prone_m_mod" value="0.5" />
<param name="spread_jump_m_mod" value="1.0" />
</spreadMod>
- <recoilMod>
<param name="max_recoil_mod" value="0.5" />
<param name="attack_mod" value="0.5" />
<param name="decay_mod" value="0.8" />
<param name="impulse_mod" value="1.0" />
<param name="maxx_mod" value="0.75" />
<param name="maxy_mod" value="0.75" />
<param name="angular_impulse_mod" value="1.0" />
<param name="back_impulse_mod" value="1.0" />
<param name="recoil_crouch_m_mod" value="0.75" />
<param name="recoil_prone_m_mod" value="0.5" />
<param name="recoil_jump_m_mod" value="2.0" />
<param name="recoil_strMode_m_mod" value="2.0" />
</recoilMod>
</zoommode>
- <zoommode name="reflexsight" type="IronSight" enabled="0"> 反射镜
- <zoom>
<param name="suffix" value="reflex_" />
<param name="dof_mask" value="textures/weapons/ironzoom_blurmask.dds" />
<param name="zoom_in_time" value="0.2" />
<param name="zoom_out_time" value="0.2" />
<param name="reflex_aimDot" value="0" />
<param name="reflex_dotEffect" value="Objects/Weapons/Attachments/reflex_rifle/dot.cgf" />
<param name="hbob_ratio" value="2.5" />
<param name="scope_mode" value="1" />
<param name="scope_nearFov" value="28" />
- <stages>
<stage value="1.8" />
</stages>
</zoom>
- <zoomSway>
<param name="maxX" value="0.012" />
<param name="maxY" value="0.015" />
<param name="stabilizeTime" value="1.5" />
<param name="minScale" value="0.25" />
<param name="strengthScale" value="0.75" />
<param name="strengthScaleTime" value="0.75" />
<param name="crouchScale" value="0.75" />
<param name="proneScale" value="0.0" />
</zoomSway>
- <spreadMod>
<param name="max_mod" value="0.1" />
<param name="attack_mod" value="1.0" />
<param name="decay_mod" value="1.0" />
<param name="speed_m_mod" value="0.25" />
<param name="min_mod" value="0.0001" />
<param name="rotation_m_mod" value="1.0" />
<param name="spread_crouch_m_mod" value="0.75" />
<param name="spread_prone_m_mod" value="0.5" />
<param name="spread_jump_m_mod" value="1.0" />
</spreadMod>
- <recoilMod>
<param name="max_recoil_mod" value="0.5" />
<param name="attack_mod" value="0.5" />
<param name="decay_mod" value="0.8" />
<param name="impulse_mod" value="1.0" />
<param name="maxx_mod" value="0.75" />
<param name="maxy_mod" value="0.75" />
<param name="angular_impulse_mod" value="1.0" />
<param name="back_impulse_mod" value="1.0" />
<param name="recoil_crouch_m_mod" value="0.75" />
<param name="recoil_prone_m_mod" value="0.5" />
<param name="recoil_jump_m_mod" value="2.0" />
<param name="recoil_strMode_m_mod" value="2.0" />
</recoilMod>
</zoommode>
- <zoommode name="assaultscope" type="IronSight" enabled="0"> 低精度瞄准镜
- <zoom>
<param name="suffix" value="scope_" />
<param name="blur_amount" value="1" />
<param name="blur_mask" value="textures/weapons/assaultscope_blur.dds" />
<param name="dof_mask" value="textures/weapons/assaultscope_blur.dds" />
<param name="zoom_in_time" value="0.2" />
<param name="zoom_out_time" value="0.2" />
<param name="scope_mode" value="1" />
<param name="scope_nearFov" value="8" />
<param name="scope_offset" value="-0.0005,0.17,-0.0015" />
- <stages>
<stage value="3.5" />
</stages>
</zoom>
- <zoomSway>
<param name="maxX" value="0.012" />
<param name="maxY" value="0.015" />
<param name="stabilizeTime" value="3.0" />
<param name="minScale" value="0.4" />
<param name="strengthScale" value="0.6" />
<param name="strengthScaleTime" value="0.75" />
<param name="crouchScale" value="0.75" />
<param name="proneScale" value="0.0" />
</zoomSway>
- <spreadMod>
<param name="max_mod" value="0.1" />
<param name="attack_mod" value="1.0" />
<param name="decay_mod" value="1.0" />
<param name="speed_m_mod" value="0.5" />
<param name="min_mod" value="0.0001" />
<param name="rotation_m_mod" value="1.5" />
<param name="spread_crouch_m_mod" value="0.75" />
<param name="spread_prone_m_mod" value="0.5" />
<param name="spread_jump_m_mod" value="1.0" />
</spreadMod>
- <recoilMod>
<param name="max_recoil_mod" value="0.5" />
<param name="attack_mod" value="0.4" />
<param name="decay_mod" value="1.25" />
<param name="impulse_mod" value="1.0" />
<param name="maxx_mod" value="0.5" />
<param name="maxy_mod" value="1.0" />
<param name="angular_impulse_mod" value="1.0" />
<param name="back_impulse_mod" value="1.0" />
<param name="recoil_crouch_m_mod" value="0.75" />
<param name="recoil_prone_m_mod" value="0.5" />
<param name="recoil_jump_m_mod" value="2.0" />
<param name="recoil_strMode_m_mod" value="1.5" />
</recoilMod>
</zoommode>
- <zoommode name="sniper" type="Scope" enabled="0"> 狙击镜
- <zoom>
<param name="suffix" value="scope_" />
<param name="blur_amount" value="1" />
<param name="blur_mask" value="textures/weapons/assaultscope_blur.dds" />
<param name="dof_mask" value="textures/weapons/assaultscope_blur.dds" />
<param name="zoom_in_time" value="0.15" />
<param name="zoom_out_time" value="0.125" />
<param name="scope_mode" value="1" />
<param name="scope_nearFov" value="6" />
<param name="scope_offset" value="0.0,0.23,0.0044" />
<param name="hbob_ratio" value="2.5" />
- <stages>缩放倍数
<stage value="4" /> 4倍缩放,可以改
<stage value="10" /> 10倍缩放,可以改
<stage value="16" /> 缩放倍数还可以加,我觉得缩放倍数不够所以加了一条16倍缩放,可以任意加,游戏中有效果,不过自己添加的放大倍数没有数值显示,目前还不知道如何显示出来。(说到这顺便提一下望远镜的放大也可以改,在Warhead_GameData.pakScriptsEntitiesItemsXMLWeaponsinoculars.xml)
</stages>
</zoom>
- <zoomSway> 抖动,想瞄准的时候像cs那样纹丝不动吗?
<param name="maxX" value="0.012" /> 最大横向抖动值
<param name="maxY" value="0.015" /> 最大纵向抖动值,这两个一改成0就可以体验cs的狙击了
<param name="stabilizeTime" value="3.0" />
<param name="minScale" value="0.4" />
<param name="strengthScale" value="0.6" /> 力量模式下抖动系数,越小越稳定,0为不抖
<param name="strengthScaleTime" value="0.75" />
<param name="crouchScale" value="0.75" /> 蹲下时的抖动系数,越小越稳定,0为蹲下不抖
<param name="proneScale" value="0.0" /> 趴下时的抖动系数,越小越稳定,0为趴下不抖
</zoomSway>
- <scope>
<param name="scope" value="scope_sniper" />
<param name="dark_in_time" value="0.15" />
<param name="dark_out_time" value="0.15" />
</scope>
- <spreadMod>
<param name="max_mod" value="0.1" />
<param name="attack_mod" value="1.0" />
<param name="decay_mod" value="1.0" />
<param name="speed_m_mod" value="0.5" />
<param name="min_mod" value="0.0001" />
<param name="rotation_m_mod" value="1.5" />
<param name="spread_crouch_m_mod" value="0.75" />
<param name="spread_prone_m_mod" value="0.5" />
<param name="spread_jump_m_mod" value="1.0" />
</spreadMod>
- <recoilMod>
<param name="max_recoil_mod" value="0.25" />
<param name="attack_mod" value="0.2" />
<param name="decay_mod" value="1.25" />
<param name="impulse_mod" value="1.0" />
<param name="maxx_mod" value="0.5" />
<param name="maxy_mod" value="1.0" />
<param name="angular_impulse_mod" value="1.0" />
<param name="back_impulse_mod" value="1.0" />
<param name="recoil_crouch_m_mod" value="0.75" />
<param name="recoil_prone_m_mod" value="0.5" />
<param name="recoil_jump_m_mod" value="2.0" />
<param name="recoil_strMode_m_mod" value="1.25" />
</recoilMod>
</zoommode>
</zoommodes>
+ <accessories> 武器副挂
- <initialsetup> 初始武器副挂,默认的只有子弹,消音器和反射镜,想一出来就要什么副挂,在这条下边粘贴。比如我要个狙击瞄准镜,加上如下绿字部分
<accessory name="GrenadeShell" />
<accessory name="SCARNormalAmmo" />
<accessory name="SniperScope"/>
</initialsetup>
- <accessory name="Silencer"> 消音器
<attach helper="silencer_attach" layer="silencer" />
<detach />
- <params>
- <firemodes>
- <firemode type="default">
- <fire>
<param name="damage_drop_per_meter" value="2.0" /> 由于加装消音器子弹威力每米减小值,知道为什么装了消音器离老远打不死人了吧?(SCAR的威力是120,装了消音器每米减少2点攻击,加上下边10米的保值距离,就是说无声SCAR在70米的时候就没有杀伤力了!不过实际好像不是,反正离远我都是打头,一枪解决)
<param name="damage_drop_min_distance" value="10" /> 子弹威力开始减小的距离
</fire>
- <muzzleflash>
<firstperson effect="muzzleflash.AssaultRifle.silenced_smoke" helper="muzzle_flash_effect" time="0.1" />
<thirdperson effect="muzzleflash.AssaultRifle.silenced_smoke_tp" helper="weapon_term" time="0.1" />
</muzzleflash>
- <actions>
<param name="fire" value="fire_silenced" />
<param name="fire_cock" value="fire_silenced" />
<param name="rapid_fire" value="rapid_fire_silenced" />
<param name="spin_down" value="spin_down_silenced" />
</actions>
</firemode>
</firemodes>
</params>
</accessory>
- <accessory name="AssaultScope" zoommode="assaultscope" exclusive="1"> 低精度瞄准镜
<attach helper="attachment_top" layer="scope" />
<detach />
</accessory>
- <accessory name="Reflex" zoommode="reflexsight" exclusive="1"> 反射镜
<attach helper="attachment_top" layer="scope" />
<detach />
</accessory>
- <accessory name="SniperScope" zoommode="sniper" exclusive="1"> 狙击瞄准镜
<attach helper="attachment_top" layer="scope" />
<detach />
</accessory>
- <accessory name="GrenadeLauncher" firemodes="GrenadeLauncher" exclusive="1"> 榴弹发射器
<attach helper="attachment_bottom" layer="gl" />
<detach />
</accessory>
- <accessory name="SCARNormalAmmo"> SCAR弹药
<attach helper="magazine" layer="" />
<detach />
</accessory>
- <accessory name="TacticalAttachment" firemodes="Tac Sleep" exclusive="1" client_only="0"> 麻醉针发射器
<attach helper="attachment_bottom" layer="gl" />
<detach />
</accessory>
- <accessory name="GrenadeShell"> 枪榴弹
<attach helper="shell_grenade" layer="" />
<detach />
</accessory>
- <accessory name="LAMRifle"> 步枪激光瞄准器
<attach helper="attachment_side" layer="flashlight" />
<detach />
- <params>
- <firemodes>
- <firemode type="default">
- <spread>
<param name="min" value="0.5" />
<param name="max" value="3.0" />
<param name="speed_m" value="0.05" />
<param name="rotation_m" value="0.05" />
</spread>
</firemode>
</firemodes>
</params>
</accessory>
- <accessory name="LAMRifleFlashLight"> 步枪手电筒
<attach helper="attachment_side" layer="flashlight" />
<detach />
</accessory>
</accessories>
</item>
当修改好后,直接保存文档,这是winrar会跳出来说文件已更改是否保存并替换,点是就行了。
想解压后修改也可以,修改完的文件或文件夹直接拖进winrar覆盖原来的就可以了,注意解压出来的都是只读文件,要去掉只读属性才能保存更改!
-------------------------------------------------------------------------分割---------------线--------------------------------------------------------------------
每个武器改法大同小异,FY71的燃烧弹攻击力在accessories类下的<accessory name="FY71IncendiaryAmmo">这一条下改,同理,能换子弹类型的武器,可选子弹都在accessories类下改。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
载具武器数据在Warhead_GameData.pakScriptsEntitiesItemsXMLWeaponsVehicles文件夹下
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
值得一提的是火箭发射器,其实是有锁定跟踪功能的,只是默认没有打开,修改方法:
文件名是LAW.xml, 在firemodes类下的
<firemode name="Single" type="Single">
<fire>
<param name="autoaim" value="true" /> 将这条的false改为true,进游戏试试吧。不过经测试这个功能对那个天上飞的大型外形怪物不好用,它会躲,而且它横向移动时导弹有相当大的概率打空,不过这个怪物在远距离的时候命中还可以,对车辆直升机很有用,只要别被障碍物挡着基本锁定必中!
<param name="autoaim_zoom" value="true" />
<param name="autoaim_locktime" value="0.5" /> 锁定速度,这个不用改,已经很快了,想更快就改小
<param name="autoaim_distance" value="500" /> 锁定距离,500够大了
<param name="autoaim_tolerance" value="90" /> 锁定后允许偏离值,就是锁定后准心移开一定距离锁定仍然有效,个人认为不用改这项,90已经很高了,记得前作开VTOL那关吗,这个飞机的跟踪导弹的这项值为30,说到这就勾起了当时痛苦挣扎在那一关的悲惨回忆!
<param name="autoaim_minvolume" value="16" />
<param name="autoaim_maxvolume" value="8192" />
<param name="autoaim_autofiringdir" value="false" />
<param name="autoaim_timeout" value="true" /> 锁定超时,这项改为false的话,将持续锁定一个目标,除非目标挂了或者你锁定其他目标或者按右键退出瞄准镜,建议还是别改好
</fire>
</firemode>
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
还有,大家用激光瞄准器时发现没有,超过一定距离,那个小红点就没有了,这是因为激光瞄准器的设置了150的有效距离,这个小红点对远距离杀人来说太有用了,狙击镜会有误差,而这个小红点就是指哪打哪,个人觉得150米不够所以要改
在Warhead_GameData.pakScriptsEntitiesItemsXMLAccessories下找到LAMRifle.xml
有这么一句 <firstperson laser_dot="muzzleflash.LAM.aimdot_FP" laser_range="150" /> 这个150就是有效距离,我改成300了,PSG1的有效射程是800米,这个游戏把这把枪低估太多了!不过建议不要改太高,300就可以了,因为瞄准镜最大显示距离也只有300. 大家也不要想改太多有什么用,这个游戏场景很大,但是敌人一般都在一定范围内刷出来,要么就被地形限制了,除了最后一关机场,我真不记得哪里还能300米开外狙击敌人玩的!)。