In my map Spaceship, I do have storm with no damage , but I SetHealth in a drain health loop. My damage step is different because over time the ship shields provide less and less protection:
if (Character := Agent.GetFortCharacter[]):
Health := Character.GetHealth()
#Logger.Debug("Health {Health}")
DamageStep := (LostShieldPercentage * LostShieldPercentage / 645.0) + 2.0
Logger.Debug("DamageStep {DamageStep}")
Character.SetHealth(Health - DamageStep)
if (Health < 3.0):
Character.Damage(1000.0)