@elite-dangerous-almanac/core 0.2.11 → 0.2.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/PROVENANCE/astro/SOURCES.md +18 -0
- package/PROVENANCE/commodities/SOURCES.md +2 -1
- package/PROVENANCE/i18n/SOURCES.md +66 -2
- package/PROVENANCE/ships/SOURCES.md +119 -67
- package/README.md +2 -2
- package/THIRD_PARTY_NOTICES.md +2 -1
- package/dist/astro/codex-region-lookup.js +1 -1
- package/dist/astro/codex-region.d.ts +5 -1
- package/dist/astro/codex-region.js +1 -1
- package/dist/astro/index.js +1 -1
- package/dist/{chunk-OSMBAFRW.js → chunk-2GVJNKFW.js} +1 -1
- package/dist/{chunk-OSMBAFRW.js.map → chunk-2GVJNKFW.js.map} +1 -1
- package/dist/{chunk-Q5ALV3DI.js → chunk-3I2I5KG4.js} +1 -1
- package/dist/chunk-55R4MYWV.js +1 -0
- package/dist/chunk-55R4MYWV.js.map +1 -0
- package/dist/{chunk-2TY42PTF.js → chunk-6MQOPQAA.js} +1 -1
- package/dist/{chunk-RA6SY445.js → chunk-7UF4XRIR.js} +1 -1
- package/dist/{chunk-K5JK3XQB.js → chunk-ARG6ESYB.js} +1 -1
- package/dist/{chunk-K5JK3XQB.js.map → chunk-ARG6ESYB.js.map} +1 -1
- package/dist/{chunk-ADLVPKUV.js → chunk-ATD32GCX.js} +1 -1
- package/dist/{chunk-ADLVPKUV.js.map → chunk-ATD32GCX.js.map} +1 -1
- package/dist/{chunk-UVX7RCMP.js → chunk-BI3EFLQ7.js} +1 -1
- package/dist/{chunk-SFEQXUIA.js → chunk-CCJPWDMA.js} +1 -1
- package/dist/chunk-EXHZ4CFB.js +1 -0
- package/dist/{chunk-AUBV6S7V.js.map → chunk-EXHZ4CFB.js.map} +1 -1
- package/dist/chunk-FRG7MKSJ.js +1 -0
- package/dist/{chunk-T7IQHFQ2.js.map → chunk-FRG7MKSJ.js.map} +1 -1
- package/dist/chunk-HE4XE3WR.js +1 -0
- package/dist/chunk-HE4XE3WR.js.map +1 -0
- package/dist/{chunk-XQJERZUS.js → chunk-HWOP7QWK.js} +1 -1
- package/dist/{chunk-ZWT5Y3JR.js → chunk-JEHKGTP2.js} +1 -1
- package/dist/chunk-JEHKGTP2.js.map +1 -0
- package/dist/chunk-KLC5XT6F.js +1 -0
- package/dist/chunk-KLC5XT6F.js.map +1 -0
- package/dist/chunk-KR664YI3.js +1 -0
- package/dist/{chunk-UI5RROGI.js.map → chunk-KR664YI3.js.map} +1 -1
- package/dist/{chunk-Q647OXON.js → chunk-LOWKWUNS.js} +1 -1
- package/dist/{chunk-Q647OXON.js.map → chunk-LOWKWUNS.js.map} +1 -1
- package/dist/chunk-O4NIJDL4.js +1 -0
- package/dist/chunk-O4NIJDL4.js.map +1 -0
- package/dist/{chunk-4T3TTYUT.js → chunk-P3DGQUID.js} +1 -1
- package/dist/{chunk-4T3TTYUT.js.map → chunk-P3DGQUID.js.map} +1 -1
- package/dist/{chunk-F44QX47A.js → chunk-Q75JSMU6.js} +1 -1
- package/dist/{chunk-F44QX47A.js.map → chunk-Q75JSMU6.js.map} +1 -1
- package/dist/chunk-QQFZEOPB.js +1 -0
- package/dist/chunk-QQFZEOPB.js.map +1 -0
- package/dist/{chunk-DBJKLXLS.js → chunk-SRPCHXW2.js} +1 -1
- package/dist/{chunk-3GNYPM6J.js → chunk-T6BIFKPU.js} +1 -1
- package/dist/{chunk-3GNYPM6J.js.map → chunk-T6BIFKPU.js.map} +1 -1
- package/dist/chunk-WDAYRHXR.js +1 -0
- package/dist/{chunk-AYAKU4YA.js.map → chunk-WDAYRHXR.js.map} +1 -1
- package/dist/chunk-ZBB7Q3OZ.js +1 -0
- package/dist/chunk-ZBB7Q3OZ.js.map +1 -0
- package/dist/commodities/commodities-all.js +1 -1
- package/dist/commodities/commodities-standard.d.ts +1 -1
- package/dist/commodities/commodities-standard.js +1 -1
- package/dist/commodities/commodities.js +1 -1
- package/dist/commodities/index.js +1 -1
- package/dist/i18n/blueprints.js +1 -1
- package/dist/i18n/codex-regions.d.ts +33 -0
- package/dist/i18n/codex-regions.js +1 -0
- package/dist/i18n/codex-regions.js.map +1 -0
- package/dist/i18n/index.d.ts +10 -8
- package/dist/i18n/index.js +1 -1
- package/dist/i18n/pre-engineered.d.ts +4 -0
- package/dist/i18n/pre-engineered.js +1 -1
- package/dist/materials/index.js +1 -1
- package/dist/materials/micro-resources-all.js +1 -1
- package/dist/materials/micro-resources.js +1 -1
- package/dist/ships/armour.js +1 -1
- package/dist/ships/blueprint-costs.js +1 -1
- package/dist/ships/blueprints.d.ts +1 -2
- package/dist/ships/blueprints.js +1 -1
- package/dist/ships/build-metrics.js +1 -1
- package/dist/ships/index.js +1 -1
- package/dist/ships/loadout-validation.d.ts +1 -1
- package/dist/ships/loadout-validation.js +1 -1
- package/dist/ships/modules-all.js +1 -1
- package/dist/ships/modules-hardpoint.js +1 -1
- package/dist/ships/modules.d.ts +26 -13
- package/dist/ships/modules.js +1 -1
- package/dist/ships/pre-engineered-stats.d.ts +5 -9
- package/dist/ships/pre-engineered-stats.js +1 -1
- package/dist/ships/pre-engineered.d.ts +12 -6
- package/dist/ships/pre-engineered.js +1 -1
- package/dist/ships/resistances.d.ts +3 -2
- package/dist/ships/resistances.js +1 -1
- package/dist/ships/shield-capacitor.js +1 -1
- package/dist/ships/shields.js +1 -1
- package/dist/ships/ship-loadout.d.ts +16 -18
- package/dist/ships/ship-loadout.js +1 -1
- package/dist/ships/weapons.d.ts +2 -0
- package/dist/ships/weapons.js +1 -1
- package/package.json +10 -5
- package/dist/chunk-4WC5NHBJ.js +0 -1
- package/dist/chunk-4WC5NHBJ.js.map +0 -1
- package/dist/chunk-53EBUFVU.js +0 -1
- package/dist/chunk-53EBUFVU.js.map +0 -1
- package/dist/chunk-A6QTYK2D.js +0 -1
- package/dist/chunk-A6QTYK2D.js.map +0 -1
- package/dist/chunk-AAU7OM47.js +0 -1
- package/dist/chunk-AAU7OM47.js.map +0 -1
- package/dist/chunk-AUBV6S7V.js +0 -1
- package/dist/chunk-AYAKU4YA.js +0 -1
- package/dist/chunk-C3YZ5KTA.js +0 -1
- package/dist/chunk-C3YZ5KTA.js.map +0 -1
- package/dist/chunk-T7IQHFQ2.js +0 -1
- package/dist/chunk-UI5RROGI.js +0 -1
- package/dist/chunk-ZWT5Y3JR.js.map +0 -1
- /package/dist/{chunk-Q5ALV3DI.js.map → chunk-3I2I5KG4.js.map} +0 -0
- /package/dist/{chunk-2TY42PTF.js.map → chunk-6MQOPQAA.js.map} +0 -0
- /package/dist/{chunk-RA6SY445.js.map → chunk-7UF4XRIR.js.map} +0 -0
- /package/dist/{chunk-UVX7RCMP.js.map → chunk-BI3EFLQ7.js.map} +0 -0
- /package/dist/{chunk-SFEQXUIA.js.map → chunk-CCJPWDMA.js.map} +0 -0
- /package/dist/{chunk-XQJERZUS.js.map → chunk-HWOP7QWK.js.map} +0 -0
- /package/dist/{chunk-DBJKLXLS.js.map → chunk-SRPCHXW2.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/ships/weapons.ts"],"names":["requireFiniteNonNegative","journalRateOfFire","combinedRateOfFire","weapon","burstInterval","burstRounds","burstRateOfFire","ZERO_SPLIT","kinetic","thermal","explosive","caustic","absolute","antiXeno","splitDamage","damage","distribution","Object","freeze","unclassified","splitComponents","components","reduce","sum","value","conventional","scale","sustainedFireFactor","rateOfFire","clip","clipSize","Math","ceil","burst","burstRate","reload","reloadTime","cycle","sustainedRate","min","damagePerSecond","rounds","roundsPerShot","sustainedDamagePerSecond","energyPerSecond","distributorDraw","heatPerSecond","thermalLoad","damageFalloff","metres","maximum","maximumRange","falloff","falloffRange","taper","max","armourPiercingFactor","armourPiercing","hardness","weaponMetrics","continuous","factor","dps","sdps","eps","hps","damagePerShot","sustainedRateOfFire","sustainedEnergyPerSecond","sustainedHeatPerSecond","powerDraw","damageByType","damageComponents","damageDistribution","sustainedDamageByType","sumWeaponMetrics","metrics","emptyDamageSplitAccumulator","metric","addDamageSplit","finishDamageSplit","total","split","classified"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{massCurveMultiplier}from"./chunk-6BFQIYGZ.js";import{mapDamageTypes,effectiveHitPoints,stackShieldResistance}from"./chunk-
|
|
1
|
+
import{massCurveMultiplier}from"./chunk-6BFQIYGZ.js";import{mapDamageTypes,effectiveHitPoints,stackShieldResistance}from"./chunk-Q75JSMU6.js";var curveLabels=scope=>({scope:scope,mass:"hullMass",curve:"generator"});function generatorCurveMultiplier(scope,hullMass,generator){const{minMass:minMass,optMass:optMass,maxMass:maxMass,minMultiplier:minMultiplier,optMultiplier:optMultiplier,maxMultiplier:maxMultiplier}=generator;if(minMass===void 0||optMass===void 0||maxMass===void 0||minMultiplier===void 0||optMultiplier===void 0||maxMultiplier===void 0){return 0}return massCurveMultiplier(curveLabels(scope),hullMass,{minMass:minMass,optMass:optMass,maxMass:maxMass,minMultiplier:minMultiplier,optMultiplier:optMultiplier,maxMultiplier:maxMultiplier})}function shieldMassCurveMultiplier(hullMass,generator){return generatorCurveMultiplier("shieldMassCurveMultiplier",hullMass,generator)}function shieldStrength(hullMass,baseShieldStrength,generator,boostMultiplier=1){return baseShieldStrength*generatorCurveMultiplier("shieldStrength",hullMass,generator)*boostMultiplier}var boosterResistances=(boosters,type)=>boosters.map(booster=>booster[`${type}Resistance`]??0);function shieldMetrics(input){const boosters=input.boosters??[];const reinforcement=input.reinforcement??0;const generator=input.generator??null;if(!generator){const none=Object.freeze(mapDamageTypes(()=>0));return Object.freeze({strength:0,generator:0,boosters:0,reinforcement:0,massCurveMultiplier:0,boostMultiplier:1,resistances:none,effectiveHitPoints:Object.freeze(effectiveHitPoints(0,none))})}const massCurveMultiplier2=generatorCurveMultiplier("shieldMetrics",input.hullMass,generator);const boostMultiplier=1+boosters.reduce((sum,booster)=>sum+(booster.shieldBoost??0),0);const generatorStrength=input.baseShieldStrength*massCurveMultiplier2;const boostersStrength=generatorStrength*(boostMultiplier-1);const strength=generatorStrength+boostersStrength+reinforcement;const resistances=Object.freeze(mapDamageTypes(type=>stackShieldResistance(generator[`${type}Resistance`]??0,boosterResistances(boosters,type))));return Object.freeze({strength:strength,generator:generatorStrength,boosters:boostersStrength,reinforcement:reinforcement,massCurveMultiplier:massCurveMultiplier2,boostMultiplier:boostMultiplier,resistances:resistances,effectiveHitPoints:Object.freeze(effectiveHitPoints(strength,resistances))})}export{shieldMassCurveMultiplier,shieldMetrics,shieldStrength};//# sourceMappingURL=chunk-SRPCHXW2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{calculateModuleLimits}from"./chunk-KPETDYQX.js";import{isRequiredSlot}from"./chunk-M6J7KP7G.js";import{describeValue,truncate}from"./chunk-PKWVG2JY.js";function tenths(tonnes){return Math.round(tonnes*10)/10}var LOAD_PHRASE=Object.freeze({dry:"before fuel",unladen:"with a full tank",laden:"fully laden"});function thrusterLoads(mass){if(mass===void 0)return[];const loads=[{load:"dry",mass:mass.dry}];if(mass.fuel===void 0)return loads;loads.push({load:"unladen",mass:mass.dry+mass.fuel});if(mass.cargo===void 0)return loads;loads.push({load:"laden",mass:mass.dry+mass.fuel+mass.cargo});return loads}function requireTonnes(name,value){if(value===void 0)return;if(!Number.isFinite(value)||value<0){throw new RangeError(`validateLoadout: ${name} must be a finite non-negative number of tonnes, received ${describeValue(value)}`)}}function validateLoadout(input){if(!Array.isArray(input.slots)){throw new TypeError(`validateLoadout: input.slots must be an array, received ${describeValue(input.slots)}`)}requireTonnes("input.mass.dry",input.mass?.dry);requireTonnes("input.mass.fuel",input.mass?.fuel);requireTonnes("input.mass.cargo",input.mass?.cargo);for(const module of input.modules){requireTonnes(`${truncate(module.slot)} thrusterMaxMass`,module.thrusterMaxMass)}const issues=[];const seen=/* @__PURE__ */new Map;for(const module of input.modules){const normalized=module.slot.toLowerCase();const previous=seen.get(normalized);if(previous!==void 0){issues.push({code:"duplicateSlot",severity:"error",slot:module.slot,symbol:module.symbol,params:{slot:module.slot,previousSlot:previous,symbol:module.symbol},message:`Slot ${truncate(module.slot)} occurs more than once (also ${truncate(previous)})`})}else{seen.set(normalized,module.slot)}}const exclusive=/* @__PURE__ */new Map;for(const module of input.modules){if(!module.exclusionGroup)continue;const previous=exclusive.get(module.exclusionGroup);if(previous){issues.push({code:"duplicateExclusiveModule",severity:"error",slot:module.slot,symbol:module.symbol,params:{exclusionGroup:module.exclusionGroup,slot:module.slot,symbol:module.symbol,previousSlot:previous.slot,previousSymbol:previous.symbol},message:`${truncate(module.slot)}: ${truncate(module.symbol)} conflicts with ${truncate(previous.symbol)} in ${truncate(previous.slot)} (${module.exclusionGroup} is limited to one per ship)`})}else{exclusive.set(module.exclusionGroup,module)}}for(const usage of calculateModuleLimits(input.modules)){if(usage.excess===0)continue;issues.push({code:"moduleLimitExceeded",severity:"error",params:{group:usage.group,count:usage.count,limit:usage.limit},message:`${usage.group} has ${usage.count} fitted modules but the ship allows ${usage.limit}`})}const knownSlots=new Map(input.slots.map(slot=>[slot.key.toLowerCase(),slot]));for(const module of input.modules){if(module.requiresKnownSlot!==false&&!knownSlots.has(module.slot.toLowerCase())){issues.push({code:"unknownSlot",severity:"error",slot:module.slot,symbol:module.symbol,message:`${truncate(module.slot)} is not a slot on ${truncate(input.shipSymbol)}`,params:{shipSymbol:input.shipSymbol,slot:module.slot,symbol:module.symbol}})}}for(const slot of input.slots){if(isRequiredSlot(slot)&&!seen.has(slot.key.toLowerCase())){issues.push({code:"missingRequiredSlot",severity:"incomplete",slot:slot.key,message:`${truncate(slot.key)} is required for an operational build`,params:{slot:slot.key}})}}for(const module of input.modules){if(module.fitError!==null){issues.push({code:"incompatibleModule",severity:"error",slot:module.slot,symbol:module.symbol,message:`${truncate(module.slot)}: ${truncate(module.symbol)} ${truncate(module.fitError)}`,params:{...module.fitParams,slot:module.slot,symbol:module.symbol,constraint:module.fitConstraint??"unknownConstraint"}})}}for(const load of thrusterLoads(input.mass)){for(const module of input.modules){if(module.thrusterMaxMass===void 0||load.mass<=module.thrusterMaxMass){continue}issues.push({code:"thrusterMassExceeded",severity:load.load==="laden"?"warning":"error",slot:module.slot,symbol:module.symbol,message:`${truncate(module.slot)}: ${truncate(module.symbol)} is rated to ${tenths(module.thrusterMaxMass)} t but the ship weighs ${tenths(load.mass)} t ${LOAD_PHRASE[load.load]}`,params:{slot:module.slot,symbol:module.symbol,load:load.load,mass:load.mass,maxMass:module.thrusterMaxMass}})}if(issues.some(issue=>issue.code==="thrusterMassExceeded"))break}const frozen=Object.freeze(issues.map(issue=>Object.freeze({...issue,...issue.params?{params:Object.freeze(Object.fromEntries(Object.entries(issue.params).map(([key,value])=>[key,Array.isArray(value)?Object.freeze([...value]):value])))}:{}})));return Object.freeze({valid:!issues.some(issue=>issue.severity==="error"),complete:!issues.some(issue=>issue.severity!=="warning"),issues:frozen})}export{validateLoadout};//# sourceMappingURL=chunk-
|
|
1
|
+
import{calculateModuleLimits}from"./chunk-KPETDYQX.js";import{isRequiredSlot}from"./chunk-M6J7KP7G.js";import{describeValue,truncate}from"./chunk-PKWVG2JY.js";function tenths(tonnes){return Math.round(tonnes*10)/10}var LOAD_PHRASE=Object.freeze({dry:"before fuel",unladen:"with a full tank",laden:"fully laden"});function thrusterLoads(mass){if(mass===void 0)return[];const loads=[{load:"dry",mass:mass.dry}];if(mass.fuel===void 0)return loads;loads.push({load:"unladen",mass:mass.dry+mass.fuel});if(mass.cargo===void 0)return loads;loads.push({load:"laden",mass:mass.dry+mass.fuel+mass.cargo});return loads}function requireTonnes(name,value){if(value===void 0)return;if(!Number.isFinite(value)||value<0){throw new RangeError(`validateLoadout: ${name} must be a finite non-negative number of tonnes, received ${describeValue(value)}`)}}function validateLoadout(input){if(!Array.isArray(input.slots)){throw new TypeError(`validateLoadout: input.slots must be an array, received ${describeValue(input.slots)}`)}requireTonnes("input.mass.dry",input.mass?.dry);requireTonnes("input.mass.fuel",input.mass?.fuel);requireTonnes("input.mass.cargo",input.mass?.cargo);for(const module of input.modules){requireTonnes(`${truncate(module.slot)} thrusterMaxMass`,module.thrusterMaxMass)}const issues=[];const seen=/* @__PURE__ */new Map;for(const module of input.modules){const normalized=module.slot.toLowerCase();const previous=seen.get(normalized);if(previous!==void 0){issues.push({code:"duplicateSlot",severity:"error",slot:module.slot,symbol:module.symbol,params:{slot:module.slot,previousSlot:previous,symbol:module.symbol},message:`Slot ${truncate(module.slot)} occurs more than once (also ${truncate(previous)})`})}else{seen.set(normalized,module.slot)}}const exclusive=/* @__PURE__ */new Map;for(const module of input.modules){if(!module.exclusionGroup)continue;const previous=exclusive.get(module.exclusionGroup);if(previous){issues.push({code:"duplicateExclusiveModule",severity:"error",slot:module.slot,symbol:module.symbol,params:{exclusionGroup:module.exclusionGroup,slot:module.slot,symbol:module.symbol,previousSlot:previous.slot,previousSymbol:previous.symbol},message:`${truncate(module.slot)}: ${truncate(module.symbol)} conflicts with ${truncate(previous.symbol)} in ${truncate(previous.slot)} (${module.exclusionGroup} is limited to one per ship)`})}else{exclusive.set(module.exclusionGroup,module)}}for(const usage of calculateModuleLimits(input.modules)){if(usage.excess===0)continue;issues.push({code:"moduleLimitExceeded",severity:"error",params:{group:usage.group,count:usage.count,limit:usage.limit},message:`${usage.group} has ${usage.count} fitted modules but the ship allows ${usage.limit}`})}const knownSlots=new Map(input.slots.map(slot=>[slot.key.toLowerCase(),slot]));for(const module of input.modules){if(module.requiresKnownSlot!==false&&!knownSlots.has(module.slot.toLowerCase())){issues.push({code:"unknownSlot",severity:"error",slot:module.slot,symbol:module.symbol,message:`${truncate(module.slot)} is not a slot on ${truncate(input.shipSymbol)}`,params:{shipSymbol:input.shipSymbol,slot:module.slot,symbol:module.symbol}})}}for(const slot of input.slots){if(isRequiredSlot(slot)&&!seen.has(slot.key.toLowerCase())){issues.push({code:"missingRequiredSlot",severity:"incomplete",slot:slot.key,message:`${truncate(slot.key)} is required for an operational build`,params:{slot:slot.key}})}}for(const module of input.modules){if(module.fitError!==null){issues.push({code:"incompatibleModule",severity:"error",slot:module.slot,symbol:module.symbol,message:`${truncate(module.slot)}: ${truncate(module.symbol)} ${truncate(module.fitError)}`,params:{...module.fitParams,slot:module.slot,symbol:module.symbol,constraint:module.fitConstraint??"unknownConstraint"}})}}for(const load of thrusterLoads(input.mass)){for(const module of input.modules){if(module.thrusterMaxMass===void 0||load.mass<=module.thrusterMaxMass){continue}issues.push({code:"thrusterMassExceeded",severity:load.load==="laden"?"warning":"error",slot:module.slot,symbol:module.symbol,message:`${truncate(module.slot)}: ${truncate(module.symbol)} is rated to ${tenths(module.thrusterMaxMass)} t but the ship weighs ${tenths(load.mass)} t ${LOAD_PHRASE[load.load]}`,params:{slot:module.slot,symbol:module.symbol,load:load.load,mass:load.mass,maxMass:module.thrusterMaxMass}})}if(issues.some(issue=>issue.code==="thrusterMassExceeded"))break}const frozen=Object.freeze(issues.map(issue=>Object.freeze({...issue,...issue.params?{params:Object.freeze(Object.fromEntries(Object.entries(issue.params).map(([key,value])=>[key,Array.isArray(value)?Object.freeze([...value]):value])))}:{}})));return Object.freeze({valid:!issues.some(issue=>issue.severity==="error"),complete:!issues.some(issue=>issue.severity!=="warning"),issues:frozen})}export{validateLoadout};//# sourceMappingURL=chunk-T6BIFKPU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/ships/loadout-validation.ts"],"names":["calculateModuleLimits","isRequiredSlot","describeValue","truncate","tenths","tonnes","Math","round","LOAD_PHRASE","Object","freeze","dry","unladen","laden","thrusterLoads","mass","loads","load","fuel","push","cargo","requireTonnes","name","value","Number","isFinite","RangeError","validateLoadout","input","Array","isArray","slots","TypeError","module","modules","slot","thrusterMaxMass","issues","seen","Map","normalized","toLowerCase","previous","get","code","severity","symbol","params","previousSlot","message","set","exclusive","exclusionGroup","previousSymbol","usage","excess","group","count","limit","knownSlots","map","key","requiresKnownSlot","has","shipSymbol","fitError","fitParams","constraint","fitConstraint","maxMass","some","issue","frozen","fromEntries","entries","valid","complete"],"mappings":"O,
|
|
1
|
+
{"version":3,"sources":["../src/ships/loadout-validation.ts"],"names":["calculateModuleLimits","isRequiredSlot","describeValue","truncate","tenths","tonnes","Math","round","LOAD_PHRASE","Object","freeze","dry","unladen","laden","thrusterLoads","mass","loads","load","fuel","push","cargo","requireTonnes","name","value","Number","isFinite","RangeError","validateLoadout","input","Array","isArray","slots","TypeError","module","modules","slot","thrusterMaxMass","issues","seen","Map","normalized","toLowerCase","previous","get","code","severity","symbol","params","previousSlot","message","set","exclusive","exclusionGroup","previousSymbol","usage","excess","group","count","limit","knownSlots","map","key","requiresKnownSlot","has","shipSymbol","fitError","fitParams","constraint","fitConstraint","maxMass","some","issue","frozen","fromEntries","entries","valid","complete"],"mappings":"O,wJA8MA,SAASI,OAAOC,QACZ,OAAOC,KAAKC,MAAMF,OAAS,IAAM,EACrC,CAGA,IAAMG,YAAsDC,OAAOC,OAAO,CACtEC,IAAK,cACLC,QAAS,mBACTC,MAAO,gBAeX,SAASC,cACLC,MAEA,GAAIA,YAAS,EAAW,MAAO,GAC/B,MAAMC,MAAgD,CAAC,CAAEC,KAAM,MAAOF,KAAMA,KAAKJ,MACjF,GAAII,KAAKG,YAAS,EAAW,OAAOF,MACpCA,MAAMG,KAAK,CAAEF,KAAM,UAAWF,KAAMA,KAAKJ,IAAMI,KAAKG,OACpD,GAAIH,KAAKK,aAAU,EAAW,OAAOJ,MACrCA,MAAMG,KAAK,CAAEF,KAAM,QAASF,KAAMA,KAAKJ,IAAMI,KAAKG,KAAOH,KAAKK,QAC9D,OAAOJ,KACX,CAcA,SAASK,cAAcC,KAAcC,OACjC,GAAIA,aAAU,EAAW,OACzB,IAAKC,OAAOC,SAASF,QAAUA,MAAQ,EAAG,CACtC,MAAM,IAAIG,WACN,oBAAoBJ,iEAAiEpB,cAAcqB,SAE3G,CACJ,CAkDO,SAASI,gBAAgBC,OAC5B,IAAKC,MAAMC,QAAQF,MAAMG,OAAQ,CAC7B,MAAM,IAAIC,UACN,2DAA2D9B,cAAc0B,MAAMG,SAEvF,CACAV,cAAc,iBAAkBO,MAAMb,MAAMJ,KAC5CU,cAAc,kBAAmBO,MAAMb,MAAMG,MAC7CG,cAAc,mBAAoBO,MAAMb,MAAMK,OAC9C,IAAA,MAAWa,UAAUL,MAAMM,QAAS,CAChCb,cAAc,GAAGlB,SAAS8B,OAAOE,wBAAyBF,OAAOG,gBACrE,CACA,MAAMC,OAAyB,GAC/B,MAAMC,oBAAA,IAAWC,IACjB,IAAA,MAAWN,UAAUL,MAAMM,QAAS,CAChC,MAAMM,WAAaP,OAAOE,KAAKM,cAC/B,MAAMC,SAAWJ,KAAKK,IAAIH,YAC1B,GAAIE,gBAAa,EAAW,CACxBL,OAAOlB,KAAK,CACRyB,KAAM,gBACNC,SAAU,QACVV,KAAMF,OAAOE,KACbW,OAAQb,OAAOa,OACfC,OAAQ,CAAEZ,KAAMF,OAAOE,KAAMa,aAAcN,SAAUI,OAAQb,OAAOa,QACpEG,QAAS,QAAQ9C,SAAS8B,OAAOE,qCAAqChC,SAASuC,cAEvF,KAAO,CACHJ,KAAKY,IAAIV,WAAYP,OAAOE,KAChC,CACJ,CAEA,MAAMgB,yBAAA,IAAgBZ,IACtB,IAAA,MAAWN,UAAUL,MAAMM,QAAS,CAChC,IAAKD,OAAOmB,eAAgB,SAC5B,MAAMV,SAAWS,UAAUR,IAAIV,OAAOmB,gBACtC,GAAIV,SAAU,CACVL,OAAOlB,KAAK,CACRyB,KAAM,2BACNC,SAAU,QACVV,KAAMF,OAAOE,KACbW,OAAQb,OAAOa,OACfC,OAAQ,CACJK,eAAgBnB,OAAOmB,eACvBjB,KAAMF,OAAOE,KACbW,OAAQb,OAAOa,OACfE,aAAcN,SAASP,KACvBkB,eAAgBX,SAASI,QAE7BG,QAAS,GAAG9C,SAAS8B,OAAOE,UAAUhC,SAAS8B,OAAOa,0BAA0B3C,SAASuC,SAASI,cAAc3C,SAASuC,SAASP,UAAUF,OAAOmB,8CAE3J,KAAO,CACHD,UAAUD,IAAIjB,OAAOmB,eAAgBnB,OACzC,CACJ,CAEA,IAAA,MAAWqB,SAAStD,sBAAsB4B,MAAMM,SAAU,CACtD,GAAIoB,MAAMC,SAAW,EAAG,SACxBlB,OAAOlB,KAAK,CACRyB,KAAM,sBACNC,SAAU,QACVE,OAAQ,CAAES,MAAOF,MAAME,MAAOC,MAAOH,MAAMG,MAAOC,MAAOJ,MAAMI,OAC/DT,QAAS,GAAGK,MAAME,aAAaF,MAAMG,4CAA4CH,MAAMI,SAE/F,CAEA,MAAMC,WAAa,IAAIpB,IAAIX,MAAMG,MAAM6B,IAAKzB,MAAS,CAACA,KAAK0B,IAAIpB,cAAeN,QAC9E,IAAA,MAAWF,UAAUL,MAAMM,QAAS,CAChC,GAAID,OAAO6B,oBAAsB,QAAUH,WAAWI,IAAI9B,OAAOE,KAAKM,eAAgB,CAClFJ,OAAOlB,KAAK,CACRyB,KAAM,cACNC,SAAU,QACVV,KAAMF,OAAOE,KACbW,OAAQb,OAAOa,OACfG,QAAS,GAAG9C,SAAS8B,OAAOE,0BAA0BhC,SAASyB,MAAMoC,cACrEjB,OAAQ,CACJiB,WAAYpC,MAAMoC,WAClB7B,KAAMF,OAAOE,KACbW,OAAQb,OAAOa,SAG3B,CACJ,CACA,IAAA,MAAWX,QAAQP,MAAMG,MAAO,CAC5B,GAAI9B,eAAekC,QAAUG,KAAKyB,IAAI5B,KAAK0B,IAAIpB,eAAgB,CAC3DJ,OAAOlB,KAAK,CACRyB,KAAM,sBACNC,SAAU,aACVV,KAAMA,KAAK0B,IACXZ,QAAS,GAAG9C,SAASgC,KAAK0B,4CAC1Bd,OAAQ,CAAEZ,KAAMA,KAAK0B,MAE7B,CACJ,CAEA,IAAA,MAAW5B,UAAUL,MAAMM,QAAS,CAChC,GAAID,OAAOgC,WAAa,KAAM,CAC1B5B,OAAOlB,KAAK,CACRyB,KAAM,qBACNC,SAAU,QACVV,KAAMF,OAAOE,KACbW,OAAQb,OAAOa,OACfG,QAAS,GAAG9C,SAAS8B,OAAOE,UAAUhC,SAAS8B,OAAOa,WAAW3C,SAAS8B,OAAOgC,YACjFlB,OAAQ,IACDd,OAAOiC,UACV/B,KAAMF,OAAOE,KACbW,OAAQb,OAAOa,OACfqB,WAAYlC,OAAOmC,eAAiB,sBAGhD,CACJ,CAEA,IAAA,MAAWnD,QAAQH,cAAcc,MAAMb,MAAO,CAC1C,IAAA,MAAWkB,UAAUL,MAAMM,QAAS,CAChC,GAAID,OAAOG,uBAAoB,GAAanB,KAAKF,MAAQkB,OAAOG,gBAAiB,CAC7E,QACJ,CACAC,OAAOlB,KAAK,CACRyB,KAAM,uBACNC,SAAU5B,KAAKA,OAAS,QAAU,UAAY,QAC9CkB,KAAMF,OAAOE,KACbW,OAAQb,OAAOa,OAKfG,QAAS,GAAG9C,SAAS8B,OAAOE,UAAUhC,SAAS8B,OAAOa,uBAAuB1C,OAAO6B,OAAOG,0CAA0ChC,OAAOa,KAAKF,WAAWP,YAAYS,KAAKA,QAC7K8B,OAAQ,CACJZ,KAAMF,OAAOE,KACbW,OAAQb,OAAOa,OACf7B,KAAMA,KAAKA,KACXF,KAAME,KAAKF,KACXsD,QAASpC,OAAOG,kBAG5B,CAIA,GAAIC,OAAOiC,KAAMC,OAAUA,MAAM3B,OAAS,wBAAyB,KACvE,CAIA,MAAM4B,OAAS/D,OAAOC,OAClB2B,OAAOuB,IAAKW,OACR9D,OAAOC,OAAO,IACP6D,SACCA,MAAMxB,OACJ,CACIA,OAAQtC,OAAOC,OACXD,OAAOgE,YACHhE,OAAOiE,QAAQH,MAAMxB,QAAQa,IAAI,EAAEC,IAAKtC,SAAW,CAC/CsC,IACAhC,MAAMC,QAAQP,OAASd,OAAOC,OAAO,IAAIa,QAAUA,WAKnE,CAAA,MAIlB,OAAOd,OAAOC,OAAO,CACjBiE,OAAQtC,OAAOiC,KAAMC,OAAUA,MAAM1B,WAAa,SAGlD+B,UAAWvC,OAAOiC,KAAMC,OAAUA,MAAM1B,WAAa,WACrDR,OAAQmC,QAEhB,QAAA7C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{findByRawKey}from"./chunk-BKWLI44T.js";import{requireStringIfPresent}from"./chunk-PKWVG2JY.js";import{deepFreeze}from"./chunk-DURKO7JU.js";var blueprints_default={AFM_Shielded:{name:"Shielded",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"PowerDraw",method:"multiplicative",min:.4,max:.4}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"PowerDraw",method:"multiplicative",min:.6,max:.6}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"PowerDraw",method:"multiplicative",min:.8,max:.8}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"PowerDraw",method:"multiplicative",min:1,max:1}]}}},Armour_Advanced:{name:"Lightweight",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:0,max:.03},{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:-.01,max:-.01},{label:"KineticResistance",method:"additive",min:0,max:.03},{label:"Mass",method:"multiplicative",min:-.05,max:-.15},{label:"ThermicResistance",method:"additive",min:0,max:.03}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:.03,max:.06},{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:-.02,max:-.02},{label:"KineticResistance",method:"additive",min:.03,max:.06},{label:"Mass",method:"multiplicative",min:-.15,max:-.25},{label:"ThermicResistance",method:"additive",min:.03,max:.06}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:.06,max:.09},{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:-.03,max:-.03},{label:"KineticResistance",method:"additive",min:.06,max:.09},{label:"Mass",method:"multiplicative",min:-.25,max:-.35},{label:"ThermicResistance",method:"additive",min:.06,max:.09}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:.09,max:.12},{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:-.04,max:-.04},{label:"KineticResistance",method:"additive",min:.09,max:.12},{label:"Mass",method:"multiplicative",min:-.35,max:-.45},{label:"ThermicResistance",method:"additive",min:.09,max:.12}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:.12,max:.15},{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:-.05,max:-.05},{label:"KineticResistance",method:"additive",min:.12,max:.15},{label:"Mass",method:"multiplicative",min:-.45,max:-.55},{label:"ThermicResistance",method:"additive",min:.12,max:.15}]}}},Armour_Explosive:{name:"Blast resistant",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:0,max:.12},{label:"KineticResistance",method:"additive",min:-.04,max:-.04},{label:"ThermicResistance",method:"additive",min:-.04,max:-.04}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:.12,max:.19},{label:"KineticResistance",method:"additive",min:-.06,max:-.06},{label:"ThermicResistance",method:"additive",min:-.06,max:-.06}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:.19,max:.26},{label:"KineticResistance",method:"additive",min:-.08,max:-.08},{label:"ThermicResistance",method:"additive",min:-.08,max:-.08}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:.26,max:.33},{label:"KineticResistance",method:"additive",min:-.1,max:-.1},{label:"ThermicResistance",method:"additive",min:-.1,max:-.1}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:.33,max:.4},{label:"KineticResistance",method:"additive",min:-.12,max:-.12},{label:"ThermicResistance",method:"additive",min:-.12,max:-.12}]}}},Armour_HeavyDuty:{name:"Heavy duty",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:0,max:.01},{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:0,max:.12},{label:"KineticResistance",method:"additive",min:0,max:.01},{label:"Mass",method:"multiplicative",min:.1,max:.1},{label:"ThermicResistance",method:"additive",min:0,max:.01}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:.01,max:.02},{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:.12,max:.17},{label:"KineticResistance",method:"additive",min:.01,max:.02},{label:"Mass",method:"multiplicative",min:.15,max:.15},{label:"ThermicResistance",method:"additive",min:.01,max:.02}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:.02,max:.03},{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:.17,max:.22},{label:"KineticResistance",method:"additive",min:.02,max:.03},{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"ThermicResistance",method:"additive",min:.02,max:.03}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:.03,max:.04},{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:.22,max:.27},{label:"KineticResistance",method:"additive",min:.03,max:.04},{label:"Mass",method:"multiplicative",min:.25,max:.25},{label:"ThermicResistance",method:"additive",min:.03,max:.04}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:.04,max:.05},{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:.27,max:.32},{label:"KineticResistance",method:"additive",min:.04,max:.05},{label:"Mass",method:"multiplicative",min:.3,max:.3},{label:"ThermicResistance",method:"additive",min:.04,max:.05}]}}},Armour_Kinetic:{name:"Kinetic resistant",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:-.04,max:-.04},{label:"KineticResistance",method:"additive",min:0,max:.12},{label:"ThermicResistance",method:"additive",min:-.04,max:-.04}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:-.06,max:-.06},{label:"KineticResistance",method:"additive",min:.12,max:.19},{label:"ThermicResistance",method:"additive",min:-.06,max:-.06}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:-.08,max:-.08},{label:"KineticResistance",method:"additive",min:.19,max:.26},{label:"ThermicResistance",method:"additive",min:-.08,max:-.08}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:-.1,max:-.1},{label:"KineticResistance",method:"additive",min:.26,max:.33},{label:"ThermicResistance",method:"additive",min:-.1,max:-.1}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:-.12,max:-.12},{label:"KineticResistance",method:"additive",min:.33,max:.4},{label:"ThermicResistance",method:"additive",min:-.12,max:-.12}]}}},Armour_Thermic:{name:"Thermal resistant",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:-.04,max:-.04},{label:"KineticResistance",method:"additive",min:-.04,max:-.04},{label:"ThermicResistance",method:"additive",min:0,max:.12}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:-.06,max:-.06},{label:"KineticResistance",method:"additive",min:-.06,max:-.06},{label:"ThermicResistance",method:"additive",min:.12,max:.19}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:-.08,max:-.08},{label:"KineticResistance",method:"additive",min:-.08,max:-.08},{label:"ThermicResistance",method:"additive",min:.19,max:.26}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:-.1,max:-.1},{label:"KineticResistance",method:"additive",min:-.1,max:-.1},{label:"ThermicResistance",method:"additive",min:.26,max:.33}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:-.12,max:-.12},{label:"KineticResistance",method:"additive",min:-.12,max:-.12},{label:"ThermicResistance",method:"additive",min:.33,max:.4}]}}},Misc_LightWeight:{name:"Lightweight",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"Mass",method:"multiplicative",min:0,max:-.45}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:-.45,max:-.55}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.3,max:-.3},{label:"Mass",method:"multiplicative",min:-.55,max:-.65}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.4,max:-.4},{label:"Mass",method:"multiplicative",min:-.65,max:-.75}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.5,max:-.5},{label:"Mass",method:"multiplicative",min:-.75,max:-.85}]}}},Misc_Reinforced:{name:"Reinforced",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"Mass",method:"multiplicative",min:.3,max:.3}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"Mass",method:"multiplicative",min:.6,max:.6}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"Mass",method:"multiplicative",min:.9,max:.9}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"Mass",method:"multiplicative",min:1.2,max:1.2}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"Mass",method:"multiplicative",min:1.5,max:1.5}]}}},Misc_Shielded:{name:"Shielded",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"PowerDraw",method:"multiplicative",min:.4,max:.4}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"PowerDraw",method:"multiplicative",min:.6,max:.6}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"PowerDraw",method:"multiplicative",min:.8,max:.8}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"PowerDraw",method:"multiplicative",min:1,max:1}]}}},Misc_ChaffCapacity:{name:"Ammo capacity",grades:{1:{features:[{label:"AmmoMaximum",method:"multiplicative",min:0,max:.5},{label:"Mass",method:"multiplicative",min:1,max:1},{label:"ReloadTime",method:"multiplicative",min:.1,max:.1}]}}},CollectionLimpet_LightWeight:{name:"Lightweight",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"Mass",method:"multiplicative",min:0,max:-.45}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:-.45,max:-.55}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.3,max:-.3},{label:"Mass",method:"multiplicative",min:-.55,max:-.65}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.4,max:-.4},{label:"Mass",method:"multiplicative",min:-.65,max:-.75}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.5,max:-.5},{label:"Mass",method:"multiplicative",min:-.75,max:-.85}]}}},CollectionLimpet_Reinforced:{name:"Reinforced",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"Mass",method:"multiplicative",min:.3,max:.3}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"Mass",method:"multiplicative",min:.6,max:.6}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"Mass",method:"multiplicative",min:.9,max:.9}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"Mass",method:"multiplicative",min:1.2,max:1.2}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"Mass",method:"multiplicative",min:1.5,max:1.5}]}}},CollectionLimpet_Shielded:{name:"Shielded",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"PowerDraw",method:"multiplicative",min:.4,max:.4}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"PowerDraw",method:"multiplicative",min:.6,max:.6}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"PowerDraw",method:"multiplicative",min:.8,max:.8}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"PowerDraw",method:"multiplicative",min:1,max:1}]}}},Engine_Dirty:{name:"Dirty",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.03,max:-.03},{label:"EngineOptimalMass",method:"multiplicative",min:-.025,max:-.025},{label:"EngineOptPerformance",method:"multiplicative",min:.05,max:.12},{label:"PowerDraw",method:"multiplicative",min:.04,max:.04},{label:"EngineHeatRate",method:"multiplicative",min:.2,max:.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.06,max:-.06},{label:"EngineOptimalMass",method:"multiplicative",min:-.05,max:-.05},{label:"EngineOptPerformance",method:"multiplicative",min:.12,max:.19},{label:"PowerDraw",method:"multiplicative",min:.06,max:.06},{label:"EngineHeatRate",method:"multiplicative",min:.3,max:.3}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.09,max:-.09},{label:"EngineOptimalMass",method:"multiplicative",min:-.075,max:-.075},{label:"EngineOptPerformance",method:"multiplicative",min:.19,max:.26},{label:"PowerDraw",method:"multiplicative",min:.08,max:.08},{label:"EngineHeatRate",method:"multiplicative",min:.4,max:.4}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.12,max:-.12},{label:"EngineOptimalMass",method:"multiplicative",min:-.1,max:-.1},{label:"EngineOptPerformance",method:"multiplicative",min:.26,max:.33},{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"EngineHeatRate",method:"multiplicative",min:.5,max:.5}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.15,max:-.15},{label:"EngineOptimalMass",method:"multiplicative",min:-.125,max:-.125},{label:"EngineOptPerformance",method:"multiplicative",min:.33,max:.4},{label:"PowerDraw",method:"multiplicative",min:.12,max:.12},{label:"EngineHeatRate",method:"multiplicative",min:.6,max:.6}]}}},Engine_Reinforced:{name:"Reinforced",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.3},{label:"Mass",method:"multiplicative",min:.05,max:.05},{label:"EngineHeatRate",method:"multiplicative",min:-.1,max:-.1}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.3,max:.5},{label:"Mass",method:"multiplicative",min:.1,max:.1},{label:"EngineHeatRate",method:"multiplicative",min:-.1,max:-.2}]},3:{features:[{label:"Integrity",method:"multiplicative",min:.5,max:.7},{label:"Mass",method:"multiplicative",min:.15,max:.15},{label:"EngineHeatRate",method:"multiplicative",min:-.2,max:-.3}]},4:{features:[{label:"Integrity",method:"multiplicative",min:.7,max:.9},{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"EngineHeatRate",method:"multiplicative",min:-.3,max:-.4}]},5:{features:[{label:"Integrity",method:"multiplicative",min:.9,max:1.1},{label:"Mass",method:"multiplicative",min:.25,max:.25},{label:"EngineHeatRate",method:"multiplicative",min:-.4,max:-.5}]}}},Engine_Tuned:{name:"Clean",grades:{1:{features:[{label:"EngineOptimalMass",method:"multiplicative",min:-.02,max:-.02},{label:"EngineOptPerformance",method:"multiplicative",min:.03,max:.08},{label:"EngineHeatRate",method:"multiplicative",min:-.1,max:-.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.04,max:-.04},{label:"EngineOptimalMass",method:"multiplicative",min:-.04,max:-.04},{label:"EngineOptPerformance",method:"multiplicative",min:.08,max:.13},{label:"PowerDraw",method:"multiplicative",min:.04,max:.04},{label:"EngineHeatRate",method:"multiplicative",min:-.2,max:-.3}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.08,max:-.08},{label:"EngineOptimalMass",method:"multiplicative",min:-.06,max:-.06},{label:"EngineOptPerformance",method:"multiplicative",min:.13,max:.18},{label:"PowerDraw",method:"multiplicative",min:.08,max:.08},{label:"EngineHeatRate",method:"multiplicative",min:-.3,max:-.4}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.12,max:-.12},{label:"EngineOptimalMass",method:"multiplicative",min:-.08,max:-.08},{label:"EngineOptPerformance",method:"multiplicative",min:.18,max:.23},{label:"PowerDraw",method:"multiplicative",min:.12,max:.12},{label:"EngineHeatRate",method:"multiplicative",min:-.4,max:-.5}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.16,max:-.16},{label:"EngineOptimalMass",method:"multiplicative",min:-.1,max:-.1},{label:"EngineOptPerformance",method:"multiplicative",min:.23,max:.28},{label:"PowerDraw",method:"multiplicative",min:.16,max:.16},{label:"EngineHeatRate",method:"multiplicative",min:-.5,max:-.6}]}}},FSD_FastBoot:{name:"Faster boot sequence",grades:{1:{features:[{label:"BootTime",method:"multiplicative",min:0,max:-.2},{label:"Integrity",method:"multiplicative",min:-.03,max:-.03},{label:"FSDOptimalMass",method:"multiplicative",min:0,max:.03},{label:"FSDHeatRate",method:"multiplicative",min:.04,max:.04}]},2:{features:[{label:"BootTime",method:"multiplicative",min:-.2,max:-.35},{label:"Integrity",method:"multiplicative",min:-.06,max:-.06},{label:"FSDOptimalMass",method:"multiplicative",min:.03,max:.06},{label:"FSDHeatRate",method:"multiplicative",min:.08,max:.08}]},3:{features:[{label:"BootTime",method:"multiplicative",min:-.35,max:-.5},{label:"Integrity",method:"multiplicative",min:-.09,max:-.09},{label:"FSDOptimalMass",method:"multiplicative",min:.06,max:.09},{label:"FSDHeatRate",method:"multiplicative",min:.12,max:.12}]},4:{features:[{label:"BootTime",method:"multiplicative",min:-.5,max:-.65},{label:"Integrity",method:"multiplicative",min:-.12,max:-.12},{label:"FSDOptimalMass",method:"multiplicative",min:.09,max:.12},{label:"FSDHeatRate",method:"multiplicative",min:.16,max:.16}]},5:{features:[{label:"BootTime",method:"multiplicative",min:-.65,max:-.8},{label:"Integrity",method:"multiplicative",min:-.15,max:-.15},{label:"FSDOptimalMass",method:"multiplicative",min:.12,max:.15},{label:"FSDHeatRate",method:"multiplicative",min:.2,max:.2}]}}},FSD_LongRange:{name:"Increased range",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.03,max:-.03},{label:"Mass",method:"multiplicative",min:.1,max:.1},{label:"FSDOptimalMass",method:"multiplicative",min:0,max:.15},{label:"PowerDraw",method:"multiplicative",min:.03,max:.03}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.06,max:-.06},{label:"Mass",method:"multiplicative",min:.15,max:.15},{label:"FSDOptimalMass",method:"multiplicative",min:.15,max:.25},{label:"PowerDraw",method:"multiplicative",min:.06,max:.06}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.09,max:-.09},{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"FSDOptimalMass",method:"multiplicative",min:.25,max:.35},{label:"PowerDraw",method:"multiplicative",min:.09,max:.09}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.12,max:-.12},{label:"Mass",method:"multiplicative",min:.25,max:.25},{label:"FSDOptimalMass",method:"multiplicative",min:.35,max:.45},{label:"PowerDraw",method:"multiplicative",min:.12,max:.12}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.15,max:-.15},{label:"Mass",method:"multiplicative",min:.3,max:.3},{label:"FSDOptimalMass",method:"multiplicative",min:.45,max:.55},{label:"PowerDraw",method:"multiplicative",min:.15,max:.15}]}}},FSD_Shielded:{name:"Shielded",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.25},{label:"Mass",method:"multiplicative",min:.04,max:.04},{label:"FSDOptimalMass",method:"multiplicative",min:0,max:.03},{label:"FSDHeatRate",method:"multiplicative",min:-.05,max:-.1}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.25,max:.5},{label:"Mass",method:"multiplicative",min:.08,max:.08},{label:"FSDOptimalMass",method:"multiplicative",min:.03,max:.06},{label:"FSDHeatRate",method:"multiplicative",min:-.1,max:-.15}]},3:{features:[{label:"Integrity",method:"multiplicative",min:.5,max:.75},{label:"Mass",method:"multiplicative",min:.12,max:.12},{label:"FSDOptimalMass",method:"multiplicative",min:.06,max:.09},{label:"FSDHeatRate",method:"multiplicative",min:-.15,max:-.2}]},4:{features:[{label:"Integrity",method:"multiplicative",min:.75,max:1},{label:"Mass",method:"multiplicative",min:.16,max:.16},{label:"FSDOptimalMass",method:"multiplicative",min:.09,max:.12},{label:"FSDHeatRate",method:"multiplicative",min:-.2,max:-.25}]},5:{features:[{label:"Integrity",method:"multiplicative",min:1,max:1.25},{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"FSDOptimalMass",method:"multiplicative",min:.12,max:.15},{label:"FSDHeatRate",method:"multiplicative",min:-.25,max:-.3}]}}},FSDinterdictor_Expanded:{name:"Expanded capture arc",grades:{1:{features:[{label:"FSDInterdictorFacingLimit",method:"multiplicative",min:0,max:.4},{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"FSDInterdictorRange",method:"multiplicative",min:-.1,max:.1}]},2:{features:[{label:"FSDInterdictorFacingLimit",method:"multiplicative",min:.4,max:.6},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"FSDInterdictorRange",method:"multiplicative",min:-.15,max:-.15}]},3:{features:[{label:"FSDInterdictorFacingLimit",method:"multiplicative",min:.6,max:.8},{label:"PowerDraw",method:"multiplicative",min:.3,max:.3},{label:"FSDInterdictorRange",method:"multiplicative",min:-.2,max:-.2}]},4:{features:[{label:"FSDInterdictorFacingLimit",method:"multiplicative",min:.8,max:1},{label:"PowerDraw",method:"multiplicative",min:.4,max:.4},{label:"FSDInterdictorRange",method:"multiplicative",min:-.25,max:-.25}]},5:{features:[{label:"FSDInterdictorFacingLimit",method:"multiplicative",min:1,max:1.2},{label:"PowerDraw",method:"multiplicative",min:.5,max:.5},{label:"FSDInterdictorRange",method:"multiplicative",min:-.3,max:-.3}]}}},FSDinterdictor_LongRange:{name:"Long range",grades:{1:{features:[{label:"FSDInterdictorFacingLimit",method:"multiplicative",min:-.1,max:-.1},{label:"Mass",method:"multiplicative",min:.1,max:.1},{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"FSDInterdictorRange",method:"multiplicative",min:0,max:.2}]},2:{features:[{label:"FSDInterdictorFacingLimit",method:"multiplicative",min:-.15,max:-.15},{label:"Mass",method:"multiplicative",min:.15,max:.15},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"FSDInterdictorRange",method:"multiplicative",min:.2,max:.3}]},3:{features:[{label:"FSDInterdictorFacingLimit",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"PowerDraw",method:"multiplicative",min:.3,max:.3},{label:"FSDInterdictorRange",method:"multiplicative",min:.3,max:.4}]},4:{features:[{label:"FSDInterdictorFacingLimit",method:"multiplicative",min:-.25,max:-.25},{label:"Mass",method:"multiplicative",min:.25,max:.25},{label:"PowerDraw",method:"multiplicative",min:.4,max:.4},{label:"FSDInterdictorRange",method:"multiplicative",min:.4,max:.5}]},5:{features:[{label:"FSDInterdictorFacingLimit",method:"multiplicative",min:-.3,max:-.3},{label:"Mass",method:"multiplicative",min:.3,max:.3},{label:"PowerDraw",method:"multiplicative",min:.5,max:.5},{label:"FSDInterdictorRange",method:"multiplicative",min:.5,max:.6}]}}},FuelScoop_Shielded:{name:"Shielded",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"PowerDraw",method:"multiplicative",min:.4,max:.4}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"PowerDraw",method:"multiplicative",min:.6,max:.6}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"PowerDraw",method:"multiplicative",min:.8,max:.8}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"PowerDraw",method:"multiplicative",min:1,max:1}]}}},FuelTransferLimpet_LightWeight:{name:"Lightweight",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"Mass",method:"multiplicative",min:0,max:-.45}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:-.45,max:-.55}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.3,max:-.3},{label:"Mass",method:"multiplicative",min:-.55,max:-.65}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.4,max:-.4},{label:"Mass",method:"multiplicative",min:-.65,max:-.75}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.5,max:-.5},{label:"Mass",method:"multiplicative",min:-.75,max:-.85}]}}},FuelTransferLimpet_Reinforced:{name:"Reinforced",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"Mass",method:"multiplicative",min:.3,max:.3}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"Mass",method:"multiplicative",min:.6,max:.6}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"Mass",method:"multiplicative",min:.9,max:.9}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"Mass",method:"multiplicative",min:1.2,max:1.2}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"Mass",method:"multiplicative",min:1.5,max:1.5}]}}},FuelTransferLimpet_Shielded:{name:"Shielded",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"PowerDraw",method:"multiplicative",min:.4,max:.4}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"PowerDraw",method:"multiplicative",min:.6,max:.6}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"PowerDraw",method:"multiplicative",min:.8,max:.8}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"PowerDraw",method:"multiplicative",min:1,max:1}]}}},HatchBreakerLimpet_LightWeight:{name:"Lightweight",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"Mass",method:"multiplicative",min:0,max:-.45}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:-.45,max:-.55}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.3,max:-.3},{label:"Mass",method:"multiplicative",min:-.55,max:-.65}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.4,max:-.4},{label:"Mass",method:"multiplicative",min:-.65,max:-.75}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.5,max:-.5},{label:"Mass",method:"multiplicative",min:-.75,max:-.85}]}}},HatchBreakerLimpet_Reinforced:{name:"Reinforced",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"Mass",method:"multiplicative",min:.3,max:.3}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"Mass",method:"multiplicative",min:.6,max:.6}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"Mass",method:"multiplicative",min:.9,max:.9}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"Mass",method:"multiplicative",min:1.2,max:1.2}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"Mass",method:"multiplicative",min:1.5,max:1.5}]}}},HatchBreakerLimpet_Shielded:{name:"Shielded",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"PowerDraw",method:"multiplicative",min:.4,max:.4}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"PowerDraw",method:"multiplicative",min:.6,max:.6}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"PowerDraw",method:"multiplicative",min:.8,max:.8}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"PowerDraw",method:"multiplicative",min:1,max:1}]}}},Misc_HeatSinkCapacity:{name:"Ammo capacity",grades:{1:{features:[{label:"AmmoMaximum",method:"multiplicative",min:.49,max:.49},{label:"Mass",method:"multiplicative",min:1,max:1},{label:"ReloadTime",method:"multiplicative",min:.5,max:.5}]}}},HullReinforcement_Advanced:{name:"Lightweight",grades:{1:{features:[{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:0,max:.08},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:-.04,max:-.04},{label:"Mass",method:"multiplicative",min:0,max:-.08}]},2:{features:[{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:.08,max:.12},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:-.08,max:-.08},{label:"Mass",method:"multiplicative",min:-.08,max:-.12}]},3:{features:[{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:.12,max:.16},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:-.12,max:-.12},{label:"Mass",method:"multiplicative",min:-.12,max:-.16}]},4:{features:[{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:.16,max:.2},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:-.16,max:-.16},{label:"Mass",method:"multiplicative",min:-.16,max:-.2}]},5:{features:[{label:"DefenceModifierHealthMultiplier",method:"multiplicative",min:.2,max:.24},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:-.2,max:-.24}]}}},HullReinforcement_Explosive:{name:"Blast resistant",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:0,max:.12},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:0,max:.03},{label:"KineticResistance",method:"additive",min:-.02,max:-.02},{label:"ThermicResistance",method:"additive",min:-.02,max:-.02}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:.12,max:.19},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.03,max:.06},{label:"KineticResistance",method:"additive",min:-.04,max:-.04},{label:"ThermicResistance",method:"additive",min:-.04,max:-.04}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:.19,max:.26},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.06,max:.09},{label:"KineticResistance",method:"additive",min:-.06,max:-.06},{label:"ThermicResistance",method:"additive",min:-.06,max:-.06}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:.26,max:.33},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.09,max:.12},{label:"KineticResistance",method:"additive",min:-.08,max:-.08},{label:"ThermicResistance",method:"additive",min:-.08,max:-.08}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:.33,max:.4},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.12,max:.15},{label:"KineticResistance",method:"additive",min:-.1,max:-.1},{label:"ThermicResistance",method:"additive",min:-.1,max:-.1}]}}},HullReinforcement_HeavyDuty:{name:"Heavy duty",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:0,max:.03},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:0,max:.24},{label:"KineticResistance",method:"additive",min:0,max:.03},{label:"Mass",method:"multiplicative",min:.08,max:.08},{label:"ThermicResistance",method:"additive",min:0,max:.03}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:.03,max:.06},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.24,max:.36},{label:"KineticResistance",method:"additive",min:.03,max:.06},{label:"Mass",method:"multiplicative",min:.16,max:.16},{label:"ThermicResistance",method:"additive",min:.03,max:.06}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:.06,max:.09},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.36,max:.48},{label:"KineticResistance",method:"additive",min:.06,max:.09},{label:"Mass",method:"multiplicative",min:.24,max:.24},{label:"ThermicResistance",method:"additive",min:.06,max:.09}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:.09,max:.12},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.48,max:.6},{label:"KineticResistance",method:"additive",min:.09,max:.12},{label:"Mass",method:"multiplicative",min:.32,max:.32},{label:"ThermicResistance",method:"additive",min:.09,max:.12}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:.12,max:.15},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.6,max:.72},{label:"KineticResistance",method:"additive",min:.12,max:.15},{label:"Mass",method:"multiplicative",min:.4,max:.4},{label:"ThermicResistance",method:"additive",min:.12,max:.15}]}}},HullReinforcement_Kinetic:{name:"Kinetic resistant",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:-.02,max:-.02},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:0,max:.03},{label:"KineticResistance",method:"additive",min:0,max:.12},{label:"ThermicResistance",method:"additive",min:-.02,max:-.02}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:-.04,max:-.04},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.03,max:.06},{label:"KineticResistance",method:"additive",min:.12,max:.19},{label:"ThermicResistance",method:"additive",min:-.04,max:-.04}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:-.06,max:-.06},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.06,max:.09},{label:"KineticResistance",method:"additive",min:.19,max:.26},{label:"ThermicResistance",method:"additive",min:-.06,max:-.06}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:-.08,max:-.08},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.09,max:.12},{label:"KineticResistance",method:"additive",min:.26,max:.33},{label:"ThermicResistance",method:"additive",min:-.08,max:-.08}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:-.1,max:-.1},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.12,max:.15},{label:"KineticResistance",method:"additive",min:.33,max:.4},{label:"ThermicResistance",method:"additive",min:-.1,max:-.1}]}}},HullReinforcement_Thermic:{name:"Thermal resistant",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:-.02,max:-.02},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:0,max:.03},{label:"KineticResistance",method:"additive",min:-.02,max:-.02},{label:"ThermicResistance",method:"additive",min:0,max:.12}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:-.04,max:-.04},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.03,max:.06},{label:"KineticResistance",method:"additive",min:-.04,max:-.04},{label:"ThermicResistance",method:"additive",min:.12,max:.19}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:-.06,max:-.06},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.06,max:.09},{label:"KineticResistance",method:"additive",min:-.06,max:-.06},{label:"ThermicResistance",method:"additive",min:.19,max:.26}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:-.08,max:-.08},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.09,max:.12},{label:"KineticResistance",method:"additive",min:-.08,max:-.08},{label:"ThermicResistance",method:"additive",min:.26,max:.33}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:-.1,max:-.1},{label:"DefenceModifierHealthAddition",method:"multiplicative",min:.12,max:.15},{label:"KineticResistance",method:"additive",min:-.1,max:-.1},{label:"ThermicResistance",method:"additive",min:.33,max:.4}]}}},LifeSupport_LightWeight:{name:"Lightweight",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"Mass",method:"multiplicative",min:0,max:-.45}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:-.45,max:-.55}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.3,max:-.3},{label:"Mass",method:"multiplicative",min:-.55,max:-.65}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.4,max:-.4},{label:"Mass",method:"multiplicative",min:-.65,max:-.75}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.5,max:-.5},{label:"Mass",method:"multiplicative",min:-.75,max:-.85}]}}},LifeSupport_Reinforced:{name:"Reinforced",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"Mass",method:"multiplicative",min:.3,max:.3}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"Mass",method:"multiplicative",min:.6,max:.6}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"Mass",method:"multiplicative",min:.9,max:.9}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"Mass",method:"multiplicative",min:1.2,max:1.2}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"Mass",method:"multiplicative",min:1.5,max:1.5}]}}},LifeSupport_Shielded:{name:"Shielded",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"PowerDraw",method:"multiplicative",min:.4,max:.4}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"PowerDraw",method:"multiplicative",min:.6,max:.6}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"PowerDraw",method:"multiplicative",min:.8,max:.8}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"PowerDraw",method:"multiplicative",min:1.12,max:1.12}]}}},Misc_PointDefenseCapacity:{name:"Ammo capacity",grades:{1:{features:[{label:"AmmoMaximum",method:"multiplicative",min:0,max:.5},{label:"Mass",method:"multiplicative",min:1,max:1},{label:"ReloadTime",method:"multiplicative",min:.1,max:.1}]}}},PowerDistributor_HighCapacity:{name:"High charge capacity",grades:{1:{features:[{label:"EnginesCapacity",method:"multiplicative",min:0,max:.1},{label:"EnginesRecharge",method:"multiplicative",min:-.02,max:-.02},{label:"Integrity",method:"multiplicative",min:0,max:.1},{label:"SystemsCapacity",method:"multiplicative",min:0,max:.1},{label:"SystemsRecharge",method:"multiplicative",min:-.02,max:-.02},{label:"WeaponsCapacity",method:"multiplicative",min:0,max:.1},{label:"WeaponsRecharge",method:"multiplicative",min:-.02,max:-.02}]},2:{features:[{label:"EnginesCapacity",method:"multiplicative",min:.1,max:.18},{label:"EnginesRecharge",method:"multiplicative",min:-.06,max:-.06},{label:"Integrity",method:"multiplicative",min:.1,max:.18},{label:"SystemsCapacity",method:"multiplicative",min:.08,max:.1},{label:"SystemsRecharge",method:"multiplicative",min:-.06,max:-.06},{label:"WeaponsCapacity",method:"multiplicative",min:.1,max:.18},{label:"WeaponsRecharge",method:"multiplicative",min:-.06,max:-.06}]},3:{features:[{label:"EnginesCapacity",method:"multiplicative",min:.18,max:.26},{label:"EnginesRecharge",method:"multiplicative",min:-.1,max:-.1},{label:"Integrity",method:"multiplicative",min:.15,max:.2},{label:"SystemsCapacity",method:"multiplicative",min:.18,max:.26},{label:"SystemsRecharge",method:"multiplicative",min:-.1,max:-.1},{label:"WeaponsCapacity",method:"multiplicative",min:.18,max:.26},{label:"WeaponsRecharge",method:"multiplicative",min:-.1,max:-.1}]},4:{features:[{label:"EnginesCapacity",method:"multiplicative",min:.26,max:.34},{label:"EnginesRecharge",method:"multiplicative",min:-.14,max:-.14},{label:"Integrity",method:"multiplicative",min:.2,max:.25},{label:"SystemsCapacity",method:"multiplicative",min:.26,max:.34},{label:"SystemsRecharge",method:"multiplicative",min:-.14,max:-.14},{label:"WeaponsCapacity",method:"multiplicative",min:.26,max:.34},{label:"WeaponsRecharge",method:"multiplicative",min:-.14,max:-.14}]},5:{features:[{label:"EnginesCapacity",method:"multiplicative",min:.34,max:.42},{label:"EnginesRecharge",method:"multiplicative",min:-.18,max:-.18},{label:"Integrity",method:"multiplicative",min:.25,max:.3},{label:"SystemsCapacity",method:"multiplicative",min:.34,max:.42},{label:"SystemsRecharge",method:"multiplicative",min:-.18,max:-.18},{label:"WeaponsCapacity",method:"multiplicative",min:.34,max:.42},{label:"WeaponsRecharge",method:"multiplicative",min:-.18,max:-.18}]}}},PowerDistributor_HighFrequency:{name:"Charge enhanced",grades:{1:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.01,max:-.01},{label:"EnginesRecharge",method:"multiplicative",min:0,max:.09},{label:"SystemsCapacity",method:"multiplicative",min:-.01,max:-.01},{label:"SystemsRecharge",method:"multiplicative",min:0,max:.09},{label:"WeaponsCapacity",method:"multiplicative",min:-.01,max:-.01},{label:"WeaponsRecharge",method:"multiplicative",min:0,max:.09}]},2:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.02,max:-.02},{label:"EnginesRecharge",method:"multiplicative",min:.09,max:.18},{label:"SystemsCapacity",method:"multiplicative",min:-.02,max:-.02},{label:"SystemsRecharge",method:"multiplicative",min:.09,max:.18},{label:"WeaponsCapacity",method:"multiplicative",min:-.02,max:-.02},{label:"WeaponsRecharge",method:"multiplicative",min:.09,max:.18}]},3:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.03,max:-.03},{label:"EnginesRecharge",method:"multiplicative",min:.18,max:.27},{label:"SystemsCapacity",method:"multiplicative",min:-.03,max:-.03},{label:"SystemsRecharge",method:"multiplicative",min:.18,max:.27},{label:"WeaponsCapacity",method:"multiplicative",min:-.03,max:-.03},{label:"WeaponsRecharge",method:"multiplicative",min:.18,max:.27}]},4:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.04,max:-.04},{label:"EnginesRecharge",method:"multiplicative",min:.27,max:.36},{label:"SystemsCapacity",method:"multiplicative",min:-.04,max:-.04},{label:"SystemsRecharge",method:"multiplicative",min:.27,max:.36},{label:"WeaponsCapacity",method:"multiplicative",min:-.04,max:-.04},{label:"WeaponsRecharge",method:"multiplicative",min:.27,max:.36}]},5:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.05,max:-.05},{label:"EnginesRecharge",method:"multiplicative",min:.36,max:.45},{label:"SystemsCapacity",method:"multiplicative",min:-.05,max:-.05},{label:"SystemsRecharge",method:"multiplicative",min:.36,max:.45},{label:"WeaponsCapacity",method:"multiplicative",min:-.05,max:-.05},{label:"WeaponsRecharge",method:"multiplicative",min:.36,max:.45}]}}},PowerDistributor_PriorityEngines:{name:"Engine focused",grades:{1:{features:[{label:"EnginesCapacity",method:"multiplicative",min:0,max:.2},{label:"EnginesRecharge",method:"multiplicative",min:0,max:.16},{label:"SystemsCapacity",method:"multiplicative",min:-.03,max:-.03},{label:"SystemsRecharge",method:"multiplicative",min:-.03,max:-.03},{label:"WeaponsCapacity",method:"multiplicative",min:-.03,max:-.03},{label:"WeaponsRecharge",method:"multiplicative",min:-.01,max:-.01}]},2:{features:[{label:"EnginesCapacity",method:"multiplicative",min:.2,max:.3},{label:"EnginesRecharge",method:"multiplicative",min:.16,max:.23},{label:"SystemsCapacity",method:"multiplicative",min:-.06,max:-.06},{label:"SystemsRecharge",method:"multiplicative",min:-.06,max:-.06},{label:"WeaponsCapacity",method:"multiplicative",min:-.06,max:-.06},{label:"WeaponsRecharge",method:"multiplicative",min:-.02,max:-.02}]},3:{features:[{label:"EnginesCapacity",method:"multiplicative",min:.3,max:.4},{label:"EnginesRecharge",method:"multiplicative",min:.23,max:.3},{label:"SystemsCapacity",method:"multiplicative",min:-.09,max:-.09},{label:"SystemsRecharge",method:"multiplicative",min:-.09,max:-.09},{label:"WeaponsCapacity",method:"multiplicative",min:-.09,max:-.09},{label:"WeaponsRecharge",method:"multiplicative",min:-.03,max:-.03}]},4:{features:[{label:"EnginesCapacity",method:"multiplicative",min:.4,max:.5},{label:"EnginesRecharge",method:"multiplicative",min:.3,max:.37},{label:"SystemsCapacity",method:"multiplicative",min:-.12,max:-.12},{label:"SystemsRecharge",method:"multiplicative",min:-.12,max:-.12},{label:"WeaponsCapacity",method:"multiplicative",min:-.12,max:-.12},{label:"WeaponsRecharge",method:"multiplicative",min:-.04,max:-.04}]},5:{features:[{label:"EnginesCapacity",method:"multiplicative",min:.5,max:.6},{label:"EnginesRecharge",method:"multiplicative",min:.37,max:.44},{label:"SystemsCapacity",method:"multiplicative",min:-.15,max:-.15},{label:"SystemsRecharge",method:"multiplicative",min:-.15,max:-.15},{label:"WeaponsCapacity",method:"multiplicative",min:-.15,max:-.15},{label:"WeaponsRecharge",method:"multiplicative",min:-.05,max:-.05}]}}},PowerDistributor_PrioritySystems:{name:"System focused",grades:{1:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.03,max:-.03},{label:"EnginesRecharge",method:"multiplicative",min:-.01,max:-.01},{label:"SystemsCapacity",method:"multiplicative",min:0,max:.2},{label:"SystemsRecharge",method:"multiplicative",min:0,max:.16},{label:"WeaponsCapacity",method:"multiplicative",min:-.03,max:-.03},{label:"WeaponsRecharge",method:"multiplicative",min:-.03,max:-.03}]},2:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.06,max:-.06},{label:"EnginesRecharge",method:"multiplicative",min:-.02,max:-.02},{label:"SystemsCapacity",method:"multiplicative",min:.2,max:.3},{label:"SystemsRecharge",method:"multiplicative",min:.16,max:.23},{label:"WeaponsCapacity",method:"multiplicative",min:-.06,max:-.06},{label:"WeaponsRecharge",method:"multiplicative",min:-.06,max:-.06}]},3:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.09,max:-.09},{label:"EnginesRecharge",method:"multiplicative",min:-.03,max:-.03},{label:"SystemsCapacity",method:"multiplicative",min:.3,max:.4},{label:"SystemsRecharge",method:"multiplicative",min:.23,max:.3},{label:"WeaponsCapacity",method:"multiplicative",min:-.09,max:-.09},{label:"WeaponsRecharge",method:"multiplicative",min:-.09,max:-.09}]},4:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.12,max:-.12},{label:"EnginesRecharge",method:"multiplicative",min:-.04,max:-.04},{label:"SystemsCapacity",method:"multiplicative",min:.4,max:.5},{label:"SystemsRecharge",method:"multiplicative",min:.3,max:.37},{label:"WeaponsCapacity",method:"multiplicative",min:-.12,max:-.12},{label:"WeaponsRecharge",method:"multiplicative",min:-.12,max:-.12}]},5:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.15,max:-.15},{label:"EnginesRecharge",method:"multiplicative",min:-.05,max:-.05},{label:"SystemsCapacity",method:"multiplicative",min:.5,max:.6},{label:"SystemsRecharge",method:"multiplicative",min:.37,max:.44},{label:"WeaponsCapacity",method:"multiplicative",min:-.15,max:-.15},{label:"WeaponsRecharge",method:"multiplicative",min:-.15,max:-.15}]}}},PowerDistributor_PriorityWeapons:{name:"Weapon focused",grades:{1:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.03,max:-.03},{label:"EnginesRecharge",method:"multiplicative",min:-.03,max:-.03},{label:"SystemsCapacity",method:"multiplicative",min:-.03,max:-.03},{label:"SystemsRecharge",method:"multiplicative",min:-.01,max:-.01},{label:"WeaponsCapacity",method:"multiplicative",min:0,max:.2},{label:"WeaponsRecharge",method:"multiplicative",min:0,max:.16}]},2:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.06,max:-.06},{label:"EnginesRecharge",method:"multiplicative",min:-.06,max:-.06},{label:"SystemsCapacity",method:"multiplicative",min:-.06,max:-.06},{label:"SystemsRecharge",method:"multiplicative",min:-.02,max:-.02},{label:"WeaponsCapacity",method:"multiplicative",min:.2,max:.3},{label:"WeaponsRecharge",method:"multiplicative",min:.16,max:.23}]},3:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.09,max:-.09},{label:"EnginesRecharge",method:"multiplicative",min:-.09,max:-.09},{label:"SystemsCapacity",method:"multiplicative",min:-.09,max:-.09},{label:"SystemsRecharge",method:"multiplicative",min:-.03,max:-.03},{label:"WeaponsCapacity",method:"multiplicative",min:.3,max:.4},{label:"WeaponsRecharge",method:"multiplicative",min:.23,max:.3}]},4:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.12,max:-.12},{label:"EnginesRecharge",method:"multiplicative",min:-.12,max:-.12},{label:"SystemsCapacity",method:"multiplicative",min:-.12,max:-.12},{label:"SystemsRecharge",method:"multiplicative",min:-.04,max:-.04},{label:"WeaponsCapacity",method:"multiplicative",min:.4,max:.5},{label:"WeaponsRecharge",method:"multiplicative",min:.3,max:.37}]},5:{features:[{label:"EnginesCapacity",method:"multiplicative",min:-.15,max:-.15},{label:"EnginesRecharge",method:"multiplicative",min:-.15,max:-.15},{label:"SystemsCapacity",method:"multiplicative",min:-.15,max:-.15},{label:"SystemsRecharge",method:"multiplicative",min:-.05,max:-.05},{label:"WeaponsCapacity",method:"multiplicative",min:.5,max:.6},{label:"WeaponsRecharge",method:"multiplicative",min:.37,max:.44}]}}},PowerDistributor_Shielded:{name:"Shielded",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.4},{label:"Mass",method:"multiplicative",min:.03,max:.03},{label:"PowerDraw",method:"multiplicative",min:0,max:-.1}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.4,max:.8},{label:"Mass",method:"multiplicative",min:.06,max:.06},{label:"PowerDraw",method:"multiplicative",min:-.1,max:-.15}]},3:{features:[{label:"Integrity",method:"multiplicative",min:.8,max:1.2},{label:"Mass",method:"multiplicative",min:.09,max:.09},{label:"PowerDraw",method:"multiplicative",min:-.15,max:-.2}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.6},{label:"Mass",method:"multiplicative",min:.12,max:.12},{label:"PowerDraw",method:"multiplicative",min:-.2,max:-.25}]},5:{features:[{label:"Integrity",method:"multiplicative",min:1.6,max:2},{label:"Mass",method:"multiplicative",min:.15,max:.15},{label:"PowerDraw",method:"multiplicative",min:-.25,max:-.3}]}}},PowerPlant_Armoured:{name:"Armoured",grades:{1:{features:[{label:"HeatEfficiency",method:"multiplicative",min:0,max:-.04},{label:"Integrity",method:"multiplicative",min:0,max:.4},{label:"PowerCapacity",method:"multiplicative",min:0,max:.04},{label:"Mass",method:"multiplicative",min:.04,max:.04}]},2:{features:[{label:"HeatEfficiency",method:"multiplicative",min:-.04,max:-.06},{label:"Integrity",method:"multiplicative",min:.3,max:.6},{label:"PowerCapacity",method:"multiplicative",min:0,max:.06},{label:"Mass",method:"multiplicative",min:.08,max:.08}]},3:{features:[{label:"HeatEfficiency",method:"multiplicative",min:-.06,max:-.08},{label:"Integrity",method:"multiplicative",min:.6,max:.8},{label:"PowerCapacity",method:"multiplicative",min:.06,max:.08},{label:"Mass",method:"multiplicative",min:.12,max:.12}]},4:{features:[{label:"HeatEfficiency",method:"multiplicative",min:-.08,max:-.1},{label:"Integrity",method:"multiplicative",min:.5,max:1},{label:"PowerCapacity",method:"multiplicative",min:.08,max:.1},{label:"Mass",method:"multiplicative",min:.16,max:.16}]},5:{features:[{label:"HeatEfficiency",method:"multiplicative",min:-.1,max:-.12},{label:"Integrity",method:"multiplicative",min:1,max:1.2},{label:"PowerCapacity",method:"multiplicative",min:.1,max:.12},{label:"Mass",method:"multiplicative",min:.2,max:.2}]}}},PowerPlant_Boosted:{name:"Overcharged",grades:{1:{features:[{label:"HeatEfficiency",method:"multiplicative",min:.05,max:.05},{label:"Integrity",method:"multiplicative",min:-.05,max:-.05},{label:"PowerCapacity",method:"multiplicative",min:0,max:.12}]},2:{features:[{label:"HeatEfficiency",method:"multiplicative",min:.1,max:.1},{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"PowerCapacity",method:"multiplicative",min:.12,max:.19}]},3:{features:[{label:"HeatEfficiency",method:"multiplicative",min:.15,max:.15},{label:"Integrity",method:"multiplicative",min:-.15,max:-.15},{label:"PowerCapacity",method:"multiplicative",min:.19,max:.26}]},4:{features:[{label:"HeatEfficiency",method:"multiplicative",min:.2,max:.2},{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"PowerCapacity",method:"multiplicative",min:.26,max:.33}]},5:{features:[{label:"HeatEfficiency",method:"multiplicative",min:.25,max:.25},{label:"Integrity",method:"multiplicative",min:-.25,max:-.25},{label:"PowerCapacity",method:"multiplicative",min:.33,max:.4}]}}},PowerPlant_Stealth:{name:"Low emissions",grades:{1:{features:[{label:"HeatEfficiency",method:"multiplicative",min:0,max:-.25},{label:"Mass",method:"multiplicative",min:.04,max:.04},{label:"PowerCapacity",method:"multiplicative",min:-.03,max:-.03}]},2:{features:[{label:"HeatEfficiency",method:"multiplicative",min:-.25,max:-.35},{label:"Mass",method:"multiplicative",min:.08,max:.08},{label:"PowerCapacity",method:"multiplicative",min:-.06,max:-.06}]},3:{features:[{label:"HeatEfficiency",method:"multiplicative",min:-.35,max:-.45},{label:"Mass",method:"multiplicative",min:.12,max:.12},{label:"PowerCapacity",method:"multiplicative",min:-.09,max:-.09}]},4:{features:[{label:"HeatEfficiency",method:"multiplicative",min:-.45,max:-.55},{label:"Mass",method:"multiplicative",min:.16,max:.16},{label:"PowerCapacity",method:"multiplicative",min:-.12,max:-.12}]},5:{features:[{label:"HeatEfficiency",method:"multiplicative",min:-.55,max:-.65},{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"PowerCapacity",method:"multiplicative",min:-.15,max:-.15}]}}},ProspectingLimpet_LightWeight:{name:"Lightweight",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"Mass",method:"multiplicative",min:0,max:-.45}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:-.45,max:-.55}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.3,max:-.3},{label:"Mass",method:"multiplicative",min:-.55,max:-.65}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.4,max:-.4},{label:"Mass",method:"multiplicative",min:-.65,max:-.75}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.5,max:-.5},{label:"Mass",method:"multiplicative",min:-.75,max:-.85}]}}},ProspectingLimpet_Reinforced:{name:"Reinforced",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"Mass",method:"multiplicative",min:.3,max:.3}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"Mass",method:"multiplicative",min:.6,max:.6}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"Mass",method:"multiplicative",min:.9,max:.9}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"Mass",method:"multiplicative",min:1.2,max:1.2}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"Mass",method:"multiplicative",min:1.5,max:1.5}]}}},ProspectingLimpet_Shielded:{name:"Shielded",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"PowerDraw",method:"multiplicative",min:.4,max:.4}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"PowerDraw",method:"multiplicative",min:.6,max:.6}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"PowerDraw",method:"multiplicative",min:.8,max:.8}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"PowerDraw",method:"multiplicative",min:1,max:1}]}}},Refineries_Shielded:{name:"Shielded",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.6},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.6,max:1.2},{label:"PowerDraw",method:"multiplicative",min:.4,max:.4}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.2,max:1.8},{label:"PowerDraw",method:"multiplicative",min:.6,max:.6}]},4:{features:[{label:"Integrity",method:"multiplicative",min:1.8,max:2.4},{label:"PowerDraw",method:"multiplicative",min:.8,max:.8}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.4,max:3},{label:"PowerDraw",method:"multiplicative",min:1,max:1}]}}},Sensor_FastScan:{name:"Fast scan",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"ScannerRange",method:"multiplicative",min:-.05,max:-.05},{label:"ScannerTimeToScan",method:"multiplicative",min:0,max:-.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"ScannerRange",method:"multiplicative",min:-.1,max:-.1},{label:"ScannerTimeToScan",method:"multiplicative",min:-.2,max:-.35}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.3,max:-.3},{label:"ScannerRange",method:"multiplicative",min:-.15,max:-.15},{label:"ScannerTimeToScan",method:"multiplicative",min:-.35,max:-.5}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.4,max:-.4},{label:"ScannerRange",method:"multiplicative",min:-.2,max:-.2},{label:"ScannerTimeToScan",method:"multiplicative",min:-.5,max:-.65}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.5,max:-.5},{label:"ScannerRange",method:"multiplicative",min:-.25,max:-.25},{label:"ScannerTimeToScan",method:"multiplicative",min:-.8,max:-.8}]}}},Scanner_LongRange:{name:"Long range",grades:{1:{features:[{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.1,max:-.1},{label:"ScannerRange",method:"multiplicative",min:0,max:.24}]},2:{features:[{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.15,max:-.15},{label:"ScannerRange",method:"multiplicative",min:.24,max:.48}]},3:{features:[{label:"PowerDraw",method:"multiplicative",min:.3,max:.3},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.2,max:-.2},{label:"ScannerRange",method:"multiplicative",min:.48,max:.72}]},4:{features:[{label:"PowerDraw",method:"multiplicative",min:.4,max:.4},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.25,max:-.25},{label:"ScannerRange",method:"multiplicative",min:.72,max:.96}]},5:{features:[{label:"PowerDraw",method:"multiplicative",min:.5,max:.5},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.3,max:-.3},{label:"ScannerRange",method:"multiplicative",min:.96,max:1.2}]}}},Scanner_WideAngle:{name:"Wide angle",grades:{1:{features:[{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"SensorTargetScanAngle",method:"multiplicative",min:0,max:.4},{label:"ScannerTimeToScan",method:"multiplicative",min:.1,max:.1}]},2:{features:[{label:"Mass",method:"multiplicative",min:.4,max:.4},{label:"SensorTargetScanAngle",method:"multiplicative",min:.4,max:.8},{label:"ScannerTimeToScan",method:"multiplicative",min:.2,max:.2}]},3:{features:[{label:"Mass",method:"multiplicative",min:.6,max:.6},{label:"SensorTargetScanAngle",method:"multiplicative",min:.8,max:1.2},{label:"ScannerTimeToScan",method:"multiplicative",min:.3,max:.3}]},4:{features:[{label:"Mass",method:"multiplicative",min:.8,max:.8},{label:"SensorTargetScanAngle",method:"multiplicative",min:1.2,max:1.6},{label:"ScannerTimeToScan",method:"multiplicative",min:.4,max:.4}]},5:{features:[{label:"Mass",method:"multiplicative",min:1,max:1},{label:"SensorTargetScanAngle",method:"multiplicative",min:1.6,max:2},{label:"ScannerTimeToScan",method:"multiplicative",min:.5,max:.5}]}}},Sensor_LightWeight:{name:"Lightweight",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"Mass",method:"multiplicative",min:0,max:-.2},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.05,max:-.05}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:-.2,max:-.35},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.1,max:-.1}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.3,max:-.3},{label:"Mass",method:"multiplicative",min:-.35,max:-.5},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.15,max:-.15}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.4,max:-.4},{label:"Mass",method:"multiplicative",min:-.5,max:-.65},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.2,max:-.2}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.5,max:-.5},{label:"Mass",method:"multiplicative",min:-.65,max:-.8},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.25,max:-.25}]}}},Sensor_LongRange:{name:"Long range",grades:{1:{features:[{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.1,max:-.1},{label:"ScannerRange",method:"multiplicative",min:0,max:.15}]},2:{features:[{label:"Mass",method:"multiplicative",min:.4,max:.4},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.15,max:-.15},{label:"ScannerRange",method:"multiplicative",min:.15,max:.3}]},3:{features:[{label:"Mass",method:"multiplicative",min:.6,max:.6},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.2,max:-.2},{label:"ScannerRange",method:"multiplicative",min:.3,max:.45}]},4:{features:[{label:"Mass",method:"multiplicative",min:.8,max:.8},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.25,max:-.25},{label:"ScannerRange",method:"multiplicative",min:.45,max:.6}]},5:{features:[{label:"Mass",method:"multiplicative",min:1,max:1},{label:"SensorTargetScanAngle",method:"multiplicative",min:-.3,max:-.3},{label:"ScannerRange",method:"multiplicative",min:.6,max:.75}]}}},Sensor_WideAngle:{name:"Wide angle",grades:{1:{features:[{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"SensorTargetScanAngle",method:"multiplicative",min:0,max:.4},{label:"ScannerRange",method:"multiplicative",min:-.04,max:-.04}]},2:{features:[{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"SensorTargetScanAngle",method:"multiplicative",min:.4,max:.8},{label:"ScannerRange",method:"multiplicative",min:-.08,max:-.08}]},3:{features:[{label:"PowerDraw",method:"multiplicative",min:.3,max:.3},{label:"SensorTargetScanAngle",method:"multiplicative",min:.8,max:1.2},{label:"ScannerRange",method:"multiplicative",min:-.12,max:-.12}]},4:{features:[{label:"PowerDraw",method:"multiplicative",min:.4,max:.4},{label:"SensorTargetScanAngle",method:"multiplicative",min:1.2,max:1.6},{label:"ScannerRange",method:"multiplicative",min:-.16,max:-.16}]},5:{features:[{label:"PowerDraw",method:"multiplicative",min:.5,max:.5},{label:"SensorTargetScanAngle",method:"multiplicative",min:1.6,max:2},{label:"ScannerRange",method:"multiplicative",min:-.2,max:-.2}]}}},Sensor_Expanded:{name:"Expanded Probe Scanning Radius",grades:{1:{features:[{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"ProbeRadius",method:"multiplicative",min:0,max:.1}]},2:{features:[{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"Mass",method:"multiplicative",min:.4,max:.4},{label:"ProbeRadius",method:"multiplicative",min:.1,max:.2}]},3:{features:[{label:"PowerDraw",method:"multiplicative",min:.3,max:.3},{label:"Mass",method:"multiplicative",min:.6,max:.6},{label:"ProbeRadius",method:"multiplicative",min:.2,max:.3}]},4:{features:[{label:"PowerDraw",method:"multiplicative",min:.4,max:.4},{label:"Mass",method:"multiplicative",min:.8,max:.8},{label:"ProbeRadius",method:"multiplicative",min:.3,max:.4}]},5:{features:[{label:"PowerDraw",method:"multiplicative",min:.5,max:.5},{label:"Mass",method:"multiplicative",min:1,max:1},{label:"ProbeRadius",method:"multiplicative",min:.4,max:.5}]}}},ShieldBooster_Explosive:{name:"Blast resistant",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:0,max:.07},{label:"KineticResistance",method:"additive",min:-.01,max:-.01},{label:"ThermicResistance",method:"additive",min:-.01,max:-.01}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:.07,max:.12},{label:"KineticResistance",method:"additive",min:-.0175,max:-.0175},{label:"ThermicResistance",method:"additive",min:-.0175,max:-.0175}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:.12,max:.17},{label:"KineticResistance",method:"additive",min:-.025,max:-.025},{label:"ThermicResistance",method:"additive",min:-.025,max:-.025}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:.17,max:.22},{label:"KineticResistance",method:"additive",min:-.0325,max:-.0325},{label:"ThermicResistance",method:"additive",min:-.0325,max:-.0325}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:.22,max:.27},{label:"KineticResistance",method:"additive",min:-.04,max:-.04},{label:"ThermicResistance",method:"additive",min:-.04,max:-.04}]}}},ShieldBooster_HeavyDuty:{name:"Heavy duty",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.03},{label:"Mass",method:"multiplicative",min:1,max:1},{label:"PowerDraw",method:"multiplicative",min:.05,max:.05},{label:"DefenceModifierShieldMultiplier",method:"multiplicative",min:.03,max:.1}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.03,max:.06},{label:"Mass",method:"multiplicative",min:1.5,max:1.5},{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"DefenceModifierShieldMultiplier",method:"multiplicative",min:.1,max:.17}]},3:{features:[{label:"Integrity",method:"multiplicative",min:.06,max:.09},{label:"Mass",method:"multiplicative",min:2,max:2},{label:"PowerDraw",method:"multiplicative",min:.15,max:.15},{label:"DefenceModifierShieldMultiplier",method:"multiplicative",min:.17,max:.24}]},4:{features:[{label:"Integrity",method:"multiplicative",min:.09,max:.12},{label:"Mass",method:"multiplicative",min:2.5,max:2.5},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"DefenceModifierShieldMultiplier",method:"multiplicative",min:.24,max:.31}]},5:{features:[{label:"Integrity",method:"multiplicative",min:.12,max:.15},{label:"Mass",method:"multiplicative",min:3,max:3},{label:"PowerDraw",method:"multiplicative",min:.25,max:.25},{label:"DefenceModifierShieldMultiplier",method:"multiplicative",min:.31,max:.38}]}}},ShieldBooster_Kinetic:{name:"Kinetic resistant",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:-.01,max:-.01},{label:"KineticResistance",method:"additive",min:0,max:.07},{label:"ThermicResistance",method:"additive",min:-.01,max:-.01}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:-.0175,max:-.0175},{label:"KineticResistance",method:"additive",min:.07,max:.12},{label:"ThermicResistance",method:"additive",min:-.0175,max:-.0175}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:-.025,max:-.025},{label:"KineticResistance",method:"additive",min:.12,max:.17},{label:"ThermicResistance",method:"additive",min:-.025,max:-.025}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:-.0325,max:-.0325},{label:"KineticResistance",method:"additive",min:.17,max:.22},{label:"ThermicResistance",method:"additive",min:-.0325,max:-.0325}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:-.04,max:-.04},{label:"KineticResistance",method:"additive",min:.22,max:.27},{label:"ThermicResistance",method:"additive",min:-.04,max:-.04}]}}},ShieldBooster_Resistive:{name:"Resistance augmented",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:.05,max:.05},{label:"Integrity",method:"multiplicative",min:-.04,max:-.04},{label:"KineticResistance",method:"additive",min:.05,max:.05},{label:"PowerDraw",method:"multiplicative",min:.05,max:.05},{label:"ThermicResistance",method:"additive",min:.05,max:.05}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:.08,max:.08},{label:"Integrity",method:"multiplicative",min:-.06,max:-.06},{label:"KineticResistance",method:"additive",min:.08,max:.08},{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"ThermicResistance",method:"additive",min:.08,max:.08}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:.11,max:.11},{label:"Integrity",method:"multiplicative",min:-.08,max:-.08},{label:"KineticResistance",method:"additive",min:.11,max:.11},{label:"PowerDraw",method:"multiplicative",min:.15,max:.15},{label:"ThermicResistance",method:"additive",min:.11,max:.11}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:.14,max:.14},{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"KineticResistance",method:"additive",min:.14,max:.14},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"ThermicResistance",method:"additive",min:.14,max:.14}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:.17,max:.17},{label:"Integrity",method:"multiplicative",min:-.12,max:-.12},{label:"KineticResistance",method:"additive",min:.17,max:.17},{label:"PowerDraw",method:"multiplicative",min:.25,max:.25},{label:"ThermicResistance",method:"additive",min:.17,max:.17}]}}},ShieldBooster_Thermic:{name:"Thermal resistant",grades:{1:{features:[{label:"ExplosiveResistance",method:"additive",min:-.01,max:-.01},{label:"KineticResistance",method:"additive",min:-.01,max:-.01},{label:"ThermicResistance",method:"additive",min:0,max:.07}]},2:{features:[{label:"ExplosiveResistance",method:"additive",min:-.0175,max:-.0175},{label:"KineticResistance",method:"additive",min:-.0175,max:-.0175},{label:"ThermicResistance",method:"additive",min:.07,max:.12}]},3:{features:[{label:"ExplosiveResistance",method:"additive",min:-.025,max:-.025},{label:"KineticResistance",method:"additive",min:-.025,max:-.025},{label:"ThermicResistance",method:"additive",min:.12,max:.17}]},4:{features:[{label:"ExplosiveResistance",method:"additive",min:-.0325,max:-.0325},{label:"KineticResistance",method:"additive",min:-.0325,max:-.0325},{label:"ThermicResistance",method:"additive",min:.17,max:.22}]},5:{features:[{label:"ExplosiveResistance",method:"additive",min:-.04,max:-.04},{label:"KineticResistance",method:"additive",min:-.04,max:-.04},{label:"ThermicResistance",method:"additive",min:.22,max:.27}]}}},ShieldCellBank_Rapid:{name:"Rapid charge",grades:{1:{features:[{label:"BootTime",method:"multiplicative",min:.1,max:.1},{label:"ShieldBankDuration",method:"multiplicative",min:-.06,max:-.06},{label:"ShieldBankReinforcement",method:"multiplicative",min:0,max:.05},{label:"ShieldBankSpinUp",method:"multiplicative",min:0,max:-.1}]},2:{features:[{label:"BootTime",method:"multiplicative",min:.15,max:.15},{label:"ShieldBankDuration",method:"multiplicative",min:-.12,max:-.12},{label:"ShieldBankReinforcement",method:"multiplicative",min:.05,max:.1},{label:"ShieldBankSpinUp",method:"multiplicative",min:-.1,max:-.2}]},3:{features:[{label:"BootTime",method:"multiplicative",min:.2,max:.2},{label:"ShieldBankDuration",method:"multiplicative",min:-.18,max:-.18},{label:"ShieldBankReinforcement",method:"multiplicative",min:.1,max:.15},{label:"ShieldBankSpinUp",method:"multiplicative",min:-.2,max:-.3}]},4:{features:[{label:"BootTime",method:"multiplicative",min:.25,max:.25},{label:"ShieldBankDuration",method:"multiplicative",min:-.24,max:-.24},{label:"ShieldBankReinforcement",method:"multiplicative",min:.15,max:.2},{label:"ShieldBankSpinUp",method:"multiplicative",min:-.3,max:-.4}]}}},ShieldCellBank_Specialised:{name:"Specialised",grades:{1:{features:[{label:"BootTime",method:"multiplicative",min:0,max:-.08},{label:"Integrity",method:"multiplicative",min:-.05,max:-.05},{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"ShieldBankReinforcement",method:"multiplicative",min:0,max:.04},{label:"ShieldBankHeat",method:"multiplicative",min:0,max:-.06}]},2:{features:[{label:"BootTime",method:"multiplicative",min:-.08,max:-.16},{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"PowerDraw",method:"multiplicative",min:.15,max:.15},{label:"ShieldBankReinforcement",method:"multiplicative",min:.04,max:.06},{label:"ShieldBankHeat",method:"multiplicative",min:-.06,max:-.12}]},3:{features:[{label:"BootTime",method:"multiplicative",min:-.16,max:-.24},{label:"Integrity",method:"multiplicative",min:-.15,max:-.15},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"ShieldBankReinforcement",method:"multiplicative",min:.06,max:.08},{label:"ShieldBankHeat",method:"multiplicative",min:-.12,max:-.18}]},4:{features:[{label:"BootTime",method:"multiplicative",min:-.24,max:-.32},{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"PowerDraw",method:"multiplicative",min:.25,max:.25},{label:"ShieldBankReinforcement",method:"multiplicative",min:.08,max:.1},{label:"ShieldBankHeat",method:"multiplicative",min:-.18,max:-.24}]}}},ShieldGenerator_Kinetic:{name:"Kinetic resistant",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.2},{label:"KineticResistance",method:"additive",min:0,max:.1},{label:"ThermicResistance",method:"additive",min:-.03,max:-.03}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.2,max:.25},{label:"KineticResistance",method:"additive",min:.1,max:.2},{label:"ThermicResistance",method:"additive",min:-.06,max:-.06}]},3:{features:[{label:"Integrity",method:"multiplicative",min:.25,max:.3},{label:"KineticResistance",method:"additive",min:.2,max:.3},{label:"ThermicResistance",method:"additive",min:-.09,max:-.09}]},4:{features:[{label:"Integrity",method:"multiplicative",min:.3,max:.35},{label:"KineticResistance",method:"additive",min:.3,max:.4},{label:"ThermicResistance",method:"additive",min:-.12,max:-.12}]},5:{features:[{label:"Integrity",method:"multiplicative",min:.35,max:.4},{label:"KineticResistance",method:"additive",min:.4,max:.5},{label:"ThermicResistance",method:"additive",min:-.15,max:-.15}]}}},ShieldGenerator_Optimised:{name:"Enhanced low power",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.05,max:-.05},{label:"Mass",method:"multiplicative",min:0,max:-.18},{label:"ShieldGenOptimalMass",method:"multiplicative",min:-.02,max:-.02},{label:"ShieldGenStrength",method:"multiplicative",min:0,max:.03},{label:"PowerDraw",method:"multiplicative",min:0,max:-.2}]},2:{features:[{label:"Integrity",method:"multiplicative",min:-.1,max:-.1},{label:"Mass",method:"multiplicative",min:-.18,max:-.26},{label:"ShieldGenOptimalMass",method:"multiplicative",min:-.03,max:-.03},{label:"ShieldGenStrength",method:"multiplicative",min:.03,max:.06},{label:"PowerDraw",method:"multiplicative",min:-.2,max:-.25}]},3:{features:[{label:"Integrity",method:"multiplicative",min:-.15,max:-.15},{label:"Mass",method:"multiplicative",min:-.26,max:-.34},{label:"ShieldGenOptimalMass",method:"multiplicative",min:-.04,max:-.04},{label:"ShieldGenStrength",method:"multiplicative",min:.06,max:.09},{label:"PowerDraw",method:"multiplicative",min:-.25,max:-.3}]},4:{features:[{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:-.34,max:-.42},{label:"ShieldGenOptimalMass",method:"multiplicative",min:-.05,max:-.05},{label:"ShieldGenStrength",method:"multiplicative",min:.09,max:.12},{label:"PowerDraw",method:"multiplicative",min:-.3,max:-.35}]},5:{features:[{label:"Integrity",method:"multiplicative",min:-.25,max:-.25},{label:"Mass",method:"multiplicative",min:-.42,max:-.5},{label:"ShieldGenOptimalMass",method:"multiplicative",min:-.06,max:-.06},{label:"ShieldGenStrength",method:"multiplicative",min:.12,max:.15},{label:"PowerDraw",method:"multiplicative",min:-.35,max:-.4}]}}},ShieldGenerator_Reinforced:{name:"Reinforced",grades:{1:{features:[{label:"BrokenRegenRate",method:"multiplicative",min:-.1,max:-.1},{label:"DistributorDraw",method:"multiplicative",min:.04,max:.04},{label:"ExplosiveResistance",method:"additive",min:0,max:.045},{label:"KineticResistance",method:"additive",min:0,max:.045},{label:"ShieldGenStrength",method:"multiplicative",min:0,max:.14},{label:"ThermicResistance",method:"additive",min:0,max:.045}]},2:{features:[{label:"BrokenRegenRate",method:"multiplicative",min:-.1,max:-.1},{label:"DistributorDraw",method:"multiplicative",min:.06,max:.06},{label:"ExplosiveResistance",method:"additive",min:.045,max:.075},{label:"KineticResistance",method:"additive",min:.045,max:.075},{label:"ShieldGenStrength",method:"multiplicative",min:.14,max:.2},{label:"ThermicResistance",method:"additive",min:.045,max:.075}]},3:{features:[{label:"BrokenRegenRate",method:"multiplicative",min:-.1,max:-.1},{label:"DistributorDraw",method:"multiplicative",min:.08,max:.08},{label:"ExplosiveResistance",method:"additive",min:.075,max:.105},{label:"KineticResistance",method:"additive",min:.075,max:.105},{label:"ShieldGenStrength",method:"multiplicative",min:.2,max:.26},{label:"ThermicResistance",method:"additive",min:.075,max:.105}]},4:{features:[{label:"BrokenRegenRate",method:"multiplicative",min:-.1,max:-.1},{label:"DistributorDraw",method:"multiplicative",min:.1,max:.1},{label:"ExplosiveResistance",method:"additive",min:.105,max:.135},{label:"KineticResistance",method:"additive",min:.105,max:.135},{label:"ShieldGenStrength",method:"multiplicative",min:.26,max:.32},{label:"ThermicResistance",method:"additive",min:.105,max:.135}]},5:{features:[{label:"BrokenRegenRate",method:"multiplicative",min:-.1,max:-.1},{label:"DistributorDraw",method:"multiplicative",min:.12,max:.12},{label:"ExplosiveResistance",method:"additive",min:.135,max:.165},{label:"KineticResistance",method:"additive",min:.135,max:.165},{label:"ShieldGenStrength",method:"multiplicative",min:.32,max:.38},{label:"ThermicResistance",method:"additive",min:.135,max:.165}]}}},ShieldGenerator_Thermic:{name:"Thermal resistant",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:0,max:.2},{label:"KineticResistance",method:"additive",min:-.04,max:-.04},{label:"ThermicResistance",method:"additive",min:0,max:.1}]},2:{features:[{label:"Integrity",method:"multiplicative",min:.2,max:.25},{label:"KineticResistance",method:"additive",min:-.08,max:-.08},{label:"ThermicResistance",method:"additive",min:.1,max:.2}]},3:{features:[{label:"Integrity",method:"multiplicative",min:.25,max:.3},{label:"KineticResistance",method:"additive",min:-.12,max:-.12},{label:"ThermicResistance",method:"additive",min:.2,max:.3}]},4:{features:[{label:"Integrity",method:"multiplicative",min:.3,max:.35},{label:"KineticResistance",method:"additive",min:-.16,max:-.16},{label:"ThermicResistance",method:"additive",min:.3,max:.4}]},5:{features:[{label:"Integrity",method:"multiplicative",min:.35,max:.4},{label:"KineticResistance",method:"additive",min:-.2,max:-.2},{label:"ThermicResistance",method:"additive",min:.4,max:.5}]}}},Weapon_DoubleShot:{name:"Double shot",grades:{1:{features:[{label:"BurstSize",method:"overwrite",min:2,max:2},{label:"BurstRateOfFire",method:"overwrite",min:0,max:6},{label:"AmmoClipSize",method:"multiplicative",min:.34,max:.34},{label:"Range",method:"multiplicative",min:-.02,max:-.02}]},2:{features:[{label:"BurstSize",method:"overwrite",min:2,max:2},{label:"BurstRateOfFire",method:"overwrite",min:6,max:8},{label:"AmmoClipSize",method:"multiplicative",min:.34,max:.34},{label:"Range",method:"multiplicative",min:-.04,max:-.04}]},3:{features:[{label:"BurstSize",method:"overwrite",min:2,max:2},{label:"BurstRateOfFire",method:"overwrite",min:8,max:10},{label:"AmmoClipSize",method:"multiplicative",min:.34,max:.34},{label:"Range",method:"multiplicative",min:-.06,max:-.06}]},4:{features:[{label:"BurstSize",method:"overwrite",min:2,max:2},{label:"BurstRateOfFire",method:"overwrite",min:10,max:12},{label:"AmmoClipSize",method:"multiplicative",min:.34,max:.34},{label:"Range",method:"multiplicative",min:-.08,max:-.08}]},5:{features:[{label:"BurstSize",method:"overwrite",min:2,max:2},{label:"BurstRateOfFire",method:"overwrite",min:12,max:14},{label:"AmmoClipSize",method:"multiplicative",min:1,max:1},{label:"Range",method:"multiplicative",min:-.1,max:-.1}]}}},Weapon_Efficient:{name:"Efficient",grades:{1:{features:[{label:"Damage",method:"multiplicative",min:.04,max:.08},{label:"ThermalLoad",method:"multiplicative",min:-.3,max:-.375}]},2:{features:[{label:"Damage",method:"multiplicative",min:.08,max:.12},{label:"DistributorDraw",method:"multiplicative",min:-.05,max:-.15},{label:"PowerDraw",method:"multiplicative",min:0,max:-.12},{label:"ThermalLoad",method:"multiplicative",min:-.375,max:-.425}]},3:{features:[{label:"Damage",method:"multiplicative",min:.12,max:.16},{label:"DistributorDraw",method:"multiplicative",min:-.15,max:-.25},{label:"PowerDraw",method:"multiplicative",min:-.12,max:-.24},{label:"ThermalLoad",method:"multiplicative",min:-.425,max:-.475}]},4:{features:[{label:"Damage",method:"multiplicative",min:.16,max:.2},{label:"DistributorDraw",method:"multiplicative",min:-.25,max:-.35},{label:"PowerDraw",method:"multiplicative",min:-.24,max:-.36},{label:"ThermalLoad",method:"multiplicative",min:-.475,max:-.525}]},5:{features:[{label:"Damage",method:"multiplicative",min:.2,max:.24},{label:"DistributorDraw",method:"multiplicative",min:-.35,max:-.45},{label:"PowerDraw",method:"multiplicative",min:-.36,max:-.48},{label:"ThermalLoad",method:"multiplicative",min:-.525,max:-.6}]}}},Weapon_Focused:{name:"Focused",grades:{1:{features:[{label:"FalloffRange",method:"multiplicative",min:.2,max:.36},{label:"ArmourPenetration",method:"multiplicative",min:.2,max:.4},{label:"Range",method:"multiplicative",min:.2,max:.36},{label:"ShotSpeed",method:"multiplicative",min:.2,max:.36},{label:"ThermalLoad",method:"multiplicative",min:.01,max:.01}]},2:{features:[{label:"FalloffRange",method:"multiplicative",min:.36,max:.52},{label:"ArmourPenetration",method:"multiplicative",min:.4,max:.6},{label:"Range",method:"multiplicative",min:.36,max:.52},{label:"ShotSpeed",method:"multiplicative",min:.36,max:.52},{label:"ThermalLoad",method:"multiplicative",min:.02,max:.02}]},3:{features:[{label:"FalloffRange",method:"multiplicative",min:.52,max:.68},{label:"ArmourPenetration",method:"multiplicative",min:.6,max:.8},{label:"Range",method:"multiplicative",min:.52,max:.68},{label:"ShotSpeed",method:"multiplicative",min:.52,max:.68},{label:"ThermalLoad",method:"multiplicative",min:.03,max:.03}]},4:{features:[{label:"FalloffRange",method:"multiplicative",min:.68,max:.84},{label:"ArmourPenetration",method:"multiplicative",min:.8,max:1},{label:"Range",method:"multiplicative",min:.68,max:.84},{label:"ShotSpeed",method:"multiplicative",min:.68,max:.84},{label:"ThermalLoad",method:"multiplicative",min:.04,max:.04}]},5:{features:[{label:"FalloffRange",method:"multiplicative",min:.84,max:1},{label:"ArmourPenetration",method:"multiplicative",min:1,max:1.2},{label:"Range",method:"multiplicative",min:.84,max:1},{label:"ShotSpeed",method:"multiplicative",min:.84,max:1},{label:"ThermalLoad",method:"multiplicative",min:.05,max:.05}]}}},Weapon_HighCapacity:{name:"High capacity",grades:{1:{features:[{label:"AmmoMaximum",method:"multiplicative",min:0,max:.36},{label:"AmmoClipSize",method:"multiplicative",min:0,max:.36},{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"PowerDraw",method:"multiplicative",min:.04,max:.04},{label:"BurstInterval",method:"multiplicative",min:0,max:-.02}]},2:{features:[{label:"AmmoMaximum",method:"multiplicative",min:.36,max:.52},{label:"AmmoClipSize",method:"multiplicative",min:.36,max:.52},{label:"Mass",method:"multiplicative",min:.3,max:.3},{label:"PowerDraw",method:"multiplicative",min:.08,max:.08},{label:"BurstInterval",method:"multiplicative",min:-.02,max:-.04}]},3:{features:[{label:"AmmoMaximum",method:"multiplicative",min:.52,max:.68},{label:"AmmoClipSize",method:"multiplicative",min:.52,max:.68},{label:"Mass",method:"multiplicative",min:.4,max:.4},{label:"PowerDraw",method:"multiplicative",min:.12,max:.12},{label:"BurstInterval",method:"multiplicative",min:-.04,max:-.06}]},4:{features:[{label:"AmmoMaximum",method:"multiplicative",min:.68,max:.84},{label:"AmmoClipSize",method:"multiplicative",min:.68,max:.84},{label:"Mass",method:"multiplicative",min:.5,max:.5},{label:"PowerDraw",method:"multiplicative",min:.16,max:.16},{label:"BurstInterval",method:"multiplicative",min:-.06,max:-.08}]},5:{features:[{label:"AmmoMaximum",method:"multiplicative",min:.84,max:1},{label:"AmmoClipSize",method:"multiplicative",min:.84,max:1},{label:"Mass",method:"multiplicative",min:.6,max:.6},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"BurstInterval",method:"multiplicative",min:-.08,max:-.1}]}}},Weapon_LightWeight:{name:"Lightweight",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:0,max:-.3}]},2:{features:[{label:"DistributorDraw",method:"multiplicative",min:0,max:-.2},{label:"Integrity",method:"multiplicative",min:-.3,max:-.3},{label:"Mass",method:"multiplicative",min:-.3,max:-.45},{label:"PowerDraw",method:"multiplicative",min:0,max:-.1}]},3:{features:[{label:"DistributorDraw",method:"multiplicative",min:-.2,max:-.25},{label:"Integrity",method:"multiplicative",min:-.4,max:-.4},{label:"Mass",method:"multiplicative",min:-.45,max:-.6},{label:"PowerDraw",method:"multiplicative",min:-.1,max:-.2}]},4:{features:[{label:"DistributorDraw",method:"multiplicative",min:-.25,max:-.3},{label:"Integrity",method:"multiplicative",min:-.5,max:-.5},{label:"Mass",method:"multiplicative",min:-.6,max:-.75},{label:"PowerDraw",method:"multiplicative",min:-.2,max:-.3}]},5:{features:[{label:"DistributorDraw",method:"multiplicative",min:-.3,max:-.35},{label:"Integrity",method:"multiplicative",min:-.6,max:-.6},{label:"Mass",method:"multiplicative",min:-.75,max:-.9},{label:"PowerDraw",method:"multiplicative",min:-.3,max:-.4}]}}},Weapon_LongRange:{name:"Long range",grades:{1:{features:[{label:"FalloffRange",method:"overwrite",min:.2,max:.2},{label:"Mass",method:"multiplicative",min:.1,max:.1},{label:"PowerDraw",method:"multiplicative",min:.03,max:.03},{label:"Range",method:"multiplicative",min:0,max:.2},{label:"ShotSpeed",method:"multiplicative",min:0,max:.2}]},2:{features:[{label:"FalloffRange",method:"overwrite",min:.2,max:.4},{label:"Mass",method:"multiplicative",min:.15,max:.15},{label:"PowerDraw",method:"multiplicative",min:.06,max:.06},{label:"Range",method:"multiplicative",min:.2,max:.4},{label:"ShotSpeed",method:"multiplicative",min:.2,max:.4}]},3:{features:[{label:"FalloffRange",method:"overwrite",min:.4,max:.6},{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"PowerDraw",method:"multiplicative",min:.09,max:.09},{label:"Range",method:"multiplicative",min:.4,max:.6},{label:"ShotSpeed",method:"multiplicative",min:.4,max:.6}]},4:{features:[{label:"FalloffRange",method:"overwrite",min:.6,max:.8},{label:"Mass",method:"multiplicative",min:.25,max:.25},{label:"PowerDraw",method:"multiplicative",min:.12,max:.12},{label:"Range",method:"multiplicative",min:.6,max:.8},{label:"ShotSpeed",method:"multiplicative",min:.6,max:.8}]},5:{features:[{label:"FalloffRange",method:"overwrite",min:.8,max:1},{label:"Mass",method:"multiplicative",min:.3,max:.3},{label:"PowerDraw",method:"multiplicative",min:.15,max:.15},{label:"Range",method:"multiplicative",min:.8,max:1},{label:"ShotSpeed",method:"multiplicative",min:.8,max:1}]}}},MC_Overcharged:{name:"Overcharged",grades:{1:{features:[{label:"AmmoClipSize",method:"multiplicative",min:-.03,max:-.03},{label:"Damage",method:"multiplicative",min:0,max:.3},{label:"DistributorDraw",method:"multiplicative",min:.15,max:.15},{label:"ThermalLoad",method:"multiplicative",min:.03,max:.03}]},2:{features:[{label:"AmmoClipSize",method:"multiplicative",min:-.06,max:-.06},{label:"Damage",method:"multiplicative",min:.3,max:.4},{label:"DistributorDraw",method:"multiplicative",min:.2,max:.2},{label:"ThermalLoad",method:"multiplicative",min:.06,max:.06}]},3:{features:[{label:"AmmoClipSize",method:"multiplicative",min:-.09,max:-.09},{label:"Damage",method:"multiplicative",min:.4,max:.5},{label:"DistributorDraw",method:"multiplicative",min:.25,max:.25},{label:"ThermalLoad",method:"multiplicative",min:.09,max:.09}]},4:{features:[{label:"AmmoClipSize",method:"multiplicative",min:-.12,max:-.12},{label:"Damage",method:"multiplicative",min:.5,max:.6},{label:"DistributorDraw",method:"multiplicative",min:.3,max:.3},{label:"ThermalLoad",method:"multiplicative",min:.12,max:.12}]},5:{features:[{label:"AmmoClipSize",method:"multiplicative",min:-.15,max:-.15},{label:"Damage",method:"multiplicative",min:.6,max:.7},{label:"DistributorDraw",method:"multiplicative",min:.35,max:.35},{label:"ThermalLoad",method:"multiplicative",min:.15,max:.15}]}}},Weapon_Overcharged:{name:"Overcharged",grades:{1:{features:[{label:"Damage",method:"multiplicative",min:.2,max:.3},{label:"DistributorDraw",method:"multiplicative",min:.15,max:.15},{label:"ThermalLoad",method:"multiplicative",min:.03,max:.03}]},2:{features:[{label:"Damage",method:"multiplicative",min:.3,max:.4},{label:"DistributorDraw",method:"multiplicative",min:.2,max:.2},{label:"ThermalLoad",method:"multiplicative",min:.06,max:.06}]},3:{features:[{label:"Damage",method:"multiplicative",min:.4,max:.5},{label:"DistributorDraw",method:"multiplicative",min:.25,max:.25},{label:"ThermalLoad",method:"multiplicative",min:.09,max:.09}]},4:{features:[{label:"Damage",method:"multiplicative",min:.5,max:.6},{label:"DistributorDraw",method:"multiplicative",min:.3,max:.3},{label:"ThermalLoad",method:"multiplicative",min:.12,max:.12}]},5:{features:[{label:"Damage",method:"multiplicative",min:.6,max:.7},{label:"DistributorDraw",method:"multiplicative",min:.35,max:.35},{label:"ThermalLoad",method:"multiplicative",min:.15,max:.15}]}}},Weapon_RapidFire:{name:"Rapid fire",grades:{1:{features:[{label:"Damage",method:"multiplicative",min:-.01,max:-.01},{label:"Jitter",method:"additive",min:.5,max:.5},{label:"ReloadTime",method:"multiplicative",min:0,max:-.25},{label:"BurstInterval",method:"multiplicative",min:0,max:-.08}]},2:{features:[{label:"Damage",method:"multiplicative",min:-.02,max:-.02},{label:"DistributorDraw",method:"multiplicative",min:0,max:-.05},{label:"Jitter",method:"additive",min:.5,max:.5},{label:"ReloadTime",method:"multiplicative",min:-.25,max:-.35},{label:"BurstInterval",method:"multiplicative",min:-.08,max:-.17}]},3:{features:[{label:"Damage",method:"multiplicative",min:-.03,max:-.03},{label:"DistributorDraw",method:"multiplicative",min:-.05,max:-.15},{label:"Jitter",method:"additive",min:.5,max:.5},{label:"ReloadTime",method:"multiplicative",min:-.35,max:-.45},{label:"BurstInterval",method:"multiplicative",min:-.17,max:-.26}]},4:{features:[{label:"Damage",method:"multiplicative",min:-.04,max:-.04},{label:"DistributorDraw",method:"multiplicative",min:-.15,max:-.25},{label:"Jitter",method:"additive",min:.5,max:.5},{label:"ReloadTime",method:"multiplicative",min:-.45,max:-.55},{label:"BurstInterval",method:"multiplicative",min:-.26,max:-.35}]},5:{features:[{label:"Damage",method:"multiplicative",min:-.05,max:-.05},{label:"DistributorDraw",method:"multiplicative",min:-.25,max:-.35},{label:"Jitter",method:"additive",min:.5,max:.5},{label:"ReloadTime",method:"multiplicative",min:-.55,max:-.65},{label:"BurstInterval",method:"multiplicative",min:-.35,max:-.44}]}}},Weapon_ShortRange:{name:"Short range",grades:{1:{features:[{label:"Damage",method:"multiplicative",min:.15,max:.27},{label:"Range",method:"multiplicative",min:-.1,max:-.1}]},2:{features:[{label:"Damage",method:"multiplicative",min:.27,max:.39},{label:"Range",method:"multiplicative",min:-.2,max:-.2},{label:"ThermalLoad",method:"multiplicative",min:.1,max:.1}]},3:{features:[{label:"Damage",method:"multiplicative",min:.39,max:.51},{label:"Range",method:"multiplicative",min:-.3,max:-.3},{label:"ThermalLoad",method:"multiplicative",min:.2,max:.2}]},4:{features:[{label:"Damage",method:"multiplicative",min:.51,max:.63},{label:"Range",method:"multiplicative",min:-.4,max:-.4},{label:"ThermalLoad",method:"multiplicative",min:.3,max:.3}]},5:{features:[{label:"Damage",method:"multiplicative",min:.63,max:.75},{label:"Range",method:"multiplicative",min:-.5,max:-.5},{label:"ThermalLoad",method:"multiplicative",min:.4,max:.4}]}}},Weapon_Sturdy:{name:"Sturdy",grades:{1:{features:[{label:"Integrity",method:"multiplicative",min:.5,max:1},{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"ArmourPenetration",method:"multiplicative",min:.1,max:.2},{label:"ThermalLoad",method:"multiplicative",min:-.05,max:-.1}]},2:{features:[{label:"Integrity",method:"multiplicative",min:1,max:1.5},{label:"Mass",method:"multiplicative",min:.4,max:.4},{label:"ArmourPenetration",method:"multiplicative",min:.2,max:.3},{label:"ThermalLoad",method:"multiplicative",min:-.1,max:-.15}]},3:{features:[{label:"Integrity",method:"multiplicative",min:1.5,max:2},{label:"Mass",method:"multiplicative",min:.6,max:.6},{label:"ArmourPenetration",method:"multiplicative",min:.3,max:.4},{label:"ThermalLoad",method:"multiplicative",min:-.15,max:-.2}]},4:{features:[{label:"Integrity",method:"multiplicative",min:2,max:2.5},{label:"Mass",method:"multiplicative",min:.8,max:.8},{label:"ArmourPenetration",method:"multiplicative",min:.4,max:.5},{label:"ThermalLoad",method:"multiplicative",min:-.2,max:-.25}]},5:{features:[{label:"Integrity",method:"multiplicative",min:2.5,max:3},{label:"Mass",method:"multiplicative",min:1,max:1},{label:"ArmourPenetration",method:"multiplicative",min:.5,max:.6},{label:"ThermalLoad",method:"multiplicative",min:-.25,max:-.3}]}}},CargoRack_IncreasedCapacity:{name:"Expanded Cargo Rack",grades:{5:{features:[{label:"CargoCapacity",method:"multiplicative",min:.344,max:.344}]}}},FuelScoop_Efficiency:{name:"Fuel Scoop — Scoop rate enhanced",grades:{1:{features:[{label:"RefuelRate",method:"multiplicative",min:.05,max:.1},{label:"PowerDraw",method:"multiplicative",min:.03,max:.03}]},2:{features:[{label:"RefuelRate",method:"multiplicative",min:.1,max:.2},{label:"PowerDraw",method:"multiplicative",min:.06,max:.06}]},3:{features:[{label:"RefuelRate",method:"multiplicative",min:.2,max:.3},{label:"PowerDraw",method:"multiplicative",min:.09,max:.09}]},4:{features:[{label:"RefuelRate",method:"multiplicative",min:.3,max:.4},{label:"PowerDraw",method:"multiplicative",min:.12,max:.12}]},5:{features:[{label:"RefuelRate",method:"multiplicative",min:.5,max:.5},{label:"PowerDraw",method:"multiplicative",min:.15,max:.15}]}}},BeamLaser_Overloaded:{name:"Beam Laser — Overloaded",grades:{2:{features:[{label:"DistributorDraw",method:"multiplicative",min:.333333,max:.333333},{label:"Damage",method:"multiplicative",min:.25,max:.333333},{label:"ThermalLoad",method:"multiplicative",min:.2375,max:.316667},{label:"Mass",method:"multiplicative",min:.666667,max:.666667},{label:"PowerDraw",method:"multiplicative",min:.166667,max:.166667}]},3:{features:[{label:"DistributorDraw",method:"multiplicative",min:.5,max:.5},{label:"Damage",method:"multiplicative",min:.333333,max:.5},{label:"ThermalLoad",method:"multiplicative",min:.316667,max:.475},{label:"Mass",method:"multiplicative",min:1,max:1},{label:"PowerDraw",method:"multiplicative",min:.25,max:.25}]},4:{features:[{label:"DistributorDraw",method:"multiplicative",min:.75188,max:.75188},{label:"Damage",method:"multiplicative",min:.5,max:.75188},{label:"ThermalLoad",method:"multiplicative",min:.475,max:.714286},{label:"Mass",method:"multiplicative",min:1.503759,max:1.503759},{label:"PowerDraw",method:"multiplicative",min:.37594,max:.37594}]},5:{features:[{label:"DistributorDraw",method:"multiplicative",min:1,max:1},{label:"Damage",method:"multiplicative",min:.75188,max:1},{label:"ThermalLoad",method:"multiplicative",min:.714286,max:.95},{label:"Mass",method:"multiplicative",min:2,max:2},{label:"PowerDraw",method:"multiplicative",min:.5,max:.5}]}}},BeamLaser_ThermalPlasmaConversion:{name:"Plasma conversion",grades:{1:{features:[{label:"PowerDraw",method:"multiplicative",min:.05,max:.05},{label:"Damage",method:"multiplicative",min:-.03,max:-.03}],damageDistribution:{thermal:.961,absolute:.039}},2:{features:[{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"Damage",method:"multiplicative",min:-.05,max:-.05}],damageDistribution:{thermal:.934,absolute:.066}},3:{features:[{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"Damage",method:"multiplicative",min:-.07,max:-.07}],damageDistribution:{thermal:.906,absolute:.094}},4:{features:[{label:"PowerDraw",method:"multiplicative",min:.3,max:.3},{label:"Damage",method:"multiplicative",min:-.09,max:-.09}],damageDistribution:{thermal:.876,absolute:.124}},5:{features:[{label:"PowerDraw",method:"multiplicative",min:.4,max:.4},{label:"Damage",method:"multiplicative",min:-.11,max:-.11}],damageDistribution:{thermal:.845,absolute:.155}}}},BurstLaser_Regenerative:{name:"Burst Laser — Regenerative",grades:{2:{features:[{label:"PowerDraw",method:"multiplicative",min:.066667,max:.066667},{label:"MaximumRange",method:"multiplicative",min:.25,max:.333333},{label:"FalloffRange",method:"multiplicative",min:.5,max:1.133333},{label:"DistributorDraw",method:"multiplicative",min:.183333,max:.183333},{label:"RateOfFire",method:"multiplicative",min:.066667,max:.090909},{label:"ReloadTime",method:"multiplicative",min:-.116667,max:-.116667},{label:"Damage",method:"multiplicative",min:-.01,max:.02}]},3:{features:[{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"MaximumRange",method:"multiplicative",min:.333333,max:.5},{label:"FalloffRange",method:"multiplicative",min:1.133333,max:2.6},{label:"DistributorDraw",method:"multiplicative",min:.275,max:.275},{label:"RateOfFire",method:"multiplicative",min:.090909,max:.142857},{label:"ReloadTime",method:"multiplicative",min:-.175,max:-.175},{label:"Damage",method:"multiplicative",min:.02,max:.08}]},4:{features:[{label:"PowerDraw",method:"multiplicative",min:.150376,max:.150376},{label:"MaximumRange",method:"multiplicative",min:.5,max:.75188},{label:"FalloffRange",method:"multiplicative",min:2.6,max:5.322573},{label:"DistributorDraw",method:"multiplicative",min:.413534,max:.413534},{label:"RateOfFire",method:"multiplicative",min:.142857,max:.231481},{label:"ReloadTime",method:"multiplicative",min:-.263158,max:-.263158},{label:"Damage",method:"multiplicative",min:.08,max:.170677}]},5:{features:[{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"MaximumRange",method:"multiplicative",min:.75188,max:1},{label:"FalloffRange",method:"multiplicative",min:5.322573,max:8.6},{label:"DistributorDraw",method:"multiplicative",min:.55,max:.55},{label:"RateOfFire",method:"multiplicative",min:.231481,max:.333333},{label:"ReloadTime",method:"multiplicative",min:-.35,max:-.35},{label:"Damage",method:"multiplicative",min:.170677,max:.26}]}}},BurstLaser_ThermalPlasmaConversion:{name:"Plasma conversion",grades:{1:{features:[{label:"PowerDraw",method:"multiplicative",min:.05,max:.05},{label:"Damage",method:"multiplicative",min:-.03,max:-.03}],damageDistribution:{thermal:.961,absolute:.039}},2:{features:[{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"Damage",method:"multiplicative",min:-.05,max:-.05}],damageDistribution:{thermal:.934,absolute:.066}},3:{features:[{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"Damage",method:"multiplicative",min:-.07,max:-.07}],damageDistribution:{thermal:.906,absolute:.094}},4:{features:[{label:"PowerDraw",method:"multiplicative",min:.3,max:.3},{label:"Damage",method:"multiplicative",min:-.09,max:-.09}],damageDistribution:{thermal:.876,absolute:.124}},5:{features:[{label:"PowerDraw",method:"multiplicative",min:.4,max:.4},{label:"Damage",method:"multiplicative",min:-.11,max:-.11}],damageDistribution:{thermal:.845,absolute:.155}}}},PulseLaser_ThermalPlasmaConversion:{name:"Plasma conversion",grades:{1:{features:[{label:"PowerDraw",method:"multiplicative",min:.05,max:.05},{label:"Damage",method:"multiplicative",min:-.03,max:-.03}],damageDistribution:{thermal:.961,absolute:.039}},2:{features:[{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"Damage",method:"multiplicative",min:-.05,max:-.05}],damageDistribution:{thermal:.934,absolute:.066}},3:{features:[{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"Damage",method:"multiplicative",min:-.07,max:-.07}],damageDistribution:{thermal:.906,absolute:.094}},4:{features:[{label:"PowerDraw",method:"multiplicative",min:.3,max:.3},{label:"Damage",method:"multiplicative",min:-.09,max:-.09}],damageDistribution:{thermal:.876,absolute:.124}},5:{features:[{label:"PowerDraw",method:"multiplicative",min:.4,max:.4},{label:"Damage",method:"multiplicative",min:-.11,max:-.11}],damageDistribution:{thermal:.845,absolute:.155}}}},DetailedSurfaceScanner_LongRange:{name:"Detailed Surface Scanner — Long range detailed",grades:{2:{features:[{label:"ProbeRadius",method:"multiplicative",min:.33,max:.33}]},3:{features:[{label:"ProbeRadius",method:"multiplicative",min:.5,max:.5}]},4:{features:[{label:"ProbeRadius",method:"multiplicative",min:.752,max:.752}]},5:{features:[{label:"ProbeRadius",method:"multiplicative",min:1,max:1}]}}},CargoRackS5C1_Extended:{name:"Cargo Rack — Extended",grades:{2:{features:[{label:"CargoCapacity",method:"multiplicative",min:.125,max:.125}]},3:{features:[{label:"CargoCapacity",method:"multiplicative",min:.188,max:.188}]},4:{features:[{label:"CargoCapacity",method:"multiplicative",min:.25,max:.25}]},5:{features:[{label:"CargoCapacity",method:"multiplicative",min:.344,max:.344}]}}},CargoRackS6C1_Extended:{name:"Cargo Rack — Extended",grades:{2:{features:[{label:"CargoCapacity",method:"multiplicative",min:.125,max:.125}]},3:{features:[{label:"CargoCapacity",method:"multiplicative",min:.188,max:.188}]},4:{features:[{label:"CargoCapacity",method:"multiplicative",min:.25,max:.25}]},5:{features:[{label:"CargoCapacity",method:"multiplicative",min:.344,max:.344}]}}},ModuleReinforcement_HeavyDuty:{name:"Module Reinforcement Package — Heavy duty",grades:{2:{features:[{label:"Mass",method:"multiplicative",min:.333,max:.333},{label:"Integrity",method:"multiplicative",min:.083,max:.083},{label:"DamageProtection",method:"multiplicative",min:.083,max:.083}]},3:{features:[{label:"Mass",method:"multiplicative",min:.5,max:.5},{label:"Integrity",method:"multiplicative",min:.125,max:.125},{label:"DamageProtection",method:"multiplicative",min:.125,max:.125}]},4:{features:[{label:"Mass",method:"multiplicative",min:.752,max:.752},{label:"Integrity",method:"multiplicative",min:.188,max:.188},{label:"DamageProtection",method:"multiplicative",min:.188,max:.188}]},5:{features:[{label:"Mass",method:"multiplicative",min:1,max:1},{label:"Integrity",method:"multiplicative",min:.25,max:.25},{label:"DamageProtection",method:"multiplicative",min:.25,max:.25}]}}},PowerDistributor_Balanced:{name:"Power Distributor — Balanced",grades:{2:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:.07,max:.07},{label:"EnginesCapacity",method:"multiplicative",min:.07,max:.07},{label:"SystemsCapacity",method:"multiplicative",min:.07,max:.07},{label:"WeaponsRecharge",method:"multiplicative",min:.077,max:.077},{label:"EnginesRecharge",method:"multiplicative",min:.077,max:.077},{label:"SystemsRecharge",method:"multiplicative",min:.077,max:.077},{label:"Mass",method:"multiplicative",min:.033,max:.033},{label:"PowerDraw",method:"multiplicative",min:-.033,max:-.033},{label:"Integrity",method:"multiplicative",min:-.017,max:-.017}]},3:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:.105,max:.105},{label:"EnginesCapacity",method:"multiplicative",min:.105,max:.105},{label:"SystemsCapacity",method:"multiplicative",min:.105,max:.105},{label:"WeaponsRecharge",method:"multiplicative",min:.115,max:.115},{label:"EnginesRecharge",method:"multiplicative",min:.115,max:.115},{label:"SystemsRecharge",method:"multiplicative",min:.115,max:.115},{label:"Mass",method:"multiplicative",min:.05,max:.05},{label:"PowerDraw",method:"multiplicative",min:-.05,max:-.05},{label:"Integrity",method:"multiplicative",min:-.025,max:-.025}]},4:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:.158,max:.158},{label:"EnginesCapacity",method:"multiplicative",min:.158,max:.158},{label:"SystemsCapacity",method:"multiplicative",min:.158,max:.158},{label:"WeaponsRecharge",method:"multiplicative",min:.173,max:.173},{label:"EnginesRecharge",method:"multiplicative",min:.173,max:.173},{label:"SystemsRecharge",method:"multiplicative",min:.173,max:.173},{label:"Mass",method:"multiplicative",min:.752,max:.752},{label:"PowerDraw",method:"multiplicative",min:-.075,max:-.075},{label:"Integrity",method:"multiplicative",min:-.038,max:-.038}]},5:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:.21,max:.21},{label:"EnginesCapacity",method:"multiplicative",min:.21,max:.21},{label:"SystemsCapacity",method:"multiplicative",min:.21,max:.21},{label:"WeaponsRecharge",method:"multiplicative",min:.23,max:.23},{label:"EnginesRecharge",method:"multiplicative",min:.23,max:.23},{label:"SystemsRecharge",method:"multiplicative",min:.23,max:.23},{label:"Mass",method:"multiplicative",min:.1,max:.1},{label:"PowerDraw",method:"multiplicative",min:-.1,max:-.1},{label:"Integrity",method:"multiplicative",min:-.05,max:-.05}]}}},PowerDistributorS3C2_SupportFocused:{name:"Power Distributor — Support focused",grades:{2:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.083,max:-.083},{label:"WeaponsRecharge",method:"multiplicative",min:-.056,max:-.056},{label:"EnginesCapacity",method:"multiplicative",min:.15,max:.15},{label:"SystemsCapacity",method:"multiplicative",min:.15,max:.15},{label:"EnginesRecharge",method:"multiplicative",min:.133,max:.133},{label:"SystemsRecharge",method:"multiplicative",min:.133,max:.133}]},3:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.125,max:-.125},{label:"WeaponsRecharge",method:"multiplicative",min:-.1,max:-.1},{label:"EnginesCapacity",method:"multiplicative",min:.225,max:.225},{label:"SystemsCapacity",method:"multiplicative",min:.225,max:.225},{label:"EnginesRecharge",method:"multiplicative",min:.2,max:.2},{label:"SystemsRecharge",method:"multiplicative",min:.2,max:.2}]},4:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.188,max:-.188},{label:"WeaponsRecharge",method:"multiplicative",min:-.15,max:-.15},{label:"EnginesCapacity",method:"multiplicative",min:.338,max:.338},{label:"SystemsCapacity",method:"multiplicative",min:.338,max:.338},{label:"EnginesRecharge",method:"multiplicative",min:.301,max:.301},{label:"SystemsRecharge",method:"multiplicative",min:.301,max:.301}]},5:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.25,max:-.25},{label:"WeaponsRecharge",method:"multiplicative",min:-.2,max:-.2},{label:"EnginesCapacity",method:"multiplicative",min:.45,max:.45},{label:"SystemsCapacity",method:"multiplicative",min:.45,max:.45},{label:"EnginesRecharge",method:"multiplicative",min:.4,max:.4},{label:"SystemsRecharge",method:"multiplicative",min:.4,max:.4}]}}},PowerDistributorS3C5_SupportFocused:{name:"Power Distributor — Support focused",grades:{2:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.083,max:-.083},{label:"WeaponsRecharge",method:"multiplicative",min:-.056,max:-.056},{label:"EnginesCapacity",method:"multiplicative",min:.15,max:.15},{label:"SystemsCapacity",method:"multiplicative",min:.15,max:.15},{label:"EnginesRecharge",method:"multiplicative",min:.133,max:.133},{label:"SystemsRecharge",method:"multiplicative",min:.133,max:.133}]},3:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.125,max:-.125},{label:"WeaponsRecharge",method:"multiplicative",min:-.1,max:-.1},{label:"EnginesCapacity",method:"multiplicative",min:.225,max:.225},{label:"SystemsCapacity",method:"multiplicative",min:.225,max:.225},{label:"EnginesRecharge",method:"multiplicative",min:.2,max:.2},{label:"SystemsRecharge",method:"multiplicative",min:.2,max:.2}]},4:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.188,max:-.188},{label:"WeaponsRecharge",method:"multiplicative",min:-.15,max:-.15},{label:"EnginesCapacity",method:"multiplicative",min:.338,max:.338},{label:"SystemsCapacity",method:"multiplicative",min:.338,max:.338},{label:"EnginesRecharge",method:"multiplicative",min:.301,max:.301},{label:"SystemsRecharge",method:"multiplicative",min:.301,max:.301}]},5:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.25,max:-.25},{label:"WeaponsRecharge",method:"multiplicative",min:-.2,max:-.2},{label:"EnginesCapacity",method:"multiplicative",min:.45,max:.45},{label:"SystemsCapacity",method:"multiplicative",min:.45,max:.45},{label:"EnginesRecharge",method:"multiplicative",min:.4,max:.4},{label:"SystemsRecharge",method:"multiplicative",min:.4,max:.4}]}}},PowerDistributorS4C2_SupportFocused:{name:"Power Distributor — Support focused",grades:{2:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.083,max:-.083},{label:"WeaponsRecharge",method:"multiplicative",min:-.056,max:-.056},{label:"EnginesCapacity",method:"multiplicative",min:.15,max:.15},{label:"SystemsCapacity",method:"multiplicative",min:.15,max:.15},{label:"EnginesRecharge",method:"multiplicative",min:.133,max:.133},{label:"SystemsRecharge",method:"multiplicative",min:.133,max:.133}]},3:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.125,max:-.125},{label:"WeaponsRecharge",method:"multiplicative",min:-.1,max:-.1},{label:"EnginesCapacity",method:"multiplicative",min:.225,max:.225},{label:"SystemsCapacity",method:"multiplicative",min:.225,max:.225},{label:"EnginesRecharge",method:"multiplicative",min:.2,max:.2},{label:"SystemsRecharge",method:"multiplicative",min:.2,max:.2}]},4:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.188,max:-.188},{label:"WeaponsRecharge",method:"multiplicative",min:-.15,max:-.15},{label:"EnginesCapacity",method:"multiplicative",min:.338,max:.338},{label:"SystemsCapacity",method:"multiplicative",min:.338,max:.338},{label:"EnginesRecharge",method:"multiplicative",min:.301,max:.301},{label:"SystemsRecharge",method:"multiplicative",min:.301,max:.301}]},5:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.25,max:-.25},{label:"WeaponsRecharge",method:"multiplicative",min:-.2,max:-.2},{label:"EnginesCapacity",method:"multiplicative",min:.45,max:.45},{label:"SystemsCapacity",method:"multiplicative",min:.45,max:.45},{label:"EnginesRecharge",method:"multiplicative",min:.4,max:.4},{label:"SystemsRecharge",method:"multiplicative",min:.4,max:.4}]}}},PowerDistributorS4C5_SupportFocused:{name:"Power Distributor — Support focused",grades:{2:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.083,max:-.083},{label:"WeaponsRecharge",method:"multiplicative",min:-.056,max:-.056},{label:"EnginesCapacity",method:"multiplicative",min:.15,max:.15},{label:"SystemsCapacity",method:"multiplicative",min:.15,max:.15},{label:"EnginesRecharge",method:"multiplicative",min:.133,max:.133},{label:"SystemsRecharge",method:"multiplicative",min:.133,max:.133}]},3:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.125,max:-.125},{label:"WeaponsRecharge",method:"multiplicative",min:-.1,max:-.1},{label:"EnginesCapacity",method:"multiplicative",min:.225,max:.225},{label:"SystemsCapacity",method:"multiplicative",min:.225,max:.225},{label:"EnginesRecharge",method:"multiplicative",min:.2,max:.2},{label:"SystemsRecharge",method:"multiplicative",min:.2,max:.2}]},4:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.188,max:-.188},{label:"WeaponsRecharge",method:"multiplicative",min:-.15,max:-.15},{label:"EnginesCapacity",method:"multiplicative",min:.338,max:.338},{label:"SystemsCapacity",method:"multiplicative",min:.338,max:.338},{label:"EnginesRecharge",method:"multiplicative",min:.301,max:.301},{label:"SystemsRecharge",method:"multiplicative",min:.301,max:.301}]},5:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.25,max:-.25},{label:"WeaponsRecharge",method:"multiplicative",min:-.2,max:-.2},{label:"EnginesCapacity",method:"multiplicative",min:.45,max:.45},{label:"SystemsCapacity",method:"multiplicative",min:.45,max:.45},{label:"EnginesRecharge",method:"multiplicative",min:.4,max:.4},{label:"SystemsRecharge",method:"multiplicative",min:.4,max:.4}]}}},PowerDistributorS6C5_SupportFocused:{name:"Power Distributor — Support focused",grades:{2:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.083,max:-.083},{label:"WeaponsRecharge",method:"multiplicative",min:-.056,max:-.056},{label:"EnginesCapacity",method:"multiplicative",min:.15,max:.15},{label:"SystemsCapacity",method:"multiplicative",min:.15,max:.15},{label:"EnginesRecharge",method:"multiplicative",min:.133,max:.133},{label:"SystemsRecharge",method:"multiplicative",min:.133,max:.133}]},3:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.125,max:-.125},{label:"WeaponsRecharge",method:"multiplicative",min:-.1,max:-.1},{label:"EnginesCapacity",method:"multiplicative",min:.225,max:.225},{label:"SystemsCapacity",method:"multiplicative",min:.225,max:.225},{label:"EnginesRecharge",method:"multiplicative",min:.2,max:.2},{label:"SystemsRecharge",method:"multiplicative",min:.2,max:.2}]},4:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.188,max:-.188},{label:"WeaponsRecharge",method:"multiplicative",min:-.15,max:-.15},{label:"EnginesCapacity",method:"multiplicative",min:.338,max:.338},{label:"SystemsCapacity",method:"multiplicative",min:.338,max:.338},{label:"EnginesRecharge",method:"multiplicative",min:.301,max:.301},{label:"SystemsRecharge",method:"multiplicative",min:.301,max:.301}]},5:{features:[{label:"WeaponsCapacity",method:"multiplicative",min:-.25,max:-.25},{label:"WeaponsRecharge",method:"multiplicative",min:-.2,max:-.2},{label:"EnginesCapacity",method:"multiplicative",min:.45,max:.45},{label:"SystemsCapacity",method:"multiplicative",min:.45,max:.45},{label:"EnginesRecharge",method:"multiplicative",min:.4,max:.4},{label:"SystemsRecharge",method:"multiplicative",min:.4,max:.4}]}}},AbrasionBlaster_FarReaching:{name:"Abrasion Blaster — Far-reaching",grades:{2:{features:[{label:"Range",method:"multiplicative",min:1.333,max:1.333},{label:"ShotSpeed",method:"multiplicative",min:1.333,max:1.333},{label:"FalloffRange",method:"multiplicative",min:1.333,max:1.333},{label:"ThermalLoad",method:"multiplicative",min:-.167,max:-.167},{label:"DistributorDraw",method:"multiplicative",min:-.167,max:-.167},{label:"PowerDraw",method:"multiplicative",min:-.167,max:-.167},{label:"Integrity",method:"multiplicative",min:-.167,max:-.167}]},3:{features:[{label:"Range",method:"multiplicative",min:2,max:2},{label:"ShotSpeed",method:"multiplicative",min:2,max:2},{label:"FalloffRange",method:"multiplicative",min:2,max:2},{label:"ThermalLoad",method:"multiplicative",min:-.25,max:-.25},{label:"DistributorDraw",method:"multiplicative",min:-.25,max:-.25},{label:"PowerDraw",method:"multiplicative",min:-.25,max:-.25},{label:"Integrity",method:"multiplicative",min:-.25,max:-.25}]},4:{features:[{label:"Range",method:"multiplicative",min:3,max:3},{label:"ShotSpeed",method:"multiplicative",min:3,max:3},{label:"FalloffRange",method:"multiplicative",min:3,max:3},{label:"ThermalLoad",method:"multiplicative",min:-.376,max:-.376},{label:"DistributorDraw",method:"multiplicative",min:-.376,max:-.376},{label:"PowerDraw",method:"multiplicative",min:-.376,max:-.376},{label:"Integrity",method:"multiplicative",min:-.376,max:-.376}]},5:{features:[{label:"Range",method:"multiplicative",min:4,max:4},{label:"ShotSpeed",method:"multiplicative",min:4,max:4},{label:"FalloffRange",method:"multiplicative",min:4,max:4},{label:"ThermalLoad",method:"multiplicative",min:-.5,max:-.5},{label:"DistributorDraw",method:"multiplicative",min:-.5,max:-.5},{label:"PowerDraw",method:"multiplicative",min:-.5,max:-.5},{label:"Integrity",method:"multiplicative",min:-.5,max:-.5}]}}},FragmentCannonSmall_DoubleScreaming:{name:"Fragment Cannon — Double screaming",grades:{2:{features:[{label:"Range",method:"multiplicative",min:-.025,max:-.025},{label:"RateOfFire",method:"multiplicative",min:.024,max:.024},{label:"BurstSize",method:"additive",min:1,max:1},{label:"AmmoClipSize",method:"multiplicative",min:.333,max:.333},{label:"PowerDraw",method:"multiplicative",min:.067,max:.067},{label:"AmmoMaximum",method:"multiplicative",min:.222,max:.222},{label:"Mass",method:"multiplicative",min:.2,max:.2}]},3:{features:[{label:"Range",method:"multiplicative",min:-.033,max:-.033},{label:"RateOfFire",method:"multiplicative",min:.235,max:.235},{label:"BurstSize",method:"additive",min:1,max:1},{label:"AmmoClipSize",method:"multiplicative",min:.333,max:.333},{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"AmmoMaximum",method:"multiplicative",min:.339,max:.339},{label:"Mass",method:"multiplicative",min:.3,max:.3}]},4:{features:[{label:"Range",method:"multiplicative",min:-.05,max:-.05},{label:"RateOfFire",method:"multiplicative",min:.442,max:.442},{label:"BurstSize",method:"additive",min:1,max:1},{label:"AmmoClipSize",method:"multiplicative",min:1,max:1},{label:"PowerDraw",method:"multiplicative",min:.15,max:.15},{label:"AmmoMaximum",method:"multiplicative",min:.511,max:.511},{label:"Mass",method:"multiplicative",min:.451,max:.451}]},5:{features:[{label:"Range",method:"multiplicative",min:-.075,max:-.075},{label:"RateOfFire",method:"multiplicative",min:.581,max:.581},{label:"BurstSize",method:"additive",min:1,max:1},{label:"AmmoClipSize",method:"multiplicative",min:1.667,max:1.667},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"AmmoMaximum",method:"multiplicative",min:.678,max:.678},{label:"Mass",method:"multiplicative",min:.6,max:.6}]}}},FragmentCannonLarge_DoubleScreaming:{name:"Fragment Cannon — Double screaming",grades:{2:{features:[{label:"Range",method:"multiplicative",min:-.025,max:-.025},{label:"RateOfFire",method:"multiplicative",min:.024,max:.024},{label:"BurstSize",method:"additive",min:1,max:1},{label:"AmmoClipSize",method:"multiplicative",min:.333,max:.333},{label:"PowerDraw",method:"multiplicative",min:.067,max:.067},{label:"AmmoMaximum",method:"multiplicative",min:.222,max:.222},{label:"Mass",method:"multiplicative",min:.2,max:.2}]},3:{features:[{label:"Range",method:"multiplicative",min:-.033,max:-.033},{label:"RateOfFire",method:"multiplicative",min:.235,max:.235},{label:"BurstSize",method:"additive",min:1,max:1},{label:"AmmoClipSize",method:"multiplicative",min:.333,max:.333},{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"AmmoMaximum",method:"multiplicative",min:.339,max:.339},{label:"Mass",method:"multiplicative",min:.3,max:.3}]},4:{features:[{label:"Range",method:"multiplicative",min:-.05,max:-.05},{label:"RateOfFire",method:"multiplicative",min:.442,max:.442},{label:"BurstSize",method:"additive",min:1,max:1},{label:"AmmoClipSize",method:"multiplicative",min:1,max:1},{label:"PowerDraw",method:"multiplicative",min:.15,max:.15},{label:"AmmoMaximum",method:"multiplicative",min:.511,max:.511},{label:"Mass",method:"multiplicative",min:.451,max:.451}]},5:{features:[{label:"Range",method:"multiplicative",min:-.075188,max:-.075188},{label:"RateOfFire",method:"multiplicative",min:.5623337,max:.5623337},{label:"BurstSize",method:"additive",min:1,max:1},{label:"AmmoClipSize",method:"multiplicative",min:1.667,max:1.667},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"AmmoMaximum",method:"multiplicative",min:.678,max:.678},{label:"Mass",method:"multiplicative",min:.6,max:.6}]}}},RailGun_LongShot:{name:"Rail Gun — Enduring feedback",grades:{2:{features:[{label:"Mass",method:"multiplicative",min:.3,max:.3},{label:"PowerDraw",method:"multiplicative",min:.117,max:.117},{label:"RateOfFire",method:"multiplicative",min:.154,max:.154},{label:"Damage",method:"multiplicative",min:-.104,max:-.104},{label:"ThermalLoad",method:"multiplicative",min:-.133,max:-.133},{label:"Range",method:"multiplicative",min:.333,max:.333},{label:"FalloffRange",method:"multiplicative",min:3,max:3},{label:"AmmoMaximum",method:"multiplicative",min:.325,max:.325},{label:"ReloadTime",method:"multiplicative",min:.083,max:.083}]},3:{features:[{label:"Mass",method:"multiplicative",min:.45,max:.45},{label:"PowerDraw",method:"multiplicative",min:.175,max:.175},{label:"RateOfFire",method:"multiplicative",min:.25,max:.25},{label:"Damage",method:"multiplicative",min:-.154,max:-.154},{label:"ThermalLoad",method:"multiplicative",min:-.2,max:-.2},{label:"Range",method:"multiplicative",min:.5,max:.5},{label:"FalloffRange",method:"multiplicative",min:3.5,max:3.5},{label:"AmmoMaximum",method:"multiplicative",min:.5,max:.5},{label:"ReloadTime",method:"multiplicative",min:.125,max:.125}]},4:{features:[{label:"Mass",method:"multiplicative",min:.677,max:.677},{label:"PowerDraw",method:"multiplicative",min:.263,max:.263},{label:"RateOfFire",method:"multiplicative",min:.43,max:.43},{label:"Damage",method:"multiplicative",min:-.337,max:-.337},{label:"ThermalLoad",method:"multiplicative",min:-.301,max:-.301},{label:"Range",method:"multiplicative",min:.752,max:.752},{label:"FalloffRange",method:"multiplicative",min:4.256,max:4.256},{label:"AmmoMaximum",method:"multiplicative",min:.75,max:.75},{label:"ReloadTime",method:"multiplicative",min:.188,max:.188}]},5:{features:[{label:"Mass",method:"multiplicative",min:.9,max:.9},{label:"PowerDraw",method:"multiplicative",min:.35,max:.35},{label:"RateOfFire",method:"multiplicative",min:.667,max:.667},{label:"Damage",method:"multiplicative",min:-.296,max:-.296},{label:"ThermalLoad",method:"multiplicative",min:-.4,max:-.4},{label:"Range",method:"multiplicative",min:1,max:1},{label:"FalloffRange",method:"multiplicative",min:5,max:5},{label:"AmmoMaximum",method:"multiplicative",min:1,max:1},{label:"ReloadTime",method:"multiplicative",min:.25,max:.25}]}}},MiningLaser_LongRange:{name:"Mining Laser — Long range",grades:{2:{features:[{label:"Range",method:"multiplicative",min:1.333,max:1.333},{label:"FalloffRange",method:"multiplicative",min:2.889,max:2.889},{label:"PowerDraw",method:"multiplicative",min:-.017,max:-.017},{label:"DistributorDraw",method:"multiplicative",min:-.017,max:-.017},{label:"Integrity",method:"multiplicative",min:-.017,max:-.017},{label:"ThermalLoad",method:"multiplicative",min:1.17,max:1.17},{label:"Damage",method:"multiplicative",min:-.05,max:-.05}]},3:{features:[{label:"Range",method:"multiplicative",min:2,max:2},{label:"FalloffRange",method:"multiplicative",min:4,max:4},{label:"PowerDraw",method:"multiplicative",min:-.25,max:-.25},{label:"DistributorDraw",method:"multiplicative",min:-.25,max:-.25},{label:"Integrity",method:"multiplicative",min:-.25,max:-.25},{label:"ThermalLoad",method:"multiplicative",min:.755,max:.755},{label:"Damage",method:"multiplicative",min:-.05,max:-.05}]},4:{features:[{label:"Range",method:"multiplicative",min:3,max:3},{label:"FalloffRange",method:"multiplicative",min:5.679,max:5.679},{label:"PowerDraw",method:"multiplicative",min:-.376,max:-.376},{label:"DistributorDraw",method:"multiplicative",min:-.376,max:-.376},{label:"Integrity",method:"multiplicative",min:-.376,max:-.376},{label:"ThermalLoad",method:"multiplicative",min:.128,max:.128},{label:"Damage",method:"multiplicative",min:-.05,max:-.05}]},5:{features:[{label:"Range",method:"multiplicative",min:4,max:4},{label:"FalloffRange",method:"multiplicative",min:7.333,max:7.333},{label:"PowerDraw",method:"multiplicative",min:-.5,max:-.5},{label:"DistributorDraw",method:"multiplicative",min:-.5,max:-.5},{label:"Integrity",method:"multiplicative",min:-.5,max:-.5},{label:"ThermalLoad",method:"multiplicative",min:-.49,max:-.49},{label:"Damage",method:"multiplicative",min:-.05,max:-.05}]}}},MultiCannon_Rapid:{name:"Multi-cannon — Rapid phase",grades:{2:{features:[{label:"Damage",method:"multiplicative",min:-.1,max:-.1},{label:"RateOfFire",method:"multiplicative",min:.105257,max:.105257},{label:"AmmoMaximum",method:"multiplicative",min:.512,max:.682667},{label:"AmmoClipSize",method:"multiplicative",min:.75,max:1},{label:"Range",method:"multiplicative",min:-.166667,max:-.166667},{label:"FalloffRange",method:"multiplicative",min:-.625,max:-.5},{label:"Jitter",method:"additive",min:1.25,max:1.4}]},3:{features:[{label:"Rounds",method:"multiplicative",min:0,max:1},{label:"Damage",method:"multiplicative",min:-.1,max:-.1},{label:"RateOfFire",method:"multiplicative",min:.166657,max:.166657},{label:"AmmoMaximum",method:"multiplicative",min:.682667,max:1.024},{label:"AmmoClipSize",method:"multiplicative",min:1,max:1.5},{label:"Range",method:"multiplicative",min:-.25,max:-.25},{label:"FalloffRange",method:"multiplicative",min:-.55,max:-.325},{label:"Jitter",method:"additive",min:1.5,max:1.5}]},4:{features:[{label:"Rounds",method:"multiplicative",min:1,max:1},{label:"Damage",method:"multiplicative",min:-.1,max:-.1},{label:"RateOfFire",method:"multiplicative",min:.27358,max:.27358},{label:"AmmoMaximum",method:"multiplicative",min:1.024,max:1.53985},{label:"AmmoClipSize",method:"multiplicative",min:1.5,max:2.255639},{label:"Range",method:"multiplicative",min:-.37594,max:-.37594},{label:"FalloffRange",method:"multiplicative",min:-.438346,max:-.155407},{label:"Jitter",method:"additive",min:2.255639,max:2.255639}]},5:{features:[{label:"Rounds",method:"multiplicative",min:1,max:2},{label:"Damage",method:"multiplicative",min:-.1,max:-.1},{label:"RateOfFire",method:"multiplicative",min:.399972,max:.399972},{label:"AmmoMaximum",method:"multiplicative",min:1.53985,max:2.048},{label:"AmmoClipSize",method:"multiplicative",min:2.255639,max:3},{label:"Range",method:"multiplicative",min:-.5,max:-.5},{label:"FalloffRange",method:"multiplicative",min:-.323308,max:-.1},{label:"Jitter",method:"additive",min:3,max:3}]}}},Cannon_ForceImpact:{name:"Cannon — Force impact",grades:{2:{features:[{label:"Mass",method:"multiplicative",min:.333333,max:.333333},{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"DistributorDraw",method:"multiplicative",min:.133333,max:.133333},{label:"AmmoClipSize",method:"multiplicative",min:.1,max:.133333},{label:"AmmoMaximum",method:"multiplicative",min:.15,max:.2},{label:"RateOfFire",method:"multiplicative",min:-.2,max:-.228571},{label:"Damage",method:"multiplicative",min:-.35,max:-.35},{label:"ShotSpeed",method:"multiplicative",min:-.166667,max:-.166667}],damageDistribution:{kinetic:.5,explosive:.5}},3:{features:[{label:"Mass",method:"multiplicative",min:.5,max:.5},{label:"PowerDraw",method:"multiplicative",min:.3,max:.3},{label:"DistributorDraw",method:"multiplicative",min:.2,max:.2},{label:"AmmoClipSize",method:"multiplicative",min:.133333,max:.2},{label:"AmmoMaximum",method:"multiplicative",min:.2,max:.3},{label:"RateOfFire",method:"multiplicative",min:-.228571,max:-.28},{label:"Damage",method:"multiplicative",min:-.35,max:-.35},{label:"ShotSpeed",method:"multiplicative",min:-.166667,max:-.166667}],damageDistribution:{kinetic:.5,explosive:.5}},4:{features:[{label:"Mass",method:"multiplicative",min:.75188,max:.75188},{label:"PowerDraw",method:"multiplicative",min:.451128,max:.451128},{label:"DistributorDraw",method:"multiplicative",min:.300752,max:.300752},{label:"AmmoClipSize",method:"multiplicative",min:.2,max:.300752},{label:"AmmoMaximum",method:"multiplicative",min:.3,max:.451128},{label:"RateOfFire",method:"multiplicative",min:-.28,max:-.345902},{label:"Damage",method:"multiplicative",min:-.35,max:-.35},{label:"ShotSpeed",method:"multiplicative",min:-.166667,max:-.166667}],damageDistribution:{kinetic:.5,explosive:.5}},5:{features:[{label:"Mass",method:"multiplicative",min:1,max:1},{label:"PowerDraw",method:"multiplicative",min:.6,max:.6},{label:"DistributorDraw",method:"multiplicative",min:.4,max:.4},{label:"AmmoClipSize",method:"multiplicative",min:.300752,max:.4},{label:"AmmoMaximum",method:"multiplicative",min:.451128,max:.6},{label:"RateOfFire",method:"multiplicative",min:-.345902,max:-.4},{label:"Damage",method:"multiplicative",min:-.35,max:-.35},{label:"ShotSpeed",method:"multiplicative",min:-.166667,max:-.166667}],damageDistribution:{kinetic:.5,explosive:.5}}}},SeekerMissileRack_Drag:{name:"Seeker Missile Rack — Drag",grades:{2:{features:[{label:"RateOfFire",method:"multiplicative",min:.052632,max:.071429},{label:"AmmoMaximum",method:"multiplicative",min:.5,max:.666667},{label:"AmmoClipSize",method:"multiplicative",min:.5,max:.666667},{label:"Mass",method:"multiplicative",min:.5,max:.5},{label:"DistributorDraw",method:"multiplicative",min:.139,max:.139},{label:"PowerDraw",method:"multiplicative",min:.083333,max:.083333}]},3:{features:[{label:"RateOfFire",method:"multiplicative",min:.071429,max:.111111},{label:"AmmoMaximum",method:"multiplicative",min:.666667,max:1},{label:"AmmoClipSize",method:"multiplicative",min:.666667,max:1},{label:"Mass",method:"multiplicative",min:.75,max:.75},{label:"DistributorDraw",method:"multiplicative",min:.2085,max:.2085},{label:"PowerDraw",method:"multiplicative",min:.125,max:.125}]},4:{features:[{label:"RateOfFire",method:"multiplicative",min:.111111,max:.176991},{label:"AmmoMaximum",method:"multiplicative",min:1,max:1.503759},{label:"AmmoClipSize",method:"multiplicative",min:1,max:1.503759},{label:"Mass",method:"multiplicative",min:1.12782,max:1.12782},{label:"DistributorDraw",method:"multiplicative",min:.313534,max:.313534},{label:"PowerDraw",method:"multiplicative",min:.18797,max:.18797}]},5:{features:[{label:"RateOfFire",method:"multiplicative",min:.176991,max:.25},{label:"AmmoMaximum",method:"multiplicative",min:1.503759,max:2},{label:"AmmoClipSize",method:"multiplicative",min:1.503759,max:2},{label:"Mass",method:"multiplicative",min:1.5,max:1.5},{label:"DistributorDraw",method:"multiplicative",min:.417,max:.417},{label:"PowerDraw",method:"multiplicative",min:.25,max:.25}]}}},SeekerMissileRack_LightWeightThermal:{name:"Seeker Missile Rack — Lightweight thermal",grades:{2:{features:[{label:"AmmoMaximum",method:"multiplicative",min:.333,max:.333},{label:"AmmoClipSize",method:"multiplicative",min:.333,max:.333},{label:"RateOfFire",method:"multiplicative",min:.035,max:.035},{label:"Integrity",method:"multiplicative",min:-.2,max:-.2},{label:"Mass",method:"multiplicative",min:-.3,max:-.3},{label:"PowerDraw",method:"multiplicative",min:-.067,max:-.067},{label:"DistributorDraw",method:"multiplicative",min:-.133,max:-.133}]},3:{features:[{label:"AmmoMaximum",method:"multiplicative",min:.5,max:.5},{label:"AmmoClipSize",method:"multiplicative",min:.5,max:.5},{label:"RateOfFire",method:"multiplicative",min:.053,max:.053},{label:"Integrity",method:"multiplicative",min:-.3,max:-.3},{label:"Mass",method:"multiplicative",min:-.45,max:-.45},{label:"PowerDraw",method:"multiplicative",min:-.1,max:-.1},{label:"DistributorDraw",method:"multiplicative",min:-.2,max:-.2}]},4:{features:[{label:"AmmoMaximum",method:"multiplicative",min:.722,max:.722},{label:"AmmoClipSize",method:"multiplicative",min:.833,max:.833},{label:"RateOfFire",method:"multiplicative",min:.081,max:.081},{label:"Integrity",method:"multiplicative",min:-.451,max:-.451},{label:"Mass",method:"multiplicative",min:-.677,max:-.677},{label:"PowerDraw",method:"multiplicative",min:-.15,max:-.15},{label:"DistributorDraw",method:"multiplicative",min:-.301,max:-.301}]},5:{features:[{label:"AmmoMaximum",method:"multiplicative",min:1,max:1},{label:"AmmoClipSize",method:"multiplicative",min:1,max:1},{label:"RateOfFire",method:"multiplicative",min:.111,max:.111},{label:"Integrity",method:"multiplicative",min:-.6,max:-.6},{label:"Mass",method:"multiplicative",min:-.9,max:-.9},{label:"PowerDraw",method:"multiplicative",min:-.2,max:-.2},{label:"DistributorDraw",method:"multiplicative",min:-.4,max:-.4}]}}},SeekerMissileRackMedium_Lockdown:{name:"Seeker Missile Rack — Lockdown",grades:{2:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.25,max:.333333},{label:"AmmoMaximum",method:"multiplicative",min:.25,max:.333333},{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"RateOfFire",method:"multiplicative",min:-.316239,max:-.310345},{label:"Mass",method:"multiplicative",min:.4,max:.4},{label:"Integrity",method:"multiplicative",min:.25,max:.333333},{label:"ThermalLoad",method:"multiplicative",min:-.025,max:-.033333},{label:"ArmourPenetration",method:"multiplicative",min:.1,max:.133333},{label:"Damage",method:"multiplicative",min:-.23875,max:-.218333}]},3:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.333333,max:.5},{label:"AmmoMaximum",method:"multiplicative",min:.333333,max:.5},{label:"PowerDraw",method:"multiplicative",min:.15,max:.15},{label:"RateOfFire",method:"multiplicative",min:-.310345,max:-.298246},{label:"Mass",method:"multiplicative",min:.6,max:.6},{label:"Integrity",method:"multiplicative",min:.333333,max:.5},{label:"ThermalLoad",method:"multiplicative",min:-.033333,max:-.05},{label:"ArmourPenetration",method:"multiplicative",min:.133333,max:.2},{label:"Damage",method:"multiplicative",min:-.218333,max:-.1775}]},4:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.5,max:.75188},{label:"AmmoMaximum",method:"multiplicative",min:.5,max:.75188},{label:"PowerDraw",method:"multiplicative",min:.225564,max:.225564},{label:"RateOfFire",method:"multiplicative",min:-.298246,max:-.279133},{label:"Mass",method:"multiplicative",min:.902256,max:.902256},{label:"Integrity",method:"multiplicative",min:.5,max:.75188},{label:"ThermalLoad",method:"multiplicative",min:-.05,max:-.075188},{label:"ArmourPenetration",method:"multiplicative",min:.2,max:.300752},{label:"Damage",method:"multiplicative",min:-.1775,max:-.115789}]},5:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.75188,max:1},{label:"AmmoMaximum",method:"multiplicative",min:.75188,max:1},{label:"PowerDraw",method:"multiplicative",min:.3,max:.3},{label:"RateOfFire",method:"multiplicative",min:-.279133,max:-.259259},{label:"Mass",method:"multiplicative",min:1.2,max:1.2},{label:"Integrity",method:"multiplicative",min:.75188,max:1},{label:"ThermalLoad",method:"multiplicative",min:-.075188,max:-.1},{label:"ArmourPenetration",method:"multiplicative",min:.300752,max:.4},{label:"Damage",method:"multiplicative",min:-.115789,max:-.055}]}}},SeekerMissileRackLarge_ExposingMissiles:{name:"Seeker Missile Rack — Exposing missiles",grades:{2:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.2,max:.266667},{label:"PowerDraw",method:"multiplicative",min:.166667,max:.166667},{label:"AmmoMaximum",method:"multiplicative",min:.2,max:.266667},{label:"RateOfFire",method:"multiplicative",min:.09589,max:.132075},{label:"Mass",method:"multiplicative",min:.466667,max:.466667},{label:"ReloadTime",method:"multiplicative",min:-.066667,max:-.066667},{label:"ThermalLoad",method:"multiplicative",min:1.1,max:1.133333},{label:"Damage",method:"multiplicative",min:-.1,max:-.133333}]},3:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.266667,max:.4},{label:"PowerDraw",method:"multiplicative",min:.25,max:.25},{label:"AmmoMaximum",method:"multiplicative",min:.266667,max:.4},{label:"RateOfFire",method:"multiplicative",min:.132075,max:.212121},{label:"Mass",method:"multiplicative",min:.7,max:.7},{label:"ReloadTime",method:"multiplicative",min:-.1,max:-.1},{label:"ThermalLoad",method:"multiplicative",min:1.133333,max:1.2},{label:"Damage",method:"multiplicative",min:-.133333,max:-.2}]},4:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.4,max:.601504},{label:"PowerDraw",method:"multiplicative",min:.37594,max:.37594},{label:"AmmoMaximum",method:"multiplicative",min:.4,max:.601504},{label:"RateOfFire",method:"multiplicative",min:.212121,max:.357143},{label:"Mass",method:"multiplicative",min:1.052632,max:1.052632},{label:"ReloadTime",method:"multiplicative",min:-.150376,max:-.150376},{label:"ThermalLoad",method:"multiplicative",min:1.2,max:1.300752},{label:"Damage",method:"multiplicative",min:-.2,max:-.300752}]},5:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.601504,max:.8},{label:"PowerDraw",method:"multiplicative",min:.5,max:.5},{label:"AmmoMaximum",method:"multiplicative",min:.601504,max:.8},{label:"RateOfFire",method:"multiplicative",min:.357143,max:.538462},{label:"Mass",method:"multiplicative",min:1.4,max:1.4},{label:"ReloadTime",method:"multiplicative",min:-.2,max:-.2},{label:"ThermalLoad",method:"multiplicative",min:1.300752,max:1.4},{label:"Damage",method:"multiplicative",min:-.300752,max:-.4}]}}},SeekerMissileRackLarge_Lockdown:{name:"Seeker Missile Rack — Lockdown",grades:{2:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.25,max:.333333},{label:"AmmoMaximum",method:"multiplicative",min:.25,max:.333333},{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"RateOfFire",method:"multiplicative",min:-.316239,max:-.310345},{label:"Mass",method:"multiplicative",min:.4,max:.4},{label:"Integrity",method:"multiplicative",min:.25,max:.333333},{label:"ThermalLoad",method:"multiplicative",min:-.025,max:-.033333},{label:"ArmourPenetration",method:"multiplicative",min:.1,max:.133333},{label:"Damage",method:"multiplicative",min:-.23875,max:-.218333}]},3:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.333333,max:.5},{label:"AmmoMaximum",method:"multiplicative",min:.333333,max:.5},{label:"PowerDraw",method:"multiplicative",min:.15,max:.15},{label:"RateOfFire",method:"multiplicative",min:-.310345,max:-.298246},{label:"Mass",method:"multiplicative",min:.6,max:.6},{label:"Integrity",method:"multiplicative",min:.333333,max:.5},{label:"ThermalLoad",method:"multiplicative",min:-.033333,max:-.05},{label:"ArmourPenetration",method:"multiplicative",min:.133333,max:.2},{label:"Damage",method:"multiplicative",min:-.218333,max:-.1775}]},4:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.5,max:.75188},{label:"AmmoMaximum",method:"multiplicative",min:.5,max:.75188},{label:"PowerDraw",method:"multiplicative",min:.225564,max:.225564},{label:"RateOfFire",method:"multiplicative",min:-.298246,max:-.279133},{label:"Mass",method:"multiplicative",min:.902256,max:.902256},{label:"Integrity",method:"multiplicative",min:.5,max:.75188},{label:"ThermalLoad",method:"multiplicative",min:-.05,max:-.075188},{label:"ArmourPenetration",method:"multiplicative",min:.2,max:.300752},{label:"Damage",method:"multiplicative",min:-.1775,max:-.115789}]},5:{features:[{label:"AmmoClipSize",method:"multiplicative",min:.75188,max:1},{label:"AmmoMaximum",method:"multiplicative",min:.75188,max:1},{label:"PowerDraw",method:"multiplicative",min:.3,max:.3},{label:"RateOfFire",method:"multiplicative",min:-.279133,max:-.259259},{label:"Mass",method:"multiplicative",min:1.2,max:1.2},{label:"Integrity",method:"multiplicative",min:.75188,max:1},{label:"ThermalLoad",method:"multiplicative",min:-.075188,max:-.1},{label:"ArmourPenetration",method:"multiplicative",min:.300752,max:.4},{label:"Damage",method:"multiplicative",min:-.115789,max:-.055}]}}},EnzymeMissileRack_HighYield:{name:"Enzyme Missile Rack — High-yield",grades:{2:{features:[{label:"PowerDraw",method:"multiplicative",min:.067,max:.067},{label:"Mass",method:"multiplicative",min:.2,max:.2},{label:"AmmoClipSize",method:"multiplicative",min:1,max:1}]},3:{features:[{label:"PowerDraw",method:"multiplicative",min:.1,max:.1},{label:"Mass",method:"multiplicative",min:.3,max:.3},{label:"AmmoClipSize",method:"multiplicative",min:1,max:1}]},4:{features:[{label:"PowerDraw",method:"multiplicative",min:.15,max:.15},{label:"Mass",method:"multiplicative",min:.451,max:.451},{label:"AmmoClipSize",method:"multiplicative",min:1,max:1}]},5:{features:[{label:"PowerDraw",method:"multiplicative",min:.2,max:.2},{label:"Mass",method:"multiplicative",min:.6,max:.6},{label:"AmmoMaximum",method:"multiplicative",min:.2,max:.2},{label:"AmmoClipSize",method:"multiplicative",min:1,max:1}]}}},GuardianModule_Sturdy:{name:"Anti-Guardian Zone Resistance",grades:{1:{features:[{label:"GuardianModuleResistance",method:"additive",min:1,max:1}]}}}};var BLUEPRINTS=deepFreeze(blueprints_default);function getBlueprint(blueprintSymbol){return findByRawKey(BLUEPRINTS,blueprintSymbol,"getBlueprint: blueprintSymbol")}function getBlueprintGrade(blueprintSymbol,grade){requireStringIfPresent(blueprintSymbol,"getBlueprintGrade: blueprintSymbol");if(!Number.isInteger(grade)||grade<1||grade>5){throw new RangeError(`getBlueprintGrade: grade must be an integer in [1, 5]`)}return getBlueprint(blueprintSymbol)?.grades[String(grade)]??null}export{BLUEPRINTS,getBlueprint,getBlueprintGrade};//# sourceMappingURL=chunk-WDAYRHXR.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/ships/blueprints.ts"],"names":["findByRawKey","requireStringIfPresent","deepFreeze","blueprints_default","grades","BLUEPRINTS","getBlueprint","blueprintSymbol","getBlueprintGrade","grade","Number","isInteger","RangeError","String"],"mappings":"O,
|
|
1
|
+
{"version":3,"sources":["../src/ships/blueprints.ts"],"names":["findByRawKey","requireStringIfPresent","deepFreeze","blueprints_default","grades","BLUEPRINTS","getBlueprint","blueprintSymbol","getBlueprintGrade","grade","Number","isInteger","RangeError","String"],"mappings":"O,63wIA+DO,IAAMK,WAAkDH,WAC3DC,oBAoBG,SAASG,aAAaC,iBACzB,OAAOP,aAAaK,WAAYE,gBAAiB,gCACrD,CAsBO,SAASC,kBAAkBD,gBAAyBE,OACvDR,uBAAuBM,gBAAiB,sCACxC,IAAKG,OAAOC,UAAUF,QAAUA,MAAQ,GAAKA,MAAQ,EAAG,CACpD,MAAM,IAAIG,WAAW,wDACzB,CACA,OAAON,aAAaC,kBAAkBH,OAAOS,OAAOJ,SAAW,IACnE,QAAAJ,WAAAC,aAAAE"}
|