战地资源网

 找回密码
 立即加入
搜索
查看: 8434|回复: 22

[游戏] [遗失了多年的教程]载具多弹药的实现

[复制链接]

7

主题

120

回帖

1206

积分

少尉

八一勋章积极分子

发表于 2022-7-6 21:58:21 | 显示全部楼层 |阅读模式
赞助bfmil

士兵,我们等着你的加入!

您需要 登录 才可以下载或查看,没有账号?立即加入

x
本帖最后由 QOQ 于 2022-12-7 10:09 编辑

言简意赅


涉及的文件:载具的t档、c档



这里我以给emzpj的99式添加一种炮弹为例


1、首先在t档中添加武器,可以把如下这段作为模板,添加到T档里面,emzpj_type99_Barrel为武器名字(或者),把新的一段的武器名字改一下,不要忘记修改键位,否则会冲突闪退(其实我也没试过,但最好还是改一下),方法和枪械是一样的。
ObjectTemplate.activeSafe GenericFireArm emzpj_type99_Barrel
ObjectTemplate.modifiedByUser "armandoma"
rem ---BeginComp:WeaponHud ---
ObjectTemplate.createComponent WeaponHud
ObjectTemplate.weaponHud.hudName "120MM GUN"
ObjectTemplate.weaponHud.guiIndex 140
ObjectTemplate.weaponHud.hasFireRate 0
ObjectTemplate.weaponHud.hasRangeFinder 1
rem ---EndComp ---
rem ---BeginComp:SingleFireComp ---
ObjectTemplate.createComponent SingleFireComp
ObjectTemplate.fire.roundsPerMinute 30
ObjectTemplate.fire.addFireRate 0
ObjectTemplate.fire.fireInCameraDof 1
rem ---EndComp ---
rem ---BeginCompefaultAmmoComp ---
ObjectTemplate.createComponent DefaultAmmoComp
ObjectTemplate.ammo.nrOfMags 40
ObjectTemplate.ammo.magSize 1
ObjectTemplate.ammo.autoReload 1
ObjectTemplate.ammo.reloadWithoutPlayer 1
rem ---EndComp ---
rem ---BeginComp:WeaponBasedRecoilComp ---
ObjectTemplate.createComponent WeaponBasedRecoilComp
ObjectTemplate.recoil.recoilSize 12
ObjectTemplate.recoil.recoilSpeed 10
ObjectTemplate.recoil.recoilSpeedGB 2.5
ObjectTemplate.recoil.recoilForce 90
ObjectTemplate.recoil.cameraRecoilSpeed 12
ObjectTemplate.recoil.cameraRecoilSize 2
rem ---EndComp ---
rem ---BeginComp:SimpleDeviationComp ---
ObjectTemplate.createComponent SimpleDeviationComp
ObjectTemplate.deviation.setFireDev 4 0 0
ObjectTemplate.deviation.minDev 0.25
rem ---EndComp ---
rem ---BeginCompefaultSoundComp ---
ObjectTemplate.createComponent DefaultSoundComp
rem ---EndComp ---
rem ---BeginCompefaultAnimationComp ---
ObjectTemplate.createComponent DefaultAnimationComp
rem ---EndComp ---
rem ---BeginCompefaultZoomComp ---
ObjectTemplate.createComponent DefaultZoomComp
ObjectTemplate.zoom.addZoomFactor 0
rem ---EndComp ---
ObjectTemplate.floaterMod 0
ObjectTemplate.hasMobilePhysics 1
ObjectTemplate.hasCollisionPhysics 1
ObjectTemplate.physicsType Mesh
ObjectTemplate.aiTemplate T90MainGun
rem -------------------------------------
rem注意这里的是开火特效和声效,可以换成原来弹药相同的代码,而不必添加新的,这样就可以避免T档冗长啦!!当然有心人也可以改一下,实现发射不同的弹药有不同的声音
ObjectTemplate.addTemplate S_emzpj_type99_Barrel_Fire1P
ObjectTemplate.addTemplate S_emzpj_type99_Barrel_Fire1P_Outdoor
ObjectTemplate.addTemplate S_emzpj_type99_Barrel_Fire3P
ObjectTemplate.setPosition 1.78814e-006/-0.171334/4.91355
ObjectTemplate.addTemplate S_emzpj_type99_Barrel_BoltClick
ObjectTemplate.addTemplate S_emzpj_type99_Barrel_TriggerClick
ObjectTemplate.addTemplate S_emzpj_type99_Barrel_SwitchFireRate
ObjectTemplate.addTemplate S_emzpj_type99_Barrel_Reload1P
ObjectTemplate.addTemplate S_emzpj_type99_Barrel_Reload3P
ObjectTemplate.addTemplate S_emzpj_type99_Barrel_Deploy1P
ObjectTemplate.addTemplate S_emzpj_type99_Barrel_Deploy3P
ObjectTemplate.addTemplate S_emzpj_type99_Barrel_Zoom
ObjectTemplate.addTemplate e_muzz_tank
ObjectTemplate.setPosition -8.15984e-006/0.00298595/2.60111
rem -------------------------------------
ObjectTemplate.projectileTemplate KE_Barrel_Projectile(这里是炮弹类型,如果是炮射导弹还要再添加导弹的指令)
ObjectTemplate.keepProjectiles 5
ObjectTemplate.velocity 150



