Stepped Stats

What it is

A stepped stat is a weapon field whose value changes at discrete level breakpoints instead of growing along a continuous curve. The field is declared as an array of [minLevel, value] pairs, and only those listed levels mark a change — every level in between holds the previous value.

The resolution rule

The engine walks the array of pairs in order and tracks the value attached to the highest entry whose minLevel is less than or equal to the current weapon level. The first pair’s value is used as the starting point before the walk begins, so a level that falls below the lowest declared minLevel resolves to the first pair’s value.

When a fractional level is supplied — for example a partially-leveled stat between integer levels — the engine resolves the floor and ceiling separately, then picks the ceiling value with probability equal to the fractional remainder and the floor value otherwise. If floor and ceiling resolve to the same value, that value is returned directly.

Which fields use it

Every weapon field below is typed as a stepped stat. The “Used by” column lists the weapons that declare values for the field; fields with no current usage are typed for future weapons.

FieldWhat it controlsUsed by
projectileCountNumber of projectiles fired per shotBurst, Missile, Shotgun
shellCountNumber of shells produced per fire event for arc-mortar and artillery weaponsCannon, Mortar, plus two legendaries
chainCountNumber of additional targets a chain jump can hitLightning
burstPatternNumber of rounds in a burst-fire cadenceRevolver
seekerCountNumber of seeker submunitions spawnedRevolver
starCountStars per cast for the orbit-ring legendaryStar Halo
emberCountEmbers produced per fire event for flame weaponsDefy, Flame
bladeCountOrbiting blades active around the shipFire Ring, Sweep
beamDecayExplosionsCascade explosions spawned along a decaying beam pathRailstorm
pelletCountPellets fired by shotgun-family weapons(typed only, no current usage)
maxActiveMaximum number of simultaneously-active instances of the weapon’s projectile(typed only, no current usage)

Interaction with scaling curves

Stepped stats and curve-based stats coexist on the same weapon. A field is either one or the other — never both — because the two systems are evaluated differently. A field declared as [minLevel, value] pairs is resolved by the stepped lookup. A field declared with a base and scaling number is resolved by the linear formula and remapped through the weapon’s scaling curve. Stepped stats ignore the weapon’s scalingCurve field; their growth shape is fully defined by the breakpoints in the array.