|
发表于 2023-5-9 21:30:30
|
显示全部楼层
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-18黄蜂战斗机
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 —— 降落伞
模组创建基本文件
bf2.mew、ClientArchives.con、GameLogicInit.con、Ingame.mep、Init.con、Mod.desc、ServerArchives.con
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.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.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难度
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.武器修改
打开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.通用修改
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.导弹修改
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.火炮常用修改
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.步兵装配修改
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.兵种属性修改
打开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.士兵行走配置
打开soldiers\Common\Common.con文件
Vars.Set phy-soldier-speed-factor 1.0 —— 行走速度,影响行走、奔跑以及下蹲、匍匐前进的速度,在水中行进的速度有限制。
Vars.Set phy-soldier-jump-factor 1.0 —— 跳跃高度,
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.修改据点属性
找到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.热焰弹
mods\bf2\objects_server.zip\Weapons\Armament\decoy_flare_launcher\decoy_flare_launcher.tweak
用记事本打开,修改以下代码:
rem ---BeginCompefaultAmmoComp ---
ObjectTemplate.createComponent DefaultAmmoComp
ObjectTemplate.ammo.nrOfMags -1 (无限弹匣)
ObjectTemplate.ammo.magSize 5 (5颗热焰弹)
ObjectTemplate.ammo.reloadTime 5 (装填时间)
ObjectTemplate.ammo.minimumTimeUntilReload 1 (打完立即装填)
ObjectTemplate.ammo.autoReload 1 (自动装填)
16.重生时间
battlefield2\mods\game\gameLogicInit.con中加入:
sv.spawnTime 15 重伤时间
sv.manDownTime 15 死亡时间
17.天气
【要同时改】
1.在模组/levels/地图/sever.zip/Sky.con文件里
找到Renderer.fogStartEndAndBase语句
0.00/?.00/0.25/0.50 ?为能见度(单位:M)
2.另外在Init.con文件里
找到GameLogic.MaximumLevelViewDistance ?
?为视距(单位:M)
18.自损伤速度
适用于步兵和载具
ObjectTemplate.armor.hpLostWhileUpSideDown 125 <<<翻倒后的损伤速度
ObjectTemplate.armor.hpLostWhileInWater 100 <<<在水中的损伤速度
ObjectTemplate.armor.hpLostWhileInDeepWater 335 <<<在深水中的损伤速度
ObjectTemplate.armor.hpLostWhileCriticalDamage 18 <<<严重损伤后自动减HP的速度
ObjectTemplate.armor.waterDamageDelay 1 <<<入水损伤延时,单位秒
ObjectTemplate.armor.deepWaterDamageDelay 0 <<<深水损伤延时
ObjectTemplate.armor.waterLevel 0.3 <<<开始损伤的水深
ObjectTemplate.armor.deepWaterLevel 0.8 <<<该深度以上算深水
ObjectTemplate.armor.wreckHitPoints 1000 <<<彻底摧毁需要的HP,载具应该和上面两个控制HP的相同
ObjectTemplate.armor.timeToStayAsWreck 10 <<<摧毁后残骸的保留时间
ObjectTemplate.armor.criticalDamage 101 <<<HP低于多少属于严重损伤,开始掉血
|
|