Usage:
ObjectTemplate.DistToStartLoseDamage
number
Argument values:
argument 1: | range is 20 to 50; most commonly 50 |
Description: A number of hand weapons, namely the medics' submachineguns, the Breda and Bren, the shotgun, and the pistols, have their damage drop off with range. Call this drop-off factor the DistanceMod. For all other weapons this term is always 1.0, i.e. the range does not affect the result. The important factors here are in the objects/handweapons/Common/Weapons.con file. Here is a typical entry, for the shotgun:
ObjectTemplate.MinDamage 0.5 ObjectTemplate.DistToStartLoseDamage 40 ObjectTemplate.DistToMinDamage 80
The DistToStartLoseDamage specifies the distance (in meters) at which the damage of the projectile will start to decrease. The MinDamage value is the lowest ratio possible for damage. The DistToMinDamage is the distance beyond which the projectile does its minimum amount of damage. In other words, if a shotgun pellet hits at closer than 40 meters, the DistanceMod is 1.0, beyond 80 meters the DistanceMod is 0.5, between these two the DistanceMod drops linearly from 1.0 to 0.5. Submachineguns start to lose damage at 50 meters and drop to 0.5 at 100 meters. The pistols start to drop at 20 meters and drop to 0.5 at 40 meters. When the distance is between DistToStartLoseDamage and DistToMinDamage, the equation is this:
DistanceMod = MinDamage + (1-MinDamage) * (DistToMinDamage - distance) / (DistToMinDamage - DistToStartLoseDamage)
So for a shotgun pellet hitting at, say, 50 meters, the value would be:
DistanceMod = 0.5 + (1-0.5) * (80 - 50) / (80 - 40) = 0.875
Related properties: DistToMinDamage
Used in object types (and how often in each type): HandFireArms (9%), Projectile (4%)
Used in a total of 12 .con files: Objects.con, Projectile.con, Weapons.con
Parent directory of these .con files: objects/HandWeapons
Example: (from objects/HandWeapons/BrenLMG/Objects.con)
ObjectTemplate.Create HandFireArms BrenLMG
ObjectTemplate.ItemIndex 3
ObjectTemplate.NetworkableInfo HandFireArmsInfo
ObjectTemplate.ProjectileTemplate barProjectile
rem ObjectTemplate.setTracerTemplate Tracer_Projectile CRD_UNIFORM/2/4/0
ObjectTemplate.ProjectilePosition 0/0/0
ObjectTemplate.HasDynamicShadow 1
ObjectTemplate.MagSize 30
ObjectTemplate.NumOfMag 5
ObjectTemplate.MagType 0
ObjectTemplate.Reloadtime 4.3
ObjectTemplate.RoundOfFire 9
ObjectTemplate.GUIIndex 7
ObjectTemplate.SetHudAmmoType ATAmmoBar
ObjectTemplate.SetAmmoBar "Ingame/Magbar_Sg44_empty_32x64.tga"
ObjectTemplate.SetAmmoBarFill "Ingame/Magbar_Sg44_full_32x64.tga"
ObjectTemplate.SetAmmoBarSize 64
ObjectTemplate.SetAmmoBarPosX 3
ObjectTemplate.SetAmmoBarPosY -11
ObjectTemplate.SetAmmoBarTextPosX 8
ObjectTemplate.SetAmmoBarTextPosY 4
ObjectTemplate.SetCrossHairType CHTCrossHair
ObjectTemplate.AiTemplate BrenLMGAI
ObjectTemplate.ZoomFov 0.6
ObjectTemplate.AltFireOnce 1
ObjectTemplate.SoldierZoomFov 0.6
ObjectTemplate.SoldierZoomPosition 0.05/-0.05/0.15
ObjectTemplate.SoldierCameraPosition 0.02/-0.04/0.09
ObjectTemplate.AddRootSpeed 0
ObjectTemplate.AmmoType 1
rem ObjectTemplate.allowReloadOnEmptyClipOnly 1
ObjectTemplate.MinDamage 0.5
ObjectTemplate.DistToStartLoseDamage 50
ObjectTemplate.DistToMinDamage 100
rem ObjectTemplate.autoReload 1
Rem *** Deviation Begin *****
ObjectTemplate.Velocity 1000
ObjectTemplate.SetRecoilForceUp CRD_UNIFORM/0.28/0.32/0
ObjectTemplate.SetRecoilForceLeftRight CRD_UNIFORM/-0.2/0.2/0
ObjectTemplate.SetHasRecoilForce 1
ObjectTemplate.SetGoBackOnRecoil 1
rem ** FireDev harge large a reticule/how quickly it expands/how quickly it returns
rem ** setDevMod(float devModStand, float devModCrouch, float devModLie)
rem ** Mindev sets the size of the reticule/deviation of bullets
rem ** Turndev setTurnDev(float max, float addPitch, float addYaw, float sub)
rem ** SpeedDev setSpeedDev(float max, float addForward, float addStrafe, float sub)
rem ** MiscDev setMiscDev(float max, float addJump, float sub)
ObjectTemplate.SetFireDev 3.6 0.3 0.05
ObjectTemplate.SetDevMod 1.1 0.85 0.1
ObjectTemplate.SetMinDev 0.7
ObjectTemplate.SetTurnDev 0 0 0 0
ObjectTemplate.SetSpeedDev 2.3 0.2 0.2 0.1
ObjectTemplate.SetMiscDev 2.5 2.5 0.1
Rem *** Deviation End *****
ObjectTemplate.FireInCameraDof 1
ObjectTemplate.LoadSoundScript Sounds/brenLMG.ssc
ObjectTemplate.CreateSkeleton animations/BrenLMG.ske
ObjectTemplate.UseSkeletonPartAsMain Base
ObjectTemplate.AddTemplate BrenLMGLod
ObjectTemplate.AddTemplate e_MuzzThomp
ObjectTemplate.SetPosition 0/0.03/0.6
ObjectTemplate.SetRotation 0/0/0
ObjectTemplate.AddTemplate e_Shell9mm
ObjectTemplate.SetPosition 0/0.02/0.13
ObjectTemplate.SetRotation 0/0/0
Go to the ObjectTemplate properties list page, ObjectTemplate page, All Properties list, or Main scripting page.