战地2吧 关注:143,256贴子:3,883,846

回复:【致新人】战地2吧引导贴-看完保证你的体验

取消只看楼主收藏回复

自顶一下


IP属地:湖南来自Android客户端41楼2023-07-28 02:43
回复


    IP属地:湖南来自Android客户端42楼2023-07-31 10:40
    回复
      顶顶


      IP属地:湖南来自Android客户端66楼2023-08-08 10:17
      回复
        顶一下


        IP属地:湖南来自Android客户端70楼2023-08-22 08:25
        回复
          @为了提莫酱
          这个教程适合于BF2修改爱好者,如果你对于BF2文件构造不太懂,这篇文章会看起来很难理解
          希望你能看懂,因为这涉及到AI的修改,如果你只是极个别地图改着玩玩,我建议你用BF2Editor,在飞机旁边设置一个专门给AI复活的重生点并且写一句立即进入物体的设置语句
          如果你是所有地图都这么做,那么就得改AI文件
          Object_server.zip/vehicles里面有各式各样的飞机,并且附带ai文件,这些文件控制着Bot在面对各种载具时做出的反映
          我以J10为例子,打开AI/object.ai
          一般来说,最开始的开头会有这两行
          aiTemplatePlugIn.setStrategicStrength 0 3 -----设置载具的进攻战略强度(布尔值=0),后面一个值是强度,这里就表示,这个载具会拿来进攻,进攻的强度为3
          aiTemplatePlugIn.setStrategicStrength 1 3 ------设置载具的防御战略强度(布尔值=1),后面一个值是强度,这里就表示,这个载具会拿来守点,守护的强度为3
          之后看到这一行
          aiTemplate.create J10
          这一个段落直接规定了J10在AI中的使用情况
          其中
          aiTemplate.degeneration 5 ------决定了AI在看不到J10多少秒后将其遗忘
          aiTemplate.allowedTimeDiff 0.5 ------告诉游戏在AI可以看到J10后更新有关J10的信息的频率
          aiTemplate.basicTemp 15 ------设置该载具于地图其他载具相比选择的优先值
          通过提高战略强度值(也就是后面的那个3),并提高载具的选择优先值,AI将会优先选择这个载具,但这两个值都是相对其他现有载具而言的。
          这里有一个提高选择的例子
          aiTemplatePlugIn.setStrategicStrength 0 4
          aiTemplatePlugIn.setStrategicStrength 1 4
          ......
          aiTemplate.degeneration 5
          aiTemplate.allowedTimeDiff 2
          aiTemplate.basicTemp 30
          以上的例子,AI会更少考虑看到他看不到的载具,每隔2秒就更新他能看到载具的信息,通过aiTemplatePlugIn.setStrategicStrength让AI判断使用哪种战略强度中的哪种载具更好面对当前的情况。
          但是,给某一个载具编写这样的优先级代码比较难,因为你要综合性考虑其他载具的使用情况,如果出现优先级更高的载具,AI可能优先考虑那个,并且如果太调高了会出现很鬼畜不符合逻辑的情况(比如对面压机场了,AI此时此刻应该选择开坦克和防空车防御家而不是去跑过去开战斗机)


          IP属地:湖南73楼2023-08-27 03:37
          收起回复
            顶一下


            IP属地:湖南来自Android客户端81楼2023-09-05 07:48
            收起回复
              1


              IP属地:湖南来自Android客户端89楼2023-09-21 02:36
              回复
                @rwerewrwerewr
                关于你在贴吧的问题“如何不改变倒地救起后的兵种武器”,我这里有一个设想:我个人觉得应该能做到,bf2固定机制就是倒后被救,拾取附近的包,除非附近没有包才会固定刷新自己种类的,并且物资充满。
                改包消失时间,这也许是一种可行的方法。
                你的帖子不知道为什么回复不了,我就在这里回复了。


                IP属地:湖南来自Android客户端102楼2023-10-09 14:46
                回复
                  3


                  IP属地:湖南来自Android客户端103楼2023-10-13 16:41
                  回复
                    自顶


                    IP属地:湖南来自Android客户端121楼2023-12-22 16:31
                    回复
                      @武士拔刀人变狗
                      区别可大了,dumb一般是模型,不要改那些。具体改哪个你得看这些载具的T档用的武器是哪个,这个说不准一定是哪个,你得根据实际引用来看。
                      材质伤害对的上啊,
                      拿F15空地导弹举例子 agm65_maverick 打 98坦
                      agm65初始值 (Objects_server.zip\Weapons\Armament\missiles\agm65_maverick\)
                      ObjectTemplate.detonation.explosionMaterial 56 //爆炸材质
                      ObjectTemplate.detonation.explosionRadius 7 //爆炸范围
                      ObjectTemplate.detonation.explosionForce 20 //爆炸力度
                      ObjectTemplate.detonation.explosionDamage 750 //爆炸伤害
                      98坦的装甲值 (Objects_server.zip\Vehicles\Land\tnk_type98\)
                      ObjectTemplate.createComponent Armor
                      ObjectTemplate.armor.maxHitPoints 1000 //坦克的血量
                      ObjectTemplate.armor.hitPoints 1000
                      ObjectTemplate.armor.defaultMaterial 72 //材质
                      在Common_Server.zip定义中 (Common_server.zip\Material\)
                      MaterialManager.createCell 56 72 //56对72
                      MaterialManager.damageMod 1.4 //伤害乘1.4
                      750x1.4>1000 所以F15空对地直接秒杀98坦,符合游戏没问题啊
                      再举例子
                      拿M24打漂亮国的工兵
                      M24子弹初始值(Objects_server.zip\Weapons\Handheld\usrif_m24\)
                      ObjectTemplate.material 38 //子弹材质38
                      ObjectTemplate.hasOnTimeEffect 1
                      ObjectTemplate.minDamage 1
                      ObjectTemplate.damage 95 //伤害95
                      工兵初始值 (Objects_server.zip\soldiers\Us\US_HEAVY_SOLDIER.tweak)
                      ObjectTemplate.armor.maxHitPoints 100
                      ObjectTemplate.armor.hitPoints 100 //血量
                      ......
                      rem boneName, material, offset, radius, length
                      ObjectTemplate.setSkeletonCollisionBone left_upperleg 24 0/0.03/0 0.09 -0.35 //左腿子上半,材质24
                      ObjectTemplate.setSkeletonCollisionBone right_upperleg 24 0/0.03/0 0.09 0.35 //右腿子上半,材质24
                      ObjectTemplate.setSkeletonCollisionBone left_lowerleg 77 0/0.03/0.02 0.08 -0.32 //左腿子下半,脚,材质77
                      ObjectTemplate.setSkeletonCollisionBone right_lowerleg 77 0/0.03/0.02 0.08 0.32 //右腿子上半,脚,材质77
                      ObjectTemplate.setSkeletonCollisionBone head 25 0/-0.02/0.02 0.07 -0.08 //脑袋,材质25
                      ObjectTemplate.setSkeletonCollisionBone spine2 23 0/-0.05/-0.03 0.15 -0.16 //脊柱(可以说身体)材质23
                      ObjectTemplate.setSkeletonCollisionBone spine3 23 0/-0.03/0.02 0.16 -0.05 //脊柱(可以说身体)材质23
                      ObjectTemplate.setSkeletonCollisionBone right_shoulder 77 0.01/0.03/0 0.06 0.2 //右肩膀,材质77
                      ObjectTemplate.setSkeletonCollisionBone right_low_arm 77 -0.01/0.03/0 0.045 0.18 //右臂(或者说是手),材质77
                      ObjectTemplate.setSkeletonCollisionBone left_shoulder 77 0.01/0.03/0 0.06 -0.2 //左肩膀,材质77
                      ObjectTemplate.setSkeletonCollisionBone left_low_arm 77 -0.01/0.03/0 0.045 -0.18 //左臂(或者说是手),材质77
                      在Common_Server.zip定义中 (Common_server.zip\Material\)
                      MaterialManager.createCell 38 24 //38对24
                      MaterialManager.damageMod 1 //伤害x1
                      所以打腿子就是95血
                      MaterialManager.createCell 38 25 //38对25
                      MaterialManager.damageMod 3 //伤害x3
                      所以打脑袋直接没,95*3>100
                      MaterialManager.createCell 38 77 //38对77
                      MaterialManager.damageMod 0.7 //伤害x0.7
                      所以打腿子,脚或者手反而没有95,而是95*0.7
                      所以M24直接秒杀打头,并且打脚丫子打腿打身体死不了,符合游戏也没问题。
                      所以根据这些材质慢慢算就行了,这不会出错的
                      赞扬你的钻研精神,希望你是下一批大佬


                      IP属地:湖南124楼2024-01-18 00:01
                      收起回复
                        111


                        IP属地:湖南144楼2024-07-06 20:15
                        回复