BulletDamageProfile
Optional shared gameplay damage data associated with ammunition.
Source: src/Ballistics/BulletDamageProfile.cs. This ScriptableObject is in IE.RSB. Create one with Create → RSB → Bullet Damage Profile, then assign it to a bullet asset's Gameplay Damage → Damage Profile field.
| Member | Type / access | Meaning |
|---|---|---|
BaseDamage | float, read-only | Non-negative base damage in game-defined points; a new profile starts at 25. |
Configure Base Damage in the Inspector. Read the profile through BulletProperties.DamageProfile, which is null when no profile is assigned. Hit records retain that bullet asset through BulletPoint.m_properties.
BulletDamageProfile profile = point.m_properties != null
? point.m_properties.DamageProfile
: null;
if (profile != null)
{
float damage = profile.BaseDamage;
// Apply game-specific modifiers and pass damage to your health system.
}The profile supplies data only. The ballistics simulator does not consume it, apply health damage or derive its value from kinetic energy. Armor, body-part multipliers, falloff and damage deduplication are game logic. See Ammunition damage for a complete hit listener.
Profiles may be shared by several bullet assets. Their values are not frozen when a shot fires; changing an asset can affect in-flight shots. The class is not sealed, so you can derive a profile with additional metadata. If you override OnValidate, call the base implementation to retain its non-negative damage validation.