Im back, so just a quick glance at one piece of a Battleshipgun
In weapons.con theres a lot of stuff goin on, but none have network info
Code: Select all
rem *** YamatoMediumCannonBarrel ***
ObjectTemplate.create FireArms YamatoMediumCannon
ObjectTemplate.geometry Yamato_Medium_Cannon_m1
ObjectTemplate.aiTemplate YamatoGunAI
ObjectTemplate.loadSoundScript ../Common/Sounds/fire.ssc
rem -------------------------------------
rem ObjectTemplate.visibleBarrelTemplate e_MuzzDefGun
ObjectTemplate.addTemplate e_MuzzDefGun
ObjectTemplate.setPosition 1.7/0/7.0 0/0/0
ObjectTemplate.setRotation -180/0/0
ObjectTemplate.addTemplate e_MuzzDefGun
ObjectTemplate.setPosition 0/0/7.0 0/0/0
ObjectTemplate.setRotation -180/0/0
ObjectTemplate.addTemplate e_MuzzDefGun
ObjectTemplate.setPosition -1.7/0/7.0 0/0/0
ObjectTemplate.setRotation -180/0/0
rem -------------------------------------
ObjectTemplate.projectileTemplate YamatoMediumProjectile
ObjectTemplate.projectilePosition 0/0/-5
ObjectTemplate.magSize -1
ObjectTemplate.numOfMag 999
ObjectTemplate.velocity 160
ObjectTemplate.reloadtime 45
ObjectTemplate.roundOfFire 0.2
ObjectTemplate.fireingForce 10
ObjectTemplate.recoilSpeed 6
ObjectTemplate.recoilSize 10
ObjectTemplate.addFireArmsPosition 1.7/0/7.0 0/0/0
ObjectTemplate.addFireArmsPosition 0/0/7.0 0/0/0
ObjectTemplate.addFireArmsPosition -1.7/0/7.0 0/0/0
rem *** YamatoMediumProjectile ***
ObjectTemplate.create Projectile YamatoMediumProjectile
ObjectTemplate.createNotInGrid 1
ObjectTemplate.loadSoundScript ../../Common/Sounds/BigProjectile.ssc
ObjectTemplate.geometry Projectile_m1
ObjectTemplate.hasMobilePhysics 1
ObjectTemplate.hasCollisionPhysics 1
ObjectTemplate.hasResponsePhysics 1
ObjectTemplate.timeToLive CRD_NONE/10/0/0
ObjectTemplate.damageType 1
ObjectTemplate.material 252
ObjectTemplate.material2 208
ObjectTemplate.radius 15
ObjectTemplate.hasCollisionEffect 1
ObjectTemplate.addTemplate e_PanzShootTrail
It is then later added to the RotationalBundle YamatoMediumCannonBase that does have networkinfo
Code: Select all
rem *** YamatoMediumCannonBase ***
ObjectTemplate.create RotationalBundle YamatoMediumCannonBase
ObjectTemplate.setNetworkableInfo YamatoCannonInfo
ObjectTemplate.loadSoundScript ../Common/Sounds/midtower.ssc
rem -------------------------------------
ObjectTemplate.addTemplate YamatoMediumCannon
rem -------------------------------------
ObjectTemplate.setMinRotation 0/-15/0
ObjectTemplate.setMaxRotation 0/1/0
ObjectTemplate.setMaxSpeed 0/35/0
ObjectTemplate.setAcceleration 0/90/0
ObjectTemplate.setInputToPitch c_PIMouseLookY
If we look in network.con there is
Code: Select all
NetworkableInfo.createNewInfo YamatoCannonInfo
NetworkableInfo.setPredictionMode PMLinear
The same networkinfo-node or whatever its called is reused in the RotationalBundle YamatoFatCannonBase
Code: Select all
rem *** YamatoFatCannonBase ***
ObjectTemplate.create RotationalBundle YamatoFatCannonBase
ObjectTemplate.setNetworkableInfo YamatoCannonInfo
ObjectTemplate.loadSoundScript ../Common/Sounds/bigtower.ssc
rem -------------------------------------
ObjectTemplate.addTemplate YamatoFatCannon
rem -------------------------------------
ObjectTemplate.setMinRotation 0/-15/0
ObjectTemplate.setMaxRotation 0/1/0
ObjectTemplate.setMaxSpeed 0/35/0
ObjectTemplate.setAcceleration 0/90/0
ObjectTemplate.setInputToPitch c_PIMouseLookY
And also in the YamatoSmall1CannonBase
Code: Select all
rem *** YamatoSmall1CannonBase ***
ObjectTemplate.create RotationalBundle YamatoSmall1CannonBase
ObjectTemplate.setNetworkableInfo YamatoCannonInfo
ObjectTemplate.loadSoundScript ../Common/Sounds/smalltower.ssc
rem -------------------------------------
ObjectTemplate.addTemplate YamatoSmall1Cannon
rem -------------------------------------
ObjectTemplate.setMinRotation 0/0/-15
ObjectTemplate.setMaxSpeed 0/0/60
ObjectTemplate.setAcceleration 0/0/75
ObjectTemplate.setInputToRoll c_PIMouseLookY
And RotationalBundle YamatoSmall2CannonBase
Code: Select all
rem *** YamatoSmall2CannonBase ***
ObjectTemplate.create RotationalBundle YamatoSmall2CannonBase
ObjectTemplate.setNetworkableInfo YamatoCannonInfo
rem -------------------------------------
ObjectTemplate.addTemplate YamatoSmall2Cannon
rem -------------------------------------
ObjectTemplate.setMinRotation 0/0/-15
ObjectTemplate.setMaxSpeed 0/0/60
ObjectTemplate.setAcceleration 0/0/75
ObjectTemplate.setInputToRoll c_PIMouseLookY
Also the RotationalBundle YamatoSmall2CannonBaseWithCamera
Code: Select all
rem *** YamatoSmall2CannonBaseWithCamera ***
ObjectTemplate.create RotationalBundle YamatoSmall2CannonBaseWithCamera
ObjectTemplate.setNetworkableInfo YamatoCannonInfo
rem -------------------------------------
ObjectTemplate.addTemplate YamatoSmall2Cannon
ObjectTemplate.addTemplate YamatoCameraBundle
ObjectTemplate.setPosition -1.693/-1.218/0.05
ObjectTemplate.setRotation 0/0/-9.999
rem -------------------------------------
ObjectTemplate.setMinRotation 0/0/-15
ObjectTemplate.setMaxSpeed 0/0/60
ObjectTemplate.setAcceleration 0/0/75
ObjectTemplate.setInputToRoll c_PIMouseLookY
I think that was all, its not that easy intuitive to grasp all of it (i dont) but i think it boils down to limit and re-use that networkinfo as much as possible.
Edit: ill add the map with the Flettner that i removed alot of "unessesary" networkinfo so you can take a look and compare with the original Flettner. i think Dice buggered up the flettner by misstake or time constrictment as it was there first try on making a working chopper. The choppers in Desert combat mod works much much better.
Sidenote, i didnt make this map (Flettner arena), i just "cloned the Flettner and made some changes to that clones (made one for allied + one for axis)