@elite-dangerous-almanac/core 0.1.7 → 0.2.0

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.
Files changed (274) hide show
  1. package/PROVENANCE/i18n/SOURCES.md +2 -2
  2. package/PROVENANCE/ships/SOURCES.md +29 -9
  3. package/README.md +54 -40
  4. package/dist/astro/galaxy-grid.js +1 -1
  5. package/dist/astro/index.d.ts +1 -1
  6. package/dist/astro/index.js +1 -1
  7. package/dist/astro/naming-region-origins.d.ts +1 -1
  8. package/dist/astro/naming-region-origins.js +1 -1
  9. package/dist/astro/nebulae.d.ts +2 -2
  10. package/dist/astro/permit-locks.d.ts +2 -1
  11. package/dist/astro/permit-locks.js +1 -1
  12. package/dist/astro/procedural-system.d.ts +2 -1
  13. package/dist/astro/procedural-system.js +1 -1
  14. package/dist/astro/sector-name.d.ts +2 -1
  15. package/dist/astro/sector-name.js +1 -1
  16. package/dist/astro/system-address.d.ts +1 -1
  17. package/dist/astro/system-name.d.ts +14 -9
  18. package/dist/astro/system-name.js +1 -1
  19. package/dist/chunk-2W5MW376.js +1 -0
  20. package/dist/chunk-2W5MW376.js.map +1 -0
  21. package/dist/{chunk-VZZUNSDF.js → chunk-4KJ7CR74.js} +1 -1
  22. package/dist/{chunk-VZZUNSDF.js.map → chunk-4KJ7CR74.js.map} +1 -1
  23. package/dist/{chunk-6EUVIZAS.js → chunk-4QYTVSNR.js} +1 -1
  24. package/dist/{chunk-EKQCVCMK.js → chunk-5ZVYRX6Z.js} +1 -1
  25. package/dist/{chunk-EKQCVCMK.js.map → chunk-5ZVYRX6Z.js.map} +1 -1
  26. package/dist/chunk-6GJHUWMO.js +1 -0
  27. package/dist/chunk-6GJHUWMO.js.map +1 -0
  28. package/dist/chunk-6L56LWTT.js +1 -0
  29. package/dist/chunk-6L56LWTT.js.map +1 -0
  30. package/dist/{chunk-GQ5GX5TB.js → chunk-6O4NRRSB.js} +1 -1
  31. package/dist/chunk-6O4NRRSB.js.map +1 -0
  32. package/dist/{chunk-WNGQ3IAM.js → chunk-6UNAD74Z.js} +1 -1
  33. package/dist/{chunk-WNGQ3IAM.js.map → chunk-6UNAD74Z.js.map} +1 -1
  34. package/dist/{chunk-JPBMRJFC.js → chunk-77I24V6B.js} +1 -1
  35. package/dist/chunk-77I24V6B.js.map +1 -0
  36. package/dist/chunk-7ATBEOVC.js +1 -0
  37. package/dist/chunk-7ATBEOVC.js.map +1 -0
  38. package/dist/chunk-7TQ2X6Q3.js +1 -0
  39. package/dist/chunk-7TQ2X6Q3.js.map +1 -0
  40. package/dist/{chunk-6EPYVBAX.js → chunk-A6OINYNP.js} +1 -1
  41. package/dist/{chunk-Q3QCLNVG.js → chunk-AYAKU4YA.js} +1 -1
  42. package/dist/chunk-AYAKU4YA.js.map +1 -0
  43. package/dist/chunk-B7EYTZRK.js +1 -0
  44. package/dist/chunk-B7EYTZRK.js.map +1 -0
  45. package/dist/{chunk-EBAHNZ36.js → chunk-CIULJH3G.js} +1 -1
  46. package/dist/{chunk-EBAHNZ36.js.map → chunk-CIULJH3G.js.map} +1 -1
  47. package/dist/{chunk-SNADUQSJ.js → chunk-CJK2IBI2.js} +1 -1
  48. package/dist/{chunk-SNADUQSJ.js.map → chunk-CJK2IBI2.js.map} +1 -1
  49. package/dist/{chunk-DYPOL3CI.js → chunk-CJQ37JII.js} +1 -1
  50. package/dist/chunk-CJQ37JII.js.map +1 -0
  51. package/dist/chunk-D6YEHR5S.js +1 -0
  52. package/dist/chunk-D6YEHR5S.js.map +1 -0
  53. package/dist/{chunk-Z6XMXMVI.js → chunk-DBDCOHI4.js} +1 -1
  54. package/dist/chunk-DBDCOHI4.js.map +1 -0
  55. package/dist/{chunk-AFVYCQWL.js → chunk-DCB4COCL.js} +1 -1
  56. package/dist/{chunk-AFVYCQWL.js.map → chunk-DCB4COCL.js.map} +1 -1
  57. package/dist/{chunk-CJWFY6OX.js → chunk-DSMLYA2M.js} +1 -1
  58. package/dist/{chunk-CJWFY6OX.js.map → chunk-DSMLYA2M.js.map} +1 -1
  59. package/dist/{chunk-UXBCLFGU.js → chunk-DWRNXUAX.js} +1 -1
  60. package/dist/{chunk-UXBCLFGU.js.map → chunk-DWRNXUAX.js.map} +1 -1
  61. package/dist/{chunk-UHSNB5SV.js → chunk-EVJ32UF3.js} +1 -1
  62. package/dist/{chunk-UHSNB5SV.js.map → chunk-EVJ32UF3.js.map} +1 -1
  63. package/dist/chunk-EVW4Z4CB.js +1 -0
  64. package/dist/chunk-EVW4Z4CB.js.map +1 -0
  65. package/dist/{chunk-4S6WB7QR.js → chunk-FF2X4K5P.js} +1 -1
  66. package/dist/chunk-FF2X4K5P.js.map +1 -0
  67. package/dist/chunk-FYVPZBXN.js +1 -0
  68. package/dist/chunk-FYVPZBXN.js.map +1 -0
  69. package/dist/{chunk-QTZPA2FR.js → chunk-GLWPSVFV.js} +1 -1
  70. package/dist/chunk-GLWPSVFV.js.map +1 -0
  71. package/dist/chunk-GZYPQIO2.js +1 -0
  72. package/dist/chunk-GZYPQIO2.js.map +1 -0
  73. package/dist/chunk-H47K3UWG.js +1 -0
  74. package/dist/chunk-H47K3UWG.js.map +1 -0
  75. package/dist/chunk-JGOAQLYW.js +1 -0
  76. package/dist/chunk-JGOAQLYW.js.map +1 -0
  77. package/dist/{chunk-JWWYAMGD.js → chunk-MGRDB2BZ.js} +1 -1
  78. package/dist/{chunk-JWWYAMGD.js.map → chunk-MGRDB2BZ.js.map} +1 -1
  79. package/dist/{chunk-MKGJPVPS.js → chunk-MRTTQYT5.js} +1 -1
  80. package/dist/{chunk-MKGJPVPS.js.map → chunk-MRTTQYT5.js.map} +1 -1
  81. package/dist/chunk-MTJ4MS7W.js +1 -0
  82. package/dist/chunk-MTJ4MS7W.js.map +1 -0
  83. package/dist/chunk-NIURLW2F.js +1 -0
  84. package/dist/chunk-NIURLW2F.js.map +1 -0
  85. package/dist/chunk-OLKNYGGT.js +1 -0
  86. package/dist/chunk-OLKNYGGT.js.map +1 -0
  87. package/dist/{chunk-UXFMVZAY.js → chunk-OVUHQEH5.js} +1 -1
  88. package/dist/{chunk-UXFMVZAY.js.map → chunk-OVUHQEH5.js.map} +1 -1
  89. package/dist/chunk-OYFMHDYT.js +1 -0
  90. package/dist/chunk-OYFMHDYT.js.map +1 -0
  91. package/dist/chunk-OYR5HUQZ.js +1 -0
  92. package/dist/chunk-OYR5HUQZ.js.map +1 -0
  93. package/dist/{chunk-LLHGSBPI.js → chunk-PA5EITW5.js} +1 -1
  94. package/dist/{chunk-LLHGSBPI.js.map → chunk-PA5EITW5.js.map} +1 -1
  95. package/dist/chunk-PL75RTA2.js +1 -0
  96. package/dist/{chunk-2VPVZELZ.js.map → chunk-PL75RTA2.js.map} +1 -1
  97. package/dist/chunk-PY5L6WC5.js +1 -0
  98. package/dist/chunk-PY5L6WC5.js.map +1 -0
  99. package/dist/{chunk-W6EPHHTS.js → chunk-Q2L75GSI.js} +1 -1
  100. package/dist/chunk-Q2L75GSI.js.map +1 -0
  101. package/dist/chunk-QJ7GB6FF.js +1 -0
  102. package/dist/chunk-QJ7GB6FF.js.map +1 -0
  103. package/dist/chunk-QTAMQ6ME.js +1 -0
  104. package/dist/chunk-QTAMQ6ME.js.map +1 -0
  105. package/dist/{chunk-VDVFJXX5.js → chunk-QY3L5BKN.js} +1 -1
  106. package/dist/{chunk-FMPRCYKY.js → chunk-RRYBSAPX.js} +1 -1
  107. package/dist/chunk-RRYBSAPX.js.map +1 -0
  108. package/dist/{chunk-J42ZXLBL.js → chunk-T62GO4AA.js} +1 -1
  109. package/dist/chunk-T62GO4AA.js.map +1 -0
  110. package/dist/{chunk-E3BRVGJJ.js → chunk-TBZJIQ5P.js} +1 -1
  111. package/dist/{chunk-E3BRVGJJ.js.map → chunk-TBZJIQ5P.js.map} +1 -1
  112. package/dist/chunk-V3AEUBHV.js +1 -0
  113. package/dist/chunk-V3AEUBHV.js.map +1 -0
  114. package/dist/chunk-VYDQHPY2.js +1 -0
  115. package/dist/chunk-VYDQHPY2.js.map +1 -0
  116. package/dist/chunk-XUHAPOM6.js +1 -0
  117. package/dist/chunk-XUHAPOM6.js.map +1 -0
  118. package/dist/chunk-Y6KJJMIM.js +1 -0
  119. package/dist/chunk-Y6KJJMIM.js.map +1 -0
  120. package/dist/chunk-YXPZ7QQB.js +1 -0
  121. package/dist/chunk-YXPZ7QQB.js.map +1 -0
  122. package/dist/{chunk-Y6UZWNP4.js → chunk-ZCEAPJDH.js} +1 -1
  123. package/dist/{chunk-Y6UZWNP4.js.map → chunk-ZCEAPJDH.js.map} +1 -1
  124. package/dist/commodities/commodities.d.ts +20 -10
  125. package/dist/commodities/commodities.js +1 -1
  126. package/dist/commodities/index.d.ts +15 -4
  127. package/dist/commodities/index.js +1 -1
  128. package/dist/equipment/index.js +1 -1
  129. package/dist/equipment/modification-costs.d.ts +2 -1
  130. package/dist/equipment/modification-costs.js.map +1 -1
  131. package/dist/equipment/modification-journal.js +1 -1
  132. package/dist/equipment/modifications.d.ts +2 -1
  133. package/dist/equipment/modifications.js +1 -1
  134. package/dist/equipment/suits.d.ts +6 -3
  135. package/dist/equipment/suits.js +1 -1
  136. package/dist/equipment/upgrade-costs.d.ts +8 -4
  137. package/dist/equipment/upgrade-costs.js +1 -1
  138. package/dist/equipment/upgrade-costs.js.map +1 -1
  139. package/dist/equipment/weapons.d.ts +13 -5
  140. package/dist/equipment/weapons.js +1 -1
  141. package/dist/i18n/blueprints.d.ts +6 -6
  142. package/dist/i18n/blueprints.js +1 -1
  143. package/dist/i18n/diagnostics.d.ts +1 -13
  144. package/dist/i18n/engineering-groups.d.ts +1 -0
  145. package/dist/i18n/engineering-groups.js +1 -1
  146. package/dist/i18n/experimental-effect-descriptions.d.ts +4 -3
  147. package/dist/i18n/experimental-effect-descriptions.js +1 -1
  148. package/dist/i18n/experimental-effects.d.ts +5 -4
  149. package/dist/i18n/experimental-effects.js +1 -1
  150. package/dist/i18n/index.d.ts +1 -13
  151. package/dist/i18n/index.js +1 -1
  152. package/dist/i18n/pre-engineered.d.ts +7 -6
  153. package/dist/i18n/pre-engineered.js +1 -1
  154. package/dist/materials/index.d.ts +16 -4
  155. package/dist/materials/index.js +1 -1
  156. package/dist/materials/materials.d.ts +36 -19
  157. package/dist/materials/materials.js +1 -1
  158. package/dist/materials/micro-resources.d.ts +18 -7
  159. package/dist/materials/micro-resources.js +1 -1
  160. package/dist/ships/armour.d.ts +20 -4
  161. package/dist/ships/armour.js +1 -1
  162. package/dist/ships/blueprint-costs.d.ts +20 -17
  163. package/dist/ships/blueprint-costs.js +1 -1
  164. package/dist/ships/blueprint-journal.d.ts +9 -8
  165. package/dist/ships/blueprint-journal.js +1 -1
  166. package/dist/ships/blueprints.d.ts +14 -12
  167. package/dist/ships/blueprints.js +1 -1
  168. package/dist/ships/build-metrics.d.ts +1061 -0
  169. package/dist/ships/build-metrics.js +1 -0
  170. package/dist/ships/build-metrics.js.map +1 -0
  171. package/dist/ships/distributor.d.ts +10 -3
  172. package/dist/ships/distributor.js +1 -1
  173. package/dist/ships/engineering-options.d.ts +8 -6
  174. package/dist/ships/engineering-options.js +1 -1
  175. package/dist/ships/engineering.d.ts +2 -16
  176. package/dist/ships/engineering.js +1 -1
  177. package/dist/ships/experimental-effect-costs.d.ts +5 -5
  178. package/dist/ships/experimental-effect-costs.js +1 -1
  179. package/dist/ships/experimental-effects.d.ts +9 -8
  180. package/dist/ships/experimental-effects.js +1 -1
  181. package/dist/ships/heat.d.ts +7 -2
  182. package/dist/ships/heat.js +1 -1
  183. package/dist/ships/index.d.ts +34 -22
  184. package/dist/ships/index.js +1 -1
  185. package/dist/ships/jump-range.d.ts +10 -3
  186. package/dist/ships/jump-range.js +1 -1
  187. package/dist/ships/loadout-calculations.d.ts +1 -1
  188. package/dist/ships/loadout-calculations.js +1 -1
  189. package/dist/ships/mobility-capacitor.d.ts +90 -0
  190. package/dist/ships/mobility-capacitor.js +1 -0
  191. package/dist/ships/mobility-capacitor.js.map +1 -0
  192. package/dist/ships/mobility.d.ts +41 -17
  193. package/dist/ships/mobility.js +1 -1
  194. package/dist/ships/modules-all.js +1 -1
  195. package/dist/ships/modules-core.js +1 -1
  196. package/dist/ships/modules.d.ts +27 -1
  197. package/dist/ships/modules.js +1 -1
  198. package/dist/ships/power.d.ts +12 -5
  199. package/dist/ships/power.js +1 -1
  200. package/dist/ships/pre-engineered-stats.d.ts +10 -8
  201. package/dist/ships/pre-engineered-stats.js +1 -1
  202. package/dist/ships/pre-engineered.d.ts +6 -6
  203. package/dist/ships/pre-engineered.js +1 -1
  204. package/dist/ships/resistances.d.ts +2 -2
  205. package/dist/ships/resistances.js +1 -1
  206. package/dist/ships/shield-capacitor.d.ts +133 -0
  207. package/dist/ships/shield-capacitor.js +1 -0
  208. package/dist/ships/shield-capacitor.js.map +1 -0
  209. package/dist/ships/shield-recovery.d.ts +16 -2
  210. package/dist/ships/shield-recovery.js +1 -1
  211. package/dist/ships/shields.d.ts +86 -28
  212. package/dist/ships/shields.js +1 -1
  213. package/dist/ships/ship-loadout.d.ts +100 -671
  214. package/dist/ships/ship-loadout.js +1 -1
  215. package/dist/ships/ships.d.ts +7 -6
  216. package/dist/ships/ships.js +1 -1
  217. package/dist/ships/slef.d.ts +11 -9
  218. package/dist/ships/slef.js +1 -1
  219. package/dist/ships/source-purchase.d.ts +2 -1
  220. package/dist/ships/source-purchase.js +1 -1
  221. package/dist/ships/weapons-capacitor.d.ts +10 -3
  222. package/dist/ships/weapons-capacitor.js +1 -1
  223. package/dist/ships/weapons.d.ts +22 -6
  224. package/dist/ships/weapons.js +1 -1
  225. package/dist/{system-address-DYsN1qOT.d.ts → system-address-cyJaeZIS.d.ts} +2 -1
  226. package/package.json +17 -2
  227. package/dist/chunk-24INI4U7.js +0 -1
  228. package/dist/chunk-24INI4U7.js.map +0 -1
  229. package/dist/chunk-2FHHMYDC.js +0 -1
  230. package/dist/chunk-2FHHMYDC.js.map +0 -1
  231. package/dist/chunk-2TW4ZBI3.js +0 -1
  232. package/dist/chunk-2TW4ZBI3.js.map +0 -1
  233. package/dist/chunk-2VPVZELZ.js +0 -1
  234. package/dist/chunk-4S6WB7QR.js.map +0 -1
  235. package/dist/chunk-DVL5RBKX.js +0 -1
  236. package/dist/chunk-DVL5RBKX.js.map +0 -1
  237. package/dist/chunk-DYPOL3CI.js.map +0 -1
  238. package/dist/chunk-EXVCRIDP.js +0 -1
  239. package/dist/chunk-EXVCRIDP.js.map +0 -1
  240. package/dist/chunk-FGXWVFN6.js +0 -1
  241. package/dist/chunk-FGXWVFN6.js.map +0 -1
  242. package/dist/chunk-FMPRCYKY.js.map +0 -1
  243. package/dist/chunk-G3265B27.js +0 -1
  244. package/dist/chunk-G3265B27.js.map +0 -1
  245. package/dist/chunk-GQ5GX5TB.js.map +0 -1
  246. package/dist/chunk-IOJXLDJN.js +0 -1
  247. package/dist/chunk-IOJXLDJN.js.map +0 -1
  248. package/dist/chunk-IYU4WLFM.js +0 -1
  249. package/dist/chunk-IYU4WLFM.js.map +0 -1
  250. package/dist/chunk-J42ZXLBL.js.map +0 -1
  251. package/dist/chunk-JPBMRJFC.js.map +0 -1
  252. package/dist/chunk-LJI7VXJD.js +0 -1
  253. package/dist/chunk-LJI7VXJD.js.map +0 -1
  254. package/dist/chunk-OCND33TO.js +0 -1
  255. package/dist/chunk-OCND33TO.js.map +0 -1
  256. package/dist/chunk-P2QOL63K.js +0 -1
  257. package/dist/chunk-P2QOL63K.js.map +0 -1
  258. package/dist/chunk-Q3QCLNVG.js.map +0 -1
  259. package/dist/chunk-QTZPA2FR.js.map +0 -1
  260. package/dist/chunk-RLUS76LZ.js +0 -1
  261. package/dist/chunk-RLUS76LZ.js.map +0 -1
  262. package/dist/chunk-TEOJCBSG.js +0 -1
  263. package/dist/chunk-TEOJCBSG.js.map +0 -1
  264. package/dist/chunk-TMMGS6TC.js +0 -1
  265. package/dist/chunk-TMMGS6TC.js.map +0 -1
  266. package/dist/chunk-W6EPHHTS.js.map +0 -1
  267. package/dist/chunk-Z6XMXMVI.js.map +0 -1
  268. package/dist/chunk-ZNCXENNB.js +0 -1
  269. package/dist/chunk-ZNCXENNB.js.map +0 -1
  270. package/dist/chunk-ZZT2PQZ5.js +0 -1
  271. package/dist/chunk-ZZT2PQZ5.js.map +0 -1
  272. /package/dist/{chunk-6EUVIZAS.js.map → chunk-4QYTVSNR.js.map} +0 -0
  273. /package/dist/{chunk-6EPYVBAX.js.map → chunk-A6OINYNP.js.map} +0 -0
  274. /package/dist/{chunk-VDVFJXX5.js.map → chunk-QY3L5BKN.js.map} +0 -0