以下是炮弹的创建,伤害和爆炸半径自改,一样复制到T档
ObjectTemplate.create GenericProjectile T90GunProjectile
ObjectTemplate.modifiedByUser "armandoma"
ObjectTemplate.createNotInGrid 1
ObjectTemplate.createdInEditor 1
rem ---BeginCompefaultCollisionComp ---
ObjectTemplate.createComponent DefaultCollisionComp
rem ---EndComp ---
rem ---BeginCompefaultDetonationComp ---
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.useMMOnEndEffect 1
ObjectTemplate.detonation.detectionRadius 1.5
ObjectTemplate.detonation.maxDepthForExplosion 2
rem ---EndComp ---
rem ---BeginCompefaultProjSoundComp ---
ObjectTemplate.createComponent DefaultProjSoundComp
rem ---EndComp ---
rem ---BeginCompefaultRicochetComp ---
ObjectTemplate.createComponent DefaultRicochetComp
rem ---EndComp ---
rem ---BeginCompefaultPenetrateComp ---
ObjectTemplate.createComponent DefaultPenetrateComp
ObjectTemplate.penetrate.allowSolidPenetration 0
ObjectTemplate.penetrate.allowLiquidPenetration 0
rem ---EndComp ---
ObjectTemplate.gravityModifier 0.4
ObjectTemplate.floaterMod 0
ObjectTemplate.hasMobilePhysics 1
ObjectTemplate.hasCollisionPhysics 1
ObjectTemplate.physicsType Point
ObjectTemplate.collisionGroups 8
ObjectTemplate.material 43
rem -------------------------------------
ObjectTemplate.addTemplate S_T90GunProjectile_Looping
rem -------------------------------------
ObjectTemplate.timeToLive CRD_NONE/6/0/0
ObjectTemplate.material 43
ObjectTemplate.hasOnTimeEffect 1
ObjectTemplate.tracerScaler 3
ObjectTemplate.maxTracerScaler 5
ObjectTemplate.minTracerScaler 1
ObjectTemplate.tracerTemplate p_tracer_tank
ObjectTemplate.minDamage 1
ObjectTemplate.damage 500


我是分界线—————————————————————————————————————————————————————————————————————————————————————————

2、以下修改C档
在C档中你会找到一段像这样的东西
ObjectTemplate.addTemplate emzpj_type99_Barrel
ObjectTemplate.setPosition 0/-0.0080/3.1336


接着这段下面复制粘贴一下,变成这样
ObjectTemplate.addTemplate emzpj_type99_Barrel
ObjectTemplate.setPosition 0/-0.0080/3.1336
ObjectTemplate.addTemplate XXXXXXX(新弹药名字)
ObjectTemplate.setPosition 0/-0.0080/3.1336



