Anyhow, here goes nothing......
Parent Weapon ODF
Hidden/Spoiler:
[code]
[WeaponClass]
ClassLabel = "launcher" // let us use target lock
[Properties]
HUDTag = "hud_vehicle_lasers" // make everyone think it's actually lasers
ShotDelay = "0.14 0.16" // add some randomness
RoundsPerClip = "0"
ReloadTime = "0.0"
SalvoCount = "1"
ShotsPerSalvo = "1"
SalvoDelay = "0"
InitialSavloDelay = "0"
TriggerSingle = "1" // this is purely personal preference
MaxPressedTime = "0.0"
HeatRecoverRate = "0.0"
HeatThreshold = "0.0"
HeatPerShot = "0.0" // you can set up heat values if you want; I just haven't gotten around to it
MinRange = "10"
OptimalRange = "300"
MaxRange = "500" // check the ordnance to understand this one
LockOnRange = "1000" // this section is VERY IMPORTANT. Don't use AutoAimSize: it makes thing go wonky on larger targets (like capital ships)
LockOnAngle = "0.5" // not too big, or it can look wrong
LockOffAngle = "1.0" //
LockTime = "0.1" // this is the only way I could get it to work convincingly
TargetLockMaxDistance = "1000"
TargetLockMaxDistanceLose = "2000"
TargetEnemy = "1"
TargetNeutral = "0"
TargetFriendly = "0"
TargetAll = "1" // Target EVERYTHING!
FireSoundStop = "1"
OverheatSound = "com_weap_energy_depleted"
OverheatSoundPitch = "0.5"
OverheatStopSound = "com_weap_energy_refilled"
[/code]
[WeaponClass]
ClassLabel = "launcher" // let us use target lock
[Properties]
HUDTag = "hud_vehicle_lasers" // make everyone think it's actually lasers
ShotDelay = "0.14 0.16" // add some randomness
RoundsPerClip = "0"
ReloadTime = "0.0"
SalvoCount = "1"
ShotsPerSalvo = "1"
SalvoDelay = "0"
InitialSavloDelay = "0"
TriggerSingle = "1" // this is purely personal preference
MaxPressedTime = "0.0"
HeatRecoverRate = "0.0"
HeatThreshold = "0.0"
HeatPerShot = "0.0" // you can set up heat values if you want; I just haven't gotten around to it
MinRange = "10"
OptimalRange = "300"
MaxRange = "500" // check the ordnance to understand this one
LockOnRange = "1000" // this section is VERY IMPORTANT. Don't use AutoAimSize: it makes thing go wonky on larger targets (like capital ships)
LockOnAngle = "0.5" // not too big, or it can look wrong
LockOffAngle = "1.0" //
LockTime = "0.1" // this is the only way I could get it to work convincingly
TargetLockMaxDistance = "1000"
TargetLockMaxDistanceLose = "2000"
TargetEnemy = "1"
TargetNeutral = "0"
TargetFriendly = "0"
TargetAll = "1" // Target EVERYTHING!
FireSoundStop = "1"
OverheatSound = "com_weap_energy_depleted"
OverheatSoundPitch = "0.5"
OverheatStopSound = "com_weap_energy_refilled"
[/code]
Hidden/Spoiler:
[code]
[OrdnanceClass]
ClassLabel = "missile" // make it obey target lock
[Properties]
LifeSpan = "0.25" // not too long, or it will turn into a missile and come back around. Besides, plasma is the most unstable state of matter.
MinSpeed = "0" // allow the TurnRate to take effect
Acceleration = "10000" // just not for too long
Velocity = "2000"
Gravity = "0.0"
Rebound = "0.0"
MaxDamage = "" // whatever you like
DamageTransitionDelay = "0.175"
DamageTransitionPeriod = "0.125"
DamageFinalDamage = "" // I recommend setting to 1/10th of MaxDamage
PersonScale = "1.0"
AnimalScale = "1.0"
DroidScale = "1.0"
VehicleScale = "0.5"
BuildingScale = "0.5"
// you can set your own damage scales if you want
HealthScale = "1.0"
ArmorScale = "0.5"
ShieldScale = "0.1"
TurnRate = "20.0" // important. Makes the ordnance chase the target momentarily.
WaverRate = "0.0"
WaverTurn = "0.0"
// Visuals ------------------------------------------- You can set your own
ImpactEffectSoft = ""
ImpactEffectRigid = ""
ImpactEffectStatic = ""
ImpactEffectTerrain = ""
ImpactEffectWater = "com_sfx_watersplash_ord_lg"
ImpactEffectShieldSmall = "com_sfx_shieldimpact_sm"
ImpactEffectShieldLarge = "com_sfx_shieldimpact_xl"
// Sounds ---------------------------------------------
OrdnanceSound = "com_weap_inf_ord_hum_lg"
CollisionSound = "com_veh_laser_imp_exp"
[/code]
[OrdnanceClass]
ClassLabel = "missile" // make it obey target lock
[Properties]
LifeSpan = "0.25" // not too long, or it will turn into a missile and come back around. Besides, plasma is the most unstable state of matter.
MinSpeed = "0" // allow the TurnRate to take effect
Acceleration = "10000" // just not for too long
Velocity = "2000"
Gravity = "0.0"
Rebound = "0.0"
MaxDamage = "" // whatever you like
DamageTransitionDelay = "0.175"
DamageTransitionPeriod = "0.125"
DamageFinalDamage = "" // I recommend setting to 1/10th of MaxDamage
PersonScale = "1.0"
AnimalScale = "1.0"
DroidScale = "1.0"
VehicleScale = "0.5"
BuildingScale = "0.5"
// you can set your own damage scales if you want
HealthScale = "1.0"
ArmorScale = "0.5"
ShieldScale = "0.1"
TurnRate = "20.0" // important. Makes the ordnance chase the target momentarily.
WaverRate = "0.0"
WaverTurn = "0.0"
// Visuals ------------------------------------------- You can set your own
ImpactEffectSoft = ""
ImpactEffectRigid = ""
ImpactEffectStatic = ""
ImpactEffectTerrain = ""
ImpactEffectWater = "com_sfx_watersplash_ord_lg"
ImpactEffectShieldSmall = "com_sfx_shieldimpact_sm"
ImpactEffectShieldLarge = "com_sfx_shieldimpact_xl"
// Sounds ---------------------------------------------
OrdnanceSound = "com_weap_inf_ord_hum_lg"
CollisionSound = "com_veh_laser_imp_exp"
[/code]
Hidden/Spoiler:
[code]
ParticleEmitter("Smoke")
{
MaxParticles(-1.0000,-1.0000);
StartDelay(0.0000,0.0000);
BurstDelay(0.0100, 0.0100);
BurstCount(1.0000,1.0000);
MaxLodDist(1000.0000);
MinLodDist(800.0000);
BoundingRadius(30.0);
SoundName("")
Size(1.0000, 1.0000);
Hue(255.0000, 255.0000);
Saturation(255.0000, 255.0000);
Value(255.0000, 255.0000);
Alpha(255.0000, 255.0000);
Spawner()
{
Circle()
{
PositionX(-1.0000,1.0000);
PositionY(-1.0000,1.0000);
PositionZ(-1.0000,1.0000);
}
Offset()
{
PositionX(0.0000,0.0000);
PositionY(0.0000,0.0000);
PositionZ(0.0000,0.0000);
}
PositionScale(0.0000,0.0000);
VelocityScale(0.0000,0.0000);
InheritVelocityFactor(0.0000,0.0000);
Size(0, 0.2000, 0.2500);
Red(0, 255.0000, 255.0000);
Green(0, 50.0000, 50.0000);
Blue(0, 50.0000, 50.0000);
Alpha(0, 255.0000, 255.0000);
StartRotation(0, 90.0000, 90.0000);
RotationVelocity(0, 0.0000, 1.0000);
FadeInTime(0.0000);
}
Transformer()
{
LifeTime(0.0500);
Position()
{
LifeTime(1.5000)
Scale(0.0000);
}
Size(0)
{
LifeTime(1.0000)
Scale(0.1000);
}
Color(0)
{
LifeTime(0.0100)
Move(0.0000,0.0000,0.0000,255.0000);
Next()
{
LifeTime(0.0900)
Move(0.0000,0.0000,0.0000,-255.0000);
}
}
}
Geometry()
{
BlendMode("NORMAL");
Type("STREAK");
Texture("com_sfx_smoketrail");
ParticleEmitter("BlackSmoke")
{
MaxParticles(4.0000,4.0000);
StartDelay(0.0000,0.0000);
BurstDelay(0.0250, 0.0250);
BurstCount(1.0000,1.0000);
MaxLodDist(50.0000);
MinLodDist(10.0000);
BoundingRadius(5.0);
SoundName("")
Size(1.0000, 1.0000);
Hue(255.0000, 255.0000);
Saturation(255.0000, 255.0000);
Value(255.0000, 255.0000);
Alpha(255.0000, 255.0000);
Spawner()
{
Spread()
{
PositionX(-2.6250,2.6250);
PositionY(-2.6250,2.6250);
PositionZ(-2.6250,2.6250);
}
Offset()
{
PositionX(-0.1313,0.1313);
PositionY(-0.1313,0.1313);
PositionZ(-0.1313,0.1313);
}
PositionScale(0.0000,0.0000);
VelocityScale(2.6250,2.6250);
InheritVelocityFactor(0.2000,0.2000);
Size(0, 1.3125, 1.8375);
Hue(0, 12.0000, 20.0000);
Saturation(0, 5.0000, 10.0000);
Value(0, 200.0000, 220.0000);
Alpha(0, 0.0000, 0.0000);
StartRotation(0, -20.0000, 20.0000);
RotationVelocity(0, -20.0000, 20.0000);
FadeInTime(0.0000);
}
Transformer()
{
LifeTime(1.5000);
Position()
{
LifeTime(1.5000)
Scale(0.0000);
}
Size(0)
{
LifeTime(2.0000)
Scale(6.0000);
}
Color(0)
{
LifeTime(0.1000)
Move(0.0000,0.0000,0.0000,255.0000);
Next()
{
LifeTime(1.4000)
Move(0.0000,0.0000,0.0000,-255.0000);
}
}
}
Geometry()
{
BlendMode("NORMAL");
Type("PARTICLE");
Texture("thicksmoke3");
}
}
}
}
[/code]
ParticleEmitter("Smoke")
{
MaxParticles(-1.0000,-1.0000);
StartDelay(0.0000,0.0000);
BurstDelay(0.0100, 0.0100);
BurstCount(1.0000,1.0000);
MaxLodDist(1000.0000);
MinLodDist(800.0000);
BoundingRadius(30.0);
SoundName("")
Size(1.0000, 1.0000);
Hue(255.0000, 255.0000);
Saturation(255.0000, 255.0000);
Value(255.0000, 255.0000);
Alpha(255.0000, 255.0000);
Spawner()
{
Circle()
{
PositionX(-1.0000,1.0000);
PositionY(-1.0000,1.0000);
PositionZ(-1.0000,1.0000);
}
Offset()
{
PositionX(0.0000,0.0000);
PositionY(0.0000,0.0000);
PositionZ(0.0000,0.0000);
}
PositionScale(0.0000,0.0000);
VelocityScale(0.0000,0.0000);
InheritVelocityFactor(0.0000,0.0000);
Size(0, 0.2000, 0.2500);
Red(0, 255.0000, 255.0000);
Green(0, 50.0000, 50.0000);
Blue(0, 50.0000, 50.0000);
Alpha(0, 255.0000, 255.0000);
StartRotation(0, 90.0000, 90.0000);
RotationVelocity(0, 0.0000, 1.0000);
FadeInTime(0.0000);
}
Transformer()
{
LifeTime(0.0500);
Position()
{
LifeTime(1.5000)
Scale(0.0000);
}
Size(0)
{
LifeTime(1.0000)
Scale(0.1000);
}
Color(0)
{
LifeTime(0.0100)
Move(0.0000,0.0000,0.0000,255.0000);
Next()
{
LifeTime(0.0900)
Move(0.0000,0.0000,0.0000,-255.0000);
}
}
}
Geometry()
{
BlendMode("NORMAL");
Type("STREAK");
Texture("com_sfx_smoketrail");
ParticleEmitter("BlackSmoke")
{
MaxParticles(4.0000,4.0000);
StartDelay(0.0000,0.0000);
BurstDelay(0.0250, 0.0250);
BurstCount(1.0000,1.0000);
MaxLodDist(50.0000);
MinLodDist(10.0000);
BoundingRadius(5.0);
SoundName("")
Size(1.0000, 1.0000);
Hue(255.0000, 255.0000);
Saturation(255.0000, 255.0000);
Value(255.0000, 255.0000);
Alpha(255.0000, 255.0000);
Spawner()
{
Spread()
{
PositionX(-2.6250,2.6250);
PositionY(-2.6250,2.6250);
PositionZ(-2.6250,2.6250);
}
Offset()
{
PositionX(-0.1313,0.1313);
PositionY(-0.1313,0.1313);
PositionZ(-0.1313,0.1313);
}
PositionScale(0.0000,0.0000);
VelocityScale(2.6250,2.6250);
InheritVelocityFactor(0.2000,0.2000);
Size(0, 1.3125, 1.8375);
Hue(0, 12.0000, 20.0000);
Saturation(0, 5.0000, 10.0000);
Value(0, 200.0000, 220.0000);
Alpha(0, 0.0000, 0.0000);
StartRotation(0, -20.0000, 20.0000);
RotationVelocity(0, -20.0000, 20.0000);
FadeInTime(0.0000);
}
Transformer()
{
LifeTime(1.5000);
Position()
{
LifeTime(1.5000)
Scale(0.0000);
}
Size(0)
{
LifeTime(2.0000)
Scale(6.0000);
}
Color(0)
{
LifeTime(0.1000)
Move(0.0000,0.0000,0.0000,255.0000);
Next()
{
LifeTime(1.4000)
Move(0.0000,0.0000,0.0000,-255.0000);
}
}
}
Geometry()
{
BlendMode("NORMAL");
Type("PARTICLE");
Texture("thicksmoke3");
}
}
}
}
[/code]
I'm pretty sure this is everything, so if you have any issues, tell me.