@@ -0,0 +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,g5gIAgEO,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"}
@@ -0,0 +1 @@
1
+ import{assertEquipmentGrade}from"./chunk-2W5MW376.js";import{findInKeyIndex,normalizeKey,createKeyIndex}from"./chunk-BKWLI44T.js";import{deepFreeze}from"./chunk-DURKO7JU.js";var suits_default=[{family:"utilitysuit",name:"Maverick Suit",primarySlots:1,secondarySlots:1,grades:{1:{symbol:"utilitysuit_class1",modificationSlots:0,shieldStrength:13.5,shieldRegeneration:.99,kineticResistance:-.6,thermalResistance:.5,plasmaResistance:-.1,explosiveResistance:0},2:{symbol:"utilitysuit_class2",modificationSlots:1,shieldStrength:16.5,shieldRegeneration:1.21,kineticResistance:-.34,thermalResistance:.58,plasmaResistance:.07,explosiveResistance:.16},3:{symbol:"utilitysuit_class3",modificationSlots:2,shieldStrength:20.3,shieldRegeneration:1.49,kineticResistance:-.13,thermalResistance:.64,plasmaResistance:.22,explosiveResistance:.29},4:{symbol:"utilitysuit_class4",modificationSlots:3,shieldStrength:24.9,shieldRegeneration:1.82,kineticResistance:.06,thermalResistance:.7,plasmaResistance:.35,explosiveResistance:.41},5:{symbol:"utilitysuit_class5",modificationSlots:4,shieldStrength:30.4,shieldRegeneration:2.23,kineticResistance:.19,thermalResistance:.75,plasmaResistance:.45,explosiveResistance:.5}}},{family:"tacticalsuit",name:"Dominator Suit",primarySlots:2,secondarySlots:1,grades:{1:{symbol:"tacticalsuit_class1",modificationSlots:0,shieldStrength:15,shieldRegeneration:1.1,kineticResistance:-.5,thermalResistance:.6,plasmaResistance:0,explosiveResistance:0},2:{symbol:"tacticalsuit_class2",modificationSlots:1,shieldStrength:18.3,shieldRegeneration:1.34,kineticResistance:-.26,thermalResistance:.66,plasmaResistance:.16,explosiveResistance:.16},3:{symbol:"tacticalsuit_class3",modificationSlots:2,shieldStrength:22.5,shieldRegeneration:1.65,kineticResistance:-.07,thermalResistance:.72,plasmaResistance:.29,explosiveResistance:.29},4:{symbol:"tacticalsuit_class4",modificationSlots:3,shieldStrength:27.6,shieldRegeneration:2.02,kineticResistance:.19,thermalResistance:.78,plasmaResistance:.46,explosiveResistance:.46},5:{symbol:"tacticalsuit_class5",modificationSlots:4,shieldStrength:33.8,shieldRegeneration:2.48,kineticResistance:.25,thermalResistance:.8,plasmaResistance:.5,explosiveResistance:.5}}},{family:"explorationsuit",name:"Artemis Suit",primarySlots:1,secondarySlots:1,grades:{1:{symbol:"explorationsuit_class1",modificationSlots:0,shieldStrength:12,shieldRegeneration:.88,kineticResistance:-.7,thermalResistance:.39,plasmaResistance:-.2,explosiveResistance:0},2:{symbol:"explorationsuit_class2",modificationSlots:1,shieldStrength:14.7,shieldRegeneration:1.07,kineticResistance:-.42,thermalResistance:.5,plasmaResistance:0,explosiveResistance:.16},3:{symbol:"explorationsuit_class3",modificationSlots:2,shieldStrength:18,shieldRegeneration:1.32,kineticResistance:-.21,thermalResistance:.57,plasmaResistance:.14,explosiveResistance:.29},4:{symbol:"explorationsuit_class4",modificationSlots:3,shieldStrength:22.1,shieldRegeneration:1.62,kineticResistance:0,thermalResistance:.65,plasmaResistance:.29,explosiveResistance:.41},5:{symbol:"explorationsuit_class5",modificationSlots:4,shieldStrength:27,shieldRegeneration:1.98,kineticResistance:.14,thermalResistance:.7,plasmaResistance:.39,explosiveResistance:.5}}},{family:"flightsuit",name:"Flight Suit",primarySlots:0,secondarySlots:1,grades:{1:{symbol:"flightsuit",modificationSlots:0,shieldStrength:7.5,shieldRegeneration:.55,kineticResistance:-.7,thermalResistance:.39,plasmaResistance:-.2,explosiveResistance:0}}}];var SUITS=deepFreeze(suits_default);var BY_FAMILY=/* @__PURE__ */createKeyIndex(SUITS,"family");var BY_NAME=/* @__PURE__ */createKeyIndex(SUITS,"name");var BY_SYMBOL=/* @__PURE__ */Object.freeze(Object.fromEntries(SUITS.flatMap(suit=>Object.entries(suit.grades).map(([grade,stats])=>[stats.symbol.toLowerCase(),Object.freeze({suit:suit,grade:Number(grade)})]))));function getSuitByFamily(family){return findInKeyIndex(BY_FAMILY,family,"getSuitByFamily: family")}function getSuitByName(name){return findInKeyIndex(BY_NAME,name,"getSuitByName: name")}function getSuitBySymbol(symbol){const key=normalizeKey(symbol,"getSuitBySymbol: symbol");return Object.hasOwn(BY_SYMBOL,key)?BY_SYMBOL[key]:null}function getSuitGrade(suit,grade){assertEquipmentGrade(grade,"getSuitGrade");return suit.grades[String(grade)]??null}export{SUITS,getSuitByFamily,getSuitByName,getSuitBySymbol,getSuitGrade};//# sourceMappingURL=chunk-B7EYTZRK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/equipment/suits.ts"],"names":["assertEquipmentGrade","findInKeyIndex","normalizeKey","createKeyIndex","deepFreeze","suits_default","family","name","grades","symbol","SUITS","BY_FAMILY","BY_NAME","BY_SYMBOL","Object","freeze","fromEntries","flatMap","suit","entries","map","grade","stats","toLowerCase","Number","getSuitByFamily","getSuitByName","getSuitBySymbol","key","hasOwn","getSuitGrade","String"],"mappings":"O,m5GAyDO,IAAMU,MAAyBN,WAAWC,eAEjD,IAAMM,yBAA4BR,eAAeO,MAAO,UACxD,IAAME,uBAA0BT,eAAeO,MAAO,QACtD,IAAMG,yBAA4BC,OAAOC,OACrCD,OAAOE,YACHN,MAAMO,QAASC,MACXJ,OAAOK,QAAQD,KAAKV,QAAQY,IAAI,EAAEC,MAAOC,SAAW,CAChDA,MAAMb,OAAOc,cACbT,OAAOC,OAAO,CAAEG,UAAMG,MAAOG,OAAOH,cAoB7C,SAASI,gBAAgBnB,QAC5B,OAAOL,eAAeU,UAAWL,OAAQ,0BAC7C,CAgBO,SAASoB,cAAcnB,MAC1B,OAAON,eAAeW,QAASL,KAAM,sBACzC,CAgBO,SAASoB,gBACZlB,QAEA,MAAMmB,IAAM1B,aAAaO,OAAQ,2BACjC,OAAOK,OAAOe,OAAOhB,UAAWe,KAAOf,UAAUe,KAAQ,IAC7D,CAiBO,SAASE,aAAaZ,KAAYG,OACrCrB,qBAAqBqB,MAAO,gBAC5B,OAAOH,KAAKV,OAAOuB,OAAOV,SAAkC,IAChE,QAAAX,MAAAe,gBAAAC,cAAAC,gBAAAG"}
@@ -1 +1 @@
1
- import{permitLockedSystemForName}from"./chunk-BMT3U46U.js";import{permitLockedRegionForSystemName}from"./chunk-NLBUKXNV.js";import{requireStringIfPresent}from"./chunk-PKWVG2JY.js";function permitLockForSystemName(name){requireStringIfPresent(name,"permitLockForSystemName: name");const system=permitLockedSystemForName(name);if(system!==null)return{kind:"system",name:system.name,id64:system.id64};const region=permitLockedRegionForSystemName(name);return region===null?null:{kind:"region",name:region}}function isPermitLockedSystemName(name){requireStringIfPresent(name,"isPermitLockedSystemName: name");return permitLockForSystemName(name)!==null}export{isPermitLockedSystemName,permitLockForSystemName};//# sourceMappingURL=chunk-EBAHNZ36.js.map
1
+ import{permitLockedSystemForName}from"./chunk-BMT3U46U.js";import{permitLockedRegionForSystemName}from"./chunk-NLBUKXNV.js";import{requireStringIfPresent}from"./chunk-PKWVG2JY.js";function permitLockForSystemName(name){requireStringIfPresent(name,"permitLockForSystemName: name");const system=permitLockedSystemForName(name);if(system!==null)return{kind:"system",name:system.name,id64:system.id64};const region=permitLockedRegionForSystemName(name);return region===null?null:{kind:"region",name:region}}function isPermitLockedSystemName(name){requireStringIfPresent(name,"isPermitLockedSystemName: name");return permitLockForSystemName(name)!==null}export{isPermitLockedSystemName,permitLockForSystemName};//# sourceMappingURL=chunk-CIULJH3G.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/astro/permit-locks.ts"],"names":["permitLockedSystemForName","permitLockedRegionForSystemName","requireStringIfPresent","permitLockForSystemName","name","system","kind","id64","region","isPermitLockedSystemName"],"mappings":"O,6KA0HO,SAASG,wBAAwBC,MACpCF,uBAAuBE,KAAM,iCAC7B,MAAMC,OAASL,0BAA0BI,MACzC,GAAIC,SAAW,KAAM,MAAO,CAAEC,KAAM,SAAUF,KAAMC,OAAOD,KAAMG,KAAMF,OAAOE,MAE9E,MAAMC,OAASP,gCAAgCG,MAC/C,OAAOI,SAAW,KAAO,KAAO,CAAEF,KAAM,SAAUF,KAAMI,OAC5D,CAsBO,SAASC,yBAAyBL,MACrCF,uBAAuBE,KAAM,kCAC7B,OAAOD,wBAAwBC,QAAU,IAC7C,QAAAK,yBAAAN"}
1
+ {"version":3,"sources":["../src/astro/permit-locks.ts"],"names":["permitLockedSystemForName","permitLockedRegionForSystemName","requireStringIfPresent","permitLockForSystemName","name","system","kind","id64","region","isPermitLockedSystemName"],"mappings":"O,6KA0HO,SAASG,wBAAwBC,MACpCF,uBAAuBE,KAAM,iCAC7B,MAAMC,OAASL,0BAA0BI,MACzC,GAAIC,SAAW,KAAM,MAAO,CAAEC,KAAM,SAAUF,KAAMC,OAAOD,KAAMG,KAAMF,OAAOE,MAE9E,MAAMC,OAASP,gCAAgCG,MAC/C,OAAOI,SAAW,KAAO,KAAO,CAAEF,KAAM,SAAUF,KAAMI,OAC5D,CAuBO,SAASC,yBAAyBL,MACrCF,uBAAuBE,KAAM,kCAC7B,OAAOD,wBAAwBC,QAAU,IAC7C,QAAAK,yBAAAN"}
@@ -1 +1 @@
1
- import{findByRawKey}from"./chunk-BKWLI44T.js";import{deepFreeze}from"./chunk-DURKO7JU.js";var experimental_effect_costs_default={special_concordant_sequence:[{symbol:"FocusCrystals",name:"Focus Crystals",count:5},{symbol:"EmbeddedFirmware",name:"Modified Embedded Firmware",count:3},{symbol:"Zirconium",name:"Zirconium",count:1}],special_weapon_toughened:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"Vanadium",name:"Vanadium",count:3}],special_emissive_munitions:[{symbol:"MechanicalEquipment",name:"Mechanical Equipment",count:4},{symbol:"EmissionData",name:"Unexpected Emission Data",count:3},{symbol:"HeatExchangers",name:"Heat Exchangers",count:3},{symbol:"Manganese",name:"Manganese",count:3}],special_feedback_cascade_cooled:[{symbol:"SymmetricKeys",name:"Open Symmetric Keys",count:5},{symbol:"ShieldEmitters",name:"Shield Emitters",count:5},{symbol:"FilamentComposites",name:"Filament Composites",count:5}],special_weapon_efficient:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"EmbeddedFirmware",name:"Modified Embedded Firmware",count:1}],special_incendiary_rounds:[{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:5},{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"Sulphur",name:"Sulphur",count:5},{symbol:"PhaseAlloys",name:"Phase Alloys",count:3}],special_weapon_rateoffire:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"FocusCrystals",name:"Focus Crystals",count:4},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:2},{symbol:"ConfigurableComponents",name:"Configurable Components",count:2}],special_weapon_damage:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"MechanicalComponents",name:"Mechanical Components",count:3},{symbol:"Ruthenium",name:"Ruthenium",count:1}],special_plasma_slug_cooled:[{symbol:"HeatExchangers",name:"Heat Exchangers",count:3},{symbol:"EmbeddedFirmware",name:"Modified Embedded Firmware",count:2},{symbol:"RefinedFocusCrystals",name:"Refined Focus Crystals",count:2},{symbol:"Mercury",name:"Mercury",count:4}],special_weapon_lightweight:[{symbol:"SalvagedAlloys",name:"Salvaged Alloys",count:5},{symbol:"Carbon",name:"Carbon",count:5},{symbol:"Tin",name:"Tin",count:1}],special_super_penetrator_cooled:[{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:3},{symbol:"RefinedFocusCrystals",name:"Refined Focus Crystals",count:3},{symbol:"Zirconium",name:"Zirconium",count:3},{symbol:"ShieldDensityReports",name:"Untypical Shield Scans",count:5}],special_shieldbooster_explosive:[{symbol:"ShieldSoakAnalysis",name:"Inconsistent Shield Soak Analysis",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"HeatDispersionPlate",name:"Heat Dispersion Plate",count:3},{symbol:"Selenium",name:"Selenium",count:2}],special_shieldbooster_toughened:[{symbol:"ShieldCycleRecordings",name:"Distorted Shield Cycle Recordings",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"ShieldEmitters",name:"Shield Emitters",count:3}],special_shieldbooster_efficient:[{symbol:"ShieldSoakAnalysis",name:"Inconsistent Shield Soak Analysis",count:5},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:3},{symbol:"FocusCrystals",name:"Focus Crystals",count:3},{symbol:"Niobium",name:"Niobium",count:3}],special_shieldbooster_kinetic:[{symbol:"ScanArchives",name:"Unidentified Scan Archives",count:5},{symbol:"ShieldingSensors",name:"Shielding Sensors",count:3},{symbol:"ShieldPatternAnalysis",name:"Aberrant Shield Pattern Analysis",count:2}],special_shieldbooster_chunky:[{symbol:"ShieldDensityReports",name:"Untypical Shield Scans",count:3},{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"Cadmium",name:"Cadmium",count:2}],special_shieldbooster_thermic:[{symbol:"BulkScanData",name:"Anomalous Bulk Scan Data",count:5},{symbol:"ConductiveCeramics",name:"Conductive Ceramics",count:3},{symbol:"HeatVanes",name:"Heat Vanes",count:3}],special_armour_kinetic:[{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"HighDensityComposites",name:"High Density Composites",count:3},{symbol:"Zirconium",name:"Zirconium",count:3}],special_armour_chunky:[{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"MechanicalEquipment",name:"Mechanical Equipment",count:3},{symbol:"Molybdenum",name:"Molybdenum",count:2}],special_armour_explosive:[{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:5},{symbol:"HighDensityComposites",name:"High Density Composites",count:3},{symbol:"Niobium",name:"Niobium",count:1}],special_armour_thermic:[{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"HeatDispersionPlate",name:"Heat Dispersion Plate",count:3},{symbol:"ThermicAlloys",name:"Thermic Alloys",count:2}],special_powerplant_toughened:[{symbol:"GridResistors",name:"Grid Resistors",count:5},{symbol:"Vanadium",name:"Vanadium",count:3},{symbol:"FedProprietaryComposites",name:"Proprietary Composites",count:1}],special_powerplant_highcharge:[{symbol:"GridResistors",name:"Grid Resistors",count:5},{symbol:"Vanadium",name:"Vanadium",count:3},{symbol:"PolymerCapacitors",name:"Polymer Capacitors",count:1}],special_powerplant_lightweight:[{symbol:"GridResistors",name:"Grid Resistors",count:5},{symbol:"Vanadium",name:"Vanadium",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_powerplant_cooled:[{symbol:"GridResistors",name:"Grid Resistors",count:5},{symbol:"Vanadium",name:"Vanadium",count:3},{symbol:"HeatVanes",name:"Heat Vanes",count:1}],special_engine_toughened:[{symbol:"Iron",name:"Iron",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"FedProprietaryComposites",name:"Proprietary Composites",count:1}],special_engine_overloaded:[{symbol:"Iron",name:"Iron",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:1}],special_engine_haulage:[{symbol:"Iron",name:"Iron",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:1}],special_engine_lightweight:[{symbol:"Iron",name:"Iron",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_engine_cooled:[{symbol:"Iron",name:"Iron",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"HeatVanes",name:"Heat Vanes",count:1}],special_fsd_fuelcapacity:[{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"HyperspaceTrajectories",name:"Eccentric Hyperspace Trajectories",count:1}],special_fsd_toughened:[{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"ConfigurableComponents",name:"Configurable Components",count:1}],special_fsd_heavy:[{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"HyperspaceTrajectories",name:"Eccentric Hyperspace Trajectories",count:1}],special_fsd_lightweight:[{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_fsd_cooled:[{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"HeatVanes",name:"Heat Vanes",count:1},{symbol:"GridResistors",name:"Grid Resistors",count:3}],special_powerdistributor_capacity:[{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"Cadmium",name:"Cadmium",count:1}],special_powerdistributor_toughened:[{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"FedProprietaryComposites",name:"Proprietary Composites",count:1}],special_powerdistributor_efficient:[{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:1}],special_powerdistributor_lightweight:[{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_powerdistributor_fast:[{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:1}],special_hullreinforcement_kinetic:[{symbol:"TemperedAlloys",name:"Tempered Alloys",count:5},{symbol:"Zirconium",name:"Zirconium",count:3},{symbol:"Carbon",name:"Carbon",count:5},{symbol:"HighDensityComposites",name:"High Density Composites",count:3}],special_hullreinforcement_chunky:[{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"Molybdenum",name:"Molybdenum",count:3},{symbol:"Ruthenium",name:"Ruthenium",count:2}],special_hullreinforcement_explosive:[{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:5},{symbol:"ShieldingSensors",name:"Shielding Sensors",count:3},{symbol:"Tungsten",name:"Tungsten",count:3}],special_hullreinforcement_thermic:[{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:5},{symbol:"HeatDispersionPlate",name:"Heat Dispersion Plate",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1},{symbol:"Zinc",name:"Zinc",count:4}],special_shieldcell_oversized:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"Chromium",name:"Chromium",count:3},{symbol:"PolymerCapacitors",name:"Polymer Capacitors",count:1}],special_shieldcell_toughened:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"Chromium",name:"Chromium",count:3},{symbol:"Yttrium",name:"Yttrium",count:1}],special_shieldcell_efficient:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"Chromium",name:"Chromium",count:3},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:1}],special_shieldcell_gradual:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"Chromium",name:"Chromium",count:3},{symbol:"ConfigurableComponents",name:"Configurable Components",count:1}],special_shieldcell_lightweight:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"Chromium",name:"Chromium",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_shield_toughened:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"ConfigurableComponents",name:"Configurable Components",count:1}],special_shield_regenerative:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"CompoundShielding",name:"Compound Shielding",count:1}],special_shield_kinetic:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"DecodedEmissionData",name:"Decoded Emission Data",count:1}],special_shield_health:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:1}],special_shield_efficient:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:1}],special_shield_resistive:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"ShieldPatternAnalysis",name:"Aberrant Shield Pattern Analysis",count:1}],special_shield_lightweight:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_shield_thermic:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"HeatVanes",name:"Heat Vanes",count:1}],special_auto_loader:[{symbol:"MechanicalEquipment",name:"Mechanical Equipment",count:4},{symbol:"MechanicalComponents",name:"Mechanical Components",count:3},{symbol:"HighDensityComposites",name:"High Density Composites",count:3}],special_corrosive_shell:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"PrecipitatedAlloys",name:"Precipitated Alloys",count:4},{symbol:"Arsenic",name:"Arsenic",count:3}],special_blinding_shell:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"Manganese",name:"Manganese",count:4},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:5},{symbol:"MechanicalComponents",name:"Mechanical Components",count:5}],special_dispersal_field:[{symbol:"ConductiveComponents",name:"Conductive Components",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:5},{symbol:"ArchivedEmissionData",name:"Irregular Emission Data",count:5},{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5}],special_drag_munitions:[{symbol:"Carbon",name:"Carbon",count:5},{symbol:"GridResistors",name:"Grid Resistors",count:5},{symbol:"Molybdenum",name:"Molybdenum",count:2}],special_force_shell:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"Zinc",name:"Zinc",count:5},{symbol:"PhaseAlloys",name:"Phase Alloys",count:3},{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:3}],special_fsd_interrupt:[{symbol:"WakeSolutions",name:"Strange Wake Solutions",count:3},{symbol:"FSDTelemetry",name:"Anomalous FSD Telemetry",count:5},{symbol:"MechanicalEquipment",name:"Mechanical Equipment",count:5},{symbol:"ConfigurableComponents",name:"Configurable Components",count:3}],special_high_yield_shell:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:3},{symbol:"ChemicalManipulators",name:"Chemical Manipulators",count:3},{symbol:"Nickel",name:"Nickel",count:5}],special_distortion_field:[{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:5},{symbol:"ShieldCycleRecordings",name:"Distorted Shield Cycle Recordings",count:5},{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5}],special_choke_canister:[{symbol:"Sulphur",name:"Sulphur",count:5},{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"ChemicalDistillery",name:"Chemical Distillery",count:3},{symbol:"ElectrochemicalArrays",name:"Electrochemical Arrays",count:3}],special_mass_lock:[{symbol:"MechanicalEquipment",name:"Mechanical Equipment",count:5},{symbol:"HighDensityComposites",name:"High Density Composites",count:3},{symbol:"ShieldPatternAnalysis",name:"Aberrant Shield Pattern Analysis",count:3}],special_overload_munitions:[{symbol:"FilamentComposites",name:"Filament Composites",count:5},{symbol:"EncryptionCodes",name:"Tagged Encryption Codes",count:4},{symbol:"ShieldPatternAnalysis",name:"Aberrant Shield Pattern Analysis",count:2},{symbol:"Germanium",name:"Germanium",count:3}],special_penetrator_munitions:[{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:5},{symbol:"ElectrochemicalArrays",name:"Electrochemical Arrays",count:3},{symbol:"Zirconium",name:"Zirconium",count:3}],special_deep_cut_payload:[{symbol:"MechanicalComponents",name:"Mechanical Components",count:3},{symbol:"Tungsten",name:"Tungsten",count:3},{symbol:"BulkScanData",name:"Anomalous Bulk Scan Data",count:5},{symbol:"Selenium",name:"Selenium",count:3}],special_phasing_sequence:[{symbol:"FocusCrystals",name:"Focus Crystals",count:5},{symbol:"ShieldPatternAnalysis",name:"Aberrant Shield Pattern Analysis",count:3},{symbol:"Niobium",name:"Niobium",count:3},{symbol:"ConfigurableComponents",name:"Configurable Components",count:3}],special_plasma_slug:[{symbol:"HeatExchangers",name:"Heat Exchangers",count:3},{symbol:"EmbeddedFirmware",name:"Modified Embedded Firmware",count:2},{symbol:"RefinedFocusCrystals",name:"Refined Focus Crystals",count:2},{symbol:"Mercury",name:"Mercury",count:4}],special_radiant_canister:[{symbol:"Polonium",name:"Polonium",count:1},{symbol:"PhaseAlloys",name:"Phase Alloys",count:3},{symbol:"HeatDispersionPlate",name:"Heat Dispersion Plate",count:4}],special_regeneration_sequence:[{symbol:"RefinedFocusCrystals",name:"Refined Focus Crystals",count:3},{symbol:"ShieldingSensors",name:"Shielding Sensors",count:4},{symbol:"ShieldFrequencyData",name:"Peculiar Shield Frequency Data",count:1}],special_reverberating_cascade:[{symbol:"ConfigurableComponents",name:"Configurable Components",count:2},{symbol:"ScanDatabanks",name:"Classified Scan Databanks",count:3},{symbol:"FilamentComposites",name:"Filament Composites",count:4},{symbol:"Chromium",name:"Chromium",count:4}],special_scramble_spectrum:[{symbol:"CrystalShards",name:"Crystal Shards",count:5},{symbol:"ShieldDensityReports",name:"Untypical Shield Scans",count:3},{symbol:"ScrambledEmissionData",name:"Exceptional Scrambled Emission Data",count:5}],special_screening_shell:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"ShieldCycleRecordings",name:"Distorted Shield Cycle Recordings",count:5},{symbol:"ConsumerFirmware",name:"Modified Consumer Firmware",count:5},{symbol:"Niobium",name:"Niobium",count:3}],special_shiftlock_canister:[{symbol:"TemperedAlloys",name:"Tempered Alloys",count:5},{symbol:"WakeSolutions",name:"Strange Wake Solutions",count:3},{symbol:"SalvagedAlloys",name:"Salvaged Alloys",count:5}],special_smart_rounds:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:3},{symbol:"DecodedEmissionData",name:"Decoded Emission Data",count:3},{symbol:"ScanDatabanks",name:"Classified Scan Databanks",count:3}],special_super_penetrator:[{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:3},{symbol:"RefinedFocusCrystals",name:"Refined Focus Crystals",count:3},{symbol:"Zirconium",name:"Zirconium",count:3},{symbol:"ShieldDensityReports",name:"Untypical Shield Scans",count:5}],special_lock_breaker:[{symbol:"Selenium",name:"Selenium",count:5},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:3},{symbol:"AdaptiveEncryptors",name:"Adaptive Encryptors Capture",count:1}],special_thermal_cascade:[{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:4},{symbol:"HighDensityComposites",name:"High Density Composites",count:3},{symbol:"Phosphorus",name:"Phosphorus",count:5}],special_thermal_conduit:[{symbol:"HeatDispersionPlate",name:"Heat Dispersion Plate",count:5},{symbol:"Sulphur",name:"Sulphur",count:5},{symbol:"TemperedAlloys",name:"Tempered Alloys",count:5}],special_thermalshock:[{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"ConductiveComponents",name:"Conductive Components",count:3},{symbol:"Tungsten",name:"Tungsten",count:3}],special_thermal_vent:[{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:5},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:3},{symbol:"PrecipitatedAlloys",name:"Precipitated Alloys",count:3}]};var EXPERIMENTAL_EFFECT_COSTS=deepFreeze(experimental_effect_costs_default);function getExperimentalEffectCost(fdname){return findByRawKey(EXPERIMENTAL_EFFECT_COSTS,fdname,"getExperimentalEffectCost: fdname")}export{EXPERIMENTAL_EFFECT_COSTS,getExperimentalEffectCost};//# sourceMappingURL=chunk-SNADUQSJ.js.map
1
+ import{findByRawKey}from"./chunk-BKWLI44T.js";import{deepFreeze}from"./chunk-DURKO7JU.js";var experimental_effect_costs_default={special_concordant_sequence:[{symbol:"FocusCrystals",name:"Focus Crystals",count:5},{symbol:"EmbeddedFirmware",name:"Modified Embedded Firmware",count:3},{symbol:"Zirconium",name:"Zirconium",count:1}],special_weapon_toughened:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"Vanadium",name:"Vanadium",count:3}],special_emissive_munitions:[{symbol:"MechanicalEquipment",name:"Mechanical Equipment",count:4},{symbol:"EmissionData",name:"Unexpected Emission Data",count:3},{symbol:"HeatExchangers",name:"Heat Exchangers",count:3},{symbol:"Manganese",name:"Manganese",count:3}],special_feedback_cascade_cooled:[{symbol:"SymmetricKeys",name:"Open Symmetric Keys",count:5},{symbol:"ShieldEmitters",name:"Shield Emitters",count:5},{symbol:"FilamentComposites",name:"Filament Composites",count:5}],special_weapon_efficient:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"EmbeddedFirmware",name:"Modified Embedded Firmware",count:1}],special_incendiary_rounds:[{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:5},{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"Sulphur",name:"Sulphur",count:5},{symbol:"PhaseAlloys",name:"Phase Alloys",count:3}],special_weapon_rateoffire:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"FocusCrystals",name:"Focus Crystals",count:4},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:2},{symbol:"ConfigurableComponents",name:"Configurable Components",count:2}],special_weapon_damage:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"MechanicalComponents",name:"Mechanical Components",count:3},{symbol:"Ruthenium",name:"Ruthenium",count:1}],special_plasma_slug_cooled:[{symbol:"HeatExchangers",name:"Heat Exchangers",count:3},{symbol:"EmbeddedFirmware",name:"Modified Embedded Firmware",count:2},{symbol:"RefinedFocusCrystals",name:"Refined Focus Crystals",count:2},{symbol:"Mercury",name:"Mercury",count:4}],special_weapon_lightweight:[{symbol:"SalvagedAlloys",name:"Salvaged Alloys",count:5},{symbol:"Carbon",name:"Carbon",count:5},{symbol:"Tin",name:"Tin",count:1}],special_super_penetrator_cooled:[{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:3},{symbol:"RefinedFocusCrystals",name:"Refined Focus Crystals",count:3},{symbol:"Zirconium",name:"Zirconium",count:3},{symbol:"ShieldDensityReports",name:"Untypical Shield Scans",count:5}],special_shieldbooster_explosive:[{symbol:"ShieldSoakAnalysis",name:"Inconsistent Shield Soak Analysis",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"HeatDispersionPlate",name:"Heat Dispersion Plate",count:3},{symbol:"Selenium",name:"Selenium",count:2}],special_shieldbooster_toughened:[{symbol:"ShieldCycleRecordings",name:"Distorted Shield Cycle Recordings",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"ShieldEmitters",name:"Shield Emitters",count:3}],special_shieldbooster_efficient:[{symbol:"ShieldSoakAnalysis",name:"Inconsistent Shield Soak Analysis",count:5},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:3},{symbol:"FocusCrystals",name:"Focus Crystals",count:3},{symbol:"Niobium",name:"Niobium",count:3}],special_shieldbooster_kinetic:[{symbol:"ScanArchives",name:"Unidentified Scan Archives",count:5},{symbol:"ShieldingSensors",name:"Shielding Sensors",count:3},{symbol:"ShieldPatternAnalysis",name:"Aberrant Shield Pattern Analysis",count:2}],special_shieldbooster_chunky:[{symbol:"ShieldDensityReports",name:"Untypical Shield Scans",count:3},{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"Cadmium",name:"Cadmium",count:2}],special_shieldbooster_thermic:[{symbol:"BulkScanData",name:"Anomalous Bulk Scan Data",count:5},{symbol:"ConductiveCeramics",name:"Conductive Ceramics",count:3},{symbol:"HeatVanes",name:"Heat Vanes",count:3}],special_armour_kinetic:[{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"HighDensityComposites",name:"High Density Composites",count:3},{symbol:"Zirconium",name:"Zirconium",count:3}],special_armour_chunky:[{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"MechanicalEquipment",name:"Mechanical Equipment",count:3},{symbol:"Molybdenum",name:"Molybdenum",count:2}],special_armour_explosive:[{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:5},{symbol:"HighDensityComposites",name:"High Density Composites",count:3},{symbol:"Niobium",name:"Niobium",count:1}],special_armour_thermic:[{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"HeatDispersionPlate",name:"Heat Dispersion Plate",count:3},{symbol:"ThermicAlloys",name:"Thermic Alloys",count:2}],special_powerplant_toughened:[{symbol:"GridResistors",name:"Grid Resistors",count:5},{symbol:"Vanadium",name:"Vanadium",count:3},{symbol:"FedProprietaryComposites",name:"Proprietary Composites",count:1}],special_powerplant_highcharge:[{symbol:"GridResistors",name:"Grid Resistors",count:5},{symbol:"Vanadium",name:"Vanadium",count:3},{symbol:"PolymerCapacitors",name:"Polymer Capacitors",count:1}],special_powerplant_lightweight:[{symbol:"GridResistors",name:"Grid Resistors",count:5},{symbol:"Vanadium",name:"Vanadium",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_powerplant_cooled:[{symbol:"GridResistors",name:"Grid Resistors",count:5},{symbol:"Vanadium",name:"Vanadium",count:3},{symbol:"HeatVanes",name:"Heat Vanes",count:1}],special_engine_toughened:[{symbol:"Iron",name:"Iron",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"FedProprietaryComposites",name:"Proprietary Composites",count:1}],special_engine_overloaded:[{symbol:"Iron",name:"Iron",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:1}],special_engine_haulage:[{symbol:"Iron",name:"Iron",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:1}],special_engine_lightweight:[{symbol:"Iron",name:"Iron",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_engine_cooled:[{symbol:"Iron",name:"Iron",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:3},{symbol:"HeatVanes",name:"Heat Vanes",count:1}],special_fsd_fuelcapacity:[{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"HyperspaceTrajectories",name:"Eccentric Hyperspace Trajectories",count:1}],special_fsd_toughened:[{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"ConfigurableComponents",name:"Configurable Components",count:1}],special_fsd_heavy:[{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"HyperspaceTrajectories",name:"Eccentric Hyperspace Trajectories",count:1}],special_fsd_lightweight:[{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_fsd_cooled:[{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:3},{symbol:"HeatVanes",name:"Heat Vanes",count:1},{symbol:"GridResistors",name:"Grid Resistors",count:3}],special_powerdistributor_capacity:[{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"Cadmium",name:"Cadmium",count:1}],special_powerdistributor_toughened:[{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"FedProprietaryComposites",name:"Proprietary Composites",count:1}],special_powerdistributor_efficient:[{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:1}],special_powerdistributor_lightweight:[{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_powerdistributor_fast:[{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:1}],special_hullreinforcement_kinetic:[{symbol:"TemperedAlloys",name:"Tempered Alloys",count:5},{symbol:"Zirconium",name:"Zirconium",count:3},{symbol:"Carbon",name:"Carbon",count:5},{symbol:"HighDensityComposites",name:"High Density Composites",count:3}],special_hullreinforcement_chunky:[{symbol:"CompactComposites",name:"Compact Composites",count:5},{symbol:"Molybdenum",name:"Molybdenum",count:3},{symbol:"Ruthenium",name:"Ruthenium",count:2}],special_hullreinforcement_explosive:[{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:5},{symbol:"ShieldingSensors",name:"Shielding Sensors",count:3},{symbol:"Tungsten",name:"Tungsten",count:3}],special_hullreinforcement_thermic:[{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:5},{symbol:"HeatDispersionPlate",name:"Heat Dispersion Plate",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1},{symbol:"Zinc",name:"Zinc",count:4}],special_shieldcell_oversized:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"Chromium",name:"Chromium",count:3},{symbol:"PolymerCapacitors",name:"Polymer Capacitors",count:1}],special_shieldcell_toughened:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"Chromium",name:"Chromium",count:3},{symbol:"Yttrium",name:"Yttrium",count:1}],special_shieldcell_efficient:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"Chromium",name:"Chromium",count:3},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:1}],special_shieldcell_gradual:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"Chromium",name:"Chromium",count:3},{symbol:"ConfigurableComponents",name:"Configurable Components",count:1}],special_shieldcell_lightweight:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"Chromium",name:"Chromium",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_shield_toughened:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"ConfigurableComponents",name:"Configurable Components",count:1}],special_shield_regenerative:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"CompoundShielding",name:"Compound Shielding",count:1}],special_shield_kinetic:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"DecodedEmissionData",name:"Decoded Emission Data",count:1}],special_shield_health:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:1}],special_shield_efficient:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:1}],special_shield_resistive:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"ShieldPatternAnalysis",name:"Aberrant Shield Pattern Analysis",count:1}],special_shield_lightweight:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:1}],special_shield_thermic:[{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:3},{symbol:"HeatVanes",name:"Heat Vanes",count:1}],special_auto_loader:[{symbol:"MechanicalEquipment",name:"Mechanical Equipment",count:4},{symbol:"MechanicalComponents",name:"Mechanical Components",count:3},{symbol:"HighDensityComposites",name:"High Density Composites",count:3}],special_corrosive_shell:[{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",count:5},{symbol:"PrecipitatedAlloys",name:"Precipitated Alloys",count:4},{symbol:"Arsenic",name:"Arsenic",count:3}],special_blinding_shell:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"Manganese",name:"Manganese",count:4},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:5},{symbol:"MechanicalComponents",name:"Mechanical Components",count:5}],special_dispersal_field:[{symbol:"ConductiveComponents",name:"Conductive Components",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:5},{symbol:"ArchivedEmissionData",name:"Irregular Emission Data",count:5},{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",count:5}],special_drag_munitions:[{symbol:"Carbon",name:"Carbon",count:5},{symbol:"GridResistors",name:"Grid Resistors",count:5},{symbol:"Molybdenum",name:"Molybdenum",count:2}],special_force_shell:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"Zinc",name:"Zinc",count:5},{symbol:"PhaseAlloys",name:"Phase Alloys",count:3},{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:3}],special_fsd_interrupt:[{symbol:"WakeSolutions",name:"Strange Wake Solutions",count:3},{symbol:"FSDTelemetry",name:"Anomalous FSD Telemetry",count:5},{symbol:"MechanicalEquipment",name:"Mechanical Equipment",count:5},{symbol:"ConfigurableComponents",name:"Configurable Components",count:3}],special_high_yield_shell:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:3},{symbol:"ChemicalManipulators",name:"Chemical Manipulators",count:3},{symbol:"Nickel",name:"Nickel",count:5}],special_distortion_field:[{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:5},{symbol:"ShieldCycleRecordings",name:"Distorted Shield Cycle Recordings",count:5},{symbol:"DisruptedWakeEchoes",name:"Atypical Disrupted Wake Echoes",count:5}],special_choke_canister:[{symbol:"Sulphur",name:"Sulphur",count:5},{symbol:"Phosphorus",name:"Phosphorus",count:5},{symbol:"ChemicalDistillery",name:"Chemical Distillery",count:3},{symbol:"ElectrochemicalArrays",name:"Electrochemical Arrays",count:3}],special_mass_lock:[{symbol:"MechanicalEquipment",name:"Mechanical Equipment",count:5},{symbol:"HighDensityComposites",name:"High Density Composites",count:3},{symbol:"ShieldPatternAnalysis",name:"Aberrant Shield Pattern Analysis",count:3}],special_overload_munitions:[{symbol:"FilamentComposites",name:"Filament Composites",count:5},{symbol:"EncryptionCodes",name:"Tagged Encryption Codes",count:4},{symbol:"ShieldPatternAnalysis",name:"Aberrant Shield Pattern Analysis",count:2},{symbol:"Germanium",name:"Germanium",count:3}],special_penetrator_munitions:[{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",count:5},{symbol:"ElectrochemicalArrays",name:"Electrochemical Arrays",count:3},{symbol:"Zirconium",name:"Zirconium",count:3}],special_deep_cut_payload:[{symbol:"MechanicalComponents",name:"Mechanical Components",count:3},{symbol:"Tungsten",name:"Tungsten",count:3},{symbol:"BulkScanData",name:"Anomalous Bulk Scan Data",count:5},{symbol:"Selenium",name:"Selenium",count:3}],special_phasing_sequence:[{symbol:"FocusCrystals",name:"Focus Crystals",count:5},{symbol:"ShieldPatternAnalysis",name:"Aberrant Shield Pattern Analysis",count:3},{symbol:"Niobium",name:"Niobium",count:3},{symbol:"ConfigurableComponents",name:"Configurable Components",count:3}],special_plasma_slug:[{symbol:"HeatExchangers",name:"Heat Exchangers",count:3},{symbol:"EmbeddedFirmware",name:"Modified Embedded Firmware",count:2},{symbol:"RefinedFocusCrystals",name:"Refined Focus Crystals",count:2},{symbol:"Mercury",name:"Mercury",count:4}],special_radiant_canister:[{symbol:"Polonium",name:"Polonium",count:1},{symbol:"PhaseAlloys",name:"Phase Alloys",count:3},{symbol:"HeatDispersionPlate",name:"Heat Dispersion Plate",count:4}],special_regeneration_sequence:[{symbol:"RefinedFocusCrystals",name:"Refined Focus Crystals",count:3},{symbol:"ShieldingSensors",name:"Shielding Sensors",count:4},{symbol:"ShieldFrequencyData",name:"Peculiar Shield Frequency Data",count:1}],special_reverberating_cascade:[{symbol:"ConfigurableComponents",name:"Configurable Components",count:2},{symbol:"ScanDatabanks",name:"Classified Scan Databanks",count:3},{symbol:"FilamentComposites",name:"Filament Composites",count:4},{symbol:"Chromium",name:"Chromium",count:4}],special_scramble_spectrum:[{symbol:"CrystalShards",name:"Crystal Shards",count:5},{symbol:"ShieldDensityReports",name:"Untypical Shield Scans",count:3},{symbol:"ScrambledEmissionData",name:"Exceptional Scrambled Emission Data",count:5}],special_screening_shell:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"ShieldCycleRecordings",name:"Distorted Shield Cycle Recordings",count:5},{symbol:"ConsumerFirmware",name:"Modified Consumer Firmware",count:5},{symbol:"Niobium",name:"Niobium",count:3}],special_shiftlock_canister:[{symbol:"TemperedAlloys",name:"Tempered Alloys",count:5},{symbol:"WakeSolutions",name:"Strange Wake Solutions",count:3},{symbol:"SalvagedAlloys",name:"Salvaged Alloys",count:5}],special_smart_rounds:[{symbol:"MechanicalScrap",name:"Mechanical Scrap",count:5},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:3},{symbol:"DecodedEmissionData",name:"Decoded Emission Data",count:3},{symbol:"ScanDatabanks",name:"Classified Scan Databanks",count:3}],special_super_penetrator:[{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",count:3},{symbol:"RefinedFocusCrystals",name:"Refined Focus Crystals",count:3},{symbol:"Zirconium",name:"Zirconium",count:3},{symbol:"ShieldDensityReports",name:"Untypical Shield Scans",count:5}],special_lock_breaker:[{symbol:"Selenium",name:"Selenium",count:5},{symbol:"SecurityFirmware",name:"Security Firmware Patch",count:3},{symbol:"AdaptiveEncryptors",name:"Adaptive Encryptors Capture",count:1}],special_thermal_cascade:[{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",count:5},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",count:4},{symbol:"HighDensityComposites",name:"High Density Composites",count:3},{symbol:"Phosphorus",name:"Phosphorus",count:5}],special_thermal_conduit:[{symbol:"HeatDispersionPlate",name:"Heat Dispersion Plate",count:5},{symbol:"Sulphur",name:"Sulphur",count:5},{symbol:"TemperedAlloys",name:"Tempered Alloys",count:5}],special_thermalshock:[{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:5},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",count:3},{symbol:"ConductiveComponents",name:"Conductive Components",count:3},{symbol:"Tungsten",name:"Tungsten",count:3}],special_thermal_vent:[{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",count:5},{symbol:"ConductivePolymers",name:"Conductive Polymers",count:3},{symbol:"PrecipitatedAlloys",name:"Precipitated Alloys",count:3}]};var EXPERIMENTAL_EFFECT_COSTS=deepFreeze(experimental_effect_costs_default);function getExperimentalEffectCost(experimentalEffectSymbol){return findByRawKey(EXPERIMENTAL_EFFECT_COSTS,experimentalEffectSymbol,"getExperimentalEffectCost: experimentalEffectSymbol")}export{EXPERIMENTAL_EFFECT_COSTS,getExperimentalEffectCost};//# sourceMappingURL=chunk-CJK2IBI2.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/ships/experimental-effect-costs.ts"],"names":["findByRawKey","deepFreeze","experimental_effect_costs_default","EXPERIMENTAL_EFFECT_COSTS","getExperimentalEffectCost","fdname"],"mappings":"O,63mBAmCO,IAAMG,0BACTF,WAAWC,mCAuBR,SAASE,0BAA0BC,QACtC,OAAOL,aAAaG,0BAA2BE,OAAQ,oCAC3D,QAAAF,0BAAAC"}
1
+ {"version":3,"sources":["../src/ships/experimental-effect-costs.ts"],"names":["findByRawKey","deepFreeze","experimental_effect_costs_default","EXPERIMENTAL_EFFECT_COSTS","getExperimentalEffectCost","experimentalEffectSymbol"],"mappings":"O,63mBAmCO,IAAMG,0BACTF,WAAWC,mCAuBR,SAASE,0BACZC,0BAEA,OAAOL,aACHG,0BACAE,yBACA,sDAER,QAAAF,0BAAAC"}
@@ -1 +1 @@
1
- var percent=100;var STAT_LABELS=[{label:"Mass",field:"mass"},{label:"Integrity",field:"integrity"},{label:"PowerDraw",field:"powerDraw"},{label:"BootTime",field:"bootTime"},{label:"FSDOptimalMass",field:"optMass"},{label:"EngineOptimalMass",field:"optMass"},{label:"EngineMinimumMass",field:"minMass"},{label:"MaximumMass",field:"maxMass"},{label:"ShieldGenOptimalMass",field:"optMass"},{label:"ShieldGenMinimumMass",field:"minMass"},{label:"ShieldGenMaximumMass",field:"maxMass"},{label:"EngineOptPerformance",field:"optMultiplier",scale:percent},{label:"EngineMinPerformance",field:"minMultiplier",scale:percent},{label:"EngineMaxPerformance",field:"maxMultiplier",scale:percent},{label:"ShieldGenStrength",field:"optMultiplier",scale:percent},{label:"ShieldGenMinStrength",field:"minMultiplier",scale:percent},{label:"ShieldGenMaxStrength",field:"maxMultiplier",scale:percent},{label:"EngineHeatRate",field:"engineHeatRate"},{label:"FSDHeatRate",field:"fsdHeatRate"},{label:"MaxFuelPerJump",field:"maxFuel"},{label:"PowerCapacity",field:"powerCapacity"},{label:"HeatEfficiency",field:"heatEfficiency"},{label:"EnginesCapacity",field:"enginesCapacity"},{label:"EnginesRecharge",field:"enginesRecharge"},{label:"SystemsCapacity",field:"systemsCapacity"},{label:"SystemsRecharge",field:"systemsRecharge"},{label:"WeaponsCapacity",field:"weaponsCapacity"},{label:"WeaponsRecharge",field:"weaponsRecharge"},{label:"RefuelRate",field:"refuelRate"},{label:"FuelScoopRate",field:"refuelRate"},{label:"FuelCapacity",field:"fuelCapacity"},{label:"CargoCapacity",field:"cargoCapacity"},{label:"RegenRate",field:"shieldRegenRate"},{label:"BrokenRegenRate",field:"shieldBrokenRegenRate"},{label:"EnergyPerRegen",field:"distributorDraw"},{label:"ShieldBankReinforcement",field:"shieldBankReinforcement"},{label:"ShieldBankHeat",field:"shieldBankHeat"},{label:"ShieldBankHeat",field:"thermalLoad"},{label:"ShieldBankSpinUp",field:"shieldBankSpinUp"},{label:"ShieldBankDuration",field:"shieldBankDuration"},{label:"ScannerRange",field:"scannerRange"},{label:"SensorTargetScanAngle",field:"scanAngle"},{label:"MaxAngle",field:"scanAngle"},{label:"ScannerTimeToScan",field:"scanTime"},{label:"ProbeRadius",field:"probeRadius"},{label:"DSS_PatchRadius",field:"probeRadius"},{label:"FSDInterdictorFacingLimit",field:"interdictorFacingLimit"},{label:"FSDInterdictorRange",field:"interdictorRange"},{label:"DefenceModifierShieldMultiplier",field:"shieldBoost",scale:percent,multiplierBase:percent},{label:"DefenceModifierHealthMultiplier",field:"hullBoost",scale:percent,multiplierBase:percent},{label:"DefenceModifierHealthAddition",field:"hullReinforcement"},{label:"DefenceModifierShieldAddition",field:"shieldAddition"},{label:"GuardianModuleResistance",field:"guardianZoneResistance",capabilityValue:"Active"},{label:"KineticResistance",field:"kineticResistance",scale:percent,multiplierBase:-percent},{label:"ThermicResistance",field:"thermalResistance",scale:percent,multiplierBase:-percent},{label:"ExplosiveResistance",field:"explosiveResistance",scale:percent,multiplierBase:-percent},{label:"CausticResistance",field:"causticResistance",scale:percent,multiplierBase:-percent},{label:"DamageProtection",field:"moduleProtection",scale:percent},{label:"ModuleDefenceAbsorption",field:"moduleProtection",scale:percent},{label:"Damage",field:"damage"},{label:"Rounds",field:"roundsPerShot",defaultBase:1},{label:"RoundsPerShot",field:"roundsPerShot",defaultBase:1},{label:"RateOfFire",field:"rateOfFire"},{label:"BurstInterval",field:"burstInterval"},{label:"BurstSize",field:"burstRounds",defaultBase:1},{label:"BurstRateOfFire",field:"burstRateOfFire",defaultBase:1},{label:"AmmoClipSize",field:"clipSize"},{label:"AmmoMaximum",field:"ammoMaximum"},{label:"ReloadTime",field:"reloadTime"},{label:"DistributorDraw",field:"distributorDraw"},{label:"ThermalLoad",field:"thermalLoad"},{label:"ArmourPenetration",field:"armourPiercing"},{label:"Range",field:"maximumRange"},{label:"Range",field:"scannerRange"},{label:"MaximumRange",field:"maximumRange"},{label:"FalloffRange",field:"falloffRange"},{label:"DamageFalloffRange",field:"falloffRange"},{label:"ShotSpeed",field:"shotSpeed"},{label:"$Kinetic;",field:"damageDistribution",damageType:"kinetic",scale:percent,defaultBase:0},{label:"$Thermal;",field:"damageDistribution",damageType:"thermal",scale:percent,defaultBase:0},{label:"$Explosive;",field:"damageDistribution",damageType:"explosive",scale:percent,defaultBase:0},{label:"$Absolute;",field:"damageDistribution",damageType:"absolute",scale:percent,defaultBase:0},{label:"Jitter",field:"jitter",defaultBase:0}];var BY_LABEL=(()=>{const entries=/* @__PURE__ */new Map;for(const entry of STAT_LABELS){const forLabel=entries.get(entry.label)??[];forLabel.push(entry);entries.set(entry.label,forLabel)}return entries})();var LABELS_BY_FIELD=(()=>{const labels=/* @__PURE__ */new Map;for(const entry of STAT_LABELS){if(entry.damageType!==void 0)continue;const fieldLabels=labels.get(entry.field)??[];fieldLabels.push(entry.label);labels.set(entry.field,fieldLabels)}return labels})();function baseStats(stats){const base={};for(const{label:label,field:field,damageType:damageType,scale:scale,defaultBase:defaultBase}of STAT_LABELS){if(base[label]!==void 0)continue;const value=damageType===void 0?stats[field]:stats.damageDistribution?.[damageType];if(typeof value==="number")base[label]=value*(scale??1);else if(defaultBase!==void 0&&isWeapon(stats))base[label]=defaultBase}return base}function isWeapon(stats){return stats.damage!==void 0}function fieldForLabel(label,stats){const entries=BY_LABEL.get(label);if(!entries||entries.length===0)return null;if(stats&&entries.length>1){const carried=entries.find(entry=>typeof stats[entry.field]==="number");if(carried)return carried.field}return entries[0].field}function damageTypeForLabel(label){return BY_LABEL.get(label)?.[0]?.damageType??null}function labelsForDamageType(type){return STAT_LABELS.filter(entry=>entry.damageType===type).map(entry=>entry.label)}function scaleForLabel(label){return BY_LABEL.get(label)?.[0]?.scale??1}function multiplierBaseForLabel(label){return BY_LABEL.get(label)?.[0]?.multiplierBase??null}function capabilityValueForLabel(label){return BY_LABEL.get(label)?.[0]?.capabilityValue??null}function labelsForField(field){return LABELS_BY_FIELD.get(field)??[]}var PRECISE_VALUE=/* @__PURE__ */Symbol("precise engineering modifier value");function withPreciseModifierValue(modifier,value){Object.defineProperty(modifier,PRECISE_VALUE,{value:value});return modifier}function preciseModifierValue(modifier){return modifier[PRECISE_VALUE]??modifier.Value}var round6=n=>{const rounded=Math.round(n*1e6)/1e6;return Object.is(rounded,-0)?0:rounded};var FLOAT32_SCALED_BASE_LABELS=/* @__PURE__ */new Set(["EngineOptPerformance","EngineMinPerformance","EngineMaxPerformance","ShieldGenStrength","ShieldGenMinStrength","ShieldGenMaxStrength"]);function computeModifiers(base,grade,quality=1,experimental){if(!Number.isFinite(quality)||quality<0||quality>1){throw new RangeError(`computeModifiers: quality must be a finite number in [0, 1]`)}const f=Math.fround;const roll=f(quality);const byLabel=/* @__PURE__ */new Map;const add=(label,method,value,stated)=>{const list=byLabel.get(label)??[];list.push({method:method,value:value,stated:stated});byLabel.set(label,list)};const features="features"in grade?grade.features:grade;for(const feature of features){const rolledValue=roll===0?feature.min:roll===1?feature.max:feature.min+(feature.max-feature.min)*roll;const value=feature.method==="overwrite"?rolledValue:roll===0||roll===1?f(rolledValue):f(f(feature.min)+f(f(feature.max-feature.min)*roll));add(feature.label,feature.method,value,feature.min===feature.max||roll===0||roll===1)}const experimentalModifiers=experimental&&"modifiers"in experimental?experimental.modifiers:experimental;for(const e of experimentalModifiers??[]){add(e.label,e.method,e.method==="overwrite"?e.value:f(e.value),true)}const modifiers=[];let clipIsOverwritten=false;for(const[label,contributions]of byLabel){const capabilityValue=capabilityValueForLabel(label);if(capabilityValue!==null){modifiers.push({Label:label,ValueStr:capabilityValue});continue}const baseValue=base[label];const overwrite=contributions.find(c=>c.method==="overwrite");const multiplierBase=multiplierBaseForLabel(label);const original=baseValue===void 0?void 0:float32JournalValue(baseValue,multiplierBase,FLOAT32_SCALED_BASE_LABELS.has(label)?scaleForLabel(label):1);const baseless=original===void 0&&(multiplierBase!==null||overwrite!==void 0||contributions.some(c=>c.method==="additive"));if(original===void 0&&!baseless)continue;let value=original??0;if(multiplierBase===null){for(const c of contributions){if(c.method==="multiplicative")value=f(value*f(1+f(c.value)))}for(const c of contributions){if(c.method==="additive")value=f(value+f(c.value))}}else{let factor=f(1+value/multiplierBase);for(const c of contributions){if(c.method==="overwrite")continue;factor=f(factor*f(1+f(f(c.value)*100/multiplierBase)))}value=f(f(factor-1)*multiplierBase)}if(overwrite)value=overwrite.value;if(label==="AmmoClipSize"){if(overwrite)clipIsOverwritten=true;else if(original!==void 0&&contributions.every(c=>c.stated)){value=snapToStatedWhole(value,original)}}else if(label==="AmmoMaximum"&&!overwrite){value=Math.round(value)}modifiers.push(withPreciseModifierValue({Label:label,Value:round6(value),...original===void 0&&multiplierBase===null?{}:{OriginalValue:round6(original??0)}},value))}const resolved=resolveFalloffFromRange(modifiers,base);return clipIsOverwritten?resolved:roundClipToWholeBursts(resolved,base)}function float32JournalValue(value,multiplierBase,scale){if(multiplierBase===null){return Math.fround(Math.fround(value/scale)*scale)}const factor=Math.fround(1+value/multiplierBase);return Math.fround(Math.fround(factor-1)*multiplierBase)}function roundClipToWholeBursts(modifiers,base){const clip=modifiers.find(m=>m.Label==="AmmoClipSize");if(!clip?.Value||clip.Value===clip.OriginalValue)return modifiers;const burst=modifiers.find(m=>m.Label==="BurstSize")?.Value||base["BurstSize"]||1;const rounded=Math.ceil(clip.Value/burst)*burst;if(rounded===clip.Value)return modifiers;return modifiers.map(m=>m===clip?{...m,Value:rounded}:m)}function snapToStatedWhole(value,base){const whole=Math.round(value);return Math.abs(value-whole)<=Math.abs(base)*5e-4?whole:value}function resolveFalloffFromRange(modifiers,base){const falloff=modifiers.find(m=>m.Label==="FalloffRange");if(!falloff||falloff.Value===void 0)return modifiers;const range=modifiers.find(m=>m.Label==="Range"||m.Label==="MaximumRange")?.Value??base["Range"]??base["MaximumRange"];if(range===void 0){return falloff.Value<=1?modifiers.filter(m=>m!==falloff):modifiers}if(falloff.Value<=1||falloff.Value>range){return modifiers.map(m=>m===falloff?{...m,Value:round6(range)}:m)}return modifiers}function rollsForGrade(grade){if(!Number.isInteger(grade)||grade<1||grade>5){throw new RangeError(`rollsForGrade: grade must be an integer in [1, 5]`)}return grade}function sumMaterials(...lists){const totals=/* @__PURE__ */new Map;for(const list of lists){for(const material of list){const key=material.symbol.toLowerCase();const previous=totals.get(key);totals.set(key,{symbol:previous?.symbol??material.symbol,name:previous?.name??material.name,count:(previous?.count??0)+material.count})}}return[...totals.values()]}export{baseStats,capabilityValueForLabel,computeModifiers,damageTypeForLabel,fieldForLabel,labelsForDamageType,labelsForField,preciseModifierValue,rollsForGrade,scaleForLabel,sumMaterials};//# sourceMappingURL=chunk-DYPOL3CI.js.map
1
+ var percent=100;var STAT_LABELS=[{label:"Mass",field:"mass"},{label:"Integrity",field:"integrity"},{label:"PowerDraw",field:"powerDraw"},{label:"BootTime",field:"bootTime"},{label:"FSDOptimalMass",field:"optMass"},{label:"EngineOptimalMass",field:"optMass"},{label:"EngineMinimumMass",field:"minMass"},{label:"MaximumMass",field:"maxMass"},{label:"ShieldGenOptimalMass",field:"optMass"},{label:"ShieldGenMinimumMass",field:"minMass"},{label:"ShieldGenMaximumMass",field:"maxMass"},{label:"EngineOptPerformance",field:"optMultiplier",scale:percent},{label:"EngineMinPerformance",field:"minMultiplier",scale:percent},{label:"EngineMaxPerformance",field:"maxMultiplier",scale:percent},{label:"ShieldGenStrength",field:"optMultiplier",scale:percent},{label:"ShieldGenMinStrength",field:"minMultiplier",scale:percent},{label:"ShieldGenMaxStrength",field:"maxMultiplier",scale:percent},{label:"EngineHeatRate",field:"engineHeatRate"},{label:"FSDHeatRate",field:"fsdHeatRate"},{label:"MaxFuelPerJump",field:"maxFuel"},{label:"PowerCapacity",field:"powerCapacity"},{label:"HeatEfficiency",field:"heatEfficiency"},{label:"EnginesCapacity",field:"enginesCapacity"},{label:"EnginesRecharge",field:"enginesRecharge"},{label:"SystemsCapacity",field:"systemsCapacity"},{label:"SystemsRecharge",field:"systemsRecharge"},{label:"WeaponsCapacity",field:"weaponsCapacity"},{label:"WeaponsRecharge",field:"weaponsRecharge"},{label:"RefuelRate",field:"refuelRate"},{label:"FuelScoopRate",field:"refuelRate"},{label:"FuelCapacity",field:"fuelCapacity"},{label:"CargoCapacity",field:"cargoCapacity"},{label:"RegenRate",field:"shieldRegenRate"},{label:"BrokenRegenRate",field:"shieldBrokenRegenRate"},{label:"EnergyPerRegen",field:"distributorDraw"},{label:"ShieldBankReinforcement",field:"shieldBankReinforcement"},{label:"ShieldBankHeat",field:"shieldBankHeat"},{label:"ShieldBankHeat",field:"thermalLoad"},{label:"ShieldBankSpinUp",field:"shieldBankSpinUp"},{label:"ShieldBankDuration",field:"shieldBankDuration"},{label:"ScannerRange",field:"scannerRange"},{label:"SensorTargetScanAngle",field:"scanAngle"},{label:"MaxAngle",field:"scanAngle"},{label:"ScannerTimeToScan",field:"scanTime"},{label:"ProbeRadius",field:"probeRadius"},{label:"DSS_PatchRadius",field:"probeRadius"},{label:"FSDInterdictorFacingLimit",field:"interdictorFacingLimit"},{label:"FSDInterdictorRange",field:"interdictorRange"},{label:"DefenceModifierShieldMultiplier",field:"shieldBoost",scale:percent,multiplierBase:percent},{label:"DefenceModifierHealthMultiplier",field:"hullBoost",scale:percent,multiplierBase:percent},{label:"DefenceModifierHealthAddition",field:"hullReinforcement"},{label:"DefenceModifierShieldAddition",field:"shieldAddition"},{label:"GuardianModuleResistance",field:"guardianZoneResistance",capabilityValue:"Active"},{label:"KineticResistance",field:"kineticResistance",scale:percent,multiplierBase:-percent},{label:"ThermicResistance",field:"thermalResistance",scale:percent,multiplierBase:-percent},{label:"ExplosiveResistance",field:"explosiveResistance",scale:percent,multiplierBase:-percent},{label:"CausticResistance",field:"causticResistance",scale:percent,multiplierBase:-percent},{label:"DamageProtection",field:"moduleProtection",scale:percent},{label:"ModuleDefenceAbsorption",field:"moduleProtection",scale:percent},{label:"Damage",field:"damage"},{label:"Rounds",field:"roundsPerShot",defaultBase:1},{label:"RoundsPerShot",field:"roundsPerShot",defaultBase:1},{label:"RateOfFire",field:"rateOfFire"},{label:"BurstInterval",field:"burstInterval"},{label:"BurstSize",field:"burstRounds",defaultBase:1},{label:"BurstRateOfFire",field:"burstRateOfFire",defaultBase:1},{label:"AmmoClipSize",field:"clipSize"},{label:"AmmoMaximum",field:"ammoMaximum"},{label:"ReloadTime",field:"reloadTime"},{label:"DistributorDraw",field:"distributorDraw"},{label:"ThermalLoad",field:"thermalLoad"},{label:"ArmourPenetration",field:"armourPiercing"},{label:"Range",field:"maximumRange"},{label:"Range",field:"scannerRange"},{label:"MaximumRange",field:"maximumRange"},{label:"FalloffRange",field:"falloffRange"},{label:"DamageFalloffRange",field:"falloffRange"},{label:"ShotSpeed",field:"shotSpeed"},{label:"$Kinetic;",field:"damageDistribution",damageType:"kinetic",scale:percent,defaultBase:0},{label:"$Thermal;",field:"damageDistribution",damageType:"thermal",scale:percent,defaultBase:0},{label:"$Explosive;",field:"damageDistribution",damageType:"explosive",scale:percent,defaultBase:0},{label:"$Absolute;",field:"damageDistribution",damageType:"absolute",scale:percent,defaultBase:0},{label:"Jitter",field:"jitter",defaultBase:0}];var BY_LABEL=(()=>{const entries=/* @__PURE__ */new Map;for(const entry of STAT_LABELS){const forLabel=entries.get(entry.label)??[];forLabel.push(entry);entries.set(entry.label,forLabel)}return entries})();var LABELS_BY_FIELD=(()=>{const labels=/* @__PURE__ */new Map;for(const entry of STAT_LABELS){if(entry.damageType!==void 0)continue;const fieldLabels=labels.get(entry.field)??[];fieldLabels.push(entry.label);labels.set(entry.field,fieldLabels)}return labels})();function baseStats(stats){const base={};for(const{label:label,field:field,damageType:damageType,scale:scale,defaultBase:defaultBase}of STAT_LABELS){if(base[label]!==void 0)continue;const value=damageType===void 0?stats[field]:stats.damageDistribution?.[damageType];if(typeof value==="number")base[label]=value*(scale??1);else if(defaultBase!==void 0&&isWeapon(stats))base[label]=defaultBase}return base}function isWeapon(stats){return stats.damage!==void 0}function fieldForLabel(label,stats){const entries=BY_LABEL.get(label);if(!entries||entries.length===0)return null;if(stats&&entries.length>1){const carried=entries.find(entry=>typeof stats[entry.field]==="number");if(carried)return carried.field}return entries[0].field}function damageTypeForLabel(label){return BY_LABEL.get(label)?.[0]?.damageType??null}function labelsForDamageType(type){return STAT_LABELS.filter(entry=>entry.damageType===type).map(entry=>entry.label)}function scaleForLabel(label){return BY_LABEL.get(label)?.[0]?.scale??1}function multiplierBaseForLabel(label){return BY_LABEL.get(label)?.[0]?.multiplierBase??null}function capabilityValueForLabel(label){return BY_LABEL.get(label)?.[0]?.capabilityValue??null}function labelsForField(field){return LABELS_BY_FIELD.get(field)??[]}var PRECISE_VALUE=/* @__PURE__ */Symbol("precise engineering modifier value");function withPreciseModifierValue(modifier,value){Object.defineProperty(modifier,PRECISE_VALUE,{value:value});return modifier}function preciseModifierValue(modifier){return modifier[PRECISE_VALUE]??modifier.Value}var round6=n=>{const rounded=Math.round(n*1e6)/1e6;return Object.is(rounded,-0)?0:rounded};var FLOAT32_SCALED_BASE_LABELS=/* @__PURE__ */new Set(["EngineOptPerformance","EngineMinPerformance","EngineMaxPerformance","ShieldGenStrength","ShieldGenMinStrength","ShieldGenMaxStrength"]);function computeModifiers(base,grade,quality=1,experimental){if(!Number.isFinite(quality)||quality<0||quality>1){throw new RangeError(`computeModifiers: quality must be a finite number in [0, 1]`)}const f=Math.fround;const roll=f(quality);const byLabel=/* @__PURE__ */new Map;const add=(label,method,value,stated)=>{const list=byLabel.get(label)??[];list.push({method:method,value:value,stated:stated});byLabel.set(label,list)};const features="features"in grade?grade.features:grade;for(const feature of features){const rolledValue=roll===0?feature.min:roll===1?feature.max:feature.min+(feature.max-feature.min)*roll;const value=feature.method==="overwrite"?rolledValue:roll===0||roll===1?f(rolledValue):f(f(feature.min)+f(f(feature.max-feature.min)*roll));add(feature.label,feature.method,value,feature.min===feature.max||roll===0||roll===1)}const experimentalModifiers=experimental&&"modifiers"in experimental?experimental.modifiers:experimental;for(const e of experimentalModifiers??[]){add(e.label,e.method,e.method==="overwrite"?e.value:f(e.value),true)}const modifiers=[];let clipIsOverwritten=false;for(const[label,contributions]of byLabel){const capabilityValue=capabilityValueForLabel(label);if(capabilityValue!==null){modifiers.push({Label:label,ValueStr:capabilityValue});continue}const baseValue=base[label];const overwrite=contributions.find(c=>c.method==="overwrite");const multiplierBase=multiplierBaseForLabel(label);const original=baseValue===void 0?void 0:float32JournalValue(baseValue,multiplierBase,FLOAT32_SCALED_BASE_LABELS.has(label)?scaleForLabel(label):1);const baseless=original===void 0&&(multiplierBase!==null||overwrite!==void 0||contributions.some(c=>c.method==="additive"));if(original===void 0&&!baseless)continue;let value=original??0;if(multiplierBase===null){for(const c of contributions){if(c.method==="multiplicative")value=f(value*f(1+f(c.value)))}for(const c of contributions){if(c.method==="additive")value=f(value+f(c.value))}}else{let factor=f(1+value/multiplierBase);for(const c of contributions){if(c.method==="overwrite")continue;factor=f(factor*f(1+f(f(c.value)*100/multiplierBase)))}value=f(f(factor-1)*multiplierBase)}if(overwrite)value=overwrite.value;if(label==="AmmoClipSize"){if(overwrite)clipIsOverwritten=true;else if(original!==void 0&&contributions.every(c=>c.stated)){value=snapToStatedWhole(value,original)}}else if(label==="AmmoMaximum"&&!overwrite){value=Math.round(value)}modifiers.push(withPreciseModifierValue({Label:label,Value:round6(value),...original===void 0&&multiplierBase===null?{}:{OriginalValue:round6(original??0)}},value))}const resolved=resolveFalloffFromRange(modifiers,base);return clipIsOverwritten?resolved:roundClipToWholeBursts(resolved,base)}function float32JournalValue(value,multiplierBase,scale){if(multiplierBase===null){return Math.fround(Math.fround(value/scale)*scale)}const factor=Math.fround(1+value/multiplierBase);return Math.fround(Math.fround(factor-1)*multiplierBase)}function roundClipToWholeBursts(modifiers,base){const clip=modifiers.find(m=>m.Label==="AmmoClipSize");if(!clip?.Value||clip.Value===clip.OriginalValue)return modifiers;const burst=modifiers.find(m=>m.Label==="BurstSize")?.Value||base["BurstSize"]||1;const rounded=Math.ceil(clip.Value/burst)*burst;if(rounded===clip.Value)return modifiers;return modifiers.map(m=>m===clip?{...m,Value:rounded}:m)}function snapToStatedWhole(value,base){const whole=Math.round(value);return Math.abs(value-whole)<=Math.abs(base)*5e-4?whole:value}function resolveFalloffFromRange(modifiers,base){const falloff=modifiers.find(m=>m.Label==="FalloffRange");if(!falloff||falloff.Value===void 0)return modifiers;const range=modifiers.find(m=>m.Label==="Range"||m.Label==="MaximumRange")?.Value??base["Range"]??base["MaximumRange"];if(range===void 0){return falloff.Value<=1?modifiers.filter(m=>m!==falloff):modifiers}if(falloff.Value<=1||falloff.Value>range){return modifiers.map(m=>m===falloff?{...m,Value:round6(range)}:m)}return modifiers}function sumMaterials(...lists){const totals=/* @__PURE__ */new Map;for(const list of lists){for(const material of list){const key=material.symbol.toLowerCase();const previous=totals.get(key);totals.set(key,{symbol:previous?.symbol??material.symbol,name:previous?.name??material.name,count:(previous?.count??0)+material.count})}}return[...totals.values()]}export{baseStats,capabilityValueForLabel,computeModifiers,damageTypeForLabel,fieldForLabel,labelsForDamageType,labelsForField,preciseModifierValue,scaleForLabel,sumMaterials};//# sourceMappingURL=chunk-CJQ37JII.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/ships/internal/module-stat-labels.ts","../src/ships/internal/engineering-precision.ts","../src/ships/engineering.ts"],"names":["percent","STAT_LABELS","label","field","scale","multiplierBase","capabilityValue","defaultBase","damageType","BY_LABEL","entries","Map","entry","forLabel","get","push","set","LABELS_BY_FIELD","labels","fieldLabels","baseStats","stats","base","value","damageDistribution","isWeapon","damage","fieldForLabel","length","carried","find","damageTypeForLabel","labelsForDamageType","type","filter","map","scaleForLabel","multiplierBaseForLabel","capabilityValueForLabel","labelsForField","PRECISE_VALUE","Symbol","withPreciseModifierValue","modifier","Object","defineProperty","preciseModifierValue","Value","round6","n","rounded","Math","round","is","FLOAT32_SCALED_BASE_LABELS","Set","computeModifiers","grade","quality","experimental","Number","isFinite","RangeError","f","fround","roll","byLabel","add","method","stated","list","features","feature","rolledValue","min","max","experimentalModifiers","modifiers","e","clipIsOverwritten","contributions","Label","ValueStr","baseValue","overwrite","c","original","float32JournalValue","has","baseless","some","factor","every","snapToStatedWhole","OriginalValue","resolved","resolveFalloffFromRange","roundClipToWholeBursts","clip","m","burst","ceil","whole","abs","falloff","range","sumMaterials","lists","totals","material","key","symbol","toLowerCase","previous","name","count","values"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ var PRIORITY_GROUPS=5;var EPSILON=1e-9;function bandIndex(priority){if(priority===void 0||!Number.isFinite(priority))return 0;return Math.min(PRIORITY_GROUPS,Math.max(1,Math.trunc(priority)))-1}function powerBudget(available,consumers){if(!Number.isFinite(available)||available<0){throw new RangeError("powerBudget: available power must be a finite non-negative number")}const retractedByBand=Array(PRIORITY_GROUPS).fill(0);const deployedByBand=Array(PRIORITY_GROUPS).fill(0);for(const consumer of consumers){if(!Number.isFinite(consumer.draw)||consumer.draw<0){throw new RangeError("powerBudget: consumer draw must be a finite non-negative number")}}const consumerResults=consumers.map(consumer=>Object.freeze({...consumer.label===void 0?{}:{label:consumer.label},...consumer.symbol===void 0?{}:{symbol:consumer.symbol},draw:consumer.draw,enabled:consumer.enabled!==false,priority:bandIndex(consumer.priority)+1,deployedOnly:consumer.deployedOnly??false}));for(const consumer of consumers){if(consumer.enabled===false)continue;const draw=consumer.draw;if(draw===0)continue;const index=bandIndex(consumer.priority);if(consumer.deployedOnly)deployedByBand[index]+=draw;else retractedByBand[index]+=draw}const bands=[];let retractedTotal=0;let deployedTotal=0;for(let i=0;i<PRIORITY_GROUPS;i++){const retracted=retractedByBand[i];const deployed=deployedByBand[i];retractedTotal+=retracted;deployedTotal+=retracted+deployed;bands.push(Object.freeze({priority:i+1,retracted:retracted,deployed:retracted+deployed,retractedTotal:retractedTotal,deployedTotal:deployedTotal,poweredRetracted:retractedTotal<=available+EPSILON,poweredDeployed:deployedTotal<=available+EPSILON}))}return Object.freeze({available:available,retracted:retractedTotal,deployed:deployedTotal,headroom:available-deployedTotal,utilisation:available>0?deployedTotal/available:deployedTotal>0?Infinity:0,withinBudget:deployedTotal<=available+EPSILON,bands:Object.freeze(bands),consumers:Object.freeze(consumerResults)})}export{powerBudget};//# sourceMappingURL=chunk-D6YEHR5S.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/ships/power.ts"],"names":["PRIORITY_GROUPS","EPSILON","bandIndex","priority","Number","isFinite","Math","min","max","trunc","powerBudget","available","consumers","RangeError","retractedByBand","Array","fill","deployedByBand","consumer","draw","consumerResults","map","Object","freeze","label","symbol","enabled","deployedOnly","index","bands","retractedTotal","deployedTotal","i","retracted","deployed","push","poweredRetracted","poweredDeployed","headroom","utilisation","Infinity","withinBudget"],"mappings":"AAoCA,IAAMA,gBAAkB,EAOxB,IAAMC,QAAU,KAwGhB,SAASC,UAAUC,UACf,GAAIA,gBAAa,IAAcC,OAAOC,SAASF,UAAW,OAAO,EACjE,OAAOG,KAAKC,IAAIP,gBAAiBM,KAAKE,IAAI,EAAGF,KAAKG,MAAMN,YAAc,CAC1E,CA+BO,SAASO,YAAYC,UAAmBC,WAC3C,IAAKR,OAAOC,SAASM,YAAcA,UAAY,EAAG,CAC9C,MAAM,IAAIE,WAAW,oEACzB,CAEA,MAAMC,gBAAkBC,MAAcf,iBAAiBgB,KAAK,GAC5D,MAAMC,eAAiBF,MAAcf,iBAAiBgB,KAAK,GAC3D,IAAA,MAAWE,YAAYN,UAAW,CAC9B,IAAKR,OAAOC,SAASa,SAASC,OAASD,SAASC,KAAO,EAAG,CACtD,MAAM,IAAIN,WAAW,kEACzB,CACJ,CACA,MAAMO,gBAAyCR,UAAUS,IAAKH,UAC1DI,OAAOC,OAAO,IACNL,SAASM,aAAU,EAAY,CAAA,EAAK,CAAEA,MAAON,SAASM,UACtDN,SAASO,cAAW,EAAY,CAAA,EAAK,CAAEA,OAAQP,SAASO,QAC5DN,KAAMD,SAASC,KACfO,QAASR,SAASQ,UAAY,MAC9BvB,SAAUD,UAAUgB,SAASf,UAAY,EACzCwB,aAAcT,SAASS,cAAgB,SAI/C,IAAA,MAAWT,YAAYN,UAAW,CAC9B,GAAIM,SAASQ,UAAY,MAAO,SAChC,MAAMP,KAAOD,SAASC,KACtB,GAAIA,OAAS,EAAG,SAChB,MAAMS,MAAQ1B,UAAUgB,SAASf,UACjC,GAAIe,SAASS,aAAcV,eAAeW,QAAWT,UAChDL,gBAAgBc,QAAWT,IACpC,CAEA,MAAMU,MAAqB,GAC3B,IAAIC,eAAiB,EACrB,IAAIC,cAAgB,EACpB,IAAA,IAASC,EAAI,EAAGA,EAAIhC,gBAAiBgC,IAAK,CACtC,MAAMC,UAAYnB,gBAAgBkB,GAClC,MAAME,SAAWjB,eAAee,GAChCF,gBAAkBG,UAElBF,eAAiBE,UAAYC,SAC7BL,MAAMM,KACFb,OAAOC,OAAO,CACVpB,SAAU6B,EAAI,EACdC,oBAEAC,SAAUD,UAAYC,SACtBJ,8BACAC,4BACAK,iBAAkBN,gBAAkBnB,UAAYV,QAChDoC,gBAAiBN,eAAiBpB,UAAYV,UAG1D,CAEA,OAAOqB,OAAOC,OAAO,CACjBZ,oBACAsB,UAAWH,eACXI,SAAUH,cACVO,SAAU3B,UAAYoB,cACtBQ,YAAa5B,UAAY,EAAIoB,cAAgBpB,UAAYoB,cAAgB,EAAIS,SAAW,EACxFC,aAAcV,eAAiBpB,UAAYV,QAC3C4B,MAAOP,OAAOC,OAAOM,OACrBjB,UAAWU,OAAOC,OAAOH,kBAEjC,QAAAV"}
@@ -1 +1 @@
1
- import{getLocalizedName,createLocalizedNameIndex}from"./chunk-RVIYOHYF.js";var blueprint_names_default={AbrasionBlaster_FarReaching:{en:"Abrasion Blaster — Far-reaching",de:"Abrasionsblaster mit großer Reichweite",es:"Destructor de abrasión de largo alcance",fr:"Surfaceur abrasif longue portée",pt:"Detonador de abrasão de longo alcance",ru:"Абразивный бластер с увеличенной дальностью"},AFM_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},Armour_Advanced:{en:"Lightweight",de:"Leichte Panzerung",es:"Blindaje ligero",fr:"Blindage léger",pt:"Blindagem Leve",ru:"Броня из легких сплавов"},Armour_Explosive:{en:"Blast resistant",de:"Detonationsresistente Panzerung",es:"Blindaje resistente a explosiones",fr:"Blindage anti-explosions",pt:"Blindagem de resistência a Explosões",ru:"Взрывостойкая обшивка"},Armour_HeavyDuty:{en:"Heavy duty",de:"Schwere Panzerung",es:"Blindaje de alta resistencia",fr:"Blindage lourd",pt:"Blindagem Pesada",ru:"Толстая броня"},Armour_Kinetic:{en:"Kinetic resistant",de:"Kinetikresistente Panzerung",es:"Blindaje de resistencia cinética",fr:"Blindage anti-cinétique",pt:"Blindagem de Resistência Cinética",ru:"Противокинетическая броня"},Armour_Thermic:{en:"Thermal resistant",de:"Thermalresistente Panzerung",es:"Blindaje de resistencia térmica",fr:"Blindage antithermique",pt:"Blindagem de Resistência Térmica",ru:"Термостойкая броня"},BeamLaser_ThermalPlasmaConversion:{en:"Plasma conversion",de:"Plasmaumwandlung",es:"Conversión de plasma",fr:"Conversion de plasma",pt:"Conversão de plasma",ru:"Преобразование в плазму"},BurstLaser_ThermalPlasmaConversion:{en:"Plasma conversion",de:"Plasmaumwandlung",es:"Conversión de plasma",fr:"Conversion de plasma",pt:"Conversão de plasma",ru:"Преобразование в плазму"},CargoRack_IncreasedCapacity:{en:"Expanded Cargo Rack",de:"Erweitertes Frachtgestell",es:"Bodega de carga expandida",fr:"Compartiment de soute étendu",pt:"Estante de carga estendida",ru:"Большой грузовой стеллаж"},CargoRackS5C1_Extended:{en:"Cargo Rack — Extended",de:"Erweitertes Frachtgestell",es:"Bodega de carga extendida",fr:"Compartiment soute agrandi",pt:"Estante de carga estendido",ru:"Увеличенный грузовой стеллаж"},CargoRackS6C1_Extended:{en:"Cargo Rack — Extended",de:"Erweitertes Frachtgestell",es:"Bodega de carga extendida",fr:"Compartiment soute agrandi",pt:"Estante de carga estendido",ru:"Увеличенный грузовой стеллаж"},CollectionLimpet_LightWeight:{en:"Lightweight",de:"Div. Leichtgewicht",es:"Ligero misceláneo",fr:"Divers - allégement",pt:"Qualquer Leve",ru:"Облегченное прочее"},CollectionLimpet_Reinforced:{en:"Reinforced",de:"Div. Verstärkt",es:"Reforzado misceláneo",fr:"Divers - renforcement",pt:"Qualquer Reforçado",ru:"Усиленное прочее"},CollectionLimpet_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},DetailedSurfaceScanner_LongRange:{en:"Detailed Surface Scanner — Long range detailed",de:"Ferndistanz-Detail-Oberflächenscanner",es:"Escáner de análisis de superficie detallado de largo alcance",fr:"Détecteur de surface détaillé longue portée",pt:"Scanner de superfície detalhada de Longo Alcance",ru:"Подробный сканер поверхностей с увеличенной дальностью"},Engine_Dirty:{en:"Dirty",de:"Aggressives Antriebstuning",es:"Modificación de motor sucio",fr:"Optimisation de réacteur détériorante",pt:"Ajuste de Motor Sujo",ru:"«Грязная» донастройка двигателя"},Engine_Reinforced:{en:"Reinforced",de:"Antriebsstärkung",es:"Fortalecimiento de motor",fr:"Renforcement du réacteur",pt:"Reforçamento do Motor",ru:"Усиление двигателя"},Engine_Tuned:{en:"Clean",de:"Ausgewogenes Antriebstuning",es:"Modificación de motor limpio",fr:"Optimisation de réacteur propre",pt:"Ajuste de Motor Limpo",ru:"«Чистая» донастройка двигателя"},EnzymeMissileRack_HighYield:{en:"Enzyme Missile Rack — High-yield",de:"Enzymraketenrampe mit hohen Erträgen",es:"Lanzamisiles de enzimas de alto rendimiento",fr:"Batterie de missiles enzymatiques à hauts rendements",pt:"Estante de mísseis enzimáticos de alta potência",ru:"Блок энзимных ракет высокой мощности"},FragmentCannonLarge_DoubleScreaming:{en:"Fragment Cannon — Double screaming",de:"Doppelschrei-Splitterkanone",es:"Cañón de fragmentación doble con proyectil de pantalla",fr:"Double canon à fragmentation Screaming",pt:"Canhão de fragmentos duplo de barragem",ru:"Залповое орудие «Двойной вой»"},FragmentCannonSmall_DoubleScreaming:{en:"Fragment Cannon — Double screaming",de:"Doppelschrei-Splitterkanone",es:"Cañón de fragmentación doble con proyectil de pantalla",fr:"Double canon à fragmentation Screaming",pt:"Canhão de fragmentos duplo de barragem",ru:"Залповое орудие «Двойной вой»"},FSD_FastBoot:{en:"Faster boot sequence",de:"Schnellere FSA-Ladesequenz",es:"Secuencia de inicio de MDD rápida",fr:"Démarrage accéléré du réacteur FSD",pt:"Sequência de Inicialização do MDD Mais Rápida",ru:"Последовательность быстрого запуска FSD"},FSD_LongRange:{en:"Increased range",de:"Erhöhte FSA-Reichweite",es:"Aumento de alcance de MDD",fr:"Portée FSD améliorée",pt:"Alcance do MDD Aumentado",ru:"Увеличенная дальность FSD"},FSD_Shielded:{en:"Shielded",de:"Abgeschirmter FSA",es:"MDD blindado",fr:"FSD protégé",pt:"MDD Protegido",ru:"Защищенный FSD"},FSDinterdictor_Expanded:{en:"Expanded capture arc",de:"Erw. Abfangkreisbogen für FSA-Unterbrecher",es:"Arco de captura de interdictor de MDD extendido",fr:"Intercepteur FSD à angle de capture augmenté",pt:"Arco de Captura do Interditor de MDD Expandido",ru:"Перехватчик FSD с расширенной дугой захвата"},FSDinterdictor_LongRange:{en:"Long range",de:"Ferndistanz-FSA-Unterbrecher",es:"Interdictor de MDD de largo alcance",fr:"Intercepteur FSD longue portée",pt:"Interditor de MDD de Longo Alcance",ru:"Перехватчик FSD большой дальности"},FuelScoop_Efficiency:{en:"Fuel Scoop — Scoop rate enhanced",de:"Erweiterte Sammelrate",es:"Velocidad de recarga mejorada",fr:"Taux de récupération amélioré",pt:"Taxa da coleta aprimorada",ru:"Улучшенная интенсивность забора"},FuelScoop_Shielded:{en:"Shielded",de:"Treibstoffsammler mit Schild",es:"Recolector de combustible blindado",fr:"Récupérateur de carburant protégé",pt:"Coletor de Combustível Protegido",ru:"Защищенный топливозаборник"},FuelTransferLimpet_LightWeight:{en:"Lightweight",de:"Div. Leichtgewicht",es:"Ligero misceláneo",fr:"Divers - allégement",pt:"Qualquer Leve",ru:"Облегченное прочее"},FuelTransferLimpet_Reinforced:{en:"Reinforced",de:"Div. Verstärkt",es:"Reforzado misceláneo",fr:"Divers - renforcement",pt:"Qualquer Reforçado",ru:"Усиленное прочее"},FuelTransferLimpet_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},GuardianModule_Sturdy:{en:"Anti-Guardian Zone Resistance",de:"Anti-Guardian-Zone-Widerstand",es:"Zona de resistencia antiguardián",fr:"Résistance à la zone anti-Guardian",pt:"Resistência à área anti-Guardian",ru:"Защита от отключающего поля"},HatchBreakerLimpet_LightWeight:{en:"Lightweight",de:"Div. Leichtgewicht",es:"Ligero misceláneo",fr:"Divers - allégement",pt:"Qualquer Leve",ru:"Облегченное прочее"},HatchBreakerLimpet_Reinforced:{en:"Reinforced",de:"Div. Verstärkt",es:"Reforzado misceláneo",fr:"Divers - renforcement",pt:"Qualquer Reforçado",ru:"Усиленное прочее"},HatchBreakerLimpet_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},HullReinforcement_Advanced:{en:"Lightweight",de:"Leichtgewicht-Rumpfhüllenverstärkung",es:"Refuerzo estructural aligerado",fr:"Renforcement de coque ultraléger",pt:"Reforço de Casco Leve",ru:"Легкое усиление корпуса"},HullReinforcement_Explosive:{en:"Blast resistant",de:"Detonationsresistente Rumpfhüllenverstärkung",es:"Refuerzo estruct. de resistencia explo.",fr:"Renforcement de coque anti-explosions",pt:"Reforço de Casco de resistência a Explosões",ru:"Взрывостойкое усиление корпуса"},HullReinforcement_HeavyDuty:{en:"Heavy duty",de:"Schwere Rumpfhüllenverstärkung",es:"Refuerzo estructural de alta resistencia",fr:"Renforcement de coque lourd",pt:"Reforço de Casco Pesado",ru:"Надежное усиление корпуса"},HullReinforcement_Kinetic:{en:"Kinetic resistant",de:"Kinetikresistente Rumpfhüllenverstärkung",es:"Refuerzo estructural de resistencia cinética",fr:"Renforcement de coque anti-cinétique",pt:"Reforço de Casco de Resistência Cinética",ru:"Противокинетическое усиление корпуса"},HullReinforcement_Thermic:{en:"Thermal resistant",de:"Thermalresistente Rumpfhüllenverstärkung",es:"Refuerzo estructural de resistencia térmica",fr:"Renforcement de coque antithermique",pt:"Reforço de Casco de Resistência Térmica",ru:"Термостойкое усиление корпуса"},LifeSupport_LightWeight:{en:"Lightweight",de:"Leichtes Lebenserhaltungssystem",es:"Soporte vital ligero",fr:"Systèmes de survie allégés",pt:"Suporte de vida leve",ru:"Облегченная система жизнеобеспечения"},LifeSupport_Reinforced:{en:"Reinforced",de:"Verstärktes Lebenserhaltungssystem",es:"Soporte vital reforzado",fr:"Systèmes de survie renforcés",pt:"Suporte de vida reforçado",ru:"Усиленная система жизнеобеспечения"},LifeSupport_Shielded:{en:"Shielded",de:"Lebenserhaltungssystem mit Schild",es:"Soporte vital blindado",fr:"Systèmes de survie protégés",pt:"Suporte de vida protegido",ru:"Защищенная система жизнеобеспечения"},MC_Overcharged:{en:"Overcharged",de:"Überladungswaffe",es:"Arma sobrecargada",fr:"Arme surchargée",pt:"Arma Sobrecarregada",ru:"Усиленное орудие"},MiningLaser_LongRange:{en:"Mining Laser — Long range",de:"Ferndistanz-Abbaulaser",es:"Láser de minería de largo alcance",fr:"Laser minier longue portée",pt:"Laser de mineração de longo alcance",ru:"Проходочный лазер с увеличенной дальностью"},Misc_ChaffCapacity:{en:"Ammo capacity",de:"Düppel-Munitionskapazität",es:"Capacidad de munición de señuelos",fr:"Capacité du chargeur du lanceur de paillettes",pt:"Capacidade de Munição de Chaff",ru:"Вместимость припасов дипольного отражателя"},Misc_HeatSinkCapacity:{en:"Ammo capacity",de:"Kühlkörper-Munitionskapazität",es:"Capacidad de munición de eyector de calor",fr:"Capacité du chargeur de l'éjecteur de dissipateur thermique",pt:"Capacidade de Munição de Dissipador Térmico",ru:"Вместимость припасов теплоотвода"},Misc_LightWeight:{en:"Lightweight",de:"Div. Leichtgewicht",es:"Ligero misceláneo",fr:"Divers - allégement",pt:"Qualquer Leve",ru:"Облегченное прочее"},Misc_PointDefenseCapacity:{en:"Ammo capacity",de:"Punktverteidigung-Munitionskapazität",es:"Capacidad de munición de defensa de punto",fr:"Capacité du chargeur de la défense ponctuelle",pt:"Capacidade de Munição de Defesa de Ponto",ru:"Вместимость припасов точечной обороны"},Misc_Reinforced:{en:"Reinforced",de:"Div. Verstärkt",es:"Reforzado misceláneo",fr:"Divers - renforcement",pt:"Qualquer Reforçado",ru:"Усиленное прочее"},Misc_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},ModuleReinforcement_HeavyDuty:{en:"Module Reinforcement Package — Heavy duty",de:"Schwere Modulverstärkung (Paket)",es:"Paquete de refuerzo de módulo de alta resistencia",fr:"Pack de renforcement de modules lourds",pt:"Pacote de Reforço de módulo Pesado",ru:"Укрепленный набор для усиления модуля"},MultiCannon_Rapid:{en:"Multi-cannon — Rapid phase",de:"Schnellfeuer-Mehrfachgeschütz",es:"Multicañón de fase con disparo rápido",fr:"Multi-canon à phase rapide",pt:"Canhão de repetição de tiro rápido",ru:"Скорострельное фазовое многоствольное орудие"},PowerDistributor_Balanced:{en:"Power Distributor — Balanced",de:"Abgeglichener Energieverteiler",es:"Distribuidor de energía equilibrado",fr:"Répartiteur de puissance équilibré",pt:"Distribuidor de energia equilibrado",ru:"Сбалансированный распределитель энергии"},PowerDistributor_HighCapacity:{en:"High charge capacity",de:"Hochleistungsfähiger Energieverteiler",es:"Distribuidor de energía de alta capacidad de carga",fr:"Répartiteur de puissance à capacité accrue",pt:"Distribuidor de Energia de Alta Capacidade",ru:"Высокоемкий распределитель питания"},PowerDistributor_HighFrequency:{en:"Charge enhanced",de:"Ladungsoptimierter Energieverteiler",es:"Distribuidor de energía de carga mejorada",fr:"Répartiteur de puissance rapide",pt:"Distribuidor de Energia de Recarga Melhorada",ru:"Быстрозаряжающийся распределитель питания"},PowerDistributor_PriorityEngines:{en:"Engine focused",de:"Antriebsfokussierter Energieverteiler",es:"Distribuidor de energía orientado a motor",fr:"Répartiteur de puissance optimisé Moteur",pt:"Distribuidor de Energia com Foco nos Motores",ru:"Распределитель питания на двигатель"},PowerDistributor_PrioritySystems:{en:"System focused",de:"Systemfokussierter Energieverteiler",es:"Distribuidor de energía orientado a sistemas",fr:"Répartiteur de puissance optimisé Systèmes",pt:"Distribuidor de Energia com Foco nos Sistemas",ru:"Распределитель питания на систему"},PowerDistributor_PriorityWeapons:{en:"Weapon focused",de:"Waffenfokussierter Energieverteiler",es:"Distribuidor de energía orientado a armas",fr:"Répartiteur de puissance optimisé Armes",pt:"Distribuidor de Energia com Foco nas Armas",ru:"Распределитель питания на орудия"},PowerDistributor_Shielded:{en:"Shielded",de:"Abgeschirmter Energieverteiler",es:"Distribuidor de energía blindado",fr:"Répartiteur de puissance protégé",pt:"Distribuidor de Energia Protegido",ru:"Защищенный распределитель питания"},PowerDistributorS3C2_SupportFocused:{en:"Power Distributor — Support focused",de:"Unterstützungsfokussierter Energieverteiler",es:"Distribuidor de energía orientado al apoyo",fr:"Répartiteur de puissance optimisé Survie",pt:"Distribuidor de energia com foco no suporte",ru:"Вспомогательный распределитель питания"},PowerDistributorS3C5_SupportFocused:{en:"Power Distributor — Support focused",de:"Unterstützungsfokussierter Energieverteiler",es:"Distribuidor de energía orientado al apoyo",fr:"Répartiteur de puissance optimisé Survie",pt:"Distribuidor de energia com foco no suporte",ru:"Вспомогательный распределитель питания"},PowerDistributorS4C2_SupportFocused:{en:"Power Distributor — Support focused",de:"Unterstützungsfokussierter Energieverteiler",es:"Distribuidor de energía orientado al apoyo",fr:"Répartiteur de puissance optimisé Survie",pt:"Distribuidor de energia com foco no suporte",ru:"Вспомогательный распределитель питания"},PowerDistributorS4C5_SupportFocused:{en:"Power Distributor — Support focused",de:"Unterstützungsfokussierter Energieverteiler",es:"Distribuidor de energía orientado al apoyo",fr:"Répartiteur de puissance optimisé Survie",pt:"Distribuidor de energia com foco no suporte",ru:"Вспомогательный распределитель питания"},PowerDistributorS6C5_SupportFocused:{en:"Power Distributor — Support focused",de:"Unterstützungsfokussierter Energieverteiler",es:"Distribuidor de energía orientado al apoyo",fr:"Répartiteur de puissance optimisé Survie",pt:"Distribuidor de energia com foco no suporte",ru:"Вспомогательный распределитель питания"},PowerPlant_Armoured:{en:"Armoured",de:"Kraftwerkpanzerung",es:"Núcleo de energía blindado",fr:"Générateur blindé",pt:"Gerador de Energia Blindado",ru:"Бронированная силовая установка"},PowerPlant_Boosted:{en:"Overcharged",de:"Kraftwerksüberladung",es:"Núcleo de energía sobrecargado",fr:"Générateur surchargé",pt:"Gerador de Energia Sobrecarregado",ru:"Усиленная силовая установка"},PowerPlant_Stealth:{en:"Low emissions",de:"Emissionsoptimiertes Kraftwerk",es:"Núcleo de energía de bajas emisiones",fr:"Générateur à faibles émissions",pt:"Gerador de Energia de Baixa Emissão",ru:"Силовая установка с малым излучением"},ProspectingLimpet_LightWeight:{en:"Lightweight",de:"Div. Leichtgewicht",es:"Ligero misceláneo",fr:"Divers - allégement",pt:"Qualquer Leve",ru:"Облегченное прочее"},ProspectingLimpet_Reinforced:{en:"Reinforced",de:"Div. Verstärkt",es:"Reforzado misceláneo",fr:"Divers - renforcement",pt:"Qualquer Reforçado",ru:"Усиленное прочее"},ProspectingLimpet_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},PulseLaser_ThermalPlasmaConversion:{en:"Plasma conversion",de:"Plasmaumwandlung",es:"Conversión de plasma",fr:"Conversion de plasma",pt:"Conversão de plasma",ru:"Преобразование в плазму"},RailGun_LongShot:{en:"Rail Gun — Enduring feedback",de:"Robuste Feedback-Schienenkanone",es:"Cañón de riel Retroalimentación Soportable",fr:"Canon électrique énergétique résistant",pt:"Canhão elétrico de feedback duradouro",ru:"Электромагнитная пушка с постоянным откликом"},Refineries_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},Scanner_LongRange:{en:"Long range",de:"Ferndistanzscanner",es:"Escáner de largo alcance",fr:"Détecteur à longue portée",pt:"Scanner de longa distância",ru:"Сканер дальнего действия"},Scanner_WideAngle:{en:"Wide angle",de:"Weitwinkelscanner",es:"Escáner de estelas de ángulo amplio",fr:"Détecteur grand-angle",pt:"Scanner de Ângulo Amplo",ru:"Широкоугольный сканер"},SeekerMissileRack_Drag:{en:"Seeker Missile Rack — Drag",de:"Suchraketenrampe ziehen",es:"Lanzamisiles guiado con lastre",fr:"Batterie de missiles TC à inertie",pt:"Estante de míssil guiado de arrasto",ru:"Блок ракет с самонаведением и замедляющими боеприпасами"},SeekerMissileRack_LightWeightThermal:{en:"Seeker Missile Rack — Lightweight thermal",de:"Leichte thermische Suchraketenrampe",es:"Lanzamisiles guiado térmico ligero",fr:"Batterie de missiles TC thermiques légers",pt:"Estante de míssil guiado leve",ru:"Легкий блок тепловых ракет с самонаведением"},SeekerMissileRackLarge_Lockdown:{en:"Seeker Missile Rack — Lockdown",de:"Abriegelung-Suchraketenrampe",es:"Lanzamisiles guiado con bloqueo",fr:"Batterie de missiles TC à verrouillage",pt:"Estante de míssil guiado de precisão",ru:"Блок ракет с самонаведением и блокировкой"},SeekerMissileRackMedium_Lockdown:{en:"Seeker Missile Rack — Lockdown",de:"Abriegelung-Suchraketenrampe",es:"Lanzamisiles guiado con bloqueo",fr:"Batterie de missiles TC à verrouillage",pt:"Estante de míssil guiado de precisão",ru:"Блок ракет с самонаведением и блокировкой"},Sensor_Expanded:{en:"Expanded Probe Scanning Radius",de:"Erweiterter Sonden-Scanradius",es:"Radio de escaneo de sonda ampliado",fr:"Rayon d'analyse de sonde augmenté",pt:"Expansão do raio de escaneamento da sonda",ru:"Увеличение радиуса сканирования зондов"},Sensor_FastScan:{en:"Fast scan",de:"Schnellscanner",es:"Escáner rápido",fr:"Détecteur analyse rapide",pt:"Scanner Rápido",ru:"Быстрый сканер"},Sensor_LightWeight:{en:"Lightweight",de:"Leichter Scanner",es:"Escáner ligero",fr:"Détecteur allégé",pt:"Scanner Leve",ru:"Облегченный сканер"},Sensor_LongRange:{en:"Long range",de:"Ferndistanzscanner",es:"Escáner de largo alcance",fr:"Détecteur à longue portée",pt:"Scanner de longa distância",ru:"Сканер дальнего действия"},Sensor_WideAngle:{en:"Wide angle",de:"Weitwinkelscanner",es:"Escáner de estelas de ángulo amplio",fr:"Détecteur grand-angle",pt:"Scanner de Ângulo Amplo",ru:"Широкоугольный сканер"},ShieldBooster_Explosive:{en:"Blast resistant",de:"Detonationsresistenter Schild-Booster",es:"Potenciador de escudos de resistencia explosiva",fr:"Survolteur de bouclier anti-explosions",pt:"Potenciador de Escudo de resistência a Explosões",ru:"Взрывостойкий усилитель щита"},ShieldBooster_HeavyDuty:{en:"Heavy duty",de:"Schwerer Schild-Booster",es:"Potenciador de escudos de alta resistencia",fr:"Survolteur de bouclier lourd",pt:"Potenciador de escudo Pesado",ru:"Надежный усилитель щита"},ShieldBooster_Kinetic:{en:"Kinetic resistant",de:"Kinetikresistenter Schild-Booster",es:"Potenciador de escudos de resistencia cinética",fr:"Survolteur de bouclier anti-cinétique",pt:"Potenciador de Escudo de Resistência Cinética",ru:"Противокинетический усилитель щита"},ShieldBooster_Resistive:{en:"Resistance augmented",de:"Widerstandsverstärkter Schild-Booster",es:"Potenciador de escudos de resistencia aumentada",fr:"Survolteur de bouclier à résistance améliorée",pt:"Potenciador de Escudo com Resistência Aumentada",ru:"Усилитель щита с универсальной защитой"},ShieldBooster_Thermic:{en:"Thermal resistant",de:"Thermalresistenter Schild-Booster",es:"Potenciador de escudos de resistencia térmica",fr:"Survolteur de bouclier antithermique",pt:"Potenciador de Escudo de Resistência Térmica",ru:"Термостойкий усилитель щита"},ShieldCellBank_Rapid:{en:"Rapid charge",de:"Schnell aufladende Schildzellenbank",es:"Acumulador de células de escudo de recarga rápida",fr:"Réserve de cellules d'énergie à chargement rapide",pt:"Banco de Célula de Escudo de Carga Rápida",ru:"Щитонакопитель быстрой зарядки"},ShieldCellBank_Specialised:{en:"Specialised",de:"Spezielle Schildzellenbank",es:"Acumulador de células de escudo especializado",fr:"Réserve de cellules d'énergie spécialisées",pt:"Banco de Célula de Escudo Especializado",ru:"Адаптивный щитонакопитель"},ShieldGenerator_Kinetic:{en:"Kinetic resistant",de:"Kinetikresistente Schilde",es:"Escudos de resistencia cinética",fr:"Bouclier anti-cinétique",pt:"Escudos de Resistência Cinética",ru:"Противокинетические щиты"},ShieldGenerator_Optimised:{en:"Enhanced low power",de:"Verbesserte Niedrigenergieschilde",es:"Escudos mejorados de baja energía",fr:"Bouclier amélioré à consommation réduite",pt:"Escudos de Baixo Consumo, Aprimorados",ru:"Усиленные энергосберегающие щиты"},ShieldGenerator_Reinforced:{en:"Reinforced",de:"Verstärkte Schilde",es:"Escudos reforzados",fr:"Bouclier renforcé",pt:"Escudos Reforçados",ru:"Усиленные щиты"},ShieldGenerator_Thermic:{en:"Thermal resistant",de:"Thermalresistente Schilde",es:"Escudos de resistencia térmica",fr:"Bouclier antithermique",pt:"Escudos de Resistência Térmica",ru:"Термостойкие щиты"},Weapon_DoubleShot:{en:"Double shot",de:"Doppelschuss",es:"Doble disparo",fr:"Tir double",pt:"Tiro Duplo",ru:"Двойной выстрел"},Weapon_Efficient:{en:"Efficient",de:"Waffeneffizienz",es:"Arma eficiente",fr:"Arme efficace",pt:"Arma Eficiente",ru:"Эффективное орудие"},Weapon_Focused:{en:"Focused",de:"Waffenfokus",es:"Arma concentrada",fr:"Arme concentrée",pt:"Arma com Foco",ru:"Точное орудие"},Weapon_HighCapacity:{en:"High capacity",de:"Hochleistungsmagazin",es:"Cargador de alta capacidad",fr:"Chargeur grande capacité",pt:"Cartucho de Alta Capacidade",ru:"Вместительный магазин"},Weapon_LightWeight:{en:"Lightweight",de:"Leichtgewichtgeschütz",es:"Anclaje ligero",fr:"Support ultraléger",pt:"Encaixe Leve",ru:"Легкое крепление"},Weapon_LongRange:{en:"Long range",de:"Ferndistanzwaffe",es:"Arma de largo alcance",fr:"Arme à longue portée",pt:"Arma de longa distância",ru:"Дальнобойное орудие"},Weapon_Overcharged:{en:"Overcharged",de:"Überladungswaffe",es:"Arma sobrecargada",fr:"Arme surchargée",pt:"Arma Sobrecarregada",ru:"Усиленное орудие"},Weapon_RapidFire:{en:"Rapid fire",de:"Schnellfeuermodifikation",es:"Modificación de tiro rápido",fr:"Modification de cadence rapide",pt:"Modificação de Disparo Rápido",ru:"Улучшение скорострельности"},Weapon_ShortRange:{en:"Short range",de:"Kurzdistanzblaster",es:"Destructor de corto alcance",fr:"Tir à courte portée",pt:"Disparo de Curto Alcance",ru:"Бластер малого радиуса действия"},Weapon_Sturdy:{en:"Sturdy",de:"Robustes Gestell",es:"Anclaje robusto",fr:"Support robuste",pt:"Encaixe Robusto",ru:"Прочное крепление"}};var BLUEPRINT_NAMES=/* @__PURE__ */createLocalizedNameIndex(blueprint_names_default);function getBlueprintName(fdname,locale){return getLocalizedName(BLUEPRINT_NAMES,fdname,locale,"getBlueprintName","fdname")}export{getBlueprintName};//# sourceMappingURL=chunk-Z6XMXMVI.js.map
1
+ import{getLocalizedName,createLocalizedNameIndex}from"./chunk-RVIYOHYF.js";var blueprint_names_default={AbrasionBlaster_FarReaching:{en:"Abrasion Blaster — Far-reaching",de:"Abrasionsblaster mit großer Reichweite",es:"Destructor de abrasión de largo alcance",fr:"Surfaceur abrasif longue portée",pt:"Detonador de abrasão de longo alcance",ru:"Абразивный бластер с увеличенной дальностью"},AFM_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},Armour_Advanced:{en:"Lightweight",de:"Leichte Panzerung",es:"Blindaje ligero",fr:"Blindage léger",pt:"Blindagem Leve",ru:"Броня из легких сплавов"},Armour_Explosive:{en:"Blast resistant",de:"Detonationsresistente Panzerung",es:"Blindaje resistente a explosiones",fr:"Blindage anti-explosions",pt:"Blindagem de resistência a Explosões",ru:"Взрывостойкая обшивка"},Armour_HeavyDuty:{en:"Heavy duty",de:"Schwere Panzerung",es:"Blindaje de alta resistencia",fr:"Blindage lourd",pt:"Blindagem Pesada",ru:"Толстая броня"},Armour_Kinetic:{en:"Kinetic resistant",de:"Kinetikresistente Panzerung",es:"Blindaje de resistencia cinética",fr:"Blindage anti-cinétique",pt:"Blindagem de Resistência Cinética",ru:"Противокинетическая броня"},Armour_Thermic:{en:"Thermal resistant",de:"Thermalresistente Panzerung",es:"Blindaje de resistencia térmica",fr:"Blindage antithermique",pt:"Blindagem de Resistência Térmica",ru:"Термостойкая броня"},BeamLaser_ThermalPlasmaConversion:{en:"Plasma conversion",de:"Plasmaumwandlung",es:"Conversión de plasma",fr:"Conversion de plasma",pt:"Conversão de plasma",ru:"Преобразование в плазму"},BurstLaser_ThermalPlasmaConversion:{en:"Plasma conversion",de:"Plasmaumwandlung",es:"Conversión de plasma",fr:"Conversion de plasma",pt:"Conversão de plasma",ru:"Преобразование в плазму"},CargoRack_IncreasedCapacity:{en:"Expanded Cargo Rack",de:"Erweitertes Frachtgestell",es:"Bodega de carga expandida",fr:"Compartiment de soute étendu",pt:"Estante de carga estendida",ru:"Большой грузовой стеллаж"},CargoRackS5C1_Extended:{en:"Cargo Rack — Extended",de:"Erweitertes Frachtgestell",es:"Bodega de carga extendida",fr:"Compartiment soute agrandi",pt:"Estante de carga estendido",ru:"Увеличенный грузовой стеллаж"},CargoRackS6C1_Extended:{en:"Cargo Rack — Extended",de:"Erweitertes Frachtgestell",es:"Bodega de carga extendida",fr:"Compartiment soute agrandi",pt:"Estante de carga estendido",ru:"Увеличенный грузовой стеллаж"},CollectionLimpet_LightWeight:{en:"Lightweight",de:"Div. Leichtgewicht",es:"Ligero misceláneo",fr:"Divers - allégement",pt:"Qualquer Leve",ru:"Облегченное прочее"},CollectionLimpet_Reinforced:{en:"Reinforced",de:"Div. Verstärkt",es:"Reforzado misceláneo",fr:"Divers - renforcement",pt:"Qualquer Reforçado",ru:"Усиленное прочее"},CollectionLimpet_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},DetailedSurfaceScanner_LongRange:{en:"Detailed Surface Scanner — Long range detailed",de:"Ferndistanz-Detail-Oberflächenscanner",es:"Escáner de análisis de superficie detallado de largo alcance",fr:"Détecteur de surface détaillé longue portée",pt:"Scanner de superfície detalhada de Longo Alcance",ru:"Подробный сканер поверхностей с увеличенной дальностью"},Engine_Dirty:{en:"Dirty",de:"Aggressives Antriebstuning",es:"Modificación de motor sucio",fr:"Optimisation de réacteur détériorante",pt:"Ajuste de Motor Sujo",ru:"«Грязная» донастройка двигателя"},Engine_Reinforced:{en:"Reinforced",de:"Antriebsstärkung",es:"Fortalecimiento de motor",fr:"Renforcement du réacteur",pt:"Reforçamento do Motor",ru:"Усиление двигателя"},Engine_Tuned:{en:"Clean",de:"Ausgewogenes Antriebstuning",es:"Modificación de motor limpio",fr:"Optimisation de réacteur propre",pt:"Ajuste de Motor Limpo",ru:"«Чистая» донастройка двигателя"},EnzymeMissileRack_HighYield:{en:"Enzyme Missile Rack — High-yield",de:"Enzymraketenrampe mit hohen Erträgen",es:"Lanzamisiles de enzimas de alto rendimiento",fr:"Batterie de missiles enzymatiques à hauts rendements",pt:"Estante de mísseis enzimáticos de alta potência",ru:"Блок энзимных ракет высокой мощности"},FragmentCannonLarge_DoubleScreaming:{en:"Fragment Cannon — Double screaming",de:"Doppelschrei-Splitterkanone",es:"Cañón de fragmentación doble con proyectil de pantalla",fr:"Double canon à fragmentation Screaming",pt:"Canhão de fragmentos duplo de barragem",ru:"Залповое орудие «Двойной вой»"},FragmentCannonSmall_DoubleScreaming:{en:"Fragment Cannon — Double screaming",de:"Doppelschrei-Splitterkanone",es:"Cañón de fragmentación doble con proyectil de pantalla",fr:"Double canon à fragmentation Screaming",pt:"Canhão de fragmentos duplo de barragem",ru:"Залповое орудие «Двойной вой»"},FSD_FastBoot:{en:"Faster boot sequence",de:"Schnellere FSA-Ladesequenz",es:"Secuencia de inicio de MDD rápida",fr:"Démarrage accéléré du réacteur FSD",pt:"Sequência de Inicialização do MDD Mais Rápida",ru:"Последовательность быстрого запуска FSD"},FSD_LongRange:{en:"Increased range",de:"Erhöhte FSA-Reichweite",es:"Aumento de alcance de MDD",fr:"Portée FSD améliorée",pt:"Alcance do MDD Aumentado",ru:"Увеличенная дальность FSD"},FSD_Shielded:{en:"Shielded",de:"Abgeschirmter FSA",es:"MDD blindado",fr:"FSD protégé",pt:"MDD Protegido",ru:"Защищенный FSD"},FSDinterdictor_Expanded:{en:"Expanded capture arc",de:"Erw. Abfangkreisbogen für FSA-Unterbrecher",es:"Arco de captura de interdictor de MDD extendido",fr:"Intercepteur FSD à angle de capture augmenté",pt:"Arco de Captura do Interditor de MDD Expandido",ru:"Перехватчик FSD с расширенной дугой захвата"},FSDinterdictor_LongRange:{en:"Long range",de:"Ferndistanz-FSA-Unterbrecher",es:"Interdictor de MDD de largo alcance",fr:"Intercepteur FSD longue portée",pt:"Interditor de MDD de Longo Alcance",ru:"Перехватчик FSD большой дальности"},FuelScoop_Efficiency:{en:"Fuel Scoop — Scoop rate enhanced",de:"Erweiterte Sammelrate",es:"Velocidad de recarga mejorada",fr:"Taux de récupération amélioré",pt:"Taxa da coleta aprimorada",ru:"Улучшенная интенсивность забора"},FuelScoop_Shielded:{en:"Shielded",de:"Treibstoffsammler mit Schild",es:"Recolector de combustible blindado",fr:"Récupérateur de carburant protégé",pt:"Coletor de Combustível Protegido",ru:"Защищенный топливозаборник"},FuelTransferLimpet_LightWeight:{en:"Lightweight",de:"Div. Leichtgewicht",es:"Ligero misceláneo",fr:"Divers - allégement",pt:"Qualquer Leve",ru:"Облегченное прочее"},FuelTransferLimpet_Reinforced:{en:"Reinforced",de:"Div. Verstärkt",es:"Reforzado misceláneo",fr:"Divers - renforcement",pt:"Qualquer Reforçado",ru:"Усиленное прочее"},FuelTransferLimpet_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},GuardianModule_Sturdy:{en:"Anti-Guardian Zone Resistance",de:"Anti-Guardian-Zone-Widerstand",es:"Zona de resistencia antiguardián",fr:"Résistance à la zone anti-Guardian",pt:"Resistência à área anti-Guardian",ru:"Защита от отключающего поля"},HatchBreakerLimpet_LightWeight:{en:"Lightweight",de:"Div. Leichtgewicht",es:"Ligero misceláneo",fr:"Divers - allégement",pt:"Qualquer Leve",ru:"Облегченное прочее"},HatchBreakerLimpet_Reinforced:{en:"Reinforced",de:"Div. Verstärkt",es:"Reforzado misceláneo",fr:"Divers - renforcement",pt:"Qualquer Reforçado",ru:"Усиленное прочее"},HatchBreakerLimpet_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},HullReinforcement_Advanced:{en:"Lightweight",de:"Leichtgewicht-Rumpfhüllenverstärkung",es:"Refuerzo estructural aligerado",fr:"Renforcement de coque ultraléger",pt:"Reforço de Casco Leve",ru:"Легкое усиление корпуса"},HullReinforcement_Explosive:{en:"Blast resistant",de:"Detonationsresistente Rumpfhüllenverstärkung",es:"Refuerzo estruct. de resistencia explo.",fr:"Renforcement de coque anti-explosions",pt:"Reforço de Casco de resistência a Explosões",ru:"Взрывостойкое усиление корпуса"},HullReinforcement_HeavyDuty:{en:"Heavy duty",de:"Schwere Rumpfhüllenverstärkung",es:"Refuerzo estructural de alta resistencia",fr:"Renforcement de coque lourd",pt:"Reforço de Casco Pesado",ru:"Надежное усиление корпуса"},HullReinforcement_Kinetic:{en:"Kinetic resistant",de:"Kinetikresistente Rumpfhüllenverstärkung",es:"Refuerzo estructural de resistencia cinética",fr:"Renforcement de coque anti-cinétique",pt:"Reforço de Casco de Resistência Cinética",ru:"Противокинетическое усиление корпуса"},HullReinforcement_Thermic:{en:"Thermal resistant",de:"Thermalresistente Rumpfhüllenverstärkung",es:"Refuerzo estructural de resistencia térmica",fr:"Renforcement de coque antithermique",pt:"Reforço de Casco de Resistência Térmica",ru:"Термостойкое усиление корпуса"},LifeSupport_LightWeight:{en:"Lightweight",de:"Leichtes Lebenserhaltungssystem",es:"Soporte vital ligero",fr:"Systèmes de survie allégés",pt:"Suporte de vida leve",ru:"Облегченная система жизнеобеспечения"},LifeSupport_Reinforced:{en:"Reinforced",de:"Verstärktes Lebenserhaltungssystem",es:"Soporte vital reforzado",fr:"Systèmes de survie renforcés",pt:"Suporte de vida reforçado",ru:"Усиленная система жизнеобеспечения"},LifeSupport_Shielded:{en:"Shielded",de:"Lebenserhaltungssystem mit Schild",es:"Soporte vital blindado",fr:"Systèmes de survie protégés",pt:"Suporte de vida protegido",ru:"Защищенная система жизнеобеспечения"},MC_Overcharged:{en:"Overcharged",de:"Überladungswaffe",es:"Arma sobrecargada",fr:"Arme surchargée",pt:"Arma Sobrecarregada",ru:"Усиленное орудие"},MiningLaser_LongRange:{en:"Mining Laser — Long range",de:"Ferndistanz-Abbaulaser",es:"Láser de minería de largo alcance",fr:"Laser minier longue portée",pt:"Laser de mineração de longo alcance",ru:"Проходочный лазер с увеличенной дальностью"},Misc_ChaffCapacity:{en:"Ammo capacity",de:"Düppel-Munitionskapazität",es:"Capacidad de munición de señuelos",fr:"Capacité du chargeur du lanceur de paillettes",pt:"Capacidade de Munição de Chaff",ru:"Вместимость припасов дипольного отражателя"},Misc_HeatSinkCapacity:{en:"Ammo capacity",de:"Kühlkörper-Munitionskapazität",es:"Capacidad de munición de eyector de calor",fr:"Capacité du chargeur de l'éjecteur de dissipateur thermique",pt:"Capacidade de Munição de Dissipador Térmico",ru:"Вместимость припасов теплоотвода"},Misc_LightWeight:{en:"Lightweight",de:"Div. Leichtgewicht",es:"Ligero misceláneo",fr:"Divers - allégement",pt:"Qualquer Leve",ru:"Облегченное прочее"},Misc_PointDefenseCapacity:{en:"Ammo capacity",de:"Punktverteidigung-Munitionskapazität",es:"Capacidad de munición de defensa de punto",fr:"Capacité du chargeur de la défense ponctuelle",pt:"Capacidade de Munição de Defesa de Ponto",ru:"Вместимость припасов точечной обороны"},Misc_Reinforced:{en:"Reinforced",de:"Div. Verstärkt",es:"Reforzado misceláneo",fr:"Divers - renforcement",pt:"Qualquer Reforçado",ru:"Усиленное прочее"},Misc_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},ModuleReinforcement_HeavyDuty:{en:"Module Reinforcement Package — Heavy duty",de:"Schwere Modulverstärkung (Paket)",es:"Paquete de refuerzo de módulo de alta resistencia",fr:"Pack de renforcement de modules lourds",pt:"Pacote de Reforço de módulo Pesado",ru:"Укрепленный набор для усиления модуля"},MultiCannon_Rapid:{en:"Multi-cannon — Rapid phase",de:"Schnellfeuer-Mehrfachgeschütz",es:"Multicañón de fase con disparo rápido",fr:"Multi-canon à phase rapide",pt:"Canhão de repetição de tiro rápido",ru:"Скорострельное фазовое многоствольное орудие"},PowerDistributor_Balanced:{en:"Power Distributor — Balanced",de:"Abgeglichener Energieverteiler",es:"Distribuidor de energía equilibrado",fr:"Répartiteur de puissance équilibré",pt:"Distribuidor de energia equilibrado",ru:"Сбалансированный распределитель энергии"},PowerDistributor_HighCapacity:{en:"High charge capacity",de:"Hochleistungsfähiger Energieverteiler",es:"Distribuidor de energía de alta capacidad de carga",fr:"Répartiteur de puissance à capacité accrue",pt:"Distribuidor de Energia de Alta Capacidade",ru:"Высокоемкий распределитель питания"},PowerDistributor_HighFrequency:{en:"Charge enhanced",de:"Ladungsoptimierter Energieverteiler",es:"Distribuidor de energía de carga mejorada",fr:"Répartiteur de puissance rapide",pt:"Distribuidor de Energia de Recarga Melhorada",ru:"Быстрозаряжающийся распределитель питания"},PowerDistributor_PriorityEngines:{en:"Engine focused",de:"Antriebsfokussierter Energieverteiler",es:"Distribuidor de energía orientado a motor",fr:"Répartiteur de puissance optimisé Moteur",pt:"Distribuidor de Energia com Foco nos Motores",ru:"Распределитель питания на двигатель"},PowerDistributor_PrioritySystems:{en:"System focused",de:"Systemfokussierter Energieverteiler",es:"Distribuidor de energía orientado a sistemas",fr:"Répartiteur de puissance optimisé Systèmes",pt:"Distribuidor de Energia com Foco nos Sistemas",ru:"Распределитель питания на систему"},PowerDistributor_PriorityWeapons:{en:"Weapon focused",de:"Waffenfokussierter Energieverteiler",es:"Distribuidor de energía orientado a armas",fr:"Répartiteur de puissance optimisé Armes",pt:"Distribuidor de Energia com Foco nas Armas",ru:"Распределитель питания на орудия"},PowerDistributor_Shielded:{en:"Shielded",de:"Abgeschirmter Energieverteiler",es:"Distribuidor de energía blindado",fr:"Répartiteur de puissance protégé",pt:"Distribuidor de Energia Protegido",ru:"Защищенный распределитель питания"},PowerDistributorS3C2_SupportFocused:{en:"Power Distributor — Support focused",de:"Unterstützungsfokussierter Energieverteiler",es:"Distribuidor de energía orientado al apoyo",fr:"Répartiteur de puissance optimisé Survie",pt:"Distribuidor de energia com foco no suporte",ru:"Вспомогательный распределитель питания"},PowerDistributorS3C5_SupportFocused:{en:"Power Distributor — Support focused",de:"Unterstützungsfokussierter Energieverteiler",es:"Distribuidor de energía orientado al apoyo",fr:"Répartiteur de puissance optimisé Survie",pt:"Distribuidor de energia com foco no suporte",ru:"Вспомогательный распределитель питания"},PowerDistributorS4C2_SupportFocused:{en:"Power Distributor — Support focused",de:"Unterstützungsfokussierter Energieverteiler",es:"Distribuidor de energía orientado al apoyo",fr:"Répartiteur de puissance optimisé Survie",pt:"Distribuidor de energia com foco no suporte",ru:"Вспомогательный распределитель питания"},PowerDistributorS4C5_SupportFocused:{en:"Power Distributor — Support focused",de:"Unterstützungsfokussierter Energieverteiler",es:"Distribuidor de energía orientado al apoyo",fr:"Répartiteur de puissance optimisé Survie",pt:"Distribuidor de energia com foco no suporte",ru:"Вспомогательный распределитель питания"},PowerDistributorS6C5_SupportFocused:{en:"Power Distributor — Support focused",de:"Unterstützungsfokussierter Energieverteiler",es:"Distribuidor de energía orientado al apoyo",fr:"Répartiteur de puissance optimisé Survie",pt:"Distribuidor de energia com foco no suporte",ru:"Вспомогательный распределитель питания"},PowerPlant_Armoured:{en:"Armoured",de:"Kraftwerkpanzerung",es:"Núcleo de energía blindado",fr:"Générateur blindé",pt:"Gerador de Energia Blindado",ru:"Бронированная силовая установка"},PowerPlant_Boosted:{en:"Overcharged",de:"Kraftwerksüberladung",es:"Núcleo de energía sobrecargado",fr:"Générateur surchargé",pt:"Gerador de Energia Sobrecarregado",ru:"Усиленная силовая установка"},PowerPlant_Stealth:{en:"Low emissions",de:"Emissionsoptimiertes Kraftwerk",es:"Núcleo de energía de bajas emisiones",fr:"Générateur à faibles émissions",pt:"Gerador de Energia de Baixa Emissão",ru:"Силовая установка с малым излучением"},ProspectingLimpet_LightWeight:{en:"Lightweight",de:"Div. Leichtgewicht",es:"Ligero misceláneo",fr:"Divers - allégement",pt:"Qualquer Leve",ru:"Облегченное прочее"},ProspectingLimpet_Reinforced:{en:"Reinforced",de:"Div. Verstärkt",es:"Reforzado misceláneo",fr:"Divers - renforcement",pt:"Qualquer Reforçado",ru:"Усиленное прочее"},ProspectingLimpet_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},PulseLaser_ThermalPlasmaConversion:{en:"Plasma conversion",de:"Plasmaumwandlung",es:"Conversión de plasma",fr:"Conversion de plasma",pt:"Conversão de plasma",ru:"Преобразование в плазму"},RailGun_LongShot:{en:"Rail Gun — Enduring feedback",de:"Robuste Feedback-Schienenkanone",es:"Cañón de riel Retroalimentación Soportable",fr:"Canon électrique énergétique résistant",pt:"Canhão elétrico de feedback duradouro",ru:"Электромагнитная пушка с постоянным откликом"},Refineries_Shielded:{en:"Shielded",de:"Div. Schildverstärkt",es:"Blindado misceláneo",fr:"Divers - protection",pt:"Qualquer Protegido",ru:"Защищенное прочее"},Scanner_LongRange:{en:"Long range",de:"Ferndistanzscanner",es:"Escáner de largo alcance",fr:"Détecteur à longue portée",pt:"Scanner de longa distância",ru:"Сканер дальнего действия"},Scanner_WideAngle:{en:"Wide angle",de:"Weitwinkelscanner",es:"Escáner de estelas de ángulo amplio",fr:"Détecteur grand-angle",pt:"Scanner de Ângulo Amplo",ru:"Широкоугольный сканер"},SeekerMissileRack_Drag:{en:"Seeker Missile Rack — Drag",de:"Suchraketenrampe ziehen",es:"Lanzamisiles guiado con lastre",fr:"Batterie de missiles TC à inertie",pt:"Estante de míssil guiado de arrasto",ru:"Блок ракет с самонаведением и замедляющими боеприпасами"},SeekerMissileRack_LightWeightThermal:{en:"Seeker Missile Rack — Lightweight thermal",de:"Leichte thermische Suchraketenrampe",es:"Lanzamisiles guiado térmico ligero",fr:"Batterie de missiles TC thermiques légers",pt:"Estante de míssil guiado leve",ru:"Легкий блок тепловых ракет с самонаведением"},SeekerMissileRackLarge_Lockdown:{en:"Seeker Missile Rack — Lockdown",de:"Abriegelung-Suchraketenrampe",es:"Lanzamisiles guiado con bloqueo",fr:"Batterie de missiles TC à verrouillage",pt:"Estante de míssil guiado de precisão",ru:"Блок ракет с самонаведением и блокировкой"},SeekerMissileRackMedium_Lockdown:{en:"Seeker Missile Rack — Lockdown",de:"Abriegelung-Suchraketenrampe",es:"Lanzamisiles guiado con bloqueo",fr:"Batterie de missiles TC à verrouillage",pt:"Estante de míssil guiado de precisão",ru:"Блок ракет с самонаведением и блокировкой"},Sensor_Expanded:{en:"Expanded Probe Scanning Radius",de:"Erweiterter Sonden-Scanradius",es:"Radio de escaneo de sonda ampliado",fr:"Rayon d'analyse de sonde augmenté",pt:"Expansão do raio de escaneamento da sonda",ru:"Увеличение радиуса сканирования зондов"},Sensor_FastScan:{en:"Fast scan",de:"Schnellscanner",es:"Escáner rápido",fr:"Détecteur analyse rapide",pt:"Scanner Rápido",ru:"Быстрый сканер"},Sensor_LightWeight:{en:"Lightweight",de:"Leichter Scanner",es:"Escáner ligero",fr:"Détecteur allégé",pt:"Scanner Leve",ru:"Облегченный сканер"},Sensor_LongRange:{en:"Long range",de:"Ferndistanzscanner",es:"Escáner de largo alcance",fr:"Détecteur à longue portée",pt:"Scanner de longa distância",ru:"Сканер дальнего действия"},Sensor_WideAngle:{en:"Wide angle",de:"Weitwinkelscanner",es:"Escáner de estelas de ángulo amplio",fr:"Détecteur grand-angle",pt:"Scanner de Ângulo Amplo",ru:"Широкоугольный сканер"},ShieldBooster_Explosive:{en:"Blast resistant",de:"Detonationsresistenter Schild-Booster",es:"Potenciador de escudos de resistencia explosiva",fr:"Survolteur de bouclier anti-explosions",pt:"Potenciador de Escudo de resistência a Explosões",ru:"Взрывостойкий усилитель щита"},ShieldBooster_HeavyDuty:{en:"Heavy duty",de:"Schwerer Schild-Booster",es:"Potenciador de escudos de alta resistencia",fr:"Survolteur de bouclier lourd",pt:"Potenciador de escudo Pesado",ru:"Надежный усилитель щита"},ShieldBooster_Kinetic:{en:"Kinetic resistant",de:"Kinetikresistenter Schild-Booster",es:"Potenciador de escudos de resistencia cinética",fr:"Survolteur de bouclier anti-cinétique",pt:"Potenciador de Escudo de Resistência Cinética",ru:"Противокинетический усилитель щита"},ShieldBooster_Resistive:{en:"Resistance augmented",de:"Widerstandsverstärkter Schild-Booster",es:"Potenciador de escudos de resistencia aumentada",fr:"Survolteur de bouclier à résistance améliorée",pt:"Potenciador de Escudo com Resistência Aumentada",ru:"Усилитель щита с универсальной защитой"},ShieldBooster_Thermic:{en:"Thermal resistant",de:"Thermalresistenter Schild-Booster",es:"Potenciador de escudos de resistencia térmica",fr:"Survolteur de bouclier antithermique",pt:"Potenciador de Escudo de Resistência Térmica",ru:"Термостойкий усилитель щита"},ShieldCellBank_Rapid:{en:"Rapid charge",de:"Schnell aufladende Schildzellenbank",es:"Acumulador de células de escudo de recarga rápida",fr:"Réserve de cellules d'énergie à chargement rapide",pt:"Banco de Célula de Escudo de Carga Rápida",ru:"Щитонакопитель быстрой зарядки"},ShieldCellBank_Specialised:{en:"Specialised",de:"Spezielle Schildzellenbank",es:"Acumulador de células de escudo especializado",fr:"Réserve de cellules d'énergie spécialisées",pt:"Banco de Célula de Escudo Especializado",ru:"Адаптивный щитонакопитель"},ShieldGenerator_Kinetic:{en:"Kinetic resistant",de:"Kinetikresistente Schilde",es:"Escudos de resistencia cinética",fr:"Bouclier anti-cinétique",pt:"Escudos de Resistência Cinética",ru:"Противокинетические щиты"},ShieldGenerator_Optimised:{en:"Enhanced low power",de:"Verbesserte Niedrigenergieschilde",es:"Escudos mejorados de baja energía",fr:"Bouclier amélioré à consommation réduite",pt:"Escudos de Baixo Consumo, Aprimorados",ru:"Усиленные энергосберегающие щиты"},ShieldGenerator_Reinforced:{en:"Reinforced",de:"Verstärkte Schilde",es:"Escudos reforzados",fr:"Bouclier renforcé",pt:"Escudos Reforçados",ru:"Усиленные щиты"},ShieldGenerator_Thermic:{en:"Thermal resistant",de:"Thermalresistente Schilde",es:"Escudos de resistencia térmica",fr:"Bouclier antithermique",pt:"Escudos de Resistência Térmica",ru:"Термостойкие щиты"},Weapon_DoubleShot:{en:"Double shot",de:"Doppelschuss",es:"Doble disparo",fr:"Tir double",pt:"Tiro Duplo",ru:"Двойной выстрел"},Weapon_Efficient:{en:"Efficient",de:"Waffeneffizienz",es:"Arma eficiente",fr:"Arme efficace",pt:"Arma Eficiente",ru:"Эффективное орудие"},Weapon_Focused:{en:"Focused",de:"Waffenfokus",es:"Arma concentrada",fr:"Arme concentrée",pt:"Arma com Foco",ru:"Точное орудие"},Weapon_HighCapacity:{en:"High capacity",de:"Hochleistungsmagazin",es:"Cargador de alta capacidad",fr:"Chargeur grande capacité",pt:"Cartucho de Alta Capacidade",ru:"Вместительный магазин"},Weapon_LightWeight:{en:"Lightweight",de:"Leichtgewichtgeschütz",es:"Anclaje ligero",fr:"Support ultraléger",pt:"Encaixe Leve",ru:"Легкое крепление"},Weapon_LongRange:{en:"Long range",de:"Ferndistanzwaffe",es:"Arma de largo alcance",fr:"Arme à longue portée",pt:"Arma de longa distância",ru:"Дальнобойное орудие"},Weapon_Overcharged:{en:"Overcharged",de:"Überladungswaffe",es:"Arma sobrecargada",fr:"Arme surchargée",pt:"Arma Sobrecarregada",ru:"Усиленное орудие"},Weapon_RapidFire:{en:"Rapid fire",de:"Schnellfeuermodifikation",es:"Modificación de tiro rápido",fr:"Modification de cadence rapide",pt:"Modificação de Disparo Rápido",ru:"Улучшение скорострельности"},Weapon_ShortRange:{en:"Short range",de:"Kurzdistanzblaster",es:"Destructor de corto alcance",fr:"Tir à courte portée",pt:"Disparo de Curto Alcance",ru:"Бластер малого радиуса действия"},Weapon_Sturdy:{en:"Sturdy",de:"Robustes Gestell",es:"Anclaje robusto",fr:"Support robuste",pt:"Encaixe Robusto",ru:"Прочное крепление"}};var BLUEPRINT_NAMES=/* @__PURE__ */createLocalizedNameIndex(blueprint_names_default);function getBlueprintName(blueprintSymbol,locale){return getLocalizedName(BLUEPRINT_NAMES,blueprintSymbol,locale,"getBlueprintName","blueprintSymbol")}export{getBlueprintName};//# sourceMappingURL=chunk-DBDCOHI4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/i18n/blueprints.ts"],"names":["getLocalizedName","createLocalizedNameIndex","blueprint_names_default","BLUEPRINT_NAMES","getBlueprintName","blueprintSymbol","locale"],"mappings":"O,88tBASA,IAAMG,+BAAkCF,yBACpCC,yBA8BG,SAASE,iBAAiBC,gBAAyBC,QACtD,OAAON,iBACHG,gBACAE,gBACAC,OACA,mBACA,kBAER,QAAAF"}
@@ -1 +1 @@
1
- function calculateUnladenMass(hullMass,modules){let value=hullMass;for(const module of modules)value+=module.mass;return value}function calculateCargoCapacity(modules){let value=0;for(const module of modules)value+=module.cargoCapacity??0;return value}function calculateFuelCapacity(reserveFuelCapacity,modules){let main=0;for(const module of modules)main+=module.fuelCapacity??0;return Object.freeze({main:main,reserve:reserveFuelCapacity})}export{calculateCargoCapacity,calculateFuelCapacity,calculateUnladenMass};//# sourceMappingURL=chunk-AFVYCQWL.js.map
1
+ function calculateUnladenMass(hullMass,modules){let value=hullMass;for(const module of modules)value+=module.mass;return value}function calculateCargoCapacity(modules){let value=0;for(const module of modules)value+=module.cargoCapacity??0;return value}function calculateFuelCapacity(reserveFuelCapacity,modules){let main=0;for(const module of modules)main+=module.fuelCapacity??0;return Object.freeze({main:main,reserve:reserveFuelCapacity})}export{calculateCargoCapacity,calculateFuelCapacity,calculateUnladenMass};//# sourceMappingURL=chunk-DCB4COCL.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/ships/loadout-calculations.ts"],"names":["calculateUnladenMass","hullMass","modules","value","module","mass","calculateCargoCapacity","cargoCapacity","calculateFuelCapacity","reserveFuelCapacity","main","fuelCapacity","Object","freeze","reserve"],"mappings":"AA6FO,SAASA,qBACZC,SACAC,SAEA,IAAIC,MAAQF,SACZ,IAAA,MAAWG,UAAUF,QAASC,OAASC,OAAOC,KAC9C,OAAOF,KACX,CAQO,SAASG,uBAAuBJ,SACnC,IAAIC,MAAQ,EACZ,IAAA,MAAWC,UAAUF,QAASC,OAASC,OAAOG,eAAiB,EAC/D,OAAOJ,KACX,CASO,SAASK,sBACZC,oBACAP,SAEA,IAAIQ,KAAO,EACX,IAAA,MAAWN,UAAUF,QAASQ,MAAQN,OAAOO,cAAgB,EAC7D,OAAOC,OAAOC,OAAO,CAAEH,UAAMI,QAASL,qBAC1C,QAAAH,uBAAAE,sBAAAR"}
1
+ {"version":3,"sources":["../src/ships/loadout-calculations.ts"],"names":["calculateUnladenMass","hullMass","modules","value","module","mass","calculateCargoCapacity","cargoCapacity","calculateFuelCapacity","reserveFuelCapacity","main","fuelCapacity","Object","freeze","reserve"],"mappings":"AA+FO,SAASA,qBACZC,SACAC,SAEA,IAAIC,MAAQF,SACZ,IAAA,MAAWG,UAAUF,QAASC,OAASC,OAAOC,KAC9C,OAAOF,KACX,CAQO,SAASG,uBAAuBJ,SACnC,IAAIC,MAAQ,EACZ,IAAA,MAAWC,UAAUF,QAASC,OAASC,OAAOG,eAAiB,EAC/D,OAAOJ,KACX,CASO,SAASK,sBACZC,oBACAP,SAEA,IAAIQ,KAAO,EACX,IAAA,MAAWN,UAAUF,QAASQ,MAAQN,OAAOO,cAAgB,EAC7D,OAAOC,OAAOC,OAAO,CAAEH,UAAMI,QAASL,qBAC1C,QAAAH,uBAAAE,sBAAAR"}
@@ -1 +1 @@
1
- import{getLocalizedName,createLocalizedNameIndex}from"./chunk-RVIYOHYF.js";var experimental_effect_names_default={special_armour_chunky:{en:"Deep Plating",de:"Tiefenüberzug",es:"Enchapado profundo",fr:"Blindage épais",pt:"Revestimento espesso",ru:"Утолщенная броня"},special_armour_explosive:{en:"Layered Plating",de:"Schichtüberzug",es:"Enchapado a capas",fr:"Blindage à couches",pt:"Revestimento em camadas",ru:"Многослойная броня"},special_armour_kinetic:{en:"Angled Plating",de:"Winkelüberzug",es:"Enchapado en ángulo",fr:"Blindage anguleux",pt:"Revestimento inclinado",ru:"Угловая броня"},special_armour_thermic:{en:"Reflective Plating",de:"Reflektorüberzug",es:"Enchapado reflectante",fr:"Blindage réfléchissant",pt:"Revestimento refletor",ru:"Отражающая броня"},special_auto_loader:{en:"Auto Loader",de:"Auto-Laden",es:"Autocargador",fr:"Rechargement automatique",pt:"Carregador Automático",ru:"Автоматическая система заряжения"},special_blinding_shell:{en:"Dazzle Shell",de:"Blendgranate",es:"Proyectil deslumbrante",fr:"Obus aveuglant",pt:"Projétil Cegante",ru:"Ослепляющие снаряды"},special_choke_canister:{en:"Ion Disruption",de:"Ionen-Disruption",es:"Disruptor de iones",fr:"Perturbation ionique",pt:"Perturbação de Íon",ru:"Ионный дестабилизатор"},special_concordant_sequence:{en:"Concordant Sequence",de:"Konkordante Sequenz",es:"Secuencia concordante",fr:"Séquence concordante",pt:"Sequência Concordante",ru:"Последовательность координации"},special_corrosive_shell:{en:"Corrosive Shell",de:"Korrosionsgranate",es:"Proyectil corrosivo",fr:"Obus corrosif",pt:"Projétil Corrosivo",ru:"Разъедающие снаряды"},special_deep_cut_payload:{en:"Penetrator Payload",de:"Durchdringungsladung",es:"Carga explosiva penetradora",fr:"Charge explosive perforante",pt:"Carga Penetrante",ru:"Бронебойные снаряды"},special_dispersal_field:{en:"Dispersal Field",de:"Streuungsfeld",es:"Campo de dispersión",fr:"Champ de dispersion",pt:"Campo de Dispersão",ru:"Рассеивающее поле"},special_distortion_field:{en:"Inertial Impact",de:"Inertialeinschlag",es:"Impacto inercial",fr:"Impact inertiel",pt:"Impacto Inercial",ru:"Инерционный удар"},special_drag_munitions:{en:"Drag Munitions",de:"Ableitungsmunition",es:"Munición lastre",fr:"Munitions à inertie",pt:"Munições de arrasto",ru:"Замедляющие боеприпасы"},special_emissive_munitions:{en:"Emissive Munitions",de:"Emissionsmunition",es:"Munición de emisiones",fr:"Munitions à émissions",pt:"Munições Emissivas",ru:"Эмиссионные боеприпасы"},special_engine_cooled:{en:"Thermal Spread",de:"Thermischer Verteiler",es:"Difusión térmica",fr:"Répartition thermique",pt:"Propagação térmica",ru:"Рассеивание тепла"},special_engine_haulage:{en:"Drive Distributors",de:"Antriebsdistributoren",es:"Distribuidores de motor",fr:"Répartiteurs de réacteur",pt:"Distribuidores do motor",ru:"Распределители тяги"},special_engine_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_engine_overloaded:{en:"Drag Drives",de:"Drag-Antriebe",es:"Motores de arrastre",fr:"Débridage des réacteurs",pt:"Motores de arrasto",ru:"Ускорители"},special_engine_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_feedback_cascade_cooled:{en:"Feedback Cascade",de:"Rückkopplungskaskade",es:"Retroalimentación en cascada",fr:"Réverbération énergétique",pt:"Cascata de Realimentação",ru:"Ответный залп"},special_force_shell:{en:"Force Shell",de:"Impulsgranate",es:"Proyectil de fuerza",fr:"Munition surpuissante",pt:"Projétil de Força",ru:"Усиленные снаряды"},special_fsd_cooled:{en:"Thermal Spread",de:"Thermischer Verteiler",es:"Difusión térmica",fr:"Répartition thermique",pt:"Propagação térmica",ru:"Рассеивание тепла"},special_fsd_fuelcapacity:{en:"Deep Charge",de:"Tieflader",es:"Carga intensa",fr:"Charge profonde",pt:"Carga intensa",ru:"Заряд повышенной мощности"},special_fsd_heavy:{en:"Mass Manager",de:"Massemanager",es:"Gestión de masa",fr:"Gestionnaire de masse",pt:"Gestor de massa",ru:"Распределитель гравитации"},special_fsd_interrupt:{en:"FSD Interrupt",de:"FSA-Unterbrechung",es:"Interrupción MDD",fr:"Interruption FSD",pt:"Interruptor de MDD",ru:"Помеха для FSD"},special_fsd_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_fsd_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_high_yield_shell:{en:"High Yield Shell",de:"Hocheffizienzgranate",es:"Proyectil de alto rendimiento",fr:"Obus à fragmentation",pt:"Projétil de Alto Rendimento",ru:"Снаряды большой мощности"},special_hullreinforcement_chunky:{en:"Deep Plating",de:"Tiefenüberzug",es:"Enchapado profundo",fr:"Blindage épais",pt:"Revestimento espesso",ru:"Утолщенная броня"},special_hullreinforcement_explosive:{en:"Layered Plating",de:"Schichtüberzug",es:"Enchapado a capas",fr:"Blindage à couches",pt:"Revestimento em camadas",ru:"Многослойная броня"},special_hullreinforcement_kinetic:{en:"Angled Plating",de:"Winkelüberzug",es:"Enchapado en ángulo",fr:"Blindage anguleux",pt:"Revestimento inclinado",ru:"Угловая броня"},special_hullreinforcement_thermic:{en:"Reflective Plating",de:"Reflektorüberzug",es:"Enchapado reflectante",fr:"Blindage réfléchissant",pt:"Revestimento refletor",ru:"Отражающая броня"},special_incendiary_rounds:{en:"Incendiary Rounds",de:"Hitzesalven",es:"Munición incendiaria",fr:"Munitions incendiaires",pt:"Munição Incendiária",ru:"Зажигательные боеприпасы"},special_lock_breaker:{en:"Target Lock Breaker",de:"Zielvisierbrecher",es:"Interruptor de selección",fr:"Interrupteur de verrouillage de cible",pt:"Quebra de Trava de Alvo",ru:"Генератор помех для системы захвата цели"},special_mass_lock:{en:"Mass Lock Munition",de:"Massesperremunition",es:"Munición de bloqueo de masa",fr:"Munitions à champ gravitationnel",pt:"Munição de Bloqueio de Massa",ru:"Боеприпасы с гравитационным захватом"},special_overload_munitions:{en:"Overload Munitions",de:"Überladungsmunition",es:"Munición sobrecargada",fr:"Munitions à surcharge",pt:"Munições de Sobrecarga",ru:"Вызывающие перегрузку боеприпасы"},special_penetrator_munitions:{en:"Penetrator Munitions",de:"Penetrationsmunition",es:"Munición penetradora",fr:"Munitions perforantes",pt:"Munições Penetrantes",ru:"Бронебойные боеголовки"},special_phasing_sequence:{en:"Phasing Sequence",de:"Phasensequenz",es:"Secuencia de fase",fr:"Séquence de phase",pt:"Sequência Faseada",ru:"Последовательность фазирования"},special_plasma_slug:{en:"Plasma Slug",de:"Plasmaprojektil",es:"Proyectil de plasma",fr:"Munitions à plasma",pt:"Projétil de Plasma",ru:"Плазменный рельсовый снаряд"},special_plasma_slug_cooled:{en:"Plasma Slug",de:"Plasmaprojektil",es:"Proyectil de plasma",fr:"Munitions à plasma",pt:"Projétil de Plasma",ru:"Плазменный рельсовый снаряд"},special_powerdistributor_capacity:{en:"Cluster Capacitors",de:"Cluster-Kondensatoren",es:"Agrupación de capacitadores",fr:"Batterie de condensateurs",pt:"Banco de capacitores",ru:"Кассетные конденсаторы"},special_powerdistributor_efficient:{en:"Flow Control",de:"Flusssteuerung",es:"Control de flujo",fr:"Contrôle du flux",pt:"Controle de fluxo",ru:"Контроль интенсивности"},special_powerdistributor_fast:{en:"Super Conduits",de:"Superleiter",es:"Superconductores",fr:"Super conduits",pt:"Supercondutores",ru:"Сверхпроводники"},special_powerdistributor_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_powerdistributor_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_powerplant_cooled:{en:"Thermal Spread",de:"Thermischer Verteiler",es:"Difusión térmica",fr:"Répartition thermique",pt:"Propagação térmica",ru:"Рассеивание тепла"},special_powerplant_highcharge:{en:"Monstered",de:"Monsterhaft",es:"A lo bestia",fr:"Modèle XXL",pt:"Parrudo",ru:"Монстрация"},special_powerplant_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_powerplant_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_radiant_canister:{en:"Radiant Canister",de:"Strahlenbehältnis",es:"Cartucho radiactivo",fr:"Cartouche irradiante",pt:"Mina Radiante",ru:"Светящаяся кассета"},special_regeneration_sequence:{en:"Regeneration Sequence",de:"Regenerierungssequenz",es:"Secuencia de regeneración",fr:"Séquence de régénération",pt:"Sequência de Regeneração",ru:"Последовательность восстановления"},special_reverberating_cascade:{en:"Reverberating Cascade",de:"Rückstrahlkaskade",es:"Reverberación en cascada",fr:"Réverbération en série",pt:"Cascata Reverberante",ru:"Отраженный залп"},special_scramble_spectrum:{en:"Scramble Spectrum",de:"Störspektrum",es:"Espectro de interferencias",fr:"Spectre de brouillage",pt:"Espectro Randômico",ru:"Отключающая сетка"},special_screening_shell:{en:"Screening Shell",de:"Sperrgranate",es:"Proyectil de pantalla",fr:"Obus de criblage",pt:"Projétil de Triagem",ru:"Заслоняющие снаряды"},special_shield_efficient:{en:"Lo-draw",de:"Leichtbedarf",es:"Consumo reducido",fr:"Consommation réduite",pt:"Baixo consumo",ru:"Пониженное потребление"},special_shield_health:{en:"Hi-Cap",de:"Hochkondensatoren",es:"Límite elevado",fr:"Puissance renforcée",pt:"Alta capacitância",ru:"Высокая емкость"},special_shield_kinetic:{en:"Force Block",de:"Kraft-Block",es:"Bloqueo de fuerza",fr:"Blocage de force",pt:"Bloqueio cinético",ru:"Усиленная блокировка"},special_shield_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_shield_regenerative:{en:"Fast Charge",de:"Schnelllader",es:"Carga rápida",fr:"Chargement rapide",pt:"Carga rápida",ru:"Быстрый заряд"},special_shield_resistive:{en:"Multi-weave",de:"Multigewebe",es:"Multitejido",fr:"Filaments multiples",pt:"Rede múltipla",ru:"Мультипрошивка"},special_shield_thermic:{en:"Thermo Block",de:"Thermo-Block",es:"Bloqueo térmico",fr:"Blocage thermique",pt:"Bloqueio térmico",ru:"Блокировка тепла"},special_shield_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_shieldbooster_chunky:{en:"Super Capacitors",de:"Superkondensatoren",es:"Supercapacitadores",fr:"Super condensateurs",pt:"Supercapacitores",ru:"Суперконденсаторы"},special_shieldbooster_efficient:{en:"Flow Control",de:"Flusssteuerung",es:"Control de flujo",fr:"Contrôle du flux",pt:"Controle de fluxo",ru:"Контроль интенсивности"},special_shieldbooster_explosive:{en:"Blast Block",de:"Blast-Block",es:"Bloqueo de explosivos",fr:"Blocage d'explosion",pt:"Bloqueio explosivo",ru:"Блокировка взрыва"},special_shieldbooster_kinetic:{en:"Force Block",de:"Kraft-Block",es:"Bloqueo de fuerza",fr:"Blocage de force",pt:"Bloqueio cinético",ru:"Усиленная блокировка"},special_shieldbooster_thermic:{en:"Thermo Block",de:"Thermo-Block",es:"Bloqueo térmico",fr:"Blocage thermique",pt:"Bloqueio térmico",ru:"Блокировка тепла"},special_shieldbooster_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_shieldcell_efficient:{en:"Flow Control",de:"Flusssteuerung",es:"Control de flujo",fr:"Contrôle du flux",pt:"Controle de fluxo",ru:"Контроль интенсивности"},special_shieldcell_gradual:{en:"Recycling Cell",de:"Recyclingzelle",es:"Célula de reciclaje",fr:"Recyclage des cellules",pt:"Célula de reciclagem",ru:"Рециркуляционная ячейка"},special_shieldcell_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_shieldcell_oversized:{en:"Boss Cells",de:"Bosszellen",es:"Células excelentes",fr:"Cellules XXL",pt:"Células resistentes",ru:"Босс-ячейки"},special_shieldcell_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_shiftlock_canister:{en:"Shift-lock Canister",de:"Frameshift-Blocker",es:"Cartucho bloqueador",fr:"Cartouche de verrouillage FSD",pt:"Mina de Trava de Distorção",ru:"Рамоблокирующая кассета"},special_smart_rounds:{en:"Smart Rounds",de:"Intelligente Munition",es:"Munición inteligente",fr:"Munitions intelligentes",pt:"Projéteis Inteligentes",ru:"Умные боеприпасы"},special_super_penetrator:{en:"Super Penetrator"},special_super_penetrator_cooled:{en:"Super Penetrator",de:"Super-Durchdringer",es:"Súper penetrador",fr:"Munitions ultra perforantes",pt:"Super Penetrador",ru:"Модуль сверхпробития"},special_thermal_cascade:{en:"Thermal Cascade",de:"Thermalkaskade",es:"Cascada térmica",fr:"Réverbération thermique",pt:"Cascata Térmica",ru:"Термический залп"},special_thermal_conduit:{en:"Thermal Conduit",de:"Thermischer Verstärker",es:"Conductor térmico",fr:"Décupleur thermique",pt:"Condutor Térmico",ru:"Проводник тепла"},special_thermal_vent:{en:"Thermal Vent",de:"Thermische Entlastung",es:"Ventilación térmica",fr:"Ventilation thermique",pt:"Exaustor Térmico",ru:"Теплоотдача"},special_thermalshock:{en:"Thermal Shock",de:"Thermischer Schock",es:"Choque térmico",fr:"Choc thermique",pt:"Choque Térmico",ru:"Тепловой удар"},special_weapon_damage:{en:"Oversized",de:"Übergröße",es:"Mayor tamaño",fr:"Arme XXL",pt:"Reforçado",ru:"Сверхразмер"},special_weapon_efficient:{en:"Flow Control",de:"Flusssteuerung",es:"Control de flujo",fr:"Contrôle du flux",pt:"Controle de fluxo",ru:"Контроль интенсивности"},special_weapon_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_weapon_rateoffire:{en:"Multi-servos",es:"Multiservos",fr:"Servomécanismes multiples",pt:"Servos múltiplos",ru:"Сервосистема"},special_weapon_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"}};var EXPERIMENTAL_EFFECT_NAMES=/* @__PURE__ */createLocalizedNameIndex(experimental_effect_names_default);function getExperimentalEffectName(fdname,locale){return getLocalizedName(EXPERIMENTAL_EFFECT_NAMES,fdname,locale,"getExperimentalEffectName","fdname")}export{getExperimentalEffectName};//# sourceMappingURL=chunk-CJWFY6OX.js.map
1
+ import{getLocalizedName,createLocalizedNameIndex}from"./chunk-RVIYOHYF.js";var experimental_effect_names_default={special_armour_chunky:{en:"Deep Plating",de:"Tiefenüberzug",es:"Enchapado profundo",fr:"Blindage épais",pt:"Revestimento espesso",ru:"Утолщенная броня"},special_armour_explosive:{en:"Layered Plating",de:"Schichtüberzug",es:"Enchapado a capas",fr:"Blindage à couches",pt:"Revestimento em camadas",ru:"Многослойная броня"},special_armour_kinetic:{en:"Angled Plating",de:"Winkelüberzug",es:"Enchapado en ángulo",fr:"Blindage anguleux",pt:"Revestimento inclinado",ru:"Угловая броня"},special_armour_thermic:{en:"Reflective Plating",de:"Reflektorüberzug",es:"Enchapado reflectante",fr:"Blindage réfléchissant",pt:"Revestimento refletor",ru:"Отражающая броня"},special_auto_loader:{en:"Auto Loader",de:"Auto-Laden",es:"Autocargador",fr:"Rechargement automatique",pt:"Carregador Automático",ru:"Автоматическая система заряжения"},special_blinding_shell:{en:"Dazzle Shell",de:"Blendgranate",es:"Proyectil deslumbrante",fr:"Obus aveuglant",pt:"Projétil Cegante",ru:"Ослепляющие снаряды"},special_choke_canister:{en:"Ion Disruption",de:"Ionen-Disruption",es:"Disruptor de iones",fr:"Perturbation ionique",pt:"Perturbação de Íon",ru:"Ионный дестабилизатор"},special_concordant_sequence:{en:"Concordant Sequence",de:"Konkordante Sequenz",es:"Secuencia concordante",fr:"Séquence concordante",pt:"Sequência Concordante",ru:"Последовательность координации"},special_corrosive_shell:{en:"Corrosive Shell",de:"Korrosionsgranate",es:"Proyectil corrosivo",fr:"Obus corrosif",pt:"Projétil Corrosivo",ru:"Разъедающие снаряды"},special_deep_cut_payload:{en:"Penetrator Payload",de:"Durchdringungsladung",es:"Carga explosiva penetradora",fr:"Charge explosive perforante",pt:"Carga Penetrante",ru:"Бронебойные снаряды"},special_dispersal_field:{en:"Dispersal Field",de:"Streuungsfeld",es:"Campo de dispersión",fr:"Champ de dispersion",pt:"Campo de Dispersão",ru:"Рассеивающее поле"},special_distortion_field:{en:"Inertial Impact",de:"Inertialeinschlag",es:"Impacto inercial",fr:"Impact inertiel",pt:"Impacto Inercial",ru:"Инерционный удар"},special_drag_munitions:{en:"Drag Munitions",de:"Ableitungsmunition",es:"Munición lastre",fr:"Munitions à inertie",pt:"Munições de arrasto",ru:"Замедляющие боеприпасы"},special_emissive_munitions:{en:"Emissive Munitions",de:"Emissionsmunition",es:"Munición de emisiones",fr:"Munitions à émissions",pt:"Munições Emissivas",ru:"Эмиссионные боеприпасы"},special_engine_cooled:{en:"Thermal Spread",de:"Thermischer Verteiler",es:"Difusión térmica",fr:"Répartition thermique",pt:"Propagação térmica",ru:"Рассеивание тепла"},special_engine_haulage:{en:"Drive Distributors",de:"Antriebsdistributoren",es:"Distribuidores de motor",fr:"Répartiteurs de réacteur",pt:"Distribuidores do motor",ru:"Распределители тяги"},special_engine_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_engine_overloaded:{en:"Drag Drives",de:"Drag-Antriebe",es:"Motores de arrastre",fr:"Débridage des réacteurs",pt:"Motores de arrasto",ru:"Ускорители"},special_engine_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_feedback_cascade_cooled:{en:"Feedback Cascade",de:"Rückkopplungskaskade",es:"Retroalimentación en cascada",fr:"Réverbération énergétique",pt:"Cascata de Realimentação",ru:"Ответный залп"},special_force_shell:{en:"Force Shell",de:"Impulsgranate",es:"Proyectil de fuerza",fr:"Munition surpuissante",pt:"Projétil de Força",ru:"Усиленные снаряды"},special_fsd_cooled:{en:"Thermal Spread",de:"Thermischer Verteiler",es:"Difusión térmica",fr:"Répartition thermique",pt:"Propagação térmica",ru:"Рассеивание тепла"},special_fsd_fuelcapacity:{en:"Deep Charge",de:"Tieflader",es:"Carga intensa",fr:"Charge profonde",pt:"Carga intensa",ru:"Заряд повышенной мощности"},special_fsd_heavy:{en:"Mass Manager",de:"Massemanager",es:"Gestión de masa",fr:"Gestionnaire de masse",pt:"Gestor de massa",ru:"Распределитель гравитации"},special_fsd_interrupt:{en:"FSD Interrupt",de:"FSA-Unterbrechung",es:"Interrupción MDD",fr:"Interruption FSD",pt:"Interruptor de MDD",ru:"Помеха для FSD"},special_fsd_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_fsd_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_high_yield_shell:{en:"High Yield Shell",de:"Hocheffizienzgranate",es:"Proyectil de alto rendimiento",fr:"Obus à fragmentation",pt:"Projétil de Alto Rendimento",ru:"Снаряды большой мощности"},special_hullreinforcement_chunky:{en:"Deep Plating",de:"Tiefenüberzug",es:"Enchapado profundo",fr:"Blindage épais",pt:"Revestimento espesso",ru:"Утолщенная броня"},special_hullreinforcement_explosive:{en:"Layered Plating",de:"Schichtüberzug",es:"Enchapado a capas",fr:"Blindage à couches",pt:"Revestimento em camadas",ru:"Многослойная броня"},special_hullreinforcement_kinetic:{en:"Angled Plating",de:"Winkelüberzug",es:"Enchapado en ángulo",fr:"Blindage anguleux",pt:"Revestimento inclinado",ru:"Угловая броня"},special_hullreinforcement_thermic:{en:"Reflective Plating",de:"Reflektorüberzug",es:"Enchapado reflectante",fr:"Blindage réfléchissant",pt:"Revestimento refletor",ru:"Отражающая броня"},special_incendiary_rounds:{en:"Incendiary Rounds",de:"Hitzesalven",es:"Munición incendiaria",fr:"Munitions incendiaires",pt:"Munição Incendiária",ru:"Зажигательные боеприпасы"},special_lock_breaker:{en:"Target Lock Breaker",de:"Zielvisierbrecher",es:"Interruptor de selección",fr:"Interrupteur de verrouillage de cible",pt:"Quebra de Trava de Alvo",ru:"Генератор помех для системы захвата цели"},special_mass_lock:{en:"Mass Lock Munition",de:"Massesperremunition",es:"Munición de bloqueo de masa",fr:"Munitions à champ gravitationnel",pt:"Munição de Bloqueio de Massa",ru:"Боеприпасы с гравитационным захватом"},special_overload_munitions:{en:"Overload Munitions",de:"Überladungsmunition",es:"Munición sobrecargada",fr:"Munitions à surcharge",pt:"Munições de Sobrecarga",ru:"Вызывающие перегрузку боеприпасы"},special_penetrator_munitions:{en:"Penetrator Munitions",de:"Penetrationsmunition",es:"Munición penetradora",fr:"Munitions perforantes",pt:"Munições Penetrantes",ru:"Бронебойные боеголовки"},special_phasing_sequence:{en:"Phasing Sequence",de:"Phasensequenz",es:"Secuencia de fase",fr:"Séquence de phase",pt:"Sequência Faseada",ru:"Последовательность фазирования"},special_plasma_slug:{en:"Plasma Slug",de:"Plasmaprojektil",es:"Proyectil de plasma",fr:"Munitions à plasma",pt:"Projétil de Plasma",ru:"Плазменный рельсовый снаряд"},special_plasma_slug_cooled:{en:"Plasma Slug",de:"Plasmaprojektil",es:"Proyectil de plasma",fr:"Munitions à plasma",pt:"Projétil de Plasma",ru:"Плазменный рельсовый снаряд"},special_powerdistributor_capacity:{en:"Cluster Capacitors",de:"Cluster-Kondensatoren",es:"Agrupación de capacitadores",fr:"Batterie de condensateurs",pt:"Banco de capacitores",ru:"Кассетные конденсаторы"},special_powerdistributor_efficient:{en:"Flow Control",de:"Flusssteuerung",es:"Control de flujo",fr:"Contrôle du flux",pt:"Controle de fluxo",ru:"Контроль интенсивности"},special_powerdistributor_fast:{en:"Super Conduits",de:"Superleiter",es:"Superconductores",fr:"Super conduits",pt:"Supercondutores",ru:"Сверхпроводники"},special_powerdistributor_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_powerdistributor_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_powerplant_cooled:{en:"Thermal Spread",de:"Thermischer Verteiler",es:"Difusión térmica",fr:"Répartition thermique",pt:"Propagação térmica",ru:"Рассеивание тепла"},special_powerplant_highcharge:{en:"Monstered",de:"Monsterhaft",es:"A lo bestia",fr:"Modèle XXL",pt:"Parrudo",ru:"Монстрация"},special_powerplant_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_powerplant_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_radiant_canister:{en:"Radiant Canister",de:"Strahlenbehältnis",es:"Cartucho radiactivo",fr:"Cartouche irradiante",pt:"Mina Radiante",ru:"Светящаяся кассета"},special_regeneration_sequence:{en:"Regeneration Sequence",de:"Regenerierungssequenz",es:"Secuencia de regeneración",fr:"Séquence de régénération",pt:"Sequência de Regeneração",ru:"Последовательность восстановления"},special_reverberating_cascade:{en:"Reverberating Cascade",de:"Rückstrahlkaskade",es:"Reverberación en cascada",fr:"Réverbération en série",pt:"Cascata Reverberante",ru:"Отраженный залп"},special_scramble_spectrum:{en:"Scramble Spectrum",de:"Störspektrum",es:"Espectro de interferencias",fr:"Spectre de brouillage",pt:"Espectro Randômico",ru:"Отключающая сетка"},special_screening_shell:{en:"Screening Shell",de:"Sperrgranate",es:"Proyectil de pantalla",fr:"Obus de criblage",pt:"Projétil de Triagem",ru:"Заслоняющие снаряды"},special_shield_efficient:{en:"Lo-draw",de:"Leichtbedarf",es:"Consumo reducido",fr:"Consommation réduite",pt:"Baixo consumo",ru:"Пониженное потребление"},special_shield_health:{en:"Hi-Cap",de:"Hochkondensatoren",es:"Límite elevado",fr:"Puissance renforcée",pt:"Alta capacitância",ru:"Высокая емкость"},special_shield_kinetic:{en:"Force Block",de:"Kraft-Block",es:"Bloqueo de fuerza",fr:"Blocage de force",pt:"Bloqueio cinético",ru:"Усиленная блокировка"},special_shield_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_shield_regenerative:{en:"Fast Charge",de:"Schnelllader",es:"Carga rápida",fr:"Chargement rapide",pt:"Carga rápida",ru:"Быстрый заряд"},special_shield_resistive:{en:"Multi-weave",de:"Multigewebe",es:"Multitejido",fr:"Filaments multiples",pt:"Rede múltipla",ru:"Мультипрошивка"},special_shield_thermic:{en:"Thermo Block",de:"Thermo-Block",es:"Bloqueo térmico",fr:"Blocage thermique",pt:"Bloqueio térmico",ru:"Блокировка тепла"},special_shield_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_shieldbooster_chunky:{en:"Super Capacitors",de:"Superkondensatoren",es:"Supercapacitadores",fr:"Super condensateurs",pt:"Supercapacitores",ru:"Суперконденсаторы"},special_shieldbooster_efficient:{en:"Flow Control",de:"Flusssteuerung",es:"Control de flujo",fr:"Contrôle du flux",pt:"Controle de fluxo",ru:"Контроль интенсивности"},special_shieldbooster_explosive:{en:"Blast Block",de:"Blast-Block",es:"Bloqueo de explosivos",fr:"Blocage d'explosion",pt:"Bloqueio explosivo",ru:"Блокировка взрыва"},special_shieldbooster_kinetic:{en:"Force Block",de:"Kraft-Block",es:"Bloqueo de fuerza",fr:"Blocage de force",pt:"Bloqueio cinético",ru:"Усиленная блокировка"},special_shieldbooster_thermic:{en:"Thermo Block",de:"Thermo-Block",es:"Bloqueo térmico",fr:"Blocage thermique",pt:"Bloqueio térmico",ru:"Блокировка тепла"},special_shieldbooster_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_shieldcell_efficient:{en:"Flow Control",de:"Flusssteuerung",es:"Control de flujo",fr:"Contrôle du flux",pt:"Controle de fluxo",ru:"Контроль интенсивности"},special_shieldcell_gradual:{en:"Recycling Cell",de:"Recyclingzelle",es:"Célula de reciclaje",fr:"Recyclage des cellules",pt:"Célula de reciclagem",ru:"Рециркуляционная ячейка"},special_shieldcell_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_shieldcell_oversized:{en:"Boss Cells",de:"Bosszellen",es:"Células excelentes",fr:"Cellules XXL",pt:"Células resistentes",ru:"Босс-ячейки"},special_shieldcell_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"},special_shiftlock_canister:{en:"Shift-lock Canister",de:"Frameshift-Blocker",es:"Cartucho bloqueador",fr:"Cartouche de verrouillage FSD",pt:"Mina de Trava de Distorção",ru:"Рамоблокирующая кассета"},special_smart_rounds:{en:"Smart Rounds",de:"Intelligente Munition",es:"Munición inteligente",fr:"Munitions intelligentes",pt:"Projéteis Inteligentes",ru:"Умные боеприпасы"},special_super_penetrator:{en:"Super Penetrator"},special_super_penetrator_cooled:{en:"Super Penetrator",de:"Super-Durchdringer",es:"Súper penetrador",fr:"Munitions ultra perforantes",pt:"Super Penetrador",ru:"Модуль сверхпробития"},special_thermal_cascade:{en:"Thermal Cascade",de:"Thermalkaskade",es:"Cascada térmica",fr:"Réverbération thermique",pt:"Cascata Térmica",ru:"Термический залп"},special_thermal_conduit:{en:"Thermal Conduit",de:"Thermischer Verstärker",es:"Conductor térmico",fr:"Décupleur thermique",pt:"Condutor Térmico",ru:"Проводник тепла"},special_thermal_vent:{en:"Thermal Vent",de:"Thermische Entlastung",es:"Ventilación térmica",fr:"Ventilation thermique",pt:"Exaustor Térmico",ru:"Теплоотдача"},special_thermalshock:{en:"Thermal Shock",de:"Thermischer Schock",es:"Choque térmico",fr:"Choc thermique",pt:"Choque Térmico",ru:"Тепловой удар"},special_weapon_damage:{en:"Oversized",de:"Übergröße",es:"Mayor tamaño",fr:"Arme XXL",pt:"Reforçado",ru:"Сверхразмер"},special_weapon_efficient:{en:"Flow Control",de:"Flusssteuerung",es:"Control de flujo",fr:"Contrôle du flux",pt:"Controle de fluxo",ru:"Контроль интенсивности"},special_weapon_lightweight:{en:"Stripped Down",de:"Reduktion",es:"Reducido",fr:"Désossage",pt:"Modelo leve",ru:"Урезанный вариант"},special_weapon_rateoffire:{en:"Multi-servos",es:"Multiservos",fr:"Servomécanismes multiples",pt:"Servos múltiplos",ru:"Сервосистема"},special_weapon_toughened:{en:"Double Braced",de:"Doppelt versteift",es:"Doble puntal",fr:"Armature renforcée",pt:"Braçadeira dupla",ru:"Двойная прочность"}};var EXPERIMENTAL_EFFECT_NAMES=/* @__PURE__ */createLocalizedNameIndex(experimental_effect_names_default);function getExperimentalEffectName(experimentalEffectSymbol,locale){return getLocalizedName(EXPERIMENTAL_EFFECT_NAMES,experimentalEffectSymbol,locale,"getExperimentalEffectName","experimentalEffectSymbol")}export{getExperimentalEffectName};//# sourceMappingURL=chunk-DSMLYA2M.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/i18n/experimental-effects.ts"],"names":["getLocalizedName","createLocalizedNameIndex","experimental_effect_names_default","EXPERIMENTAL_EFFECT_NAMES","getExperimentalEffectName","fdname","locale"],"mappings":"O,+0bASA,IAAMG,yCAA4CF,yBAC9CC,mCA6BG,SAASE,0BAA0BC,OAAgBC,QACtD,OAAON,iBACHG,0BACAE,OACAC,OACA,4BACA,SAER,QAAAF"}
1
+ {"version":3,"sources":["../src/i18n/experimental-effects.ts"],"names":["getLocalizedName","createLocalizedNameIndex","experimental_effect_names_default","EXPERIMENTAL_EFFECT_NAMES","getExperimentalEffectName","experimentalEffectSymbol","locale"],"mappings":"O,+0bASA,IAAMG,yCAA4CF,yBAC9CC,mCA8BG,SAASE,0BACZC,yBACAC,QAEA,OAAON,iBACHG,0BACAE,yBACAC,OACA,4BACA,2BAER,QAAAF"}