ships.Interface.OutfittingModuleStats - Elite-Dangerous-Almanac/Almanac-Core GitHub Wiki
@elite-dangerous-almanac/core / ships / OutfittingModuleStats
Defined in: src/ships/modules.ts:512
Sparse performance and capability fields carried by an outfitting module.
Every field is optional because no module family uses every stat. Use the guards in
./module-capabilities when a calculation needs a complete group. The interface is
also useful for functions that accept or return engineered stat snapshots without
requiring a module's identity fields. Masses are tonnes, power is megawatts, jump
ranges are light-years, and weapon ranges are metres.
import type { OutfittingModuleStats } from '@elite-dangerous-almanac/core/ships/modules';
const engineered: OutfittingModuleStats = { mass: 18.4, powerDraw: 0.69 };
readonlyoptionalalwaysPowered?:boolean
Defined in: src/ships/modules.ts:769
true when a hardpoint-mounted module draws its power continuously.
Weapons and most utility fittings only draw power while the hardpoints are
deployed; shield boosters, chaff, heat sinks, point defence, caustic sinks and
shutdown field neutralisers draw theirs all the time, and carry this flag.
Absent on every core/internal module, which are always powered anyway.
See powerDraw and ./power.
readonlyoptionalammoMaximum?:number
Defined in: src/ships/modules.ts:826
Reserve rounds to reload from — the magazine is not counted in it, exactly as the
journal's AmmoInHopper does not count it. Absent beside a clipSize means
nothing limits the refills (the mining Abrasion Blaster); absent beside no clip
either means the module takes no ammunition at all, as the lasers do.
readonlyoptionalarmourPiercing?:number
Defined in: src/ships/modules.ts:843
Armour piercing rating. Damage to a hull is scaled by
min(1, armourPiercing / hardness) against a hull of that Ship.hardness.
readonlyoptionalbootTime?:number
Defined in: src/ships/modules.ts:523
Boot time from power-on, in seconds.
readonlyoptionalburstInterval?:number
Defined in: src/ships/modules.ts:804
Seconds between shots — between bursts on a burst-fire weapon.
readonlyoptionalburstRateOfFire?:number
Defined in: src/ships/modules.ts:808
Shots per second within a burst.
readonlyoptionalburstRounds?:number
Defined in: src/ships/modules.ts:806
Shots in one burst. Absent (or 1) on a weapon that does not fire in bursts.
readonlyoptionalcabinCapacity?:number
Defined in: src/ships/modules.ts:634
Passenger cabin: capacity, in passenger berths.
readonlyoptionalcargoCapacity?:number
Defined in: src/ships/modules.ts:632
Cargo rack: capacity, in tonnes.
readonlyoptionalcausticResistance?:number
Defined in: src/ships/modules.ts:669
Caustic resistance, as a fraction (negative is a weakness).
readonlyoptionalchargeTime?:number
Defined in: src/ships/modules.ts:810
Seconds spent charging before a shot (rail guns), if any.
readonlyoptionalclipSize?:number
Defined in: src/ships/modules.ts:819
Rounds in a clip before reloading. Absent on weapons that never reload.
A capacity, and the largest AmmoInClip a journal can report for the module.
ammunitionCapacity in ./ammunition reads it together with
OutfittingModule.ammoMaximum.
readonlyoptionaldamage?:number
Defined in: src/ships/modules.ts:779
Damage per round — or per second on a continuous-fire (beam) weapon.
readonlyoptionaldamageComponents?:DamageComponents
Defined in: src/ships/modules.ts:787
Exact damage amounts when in-game verification exposes distinct components. On effective fitted stats these scale with engineered total damage, and are absent when engineering converts the weapon to a new fractional damage distribution.
readonlyoptionaldamageDistribution?:DamageDistribution
Defined in: src/ships/modules.ts:781
How damage splits across the damage types.
readonlyoptionaldistributorDraw?:number
Defined in: src/ships/modules.ts:836
Weapons-capacitor draw, in megawatts — per shot, or per second on a
continuous-fire weapon. Shield generators carry it too, as the systems-capacitor
cost of one MJ per second of regeneration — the stat the journal calls
EnergyPerRegen rather than DistributorDraw, and the one Hi-Cap, Lo-draw and
Force Block move.
readonlyoptionalengineeringLocked?:boolean
Defined in: src/ships/modules.ts:689
Whether this particular resolved article accepts no further engineering.
Stock module catalogues omit this field. getPreEngineeredStats sets it on final
pre-engineered Guardian weapons so a fitted article exposes an empty engineering
menu and rejects both blueprints and experimental effects.
readonlyoptionalengineHeatRate?:number
Defined in: src/ships/modules.ts:558
Thrusters: waste heat generated per second at top speed.
The stat the journal calls EngineHeatRate — every Dirty Drive Tuning roll
raises it and every Clean Drive roll lowers it. Frontier's own units: a bare
number the ship's heat model consumes, not a temperature or a percentage.
readonlyoptionalenginesCapacity?:number
Defined in: src/ships/modules.ts:619
Power distributor: ENG capacitor capacity.
readonlyoptionalenginesRecharge?:number
Defined in: src/ships/modules.ts:621
Power distributor: maximum ENG recharge at four pips, in megajoules per second.
readonlyoptionalexplosiveResistance?:number
Defined in: src/ships/modules.ts:667
Explosive resistance, as a fraction (negative is a weakness).
readonlyoptionalfalloffRange?:number
Defined in: src/ships/modules.ts:850
Range at which damage starts to drop off, in metres.
readonlyoptionalfsdHeatRate?:number
Defined in: src/ships/modules.ts:577
Frame shift drive: waste heat generated per second while charging a jump.
The journal's FSDHeatRate, in the same units as
OutfittingModule.engineHeatRate. It is what Faster Boot Sequence trades
away, what Shielded improves, and the whole of the Deep Charge / Thermal Spread
(special_fsd_cooled) experimental effect. A drive's size sets it — every rating
of a size shares one value, and a Supercruise Overcharge (SCO) drive matches the
plain drive of the same size.
readonlyoptionalfuelCapacity?:number
Defined in: src/ships/modules.ts:630
Fuel tank: capacity, in tonnes.
readonlyoptionalfuelMul?:number
Defined in: src/ships/modules.ts:563
FSD: rating (linear) fuel constant.
readonlyoptionalfuelPower?:number
Defined in: src/ships/modules.ts:565
FSD: size (power) fuel constant.
readonlyoptionalguardianZoneResistance?:boolean
Defined in: src/ships/modules.ts:680
Whether Anti-Guardian Zone Resistance protects this Guardian module from a Thargoid anti-Guardian field.
A sparse capability flag rather than a percentage: true means the protection is
inherent or the grade-1 blueprint grants it, while absence means it is not granted.
The Guardian Nanite Torpedo Pylons carry it inherently; read engineered
protection from a fitted module's FittedModule.effectiveStats.
readonlyoptionalheatEfficiency?:number
Defined in: src/ships/modules.ts:612
Power plant: heat efficiency (lower runs cooler).
readonlyoptionalhullBoost?:number
Defined in: src/ships/modules.ts:700
Armour: the hull hit points this bulkhead adds, as a fraction of the hull's
Ship.baseArmour on top of it — 0.8 (lightweight alloy) means
baseArmour × 1.8, 2.5 means baseArmour × 3.5.
Carried by the ship-specific armour modules, which are the core-category
records with a OutfittingModule.ship. List a hull's five (or, on the
Caspian Explorer, six) options with getBulkheadsForShip.
readonlyoptionalhullReinforcement?:number
Defined in: src/ships/modules.ts:702
Hull reinforcement package: hull hit points added.
readonlyoptionalintegrity?:number
Defined in: src/ships/modules.ts:519
Integrity (hit points against module damage).
readonlyoptionalinterdictorFacingLimit?:number
Defined in: src/ships/modules.ts:752
FSD interdictor: maximum target angle off boresight, in degrees.
readonlyoptionalinterdictorRange?:number
Defined in: src/ships/modules.ts:757
FSD interdictor: maximum target range, in seconds to intercept — the units the game measures a supercruise separation in, not a distance.
readonlyoptionaljitter?:number
Defined in: src/ships/modules.ts:865
Maximum aim deviation, in degrees.
readonlyoptionaljumpBoost?:number
Defined in: src/ships/modules.ts:607
Guardian FSD Booster: flat jump-range bonus, in light-years.
readonlyoptionalkineticResistance?:number
Defined in: src/ships/modules.ts:663
Kinetic resistance, as a fraction (0.4 = 40% resisted, -0.2 = 20% weaker).
readonlyoptionalmass?:number
Defined in: src/ships/modules.ts:517
Mass, in tonnes.
readonlyoptionalmaxFuel?:number
Defined in: src/ships/modules.ts:561
FSD: maximum fuel per jump, in tonnes.
readonlyoptionalmaximumRange?:number
Defined in: src/ships/modules.ts:848
Maximum effective range, in metres. A weapon does no damage beyond it; on a non-scanner utility module, it is the effect's reach.
readonlyoptionalmaxMass?:number
Defined in: src/ships/modules.ts:530
Maximum mass for the performance curve, in tonnes.
readonlyoptionalmaxMultiplier?:number
Defined in: src/ships/modules.ts:536
Maximum performance multiplier, reached at minMass.
readonlyoptionalmaxRotationMultiplier?:number
Defined in: src/ships/modules.ts:548
Thruster maximum rotation multiplier, reached at minMass.
readonlyoptionalmaxSpeedMultiplier?:number
Defined in: src/ships/modules.ts:542
Thruster maximum top-speed multiplier, reached at minMass.
readonlyoptionalminMass?:number
Defined in: src/ships/modules.ts:528
Minimum mass for the performance curve, in tonnes.
readonlyoptionalminMultiplier?:number
Defined in: src/ships/modules.ts:534
Minimum performance multiplier, reached at maxMass.
readonlyoptionalminRotationMultiplier?:number
Defined in: src/ships/modules.ts:546
Thruster minimum rotation multiplier, reached at maxMass.
readonlyoptionalminSpeedMultiplier?:number
Defined in: src/ships/modules.ts:540
Thruster minimum top-speed multiplier, reached at maxMass.
readonlyoptionalmoduleProtection?:number
Defined in: src/ships/modules.ts:709
Module reinforcement package: the fraction of module damage it absorbs
(0.3 = 30%). Protects the modules, not the hull.
readonlyoptionaloptMass?:number
Defined in: src/ships/modules.ts:526
Optimised mass, in tonnes — thrusters, shield generators, and FSDs.
readonlyoptionaloptMultiplier?:number
Defined in: src/ships/modules.ts:532
Performance multiplier at optMass — thruster speed or shield strength.
readonlyoptionaloptRotationMultiplier?:number
Defined in: src/ships/modules.ts:544
Thruster rotation multiplier at optMass, when distinct from acceleration.
readonlyoptionaloptSpeedMultiplier?:number
Defined in: src/ships/modules.ts:538
Thruster top-speed multiplier at optMass, when distinct from acceleration.
readonlyoptionalpowerCapacity?:number
Defined in: src/ships/modules.ts:610
Power plant: power generated, in megawatts.
readonlyoptionalpowerDraw?:number
Defined in: src/ships/modules.ts:521
Power draw, in megawatts.
readonlyoptionalprobeRadius?:number
Defined in: src/ships/modules.ts:747
Detailed Surface Scanner: probe radius, as a percentage (20 = the stock
20%).
Frontier stores this one as a percentage rather than a fraction, and the journal
reports it that way too — a grade 4 Expanded Probe Scanning Radius roll takes the
stock 20 to 28. The journal spells the label DSS_PatchRadius; the blueprint
recipe spells it ProbeRadius, and both resolve here.
readonlyoptionalprojectileRange?:ProjectileRangeBoundaries
Defined in: src/ships/modules.ts:852
Projectile boundary parameters; these are not effective distances in metres.
readonlyoptionalrateOfFire?:number
Defined in: src/ships/modules.ts:802
Shots per second with the burst pattern folded in — the journal's RateOfFire.
Absent on continuous-fire weapons (beam and mining lasers), whose damage is
already per second. Excludes charge and reload time; OutfittingModule.chargeTime
is the delay before a shot lands, while OutfittingModule.clipSize and
OutfittingModule.reloadTime give the sustained rate.
readonlyoptionalrefuelRate?:number
Defined in: src/ships/modules.ts:628
Fuel scoop: scoop rate, in tonnes per second.
readonlyoptionalreloadTime?:number
Defined in: src/ships/modules.ts:828
Seconds to reload a clip.
readonlyoptionalroundsPerShot?:number
Defined in: src/ships/modules.ts:792
Rounds fired per shot, for the weapons that fire several at once (fragment cannons, shard cannons). Absent means one round per shot.
readonlyoptionalscanAngle?:number
Defined in: src/ships/modules.ts:734
Scan cone half-angle, in degrees — how far off boresight a target can sit and still be scanned. Wide Angle raises it; Long Range and Lightweight narrow it.
readonlyoptionalscannerRange?:number
Defined in: src/ships/modules.ts:729
Scan range, in metres.
On a utility scanner it is the distance the scan reaches. On a core sensor suite it is the range at which a contact with typical emissions resolves — the "typical sensor range" the outfitting panel shows in kilometres and the journal reports in metres, not the suite's absolute detection ceiling.
This is the sole distance field on utility scanners and sensor suites. A journal
may spell its modifier ScannerRange or Range; both labels resolve here. Weapon
distance is the separate OutfittingModule.maximumRange field.
readonlyoptionalscanTime?:number
Defined in: src/ships/modules.ts:736
Seconds a scan takes to complete. Utility scanners only.
readonlyoptionalshieldAddition?:number
Defined in: src/ships/modules.ts:704
Guardian shield reinforcement package: shield megajoules added.
readonlyoptionalshieldBankDuration?:number
Defined in: src/ships/modules.ts:654
Shield cell bank: seconds one cell keeps reinforcing for.
readonlyoptionalshieldBankHeat?:number
Defined in: src/ships/modules.ts:650
Shield cell bank: waste heat generated by firing one cell.
readonlyoptionalshieldBankReinforcement?:number
Defined in: src/ships/modules.ts:648
Shield cell bank: shield megajoules restored per second while a cell runs.
readonlyoptionalshieldBankSpinUp?:number
Defined in: src/ships/modules.ts:652
Shield cell bank: seconds between firing a cell and the shields starting to rise.
readonlyoptionalshieldBoost?:number
Defined in: src/ships/modules.ts:641
Shield booster: shield strength bonus, as a fraction (0.04 = +4%).
readonlyoptionalshieldBrokenRegenRate?:number
Defined in: src/ships/modules.ts:639
Shield generator: broken (down) regeneration rate, MJ per second.
readonlyoptionalshieldRegenRate?:number
Defined in: src/ships/modules.ts:637
Shield generator: regeneration rate, MJ per second.
readonlyoptionalshotSpeed?:number
Defined in: src/ships/modules.ts:863
Projectile speed, in metres per second.
Absent on the weapons that have no projectile to speed up — the pulse, burst, beam and mining lasers, rail guns, Gauss cannons and mine launchers all hit (or drop) where they are aimed. No registry publishes a figure for them because there is none, so Long Range and Focused simply leave their shot speed alone; see ShipLoadout.applyBlueprint.
readonlyoptionalsupercruiseOvercharge?:boolean
Defined in: src/ships/modules.ts:605
Frame shift drive: true on a Supercruise Overcharge drive, the line the
outfitting screen labels SCO.
A sparse capability flag on the Overcharge drives and absent everywhere else,
including on the ordinary drives of the same sizes and ratings. Read it rather
than matching Int_Hyperdrive_Overcharge on the symbol: the capability is the
record's to state, so a consumer that reads the flag stays correct for any
article the catalogue flags, whatever Frontier names it.
The two lines share every jump constant this library models, so the flag changes no jump calculation; it is what an outfitting list filters and labels on, and it is what makes a drive unfittable below its own size — an SCO drive takes the mount of its own class and no larger one, where an ordinary drive may be underfitted. The overcharged supercruise behaviour itself — the boosted acceleration and the extra fuel it burns — is in-flight behaviour the game publishes no figures for, and the library models none of it.
import { getModuleBySymbol } from '@elite-dangerous-almanac/core/ships/modules';
getModuleBySymbol('Int_Hyperdrive_Overcharge_Size5_Class5')?.supercruiseOvercharge; // -> true
getModuleBySymbol('Int_Hyperdrive_Size5_Class5')?.supercruiseOvercharge; // -> undefined
readonlyoptionalsystemsCapacity?:number
Defined in: src/ships/modules.ts:623
Power distributor: SYS capacitor capacity.
readonlyoptionalsystemsRecharge?:number
Defined in: src/ships/modules.ts:625
Power distributor: maximum SYS recharge at four pips, in megajoules per second.
readonlyoptionalthermalLoad?:number
Defined in: src/ships/modules.ts:838
Heat generated — per shot, or per second on a continuous-fire weapon.
readonlyoptionalthermalResistance?:number
Defined in: src/ships/modules.ts:665
Thermal resistance, as a fraction (negative is a weakness).
readonlyoptionalweaponsCapacity?:number
Defined in: src/ships/modules.ts:615
Power distributor: WEP capacitor capacity.
readonlyoptionalweaponsRecharge?:number
Defined in: src/ships/modules.ts:617
Power distributor: maximum WEP recharge at four pips, in megajoules per second.