fps真实战场吧 关注:19贴子:374

战地2模组基本修改

只看楼主收藏回复

1.代码
载具代码:
usapc_lav25 —— 美军步兵战车
apc_btr90 —— 中东步兵战车
apc_wz551 —— 解放军步兵战车
ustnk_m1a2 —— 美军M1A2主战坦克
rutnk_t90 —— T90主战坦克
tnk_type98 —— 98式主战坦克
usaav_m6 —— 美军防空战车
aav_tunguska —— 通古斯卡防空战车
aav_type95 —— 95式双35弹炮合一防空系统
jeep_faav —— 美军伞兵突击车
usjep_hmmwv —— 美军悍马吉普车
jep_paratrooper —— 解放军伞兵突击车
jep_mec_paratrooper —— 中东伞兵突击车
jep_vodnik —— 中东吉普车
jep_nanjing —— 解放军南京吉普车
uav_pred —— 无人侦察机
usair_f18 —— 美军F-***黄蜂战斗机
ruair_mig29 —— MIG-29战斗机
air_j10 —— 歼10战斗机
air_f35b —— F-35B战斗机
usair_f15 —— 美军F15战斗机
ruair_su34 —— SU-34战斗轰炸机
air_su30mkk —— SU-30MKK战斗轰炸机
usthe_uh60 —— 美军黑鹰运输机
the_mi17 —— 中东联军Mi17运输机
chthe_z8 —— 解放军直8运输机
ahe_ah1z —— 美军眼镜蛇武装直升机
ahe_havoc —— 中东联军武装直升机
ahe_z10 —— 解放军直10武装直升机
usaas_stinger —— 美军防空导弹
igla_djigit —— 解放军防空导弹
boat_rib —— 快艇
固定武器代码:
usart_lw155 —— 美军火炮
ars_d30 —— 解放军火炮
ats_tow —— 陶式反坦克导弹
ats_hj8 —— 红箭八反坦克导弹
mec_bipod —— 中东军机枪
us_bipod —— 美军M249机枪
ch_bipod —— 解放军95式机枪
wasp_defence_front —— 航母防空武器
wasp_defence_back —— 航母防空武器
mobileradar_ch_dest —— 移动雷达
aircontroltower_chiUAV —— UAV控制塔
手持武器代码:
医疗兵:
usrif_m16a2 —— 美国M16A2突击步枪
RURIF_AK101 —— 中东AK101突击步枪
RURIF_AK47 —— 中国AK47突击步枪
usrif_sa80 —— 解锁SA80突击步枪
defibrillator —— 电击器
medikit —— 医疗包
突击兵:
usrgl_m203 —— 美国M203榴弹发射器
RURGL_GP30 —— 中东GP30榴弹发射器
RURGL_GP25 —— 中国GP25榴弹发射器
usrif_g3a3 —— 解锁G3A3突击步枪
sasrif_fn2000 —— 解锁FN2000突击步枪[1.2+]
USRGL_M203 —— 美国下挂M203榴弹发射器的M16A2
RURIF_GP30 —— 中东下挂GP30榴弹发射器的AK101
RURIF_GP25 —— 中国下挂GP25榴弹发射器的AK47
sasgr_fn2000 —— FN2000榴弹发射器[1.2+]
hgr_smoke —— 烟雾弹
nshgr_flashbang —— 闪光弹[1.2+]
特种兵:
USRIF_M4 —— 美国M4卡宾枪
rurrif_ak74u —— 中东AK74u卡宾枪
chrif_type95 —— 中国95式卡宾枪
usrif_g36c —— 解锁G36C卡宾枪
usrif_fnscarl —— 解锁Fnscar-L卡宾枪[1.2+]
c4_explosives —— C4
c4_detonator —— C4遥控器
补给兵:
USLMG_M249SAW —— 美国M249机枪
RULMG_RPK74 —— 中东RPK74机枪
chlmg_type95 —— 中国95式机枪
rulmg_pkm —— 解锁PKM机枪
sasrif_mg36 —— 解锁MG36机枪[1.2+]
ammokit —— 弹药包
狙击兵:
USRIF_M24 —— 美国M24狙击枪
rurif_Dragunov —— 中东SVD狙击枪
chsni_type88 —— 中国88式狙击枪
USSNI_M82A1 —— M82A1狙击枪
ussni_m95_barret —— 解锁M95狙击枪
gbrif_l96a1 —— 解锁L96A1狙击枪[1.2+]
USMIN_Claymore —— 反步兵地雷
反坦克兵:
USATP_Predator —— 美国反坦克火箭
CHAT_ERYX —— 中国反坦克火箭
USRIF_MP5_A3 —— 美国MP5冲锋枪
RURIF_Bizon —— 中东野牛冲锋枪
chrif_type85 —— 中国85式冲锋枪
chsht_protecta —— 解锁Protecta散弹枪
eurif_fnp90 —— 解锁P-90冲锋枪[1.2+]
工程兵:
usrif_remington11-87 —— 美国雷明顿散弹枪
rusht_saiga12 —— 中东saiga 12散弹枪
chsht_Norinco982 —— 中国北方工业散弹枪
ussht_jackhammer —— 解锁jackhammer散弹枪
sasrif_mp7 —— 解锁MP7冲锋枪[1.2+]
at_mine —— 反载具地雷
wrench —— 扳手
通用:
kni_knife —— M9军刀
USPIS_92FS —— 美国手枪
uspis_92fs_silencer —— 美国消声枪
RUPIS_Baghira —— 中东手枪
rupis_baghira_silencer —— 中东消声枪
chpis_qsz92 —— 中国92式手枪
chpis_qsz92_silencer —— 中国消声枪
simrad —— 望远镜[1.2+]
USHGR_M67 —— 手雷
ParachuteLauncher —— 降落伞


