The max damage cap can leave players at very low decimal HP instead of a whole number

Summary

Depending on the shotgun and rarity hitting the max damage cap can sometimes leave the player/guard/sentry at very low decimal HP instead of a full number.

Please select what you are reporting on:

Creative

What Type of Bug are you experiencing?

Assets

Steps to Reproduce

Step 1. Grab a shotgun that can reach the max damage cap, you may have to grab another weapon that deals enough damage to reach 200 total damage. (For example an Epic Ranger Shotgun can hit for 160, you can deal the last 40 damage by hitting 2 shots with an Uncommon Combat Assault Rifle.)

Step 2. Get either a player, guard, or sentry and make sure they are at max HP and Shield

Step 3. Deal 200 damage to the player, guard, or sentry by hitting a headshot with the shotgun and using any other weapons to deal the rest of the damage.

Expected Result

The player, guard, or sentry should be eliminated since they should have no HP left

Observed Result

Depending on the shotgun and rarity (Using the Epic Ranger Shotgun for example) it’s not able to eliminate the player, guard, or sentry, even though it should have done enough damage to eliminate. It leaves them at very low enough HP where a single shot from a Paint Launcher will be able to eliminate the target (Paint Launchers deal 0.000625 damage per shot).

Platform(s)

PS5, PS4, PC, Xbox One, Nintendo Switch, Nintendo Switch 2

Video

Additional Notes

Sometimes it’s able to either eliminate or not eliminate if the target is at 200 HP and no shield. Some shotguns can eliminate both, one or the other, or neither.

Other examples (shown in the video)

Uncommon Pump Shotgun (170) + 30 damage: Able to eliminate 100HP + 100 Shield, But unable to eliminate 200HP (Incorrect)

Epic Pump Shotgun (180) + 20 damage: Able to eliminate both 100HP + 100 Shield and 200HP (Correct)

Epic Striker Pump Shotgun (180) + 20 damage: Unable to eliminate both 100HP + 100 Shield and 200HP (Incorrect)

UPDATE 11/11/25: With the Ranger shotgun’s headshot being buffed by 5 damage you will need to add 1 shot from a Common Submachine gun (160 + 15 + 20 = 200). The result is the same as the Observed Result, as they are still left on low decimal HP.

1 Like

This is caused due to the damage and health values (across the entire game, including weapon stats, environment/gameplay modifiers and player attributes) being floats, BUT the displayed values (ex. Damage Numbers, Health Bar and so on) being rounded to integers instead…

This causes for example (imagine the following scenario):

  • A weapon deal “199.6” of damage (may be due to damage reduction based on distance, floating point calculation and so on)
  • The attacker see the “200” damage displayed on the indicator instead of “199.6” (since it visually rounds up to integer when displayed)
  • The victim see 1 health shown on the health bar instead of “0.4” (is also rounded up to integer when displaying the value)

This is a visual issue since both players can’t know the real value for damage dealt or current health of the player (like I said on this example, the player would have “0.4” health left and damage dealt would be “199.6”). This is what causes the confusion like “should not the player be death?”


Internally, the computed and stored values are correct as expected (The game uses floats to have more granular control and precision, support for bigger numbers, adjustments based on different weapon fire rates and other stats/modifiers. Maybe even considering server tick delta times for competitive gameplay…).

Just the values shown to the players are wrong due to that rounding behavior before displaying it… There are other ways to trigger similar scenarios, including with other weapons/items, fall/environment damage, with verse and so on…


But, related to the “200 health” and “100 health + 100 shield” having different behaviors under same conditions, it may be an actual bug (I believe being related to the “transition” between applying damage to shield, then doing the rest on health).
It may be wrongly computing some math when doing that transition, skipping some decimals for example…

FORT-1001060 is ‘Closed’ as ‘Fixed’. The issue will be addressed in 39.30.