I appreciate the description, but, at the same time, it's not rocket science to parse stacked multipliers to keep them within acceptable ranges. I also don't understand why they'd be doing math to calculate total amount of ammo you can carry then storing how much of that ammo you have as a percentage instead of an integer. That seems like the CRUX of the problem. *rimshot*
That, or it's an ordering problem, but not with the multipliers. If you say "the character died with 50% of the ammo this rocket launcher holds", THEN do the multipliers to determine what the total available was, you're gonna get a different value than if you mathed the total available first, then the percentage. Dollars to donuts this is what's happening. They're applying the percentage of the rocket laucher's default total ammo size when you respawn THEN calculating what the total size can be going foward, not calculating the adjusted total ammo size then giving you the percentage you had of that when you died.
If I think of it, I'll test that. Should be simple to test with a single weapon OR armor that grants bonus heavy ammo capacity.