《战地2》初级单机修改汇总
《战地2》初级单机修改汇总 PS: 仅可修改单机地图
修改前奏
BF2的文档文件主要有*.py、*.con和*.tweak三种,都可以直接用Windows自带的记事本打开并修改。
大部分文档文件都是在ZIP文件里,需要用WinRAR打开。
在修改之前,一定要取消所有文档文件、ZIP文件的只读属性。
ZIP文件内的文档若仍无法存储,可先存到其它地方,然后复制进去。
这里说的安装目录,是指你的所在的文件夹目录,例如D:\Program Files\EA Games\Battlefield 2文件夹里有,那么D:\Program Files\EA Games\Battlefield 2就是你的安装目录。
备份教程
由于BF2在联网游戏时要检验各文件的MD5,因此备份就不能简简单单地复制一下。把修改的文件做成模组形式无疑是最好的选择。
首先打开[安装目录]\mods文件夹,新建一个文件夹,名称随便(例如mymod,下同)。
接着打开bf2文件夹,复制你要修改的文件。
例如,如果要修改object_server.zip,那么就复制bf2目录下的object_server.zip到mymod 目录下;如果要修改AI文件,那么复制bf2目录下的AI文件夹到mymod目录下;如果要修改大庆地图,那么复制mods\bf2\levels\daqing_oilfields文件夹到mods\mymod\levels\daqing_oilfields(没有的话自己建),如果不需要修改client.zip,可以在复制后将其删除。
但是如果你要修改一个模组,比如特种部队,那么你就要整个复制模组文件夹。
有单机模组的可以直接修改单机模组里的文件,因为没人会用单机模组联网对战。
接下来就开始修改mymod目录下的文件吧。
如果你的硬盘空间不是很多,可以在修改完object_server.zip后看一看,假如你只修改了武器属性,那么打开修改后的object_server.zip,删除除Weapons文件夹外其它的文件夹,可以大大减少文件所占空间。(mymod根目录下所有的*.zip文件都可这么做,但是地图文件就算了)
复制bf2目录下的w、、、p、、Mod.desc、到mymod目录下,然后开始修改mymod目录下的
这些文件:
修改w文件名为w;
用记事本打开ClientArchives,复制整个内容,然后在最后一行再空一行后面,粘贴,在后面的几行“mountArchive”后面的空格后添加“mods/bf2/”(没有引号),连起来就是untArchive mods/bf2/Objects_client.zip Objects,然后保存、退出;
<也是这个改法;
Mod.desc也可以用记事本修改,当然不改也无所谓。
最后回到你的游戏目录,建一个的快捷方式,更名为mymod,然后右键——属性,在目标一栏的末尾空一个格加上“+modPath mods/mymod”,点确定退出。
运行新建的快捷方式进入游戏看看吧!
计分规则修改
用记事本打开mods\bf2\python\game\scoringCommon.py
然后就能看到了
SCORE_KILL = 2 ——杀1个人的得分;
SCORE_TEAMKILL = -4 ——杀一个队友的得分;
SCORE_SUICIDE = -2 ——自杀的得分
SCORE_REVIVE = 2 ——救起队友的得分
SCORE_TEAMDAMAGE = -2 ——伤害队友的得分
SCORE_TEAMVEHICLEDAMAGE = -1 ——伤害队友车辆的得分
SCORE_DESTROYREMOTECONTROLLED = 1 ——不知道,看英文好像是摧毁敌方无人侦察机的得分
SCORE_KILLASSIST_DRIVER = 1 ——压死人的得分
SCORE_KILLASSIST_PASSENGER = 0 ——压死人车上其他人的得分??不知道
SCORE_KILLASSIST_TARGETER = 1 ——靶子?更没听说过
SCORE_KILLASSIST_DAMAGE = 1 ——对地方造成伤害得分
下面好像就是加分或者减分的极限了,有兴趣的可以自己研究,可能对兵力值调9999的人有用。
REPAIR_POINT_LIMIT = 100
HEAL_POINT_LIMIT = 100
GIVEAMMO_POINT_LIMIT = 100
TEAMDAMAGE_POINT_LIMIT = 50
TEAMVEHICLEDAMAGE_POINT_LIMIT = 50
REPLENISH_POINT_MIN_INTERVAL = 30
我们把那些数值改一下,比如把所有负值的负号取消,这样误杀一个队友还会加分(当然兵力值还会减)。
也可以改成你喜欢的数值。改完之后,保存,退出。
然后mods\bf2\里
把你相应在上面改过的地方也改成相同的数值(好像不改也没事,2142就是个例子)。
单机服务器属性修改
多人游戏可以修改重生时间等,然而到了单人游戏就不能在游戏里修改了。怎么办呢?
先用记事本打开mods\
然后在最后加上:
每个地图玩几局,作用不大
sv.soldierFriendlyFire 0
sv.vehicleFriendlyFire 0
sv.soldierSplashFriendlyFire 0
sv.vehicleSplashFriendlyFire 0
友军火力,0为没有,默认100。
sv.spawnTime 5
sv.manDownTime 5
重生时间,调几都行,没试过负数。
sv.ticketRatio 1000
兵力值,默认100,众所周知可以在gpm_cq.py里改,但在这里改更方便。
mods\bf2\里的其它数据也都可以用,有兴趣的自己看看。
战地2地图属性修改
经常有朋友问,怎么把USMC vs PLA的图改成USMC vs MEC甚至MEC vs PLA的图的方法,或者怎样调整双方兵力值的比例。这里,我给你答案。
选择一个地图,用WinRAR打开[你的安装目录]\mods\bf2\[地图名]\server.zip,然后到,用记事本打开它修改。
gameLogic.setTeamName 1 "MEC" ——第一支队,可以填US、CH或MEC;
gameLogic.setTeamName 2 "US" ——第二支队,同上。
gameLogic.setTeamLanguage 1 "MEC" ——第一支队使用语言,可以填English、Chinese、MEC,当然不只这些;
gameLogic.setTeamLanguage 2 "English" ——第二支队使用语言,同上。
gameLogic.setTeamFlag 0 "flag_neutral" ——中立旗颜;
gameLogic.setTeamFlag 1 "flag_mec" ——第一支队据点旗的颜,flag_mec、flag_us、flag_ch均可;
gameLogic.setTeamFlag 2 "flag_us" ——第一支队据点旗的颜,同上。
gameLogic.setKit 1 0 "MEC_Specops" "mec_light_soldier" ——改了队伍后把MEC改成其它的即可,下同。
gameLogic.setKit 2 0 "US_Specops" "us_light_soldier"
gameLogic.setKit 1 1 "MEC_Sniper" "mec_light_soldier"
gameLogic.setKit 2 1 "US_Sniper" "us_light_soldier"
gameLogic.setKit 1 2 "MEC_Assault" "mec_heavy_soldier"
gameLogic.setKit 2 2 "US_Assault" "us_heavy_soldier"
gameLogic.setKit 1 3 "MEC_Support" "mec_heavy_soldier"
gameLogic.setKit 2 3 "US_Support" "us_heavy_soldier"
gameLogic.setKit 1 4 "MEC_Engineer" "mec_light_soldier"
gameLogic.setKit 2 4 "US_Engineer" "us_light_soldier"
gameLogic.setKit 1 5 "MEC_Medic" "mec_light_soldier"
gameLogic.setKit 2 5 "US_Medic" "us_light_soldier"
gameLogic.setKit 1 6 "MEC_AT" "mec_heavy_soldier"
gameLogic.setKit 2 6 "US_AT" "us_heavy_soldier"
GameLogic.MaximumLevelViewDistance 600 ——最大可视距离,往巷战图加飞机的别忘了改这里。
gameLogic.setDefaultNumberOfTicketsEx 16 1 100 —— 16人地图第一支队兵力值;gameLogic.setDefaultNumberOfTicketsEx 16 2 100 —— 16人地图第二支队兵力值;gameLogic.setDefaultNumberOfTicketsEx 32 1 200 —— 32人地图第一支队兵力值;gameLogic.setDefaultNumberOfTicketsEx 32 2 200 —— 32人地图第二支队兵力值;gameLogic.setDefaultNumberOfTicketsEx 64 1 300 —— 64人地图第一支队兵力值;gameLogic.setDefaultNumberOfTicketsEx 64 2 330 —— 64人地图第二支队兵力值;gameLogic.setDefaultNumberOfTicketsEx 128 1 200 —— 128人地图第一支队兵力值;gameLogic.setDefaultNumberOfTicketsEx 128 2 200 —— 128人地图第二支队兵力值;
gameLogic.setTicketLossPerMin 1 12 ——第一支队处于下风时每分钟损失点数;gameLogic.setTicketLossPerMin 2 6 ——第二支队处于下风时每分钟损失点数。
gameLogic.setTeamDropVehicle 1 "jep_mec_paratrooper" ——第一支队指挥官空投载具时出现的载具;
gameLogic.setTeamDropVehicle 2 "Jeep_faav" ——第二支队指挥官空投载具时出现的载具。
保存退出后,用新的文件覆盖压缩包里的文件,即可(之前备份)。
修改远程火炮
打开[游戏目录]\mods\bf2\Objects_server.zip
用记事本打开Weapons\stationary\USART_LW155\USART_LW155.tweak
若修改中国、中东则为Weapons\stationary\ars_d30\ars_d30.tweak
undsPerMinute 30 ——火炮的发射频率是每分钟30发;ObjectTemplate.fire.burstSize 5 ——每次呼叫火炮的炮弹发射量为5发;plosionRadius 6 ——一颗的爆炸威力半径是6米;ObjectTemplate.deviation.radius 20 ——炮火精准度为20米。
修改后保存即可。
修改兵种所持武器
打开[游戏目录]\mods\bf2\Objects_server.zip
打开Kits文件夹,打开你要修改的队伍的文件夹(US美军,CH解放军,MEC中东联合军),用记事本打开你要改的兵种的con文件(Assault突击兵,AT反坦克兵,Engineer工程兵,Medic医疗兵,Sniper狙击兵,Specops特种兵, Support支援兵)。
修改以“ObjectTemplate.addTemplate ”为开头的行就可以了,在后面写上武器代码(后面有,必须是能够手持的武器),如ObjectTemplate.addTemplate RURIF_AK47。注意武器不能冲突,比如出现两把主武器,这样按“3”两款武器就会打架,游戏就会出问题。如果非要添两把武器,可以参见后面,修改武器编号,再进行添加。python安装教程非常详细
BOT数值更改
BF2的singleplayer模式里面限制人数为16,打起来还是觉得不够激烈,增加BOT就显得非常重要了;另外附带提一下,其他人也能进入你的singleplayer模式的,记下你的IP(读游戏的时候有写)告诉同伴,家就能一起K BOT了。
用记事本打开mods\bf2\AI\aidefault.ai
aiSettings.setMaxNBots 256 ——最大游戏人数,也可以保持原来的64不变,基本上影响

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。