1楼2011-08-15 18:24回复
    2.模组创建基本文件
    bf2.mew、ClientArchives.con、GameLogicInit.con、Ingame.mep、Init.con、Mod.desc、ServerArchives.con


    2楼2011-08-15 18:27
    回复
      2025-08-25 12:07:21
      广告
      不感兴趣
      开通SVIP免广告
      2.MOD.desc修改
      内容:
      <mod>
      <title> 这就是标题 </title>
      <desc> MOD的介绍 </desc>
      <url> MOD官方网站网址 </url>
      <logo> mod.png(MOD的默认Logo图片地址,无需修改) </logo>
      <icon> mod_icon.png(MOD的默认Logo图标地址,无需修改) </icon>
      <music> common/sound/menu/music/menu_music.ogg(MOD的默认背景音乐地址,无需修改)</music>
      <version> MOD版本号 </version>
      </mod>
      同时可以更换mod.png以获得新的图标


      3楼2011-08-15 18:30
      回复
        3.Init.con修改
        rem ** gameLogic hasn't been initialized yet **
        rem *** These should be noops in server & editor
        bf2Engine.playMovie Movies\EA.bik 1
        bf2Engine.playMovie Movies\dice.bik 1
        bf2Engine.playMovie Movies\legal.bik 1
        bf2Engine.playMovie Movies\intro.bik 0
        bf2Engine.playMovie Movies\welcome.bik 0
        以上就是文件地址定义,更多影片可以添加更多行
        1代表不可以跳过,0代表可以跳过。
        删除可不播放。
        


        4楼2011-08-15 18:31
        回复
          4.BOT修改
          在AI/AIDEFAULT.ai
          找到下面这段
          rem aiSettings.overrideMenuSettings 1
          rem aiSettings.setMaxNBots 32
          rem aiSettings.maxBotsIncludeHumans 0
          rem aiSettings.setBotSkill 1.0
          去掉全部的REM,并照着下面的定义进行修改。
          aiSettings.overrideMenuSettings 1 是否覆盖菜单的设定,填0的话修改无效
          aiSettings.setMaxNBots 32 BOT数量,最多255
          aiSettings.maxBotsIncludeHumans 0 以上数字是否包括玩家,选1为是
          aiSettings.setBotSkill 1.0 BOT难度


          5楼2011-08-15 18:33
          回复
            3.兵力值修改
            到以下路径:
            Battlefield 2 \mods\bf2\python\game\gamemodes\gpm_cq.py
            用寻找功能搜寻"TicketRatio"字符串
            会找到这一行:
            return int(mapDefaultTickets * (bf2.serverSettings.getTicketRatio() / 100.0))
            其中100的数值就是要调整的选项,数字愈大,双方阵营的兵力值愈少,数字小则是愈多.
            数字可以任意调整,提供以下参数范例:
            数值200=100 双方阵营的兵力值
            数值100 =200 双方阵营的兵力值
            数值500 =22 双方阵营的兵力值
            数值10 =2000 双方阵营的兵力值
            数值1 =9999 双方阵营的兵力值
            


            6楼2011-08-15 18:36
            回复
              6.武器修改
              打开objects_sever/weapons/handheld/武器名称/武器名称.tweak
              A.准星
              ObjectTemplate.weaponHud.guiIndex 4
              这指武器在不瞄准时的准星HUD编号。
              ObjectTemplate.weaponHud.altGuiIndex 52
              这指武器在瞄准时的准星HUD编号。
              ObjectTemplate.weaponHud.deviationFactor 5
              上面设定武器HUD的大小设定。
              ObjectTemplate.weaponHud.maxVisualDeviation 20
              上面设定武器HUD的最大扩散度。
              ObjectTemplate.weaponHud.minVisualDeviation 2
              上面设定武器HUD的最小扩散度。
              ObjectTemplate.weaponHud.disableOnSprint 1
              上面设定武器HUD在快跑时是否消失。1为消失,0为不消失
              B.开火方式
              ObjectTemplate.fire.addFireRate 1
              ObjectTemplate.fire.addFireRate 0
              2代表全自动,1代表爆炸开火(默认3发),0代表点射。
              C.弹药数修改
              ObjectTemplate.ammo.nrOfMags 7
              设定枪有几个弹匣,但是注意一开始枪上还要装一个,所以备用弹匣是这个数字-1,-1是无限。
              ObjectTemplate.ammo.magSize 30
              一个弹匣几发弹药,-1是无限。
              ObjectTemplate.ammo.reloadTime 4.375
              装弹要多长时间,一般要配合模型动作。
              D.武器放大设置
              ObjectTemplate.zoom.zoomDelay 0.05
              按了右键后几秒钟开始放大。
              ObjectTemplate.zoom.zoomLod 1
              ObjectTemplate.zoom.addZoomFactor 0
              ObjectTemplate.zoom.addZoomFactor 0.15
              这里和开火设置一样,几行就代表有几个放大倍率,数字越小放大倍率越高。
              0是不放大,1.1和不放大一样,大于1.1是缩小。
              ObjectTemplate.zoom.zoomOutAfterFire 0
              每次开火后是不是退出瞄准状态,一般用于狙击步枪。
              ObjectTemplate.zoom.disableMuzzleWhenZoomed 1
              放大时是不是去掉枪火,1为去掉,0为不去掉。
              


              7楼2011-08-15 18:41
              回复
                7.通用修改
                A.爆炸
                弹头爆炸设定
                ObjectTemplate.createComponent DefaultDetonationComp
                ObjectTemplate.detonation.explosionMaterial 70
                爆炸的材质,不同材质对不同东西伤害加成/折扣不一样。
                ObjectTemplate.detonation.explosionRadius 5
                爆炸的半径(米)
                ObjectTemplate.detonation.explosionForce 15
                爆炸产生的推力,很大可以把东西炸上天。当然炸飞人是和伤害有关的。
                ObjectTemplate.detonation.explosionDamage 125
                爆炸产生的伤害,和弹头伤害无关。
                ObjectTemplate.detonation.endEffectTemplate e_exp_medium
                爆炸产生的特效。
                ObjectTemplate.detonation.use和谐MMOnEndEffect 1
                是否使用爆炸材质对应的附加特效(比如坦克炮弹炸在地上会有一大段灰,炸在铁板上没有)
                ObjectTemplate.detonation.timeUntilCanDetonate 0.1
                安全引信延迟时间,发射后X秒内不会爆炸。
                B.弹头威力设置
                ObjectTemplate.timeToLive CRD_NONE/0.5/0/0弹头存活时间(秒),时间到了会爆炸/消失。
                ObjectTemplate.material 38
                弹头材质,比如38是一般武器子弹,39是反器材弹。反器材弹50伤害反而不如30伤害的普通弹,但是可以击穿防弹玻璃。
                ObjectTemplate.minDamage 1
                子弹的最低伤害。
                ObjectTemplate.damage 30
                子弹的初始伤害。
                ObjectTemplate.distToStartLoseDamage 200
                子弹飞多远开始衰减伤害。
                ObjectTemplate.distToMinDamage 2000
                子弹到达最低伤害的距离。
                C.射击精确度
                ObjectTemplate.createComponent SoldierDeviationComp
                枪口散布设置。设置子弹能偏多远。
                ObjectTemplate.deviation.setFireDev 2 0.2 0.05
                持续开火散布增加设置,第一个是最多增加多少,第二个是每枪增加多少,第三个是回复速度。
                ObjectTemplate.deviation.minDev 0.3
                枪口默认散布。就是你什么都不干打一枪也会有这个数字的偏移,但是可以受到devMod的影响。
                ObjectTemplate.deviation.setTurnDev 0 0 0 0
                晃动的散布,你移动鼠标的时候的散布。
                ObjectTemplate.deviation.setSpeedDev 1 0.2 0.2 0.1
                你移动的时候的散布。
                ObjectTemplate.deviation.setMiscDev 3 1.5 0.05
                你做趴下一瞬间的时候的散布。
                ObjectTemplate.deviation.devModStand 1.5
                你站着的时候散布的乘数。影响以上产生的散布结果。
                ObjectTemplate.deviation.devModCrouch 1.3
                同上,蹲下的时候。
                ObjectTemplate.deviation.devModZoom 0.8
                同上,趴下的时候。
                


                8楼2011-08-15 18:44
                回复
                  2025-08-25 12:01:21
                  广告
                  不感兴趣
                  开通SVIP免广告
                  8.导弹修改
                  ObjectTemplate.seek.targetType TTLaser <<<制导方式(TTHeat空空,地空)(TTLaser空地)(TTUnique指令制导)
                  ObjectTemplate.seek.trackingDelay 0.2 <<<追踪延迟
                  ObjectTemplate.seek.maxAngleLock 360 <<<最大锁定仰角
                  ObjectTemplate.seek.maxDistLock 3000 <<<最大锁定距离
                  ObjectTemplate.seek.reLockTime 0 <<<重新锁定延迟
                  ObjectTemplate.seek.targetType
                  ObjectTemplate.collision.hasCollisionEffect <<<是否打开碰撞触发 不开
                  ObjectTemplate.detonation.explosionMaterial" <<<爆炸的材质 56
                  ObjectTemplate.detonation.explosionRadius" <<<爆炸范围5 影响立体爆炸伤害范围
                  ObjectTemplate.detonation.explosionForce <<<爆炸的冲击波 20 影响平面爆炸伤害范围
                  ObjectTemplate.detonation.explosionDamage <<<爆炸伤害 300
                  ObjectTemplate.detonation.endEffectTemplate <<<爆炸效果
                  ObjectTemplate.seek.targetType <<<制导属性
                  ObjectTemplate.seek.trackingDelay <<<导弹发射后进入制导的时间
                  ObjectTemplate.seek.maxAngleLock <<<导弹的最大导引角度
                  ObjectTemplate.seek.maxDistLock <<<导弹的最大导引距离
                  ObjectTemplate.seek.directionBonus <<<进入导引后设置导弹稳定值的参数
                  ObjectTemplate.seek.reLockTime <<<失去目标后重新寻找需要的时间
                  ObjectTemplate.follow.maxYaw <<<跟踪目标时的灵活度(这个是偏角参数)
                  ObjectTemplate.follow.maxPitch <<<与上面的意思一样(这个为设置倾角)
                  ObjectTemplate.follow.changePitch <<<导弹在变换跟踪目标和转弯时的灵活度(倾角)
                  ObjectTemplate.follow.changeYaw <<<导弹在变换跟踪目标和转弯时的灵活度(偏角)
                  ObjectTemplate.follow.minDist <<<导弹跟踪目标时与目标保持的距离
                  ObjectTemplate.timeToLive <<<导弹的飞行时间(即射程) TV改了就可以无限远了
                  ObjectTemplate.gravityModifier <<<发射后的重力参数 改为0就可以成为直射了
                  ObjectTemplate.damage <<<直接命中目标时的伤害
                  ObjectTemplate.acceleration <<<导弹的加速度 战地2中导弹是越飞越快的
                  ObjectTemplate.maxSpeed <<<导弹发射后的飞行速度 初速
                  


                  9楼2011-08-15 18:47
                  回复
                    9.火炮常用修改
                    A.弹药出膛速度(炮弹)
                    ObjectTemplate.velocity <<<这个是弹药出膛速度
                    B.火炮-炮击修改
                    以美国和欧盟的火炮lw155为例(中国和中东的是ars_d30)
                    找到X:\\XXX\bf2\mods\bf2\Objects_server\Weapons\stationary\USART_LW155中的tweak找到ObjectTemplate.fire.roundsPerMinute 30 它指的是火炮的发射频率:每分钟30发炮弹
                    找到ObjectTemplate.fire.burstSize 5 它指的是每次炮击的炮弹量是5发
                    找到ObjectTemplate.armor.explosionRadius 6 它指的是一颗炸弹的爆炸威力半径
                    找到ObjectTemplate.deviation.radius 20,它指着弹点在一个半径20米范围,越小越密集
                    


                    10楼2011-08-15 18:51
                    回复
                      10.步兵装配修改
                      A.武器编号
                      ObjectTemplate.itemIndex <<<武器的使用编号(即用几号键切换的参数,修改时注意不要和其他装备冲突)
                      B.兵种携带武器修改
                      打开Objects_Server.zip/Kits目录
                      可看到CH,MEC和US三个目录(CH为中国,MEC为中东,US为美国)
                      打开后可看到一个文件,可用记事本打开,后缀分别代表:
                      Sniper狙击手,Specops特种兵,Support补给兵,Engineer工程兵,Medic医疗兵,AT反战车兵,Assault突击兵
                      用记事本打开,可看掉下列代码:
                      ObjectTemplate.addTemplate USPIS_92FS
                      ObjectTemplate.addTemplate usrif_m16a2
                      ObjectTemplate.addTemplate medikit
                      ObjectTemplate.addTemplate defibrillator
                      ObjectTemplate.addTemplate kni_knife
                      ObjectTemplate.addTemplate UnlockUSMedic
                      ObjectTemplate.addTemplate USHGR_M67
                      ObjectTemplate.addTemplate ParachuteLauncher
                      其中分别是各装备的武器,可替换为对应键位的武器,并且相同键位的武器只能出现一样


                      11楼2011-08-15 18:54
                      回复
                        11.兵种属性修改
                        打开Objects_Server.zip/Soldiers目录 (CH为中国,MEC为中东,US为美国)
                        找到以下数据段:
                        ObjectTemplate.armor.maxHitPoints 100 <<<后面的100为血量,最多为9999
                        ObjectTemplate.armor.hitPoints 100 <<<后面的100为血量,最多为9999
                        ObjectTemplate.SprintRecoverTime 20 <<<体力恢复时间)
                        ObjectTemplate.SprintDissipationTime 8 <<<加速跑时间)
                        ObjectTemplate.SprintLossAtJump 0.2 <<<跳一次消耗体力)
                        


                        12楼2011-08-15 18:55
                        回复
                          12.士兵行走配置
                          打开soldiers\Common\Common.con文件
                          Vars.Set phy-soldier-speed-factor 1.0 —— 行走速度,影响行走、奔跑以及下蹲、匍匐前进的速度,在水中行进的速度有限制。
                          Vars.Set phy-soldier-jump-factor 1.0 —— 跳跃高度,


                          13楼2011-08-15 18:59
                          回复
                            13.地图载具种类、数量修改
                            找到以下格式的内容rem [ObjectSpawnerTemplate: CPNAME_DP_64_airfield_HeavyTank]
                            ObjectTemplate.create ObjectSpawner CPNAME_DP_64_airfield_HeavyTank
                            ObjectTemplate.activeSafe ObjectSpawner CPNAME_DP_64_airfield_HeavyTank
                            ObjectTemplate.modifiedByUser esj
                            ObjectTemplate.isNotSaveable 1
                            ObjectTemplate.hasMobilePhysics 0
                            ObjectTemplate.setObjectTemplate 1 TNK_TYPE98 —— 第一支队伍占领附近据点后出现的载具;
                            ObjectTemplate.setObjectTemplate 2 USTNK_M1A2 —— 第二支队伍占领附近据点后出现的载具。
                            也可以删除ObjectTemplate.setObjectTemplate 1,使一队占领附近据点后仍没有载具重生。
                            删除全部内容该点不会重生载具。
                            可以添加如下内容:
                            ObjectTemplate.minSpawnDelay 50 —— 最小重生时间;
                            ObjectTemplate.maxSpawnDelay 70 —— 最大重生时间;
                            ObjectTemplate.maxNrOfObjectSpawned 2 —— 地图中最多有该点重生的载具的数量。


                            14楼2011-08-15 19:01
                            回复
                              2025-08-25 11:55:21
                              广告
                              不感兴趣
                              开通SVIP免广告
                              14.修改据点属性
                              找到rem ********** Control Points **********,下面的就是。
                              rem [ControlPointTemplate: CPNAME_DP_64_northdocks]
                              ObjectTemplate.create ControlPoint CPNAME_DP_64_northdocks
                              ObjectTemplate.activeSafe ControlPoint CPNAME_DP_64_northdocks
                              ObjectTemplate.modifiedByUser esj
                              ObjectTemplate.setNetworkableInfo ControlPointInfo
                              ObjectTemplate.isNotSaveable 1
                              ObjectTemplate.hasMobilePhysics 0
                              ObjectTemplate.hasCollisionPhysics 1
                              ObjectTemplate.physicsType Mesh
                              rem -------------------------------------
                              ObjectTemplate.addTemplate flagpole
                              rem -------------------------------------
                              ObjectTemplate.setControlPointName CPNAME_DP_64_northdocks
                              ObjectTemplate.radius 22 —— 抢旗有效范围
                              ObjectTemplate.controlPointId 7
                              ObjectTemplate.areaValueTeam1 25 —— 据点对一队的重要程度;
                              ObjectTemplate.areaValueTeam2 25 —— 据点对二队的重要程度;
                              ObjectTemplate.timeToGetControl 20 —— 单兵升旗所需时间;
                              ObjectTemplate.timeToLoseControl 20 —— 单兵降旗所需时间。
                              ObjectTemplate.team 1 —— 游戏开始时据点属于1队。
                              ObjectTemplate.loseControlWhenEnemyClose 0 —— 敌军接近不会失去据点;
                              ObjectTemplate.unableToChangeTeam 1 —— 不可攻占据点。
                              


                              15楼2011-08-15 19:02
                              回复