DistToMinDamage Property

Usage:
   ObjectTemplate.DistToMinDamage number

Argument values:

argument 1:    range is 40 to 100; most commonly 100

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, DistToStartLoseDamage

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/Mp18/Objects.con)
   ObjectTemplate.Create HandFireArms Mp18
   ObjectTemplate.ItemIndex 3
   ObjectTemplate.NetworkableInfo HandFireArmsInfo
   ObjectTemplate.ProjectileTemplate Mp40Projectile
   rem ObjectTemplate.setTracerTemplate Tracer_Projectile CRD_UNIFORM/2/4/0
   ObjectTemplate.ProjectilePosition 0/0/0
   ObjectTemplate.HasDynamicShadow 1
   ObjectTemplate.MagSize 32
   ObjectTemplate.NumOfMag 5
   ObjectTemplate.MagType 0
   ObjectTemplate.Reloadtime 4.3
   ObjectTemplate.RoundOfFire 9
   ObjectTemplate.GUIIndex 7
   ObjectTemplate.SetHudAmmoType ATAmmoBar
   ObjectTemplate.SetAmmoBar "Ingame/Magbar_SMG_empty_32x64.tga"
   ObjectTemplate.SetAmmoBarFill "Ingame/Magbar_SMG_full_32x64.tga"
   ObjectTemplate.SetAmmoBarSize 46
   ObjectTemplate.SetAmomBarPosX 4
   ObjectTemplate.SetAmomBarPosY -11
   ObjectTemplate.SetAmomBarTextPosX 8
   ObjectTemplate.SetAmomBarTextPosY 4
   ObjectTemplate.SetCrossHairType CHTCrossHair
   ObjectTemplate.AiTemplate Mp18AI
   ObjectTemplate.ZoomFov 0.6
   ObjectTemplate.AltFireOnce 1
   ObjectTemplate.SoldierZoomFov 0.6
   ObjectTemplate.SoldierZoomPosition -0.05/0.02/0.06
   ObjectTemplate.SoldierCameraPosition -0.01/-0.04/0.09
   ObjectTemplate.AddRootSpeed 0
   ObjectTemplate.AmmoType 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.21/0.25/0
   ObjectTemplate.SetRecoilForceLeftRight CRD_UNIFORM/-0.1/0.1/0
   ObjectTemplate.SetHasRecoilForce 1
   ObjectTemplate.SetGoBackOnRecoil 1
   ObjectTemplate.SetFireDev 2.0 0.35 0.06
   ObjectTemplate.SetDevMod 1.2 1.05 0.9
   ObjectTemplate.SetMinDev 0.4
   ObjectTemplate.SetTurnDev 0 0 0 0
   ObjectTemplate.SetSpeedDev 0.8 0.2 0.2 0.1
   ObjectTemplate.SetMiscDev 2.5 2.5 0.1
   Rem *** Deviation End *****
   ObjectTemplate.FireInCameraDof 1
   ObjectTemplate.LoadSoundScript Sounds/Mp18.ssc
   ObjectTemplate.CreateSkeleton animations/Mp18.ske
   ObjectTemplate.UseSkeletonPartAsMain Mp18
   ObjectTemplate.AddTemplate Mp18Lod
   ObjectTemplate.AddTemplate e_MuzzThomp
   ObjectTemplate.SetInputId -1
   ObjectTemplate.Startoneffects 0
   ObjectTemplate.SetPosition 0/0.058/0.3
   ObjectTemplate.SetRotation 0/0/0
   ObjectTemplate.AddTemplate e_Shell9mm
   ObjectTemplate.SetInputId -1
   ObjectTemplate.Startoneffects 0
   ObjectTemplate.SetPosition 0/0.02/0.43
   ObjectTemplate.SetRotation 0/0/0


Go to the ObjectTemplate properties list page, ObjectTemplate page, All Properties list, or Main scripting page.