Usage:
ObjectTemplate.MinDamage
number
Argument values:
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/WalterP38/Objects.con)
ObjectTemplate.Create HandFireArms WalterP38
ObjectTemplate.ItemIndex 2
ObjectTemplate.NetworkableInfo HandFireArmsInfo
ObjectTemplate.ProjectileTemplate p38Projectile
ObjectTemplate.ProjectilePosition 0/0/0
ObjectTemplate.HasDynamicShadow 1
ObjectTemplate.MagSize 8
ObjectTemplate.NumOfMag 4
ObjectTemplate.MagType 0
ObjectTemplate.Reloadtime 4
ObjectTemplate.RoundOfFire 6
ObjectTemplate.FireOnce 1
ObjectTemplate.AiTemplate P38AI
ObjectTemplate.ZoomFov 0.7
ObjectTemplate.AltFireOnce 1
ObjectTemplate.SoldierZoomFov 0.5
ObjectTemplate.SoldierZoomPosition -0.01/-0.01/0.1
ObjectTemplate.SoldierCameraPosition 0.02/-0.05/0.2
ObjectTemplate.AmmoType 1
ObjectTemplate.AddRootSpeed 0
ObjectTemplate.MinDamage 0.5
ObjectTemplate.DistToStartLoseDamage 20
ObjectTemplate.DistToMinDamage 40
rem ObjectTemplate.autoReload 1
Rem *** Deviation Begin *****
ObjectTemplate.Velocity 400
ObjectTemplate.SetRecoilForceUp CRD_UNIFORM/0.4/0.6/0
ObjectTemplate.SetRecoilForceLeftRight CRD_UNIFORM/-0.2/-0.2/0
ObjectTemplate.SetHasRecoilForce 1
ObjectTemplate.SetGoBackOnRecoil 1
ObjectTemplate.SetFireDev 2.5 1.5 0.07
ObjectTemplate.SetMinDev 0.2
ObjectTemplate.SetTurnDev 0 0 0 0
ObjectTemplate.SetSpeedDev 1.5 0.2 0.2 0.1
ObjectTemplate.SetMiscDev 2.5 2.5 0.1
Rem *** Deviation End *****
ObjectTemplate.FireInCameraDof 1
ObjectTemplate.LoadSoundScript Sounds/WalterP38.ssc
ObjectTemplate.GUIIndex 1
ObjectTemplate.SetHudAmmoType ATAmmoBar
ObjectTemplate.SetAmmoBar "Ingame/Magbar_Pistol_empty_32x64.tga"
ObjectTemplate.SetAmmoBarFill "Ingame/Magbar_Pistol_full_32x64.tga"
ObjectTemplate.SetAmmoBarSize 41
ObjectTemplate.SetAmomBarPosX 5
ObjectTemplate.SetAmomBarPosY -11
ObjectTemplate.SetAmomBarTextPosX 6
ObjectTemplate.SetAmomBarTextPosY 4
ObjectTemplate.SetCrossHairType CHTCrossHair
ObjectTemplate.CreateSkeleton animations/WalterP38.ske
ObjectTemplate.UseSkeletonPartAsMain WalterP38
ObjectTemplate.AddTemplate WalterP38Lod
ObjectTemplate.AddTemplate e_MuzzGun
ObjectTemplate.SetInputId -1
ObjectTemplate.Startoneffects 0
ObjectTemplate.SetPosition 0.005/0.03/0.165
ObjectTemplate.SetRotation 0/0/0
ObjectTemplate.AddTemplate e_Shell9mm
ObjectTemplate.SetInputId -1
ObjectTemplate.Startoneffects 0
ObjectTemplate.SetPosition 0.01/0.02/0.28
ObjectTemplate.SetRotation 0/0/0
Go to the ObjectTemplate
properties list page, ObjectTemplate
page, All
Properties list, or Main
scripting page.