然后再找到这样的东西
ObjectTemplate.create GenericFireArm emzpj_type99_Barrel
ObjectTemplate.collisionPart 3
ObjectTemplate.hasCollisionPhysics 1
ObjectTemplate.physicsType 3
ObjectTemplate.hasMobilePhysics 1
ObjectTemplate.geometryPart 3

依葫芦画瓢,我们也给自己的武器整上一段,接在它下面
ObjectTemplate.create GenericFireArm emzpj_type99_Barrel
ObjectTemplate.collisionPart 3
ObjectTemplate.hasCollisionPhysics 1
ObjectTemplate.physicsType 3
ObjectTemplate.hasMobilePhysics 1
ObjectTemplate.geometryPart 3


ObjectTemplate.create GenericFireArm XXXXXXXX(新弹药名字)
ObjectTemplate.geometryPart 3






好了进游戏看看你的坦克是不是多了一种弹药了!!!最后回收开头,记得改键位!!!
原版修改代码在12楼




回复

使用道具 举报

0

主题

100

回帖

1845

积分

少尉

宣传大使八一勋章

发表于 2022-7-7 08:31:08 | 显示全部楼层
赞一个,技术贴
回复

使用道具 举报

114

主题

1201

回帖

3651

积分

站长

战地资源网老兵,渣渣模组制作者

Rank: 9Rank: 9Rank: 9

游戏昵称
资源网老瓦

八一勋章

发表于 2022-7-7 09:36:05 | 显示全部楼层
这种基础教程,最好以原版坦克为例,这样便于新人DIY尝试
战地资源网老兵,渣渣模组制作者
回复

使用道具 举报

17

主题

172

回帖

1049

积分

少尉

检察先锋

发表于 2022-7-7 11:04:17 | 显示全部楼层
收藏一下
http://www.bfmil.cn/
回复

使用道具 举报

7

主题

120

回帖

1206

积分

少尉

八一勋章积极分子

 楼主| 发表于 2022-7-7 20:21:39 | 显示全部楼层
wztwzt18 发表于 2022-7-7 09:36
这种基础教程,最好以原版坦克为例,这样便于新人DIY尝试

瓦哥所言及是,只是刚好翻到俄毛子的就先拿来用了
回复

使用道具 举报

6

主题

41

回帖

842

积分

上士

八一勋章

发表于 2022-7-8 20:18:46 | 显示全部楼层
赞一个!!
回复

使用道具 举报

2

主题

10

回帖

69

积分

上等兵

发表于 2022-11-12 13:48:38 | 显示全部楼层
感觉很需要技术,看不懂,
请问什麽是emzpj的99式?
我是新手,可否再详述一点?谢谢!
回复

使用道具 举报

7

主题

117

回帖

909

积分

上士

八一勋章

发表于 2022-11-12 18:52:58 | 显示全部楼层
bf2box 发表于 2022-11-12 13:48
感觉很需要技术,看不懂,
请问什麽是emzpj的99式?
我是新手,可否再详述一点?谢谢! ...

可以不用emzpj的99式,可以替换成原版的坦克代码,比如说ustnk_m1a2
回复

使用道具 举报

7

主题

120

回帖

1206

积分

少尉

八一勋章积极分子

 楼主| 发表于 2022-11-15 11:06:51 | 显示全部楼层
bf2box 发表于 2022-11-12 13:48
感觉很需要技术,看不懂,
请问什麽是emzpj的99式?
我是新手,可否再详述一点?谢谢! ...

文本里面的emzpj_type99只是载具名字,和tweak文件的名称是一样的,这里只是拿了俄毛子普京的99式坦克的tweak文件做示例而已
回复

使用道具 举报

2

主题

10

回帖

69

积分

上等兵

发表于 2022-11-30 12:10:45 | 显示全部楼层
我弄了两个星期多,
还是失败,
研究不出来,
只好再上来请教了,
能否请你改一个USTNK_M1A2.tweak给我使用?谢谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

本版积分规则

Archiver|小黑屋|bfmil ( 拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,会员帖子系会员发表,并不代表本站立场! )

GMT+8, 2024-11-21 20:04 , Processed in 0.117495 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表