@elite-dangerous-almanac/core 0.1.0-beta.7 → 0.1.0-beta.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/PROVENANCE/i18n/SOURCES.md +54 -5
- package/PROVENANCE/materials/SOURCES.md +33 -12
- package/PROVENANCE/ships/SOURCES.md +32 -27
- package/README.md +23 -13
- package/THIRD_PARTY_NOTICES.md +11 -9
- package/dist/{chunk-XYK6DYVQ.js → chunk-32PVERNH.js} +1 -1
- package/dist/chunk-32PVERNH.js.map +1 -0
- package/dist/chunk-4AE22CHV.js +1 -0
- package/dist/chunk-4AE22CHV.js.map +1 -0
- package/dist/chunk-4WC5NHBJ.js +1 -0
- package/dist/chunk-4WC5NHBJ.js.map +1 -0
- package/dist/chunk-53ERRGPM.js +1 -0
- package/dist/{chunk-W7XI3WVA.js.map → chunk-53ERRGPM.js.map} +1 -1
- package/dist/chunk-BYBT5XSW.js +1 -0
- package/dist/chunk-BYBT5XSW.js.map +1 -0
- package/dist/{chunk-Q5MR36RW.js → chunk-DNTN34M4.js} +1 -1
- package/dist/{chunk-Q5MR36RW.js.map → chunk-DNTN34M4.js.map} +1 -1
- package/dist/{chunk-DHOCTGWB.js → chunk-G3AMKCOE.js} +1 -1
- package/dist/{chunk-RIT6MOO5.js → chunk-GVLDFJEY.js} +1 -1
- package/dist/{chunk-RIT6MOO5.js.map → chunk-GVLDFJEY.js.map} +1 -1
- package/dist/chunk-KLIYDSYF.js +1 -0
- package/dist/chunk-KLIYDSYF.js.map +1 -0
- package/dist/{chunk-DYFUHGJQ.js → chunk-KQDJTDLV.js} +1 -1
- package/dist/{chunk-PRQELBIC.js → chunk-MNXWK7PA.js} +1 -1
- package/dist/chunk-P2QOL63K.js +1 -0
- package/dist/chunk-P2QOL63K.js.map +1 -0
- package/dist/{chunk-NQ2ID6BF.js → chunk-Q22LXT53.js} +1 -1
- package/dist/chunk-QF3NYGUJ.js +1 -0
- package/dist/chunk-QF3NYGUJ.js.map +1 -0
- package/dist/chunk-RKLJ7EEE.js +1 -0
- package/dist/chunk-RKLJ7EEE.js.map +1 -0
- package/dist/chunk-UXZJMZEU.js +1 -0
- package/dist/chunk-UXZJMZEU.js.map +1 -0
- package/dist/chunk-V4C6FIE2.js +1 -0
- package/dist/{chunk-TLA6LHLN.js.map → chunk-V4C6FIE2.js.map} +1 -1
- package/dist/{chunk-ESEM3LPU.js → chunk-VARPO47V.js} +1 -1
- package/dist/{chunk-CI3ACMRA.js → chunk-WHWFKHV3.js} +1 -1
- package/dist/{chunk-CI3ACMRA.js.map → chunk-WHWFKHV3.js.map} +1 -1
- package/dist/{chunk-ELIZXUMI.js → chunk-YDBRGW4G.js} +1 -1
- package/dist/i18n/blueprints.js +1 -1
- package/dist/i18n/experimental-effects.js +1 -1
- package/dist/i18n/index.d.ts +3 -1
- package/dist/i18n/index.js +1 -1
- package/dist/i18n/materials.d.ts +31 -0
- package/dist/i18n/materials.js +1 -0
- package/dist/i18n/micro-resources.d.ts +31 -0
- package/dist/i18n/micro-resources.js +1 -0
- package/dist/i18n/modules.js +1 -1
- package/dist/materials/index.js +1 -1
- package/dist/materials/materials-all.js +1 -1
- package/dist/materials/materials.js +1 -1
- package/dist/materials/micro-resources-all.d.ts +2 -2
- package/dist/materials/micro-resources-all.js +1 -1
- package/dist/materials/micro-resources-data.d.ts +3 -3
- package/dist/materials/micro-resources-data.js +1 -1
- package/dist/materials/micro-resources-item.d.ts +3 -3
- package/dist/materials/micro-resources-item.js +1 -1
- package/dist/materials/micro-resources.d.ts +8 -8
- package/dist/materials/micro-resources.js +1 -1
- package/dist/{ship-loadout-DBTsp5g-.d.ts → ship-loadout-BsfKbvKe.d.ts} +94 -48
- package/dist/ships/blueprints.d.ts +6 -7
- package/dist/ships/blueprints.js +1 -1
- package/dist/ships/distributor.d.ts +98 -0
- package/dist/ships/distributor.js +1 -0
- package/dist/ships/distributor.js.map +1 -0
- package/dist/ships/index.d.ts +20 -24
- package/dist/ships/index.js +1 -1
- package/dist/ships/modules-all.js +1 -1
- package/dist/ships/modules.js +1 -1
- package/dist/ships/pre-engineered-stats.d.ts +32 -7
- package/dist/ships/pre-engineered-stats.js +1 -1
- package/dist/ships/pre-engineered.d.ts +35 -53
- package/dist/ships/pre-engineered.js +1 -1
- package/dist/ships/ship-loadout.d.ts +3 -2
- package/dist/ships/ship-loadout.js +1 -1
- package/dist/ships/slef.d.ts +20 -47
- package/dist/ships/slef.js +1 -1
- package/package.json +14 -10
- package/dist/chunk-2YPWFAWM.js +0 -1
- package/dist/chunk-2YPWFAWM.js.map +0 -1
- package/dist/chunk-43LFDZ4T.js +0 -1
- package/dist/chunk-43LFDZ4T.js.map +0 -1
- package/dist/chunk-4TXQWLIQ.js +0 -1
- package/dist/chunk-4TXQWLIQ.js.map +0 -1
- package/dist/chunk-5H74FKY7.js +0 -1
- package/dist/chunk-5H74FKY7.js.map +0 -1
- package/dist/chunk-HOKW2EWE.js +0 -1
- package/dist/chunk-HOKW2EWE.js.map +0 -1
- package/dist/chunk-IAWTRADE.js +0 -1
- package/dist/chunk-IAWTRADE.js.map +0 -1
- package/dist/chunk-OHGOVZ7U.js +0 -1
- package/dist/chunk-OHGOVZ7U.js.map +0 -1
- package/dist/chunk-SQJMIEAQ.js +0 -1
- package/dist/chunk-SQJMIEAQ.js.map +0 -1
- package/dist/chunk-TLA6LHLN.js +0 -1
- package/dist/chunk-W7XI3WVA.js +0 -1
- package/dist/chunk-WCIK2WB7.js +0 -1
- package/dist/chunk-WCIK2WB7.js.map +0 -1
- package/dist/chunk-XYK6DYVQ.js.map +0 -1
- package/dist/ships/decorative-modification-stats.d.ts +0 -112
- package/dist/ships/decorative-modification-stats.js +0 -1
- package/dist/ships/decorative-modifications.d.ts +0 -179
- package/dist/ships/decorative-modifications.js +0 -1
- /package/dist/{chunk-DHOCTGWB.js.map → chunk-G3AMKCOE.js.map} +0 -0
- /package/dist/{chunk-DYFUHGJQ.js.map → chunk-KQDJTDLV.js.map} +0 -0
- /package/dist/{chunk-PRQELBIC.js.map → chunk-MNXWK7PA.js.map} +0 -0
- /package/dist/{chunk-NQ2ID6BF.js.map → chunk-Q22LXT53.js.map} +0 -0
- /package/dist/{chunk-ESEM3LPU.js.map → chunk-VARPO47V.js.map} +0 -0
- /package/dist/{chunk-ELIZXUMI.js.map → chunk-YDBRGW4G.js.map} +0 -0
- /package/dist/{ships/decorative-modification-stats.js.map → i18n/materials.js.map} +0 -0
- /package/dist/{ships/decorative-modifications.js.map → i18n/micro-resources.js.map} +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# Localized game-name catalogues
|
|
2
2
|
|
|
3
3
|
These catalogues keep the canonical English display names already published by the
|
|
4
|
-
ships data domain and add only localized values carried explicitly by
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
ships data domain and add only localized values carried explicitly by accepted sources.
|
|
5
|
+
They are deliberately sparse: absence means that no accepted source carried a value, and
|
|
6
|
+
the lookup API returns `null` for that locale rather than treating English as a
|
|
7
|
+
translation.
|
|
8
8
|
|
|
9
9
|
## `module-names.jsonc`
|
|
10
10
|
|
|
@@ -58,6 +58,55 @@ a translation.
|
|
|
58
58
|
Spanish, French, Portuguese and Russian.
|
|
59
59
|
- **Manual corrections:** none.
|
|
60
60
|
|
|
61
|
+
## `material-names.jsonc`
|
|
62
|
+
|
|
63
|
+
- **Acquired:** 2026-08-16 UTC.
|
|
64
|
+
- **Odyssey Materials Helper revision:** commit
|
|
65
|
+
`23343c453938e724f317c56e9eb7db0dbfa71f78`.
|
|
66
|
+
- **Derivation:** each of the 146 current symbols and its canonical English name comes
|
|
67
|
+
from the three `data/materials/materials-*.jsonc` catalogues. The lower-cased symbol
|
|
68
|
+
joins directly to the final component of Odyssey Materials Helper's message key in
|
|
69
|
+
`locale/material/horizons/{raw,manufactured,encoded}.csv`; only that row's explicit
|
|
70
|
+
localized columns are copied. The source's English column is not copied because the
|
|
71
|
+
owning materials catalogues remain authoritative for canonical names. The canonical
|
|
72
|
+
English values therefore keep the existing `Segment` spelling and omit the source's
|
|
73
|
+
parenthetical Guardian and Thargoid category labels where the owning catalogue does;
|
|
74
|
+
localized columns remain verbatim source values.
|
|
75
|
+
- **Coverage:** English, Spanish and Russian cover all 146 materials. The explicit
|
|
76
|
+
translations cover 128 in German, 140 in French, 140 in Portuguese and 28 in
|
|
77
|
+
Georgian. Fourteen of the source's Georgian values are byte-for-byte equal to the
|
|
78
|
+
canonical English spelling and are retained verbatim; they are explicit source values,
|
|
79
|
+
not lookup-generated fallbacks. The pinned source carries no Simplified Chinese
|
|
80
|
+
material names.
|
|
81
|
+
- **Manual corrections:** none.
|
|
82
|
+
|
|
83
|
+
## `micro-resource-names.jsonc`
|
|
84
|
+
|
|
85
|
+
- **Acquired:** 2026-08-16 UTC.
|
|
86
|
+
- **Odyssey Materials Helper revision:** commit
|
|
87
|
+
`23343c453938e724f317c56e9eb7db0dbfa71f78`.
|
|
88
|
+
- **Supplemental source:** in-game verification, acquired 2026-08-16 UTC; immutable
|
|
89
|
+
revision unavailable.
|
|
90
|
+
- **Derivation:** each of the 226 current symbols and its canonical English name comes
|
|
91
|
+
from the four `data/materials/micro-resources-*.jsonc` catalogues. The 196 FDevIDs-backed
|
|
92
|
+
records join directly to the final component of Odyssey Materials Helper's message key
|
|
93
|
+
in `locale/material/odyssey/{asset,consumable,data,good}.csv`; only that row's explicit
|
|
94
|
+
localized columns are copied. Twenty-eight of the 30 in-game-backed records also have
|
|
95
|
+
rows in Odyssey Materials Helper, while `PowerVirus` and
|
|
96
|
+
`SmallCapacityPowerRegulator` do not. All 30 take the explicit in-game `name` values for
|
|
97
|
+
German, Spanish, French, Brazilian Portuguese and Russian. The Brazilian Portuguese
|
|
98
|
+
values are stored under `pt`, matching the existing catalogue values described below.
|
|
99
|
+
In both cases the owning catalogue remains authoritative for canonical English names.
|
|
100
|
+
- **Coverage:** English, Spanish and Russian cover all 226 micro resources. The explicit
|
|
101
|
+
translations cover 218 in German and Portuguese, 225 in French, 6 in Simplified Chinese
|
|
102
|
+
and 10 in Georgian. Five of the source's Georgian values are byte-for-byte equal to the
|
|
103
|
+
canonical English spelling and are retained verbatim; they are explicit source values,
|
|
104
|
+
not lookup-generated fallbacks.
|
|
105
|
+
- **Manual corrections:** the 30 in-game values labelled Brazilian Portuguese are stored
|
|
106
|
+
under `pt`, matching the 188 existing Portuguese entries because both sets contain the
|
|
107
|
+
same Brazilian Portuguese game text. `pt-BR` lookups resolve these values through the
|
|
108
|
+
regional-to-language fallback.
|
|
109
|
+
|
|
61
110
|
## Deliberate absence: ship names
|
|
62
111
|
|
|
63
112
|
- **Acquired:** 2026-08-14 UTC.
|
|
@@ -82,7 +131,7 @@ a translation.
|
|
|
82
131
|
|
|
83
132
|
## Known gaps
|
|
84
133
|
|
|
85
|
-
Localized coverage follows the
|
|
134
|
+
Localized coverage follows the accepted sources and is not complete for every catalogue or
|
|
86
135
|
locale. Missing values are observable as `null`, never an English fallback. Expanding
|
|
87
136
|
source-backed coverage, localized slot labels and higher-level generated text remains
|
|
88
137
|
tracked by [#245](https://github.com/DarkSession/Elite-Dangerous-Almanac/issues/245).
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# Data sources — `data/materials/`
|
|
2
2
|
|
|
3
|
-
**Acquired:** 2026-07-24. **Upstream revision:** unavailable for both sources below.
|
|
4
|
-
|
|
5
3
|
## Materials — raw, manufactured, encoded
|
|
6
4
|
|
|
5
|
+
**Acquired:** 2026-07-24. **Upstream revision:** unavailable for both sources below.
|
|
6
|
+
|
|
7
7
|
- **Files:** `materials-raw.jsonc`, `materials-manufactured.jsonc`,
|
|
8
8
|
`materials-encoded.jsonc`.
|
|
9
9
|
- **Primary source:** EDCD FDevIDs, `material.csv`. It provides, for each material, the
|
|
@@ -52,18 +52,39 @@ grade 3), which is why it is used to fill the gap.
|
|
|
52
52
|
|
|
53
53
|
- **Files:** `micro-resources-component.jsonc`, `micro-resources-consumable.jsonc`,
|
|
54
54
|
`micro-resources-data.jsonc`, `micro-resources-item.jsonc`.
|
|
55
|
-
- **
|
|
56
|
-
|
|
57
|
-
|
|
55
|
+
- **Sources:**
|
|
56
|
+
- EDCD FDevIDs `microresources.csv`, acquired 2026-07-24; upstream revision
|
|
57
|
+
unavailable. It provides 196 records, including each internal symbol,
|
|
58
|
+
category (Component / Consumable / Data / Item) and English display name.
|
|
59
|
+
- In-game verification, acquired 2026-08-16 UTC; immutable revision unavailable. It
|
|
60
|
+
provides 30 player-facing identities absent from the FDevIDs snapshot, their internal
|
|
61
|
+
identifiers and English display names, and player categories for 29 of them.
|
|
62
|
+
`PowerMegashipData` is the exception documented under manual corrections.
|
|
63
|
+
- Inara component pages, acquired 2026-08-16 UTC; immutable revision unavailable. Its
|
|
64
|
+
six Power data pages independently classify Power Association Data, Power Classified
|
|
65
|
+
Data, Power Industrial Data, Power Injection Malware, Power Megaship Data and Power
|
|
66
|
+
Political Data as Odyssey data resources.
|
|
58
67
|
- **Derivation:**
|
|
59
|
-
- `symbol` is
|
|
60
|
-
with the same field and meaning as on a ship, module or material.
|
|
61
|
-
|
|
68
|
+
- `symbol` is the source's internal id (e.g. `graphene`) — what the player journal
|
|
69
|
+
reports with the same field and meaning as on a ship, module or material. Frontier's
|
|
70
|
+
numeric micro-resource id from the FDevIDs CSV is **not** carried.
|
|
62
71
|
- `name` is the English display name (`Graphene`).
|
|
63
|
-
-
|
|
64
|
-
(matching how ship modules and materials spell their category).
|
|
65
|
-
|
|
66
|
-
on every record.
|
|
72
|
+
- The source category is lower-cased to `component` / `consumable` / `data` / `item`
|
|
73
|
+
(matching how ship modules and materials spell their category). In-game `assets` map
|
|
74
|
+
to `component` and `goods` map to `item`. Each data file holds exactly one category,
|
|
75
|
+
so the category is represented by the file rather than repeated on every record.
|
|
67
76
|
- Micro resources have **no grade and no line** — those belong to the ship-side
|
|
68
77
|
engineering materials above; each data-file record is a plain `{ symbol, name }`
|
|
69
78
|
registry record.
|
|
79
|
+
- Three registered identities are deliberately absent: `FlightData` and
|
|
80
|
+
`Humanoid_ShieldGrenade_Bubble` have no localization and are not player-facing
|
|
81
|
+
resources; `NOCData_Tutorial` is the tutorial-only duplicate of `NOCData` and has the
|
|
82
|
+
same English display name. The localized, player-facing
|
|
83
|
+
`SmallCapacityPowerRegulator` record is retained.
|
|
84
|
+
- **Manual corrections:** `PowerMegashipData` is assigned to `data`. The encoded-material
|
|
85
|
+
classification attached to its in-game localization record is rejected: Inara
|
|
86
|
+
classifies it alongside the other five Power data resources, establishing that it is an
|
|
87
|
+
Odyssey micro resource with no material grade or line. The in-game English names are
|
|
88
|
+
otherwise retained verbatim, including
|
|
89
|
+
`Installation Intelligence Report`, `Personal Protective Equipment` and
|
|
90
|
+
`Contaminated Spire Compound` where the community table differs.
|
|
@@ -1309,10 +1309,10 @@ up straight through with no disambiguation at all. Both paths are evidence that
|
|
|
1309
1309
|
(e.g. coriolis `optmass` on an FSD → `FSDOptimalMass`, `maxfuel` → `MaxFuelPerJump`).
|
|
1310
1310
|
Group-ambiguous keys (`optmass`, `optmul`, `thermload`) are disambiguated by the
|
|
1311
1311
|
blueprint's target module group.
|
|
1312
|
-
- **The `Decorative_*` transformations EDSY lists are not blueprints
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
below
|
|
1312
|
+
- **The `Decorative_*` transformations EDSY lists are not craftable blueprints.** They are
|
|
1313
|
+
real grade-5 ids the game writes in the same field as a blueprint, but name fixed reward
|
|
1314
|
+
variants rather than recipes. They are carried in `pre-engineered.jsonc`; see §Festive
|
|
1315
|
+
variants below.
|
|
1316
1316
|
- **Blueprint keys deliberately left out:**
|
|
1317
1317
|
- **Per-module-group aliases, not extra blueprints.** A blueprint that applies to several
|
|
1318
1318
|
module groups is exposed once per group under a `recipe_sensor_<group>_<mod>`-style
|
|
@@ -1410,7 +1410,7 @@ up straight through with no disambiguation at all. Both paths are evidence that
|
|
|
1410
1410
|
decorative transformation names no recipe, and no engineer applies one. So a
|
|
1411
1411
|
launcher left with only those entries is offering nothing, and its `noblueprints`
|
|
1412
1412
|
reading holds — carrying one already transformed is not the same as being
|
|
1413
|
-
engineerable. §
|
|
1413
|
+
engineerable. §Festive variants has the evidence.
|
|
1414
1414
|
- **Where EDSY records one generic id and the journal writes a family-specific one,
|
|
1415
1415
|
coriolis-data settles it.** EDSY collapses Lightweight, Reinforced and Shielded to
|
|
1416
1416
|
`misc_lw` / `misc_rf` / `misc_sh` for eight families; coriolis keys the same lists by
|
|
@@ -1575,18 +1575,23 @@ up straight through with no disambiguation at all. Both paths are evidence that
|
|
|
1575
1575
|
identify the module families, and their modifier fields match those families. The live
|
|
1576
1576
|
Inara pages were acquired 2026-08-09 UTC; no immutable revision is exposed.
|
|
1577
1577
|
|
|
1578
|
-
##
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
|
|
1582
|
-
|
|
1583
|
-
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
the
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
|
|
1578
|
+
## Pre-engineered modules
|
|
1579
|
+
|
|
1580
|
+
### Festive variants
|
|
1581
|
+
|
|
1582
|
+
- **File:** `pre-engineered.jsonc`. Three grade-5 records pair
|
|
1583
|
+
`Hpt_FlakMortar_Turret_Medium` with `Decorative_Green`, `Decorative_Red` or
|
|
1584
|
+
`Decorative_Yellow`, the same fixed-variant relation used by the other records.
|
|
1585
|
+
- **Source:** [issue #53](https://github.com/DarkSession/Elite-Dangerous-Almanac/issues/53)
|
|
1586
|
+
preserves the three relevant lines from a repository-owner `StoredModules` capture
|
|
1587
|
+
(521 stored modules, 2026-08-07 UTC): one medium turreted Remote Release Flak Launcher
|
|
1588
|
+
per colour, carrying `Decorative_Green`, `Decorative_Red` or `Decorative_Yellow` in
|
|
1589
|
+
`EngineerModifications`. The full capture is not checked into this repository. The
|
|
1590
|
+
repository owner's direct in-game reading supplies grade 5. Those three are the only
|
|
1591
|
+
ones of the capture's 46 distinct spellings reported not to name a recipe; every other
|
|
1592
|
+
spelling, down to the lower-case `weapon_longrange` written on a Guardian Shard Cannon,
|
|
1593
|
+
resolves against the blueprint catalogue. The festive identities have no material cost
|
|
1594
|
+
or applying engineer, so they are fixed transformations rather than craftable recipes.
|
|
1590
1595
|
- **They are not cosmetic-only: each carries a −99% `Damage` modifier.** A festive launcher
|
|
1591
1596
|
fires fireworks rather than flak. The repository owner's outfitting panel reads −99.0%,
|
|
1592
1597
|
0.3 damage and 0.2 damage/s. The medium turreted launcher's 34 base damage becomes 0.34,
|
|
@@ -1596,17 +1601,17 @@ up straight through with no disambiguation at all. Both paths are evidence that
|
|
|
1596
1601
|
- **Engineering availability:** the launchers were awarded already transformed; no
|
|
1597
1602
|
engineer applies the transformation. The acquisition route is the contributor's
|
|
1598
1603
|
account, not a field in the capture.
|
|
1599
|
-
-
|
|
1600
|
-
Remote Release Flak Launcher (`Hpt_FlakMortar_Turret_Medium`) is the only module
|
|
1601
|
-
capture shows carrying
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
|
|
1604
|
+
- **The records bind the transformation to what has been observed.** The medium turreted
|
|
1605
|
+
Remote Release Flak Launcher (`Hpt_FlakMortar_Turret_Medium`) is the only module the
|
|
1606
|
+
public capture excerpt shows carrying one, so it is the only base symbol paired with these identities.
|
|
1607
|
+
Nothing in the evidence supports applying `Decorative_*` to an arbitrary damage-bearing
|
|
1608
|
+
module.
|
|
1609
|
+
- **`name` pairs the festive naming with the launcher and the id's colour.** No registry
|
|
1610
|
+
publishes the outfitting panel's own string: EDSY carries the transformation, not a
|
|
1611
|
+
label. The festive names come from the repository owner's account.
|
|
1606
1612
|
|
|
1607
|
-
|
|
1613
|
+
### Other pre-engineered variants
|
|
1608
1614
|
|
|
1609
|
-
- **File:** `pre-engineered.jsonc`.
|
|
1610
1615
|
- **Guardian coverage is complete.** There are no pre-engineered Guardian power plant,
|
|
1611
1616
|
distributor, hull-reinforcement, module-reinforcement, shield-reinforcement or
|
|
1612
1617
|
FSD-booster reward variants, so the absence of an `Int_Guardian*` row is deliberate. The
|
|
@@ -1617,7 +1622,7 @@ up straight through with no disambiguation at all. Both paths are evidence that
|
|
|
1617
1622
|
`{ symbol, name, blueprint, grade, acquisition }`, plus any sourced stat block and
|
|
1618
1623
|
price. The game reports these articles under the base module symbol rather than a
|
|
1619
1624
|
distinct variant symbol.
|
|
1620
|
-
- **`acquisition` says where
|
|
1625
|
+
- **`acquisition` says where each remaining variant comes from.** 73 records: 22 `mercenary`,
|
|
1621
1626
|
30 `communityGoal` and 21 `techBroker`.
|
|
1622
1627
|
- **`mercenary`** — the Merc-Coin shop rows. Source: the in-game outfitting and
|
|
1623
1628
|
blueprint registries, cross-checked against Inara's outfitting and blueprint registries
|
package/README.md
CHANGED
|
@@ -48,7 +48,8 @@ The package has six feature areas:
|
|
|
48
48
|
- `astro`: procedural names, id64 addresses, regions, nebulae and permit locks;
|
|
49
49
|
- `ships`: ships, modules, SLEF loadouts, engineering and build metrics;
|
|
50
50
|
- `equipment`: Odyssey suits, handheld weapons, grade upgrades and modifications;
|
|
51
|
-
- `i18n`: sparse localized module, blueprint
|
|
51
|
+
- `i18n`: sparse localized module, blueprint, experimental-effect, material and
|
|
52
|
+
micro-resource names;
|
|
52
53
|
- `materials`: ship engineering materials and Odyssey micro resources;
|
|
53
54
|
- `commodities`: standard and rare market goods.
|
|
54
55
|
|
|
@@ -126,15 +127,24 @@ do not bundle them. English names are complete; other locales return `null` wher
|
|
|
126
127
|
pinned sources carry no translation instead of silently substituting English:
|
|
127
128
|
|
|
128
129
|
```ts
|
|
129
|
-
import {
|
|
130
|
+
import {
|
|
131
|
+
getBlueprintName,
|
|
132
|
+
getMaterialName,
|
|
133
|
+
getMicroResourceName,
|
|
134
|
+
getModuleName,
|
|
135
|
+
} from '@elite-dangerous-almanac/core/i18n';
|
|
130
136
|
|
|
131
137
|
getModuleName('Int_Hyperdrive_Size6_Class5', 'de-DE'); // -> "Frameshiftantrieb"
|
|
132
138
|
getBlueprintName('FSD_LongRange', 'fr-FR'); // -> "Portée FSD améliorée"
|
|
139
|
+
getMaterialName('GridResistors', 'de'); // -> "Gitterwiderstände"
|
|
140
|
+
getMicroResourceName('graphene', 'fr'); // -> "Graphène"
|
|
133
141
|
```
|
|
134
142
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
143
|
+
The functions return an explicit source value verbatim, so a source-backed spelling may
|
|
144
|
+
happen to equal English; the library itself never supplies an English fallback.
|
|
145
|
+
Unqualified `zh` selects the source's Simplified Chinese (`zh-CN`) names. Explicitly
|
|
146
|
+
different Chinese scripts or regions such as `zh-TW` do not fall back to Simplified
|
|
147
|
+
Chinese and return `null` unless a matching source is added.
|
|
138
148
|
|
|
139
149
|
Registry lookups ignore case and surrounding whitespace. Material, commodity and
|
|
140
150
|
module lookups search their complete registry by default and accept an optional
|
|
@@ -143,16 +153,16 @@ large combined dataset is never an implicit dependency.
|
|
|
143
153
|
|
|
144
154
|
`symbol` is Frontier's item id for a hull, module, suit, handheld weapon, material,
|
|
145
155
|
micro-resource or commodity. Ship engineering uses a separate identity space: `fdname` identifies a
|
|
146
|
-
blueprint recipe, experimental effect or
|
|
156
|
+
blueprint recipe, experimental effect or fixed variant identity. The journal
|
|
147
157
|
normally writes that id in its `Engineering` block, but a few blueprint aliases
|
|
148
158
|
collide across module families; `resolveBlueprintForModule` resolves those journal
|
|
149
|
-
spellings.
|
|
150
|
-
|
|
151
|
-
`
|
|
152
|
-
|
|
153
|
-
`
|
|
154
|
-
|
|
155
|
-
|
|
159
|
+
spellings. Recipe and effect lookups take that `fdname`. Pre-engineered variants instead
|
|
160
|
+
form a relation from the base module: after resolving a module by type or name,
|
|
161
|
+
`getPreEngineeredVariants` lists the fixed articles associated with its `symbol`, and the
|
|
162
|
+
caller can inspect each variant's `blueprint` identity. Those include the grade-5
|
|
163
|
+
`Decorative_*` launchers whose −99% damage modifier is part of the awarded article rather
|
|
164
|
+
than a generally applicable recipe. `ShipLoadout.setPreEngineeredVariant` fits the fixed
|
|
165
|
+
article and writes its corresponding journal block.
|
|
156
166
|
|
|
157
167
|
Personal-equipment modifications are keyed by their recipe symbol, just as ship
|
|
158
168
|
blueprints and experimental effects are keyed by `fdname`; there is no second synthetic
|
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -33,7 +33,7 @@ a verbatim copy produced at build time — edit this file, never the copy.
|
|
|
33
33
|
boost and rotation through the thruster-mass and ENG-pip curves; shield strength and its
|
|
34
34
|
mass curve; shield collapse delay, regeneration and SYS-capacitor recovery timing; armour
|
|
35
35
|
hit points; resistance stacking with its diminishing returns; weapon DPS / capacitor
|
|
36
|
-
draw / heat; and WEP-pip recharge
|
|
36
|
+
draw / heat; SYS- and WEP-pip recharge; and weapons-capacitor endurance. It credits the
|
|
37
37
|
original Frontier-forum research the formulas come from.
|
|
38
38
|
- **The heat model** — the equilibrium heat level a thermal load settles at, how heat
|
|
39
39
|
moves towards it over time, and the multiplier a drained weapons capacitor puts on a
|
|
@@ -49,9 +49,10 @@ a verbatim copy produced at build time — edit this file, never the copy.
|
|
|
49
49
|
the game displays. Both
|
|
50
50
|
describe Frontier's game and fall under the same Frontier notice as every other stat
|
|
51
51
|
here; what differs is how they were arrived at, not who owns them.
|
|
52
|
-
- **The jump-range and fuel algorithm**, **per-axis ENG-pip handling**,
|
|
53
|
-
ammunition rounding** rule and the **build metrics
|
|
54
|
-
ported as fact from, EDSY (credited under Data below).
|
|
52
|
+
- **The jump-range and fuel algorithm**, **per-axis ENG-pip handling**, **ENG-capacitor
|
|
53
|
+
pip-scaled recharge**, the **engineered ammunition rounding** rule and the **build metrics
|
|
54
|
+
above** are cross-checked against, or ported as fact from, EDSY (credited under Data below).
|
|
55
|
+
The jump-range model derives from
|
|
55
56
|
Frontier's "mass effect on hyperspace range" description; Coriolis carries the same maths
|
|
56
57
|
for the metrics, and a clip round-up that omits EDSY's burst step, where EDSY is followed.
|
|
57
58
|
- **Galactic codex region lookup** — resolving a region from galactic coordinates or from a
|
|
@@ -91,7 +92,7 @@ a verbatim copy produced at build time — edit this file, never the copy.
|
|
|
91
92
|
- **[Inara](https://inara.cz/)** — the blueprint and outfitting registries behind the
|
|
92
93
|
Operations pre-engineered blueprints and shop rows, the ship pages used to corroborate
|
|
93
94
|
hull layouts, and the component pages that grade the Thargoid caustic / Titan materials
|
|
94
|
-
absent from FDevIDs.
|
|
95
|
+
absent from FDevIDs and classify Power Megaship Data as an Odyssey data resource.
|
|
95
96
|
- **[EliteDangerousRegionMap](https://github.com/klightspeed/EliteDangerousRegionMap)** by
|
|
96
97
|
**Ben Peddell** ([klightspeed](https://github.com/klightspeed)), **MIT** — the 42
|
|
97
98
|
galactic codex regions, their ids and their lookup geometry. Original region-boundary
|
|
@@ -117,8 +118,9 @@ a verbatim copy produced at build time — edit this file, never the copy.
|
|
|
117
118
|
**Jixxed**, **MIT** — supplies the personal suit and handheld-weapon identities, stats,
|
|
118
119
|
journal symbols, grade-upgrade recipes and engineer-applied modification recipes. A
|
|
119
120
|
CAPI response in its test resources also corroborates the six bundle-granted Vessel
|
|
120
|
-
Hangar variants.
|
|
121
|
-
|
|
121
|
+
Hangar variants. Its language tables supply localized engineering-material and Odyssey
|
|
122
|
+
micro-resource display names. The values and response are factual Elite Dangerous game
|
|
123
|
+
data. Its MIT notice is reproduced below.
|
|
122
124
|
- **[msarilar/EDEngineer](https://github.com/msarilar/EDEngineer)**, **MIT** for its code
|
|
123
125
|
— its `blueprints.json` corroborates which weapons the Overcharged recipe gives a clip
|
|
124
126
|
penalty to. The values are game data.
|
|
@@ -201,8 +203,8 @@ add it here and record the provenance where the data lives.
|
|
|
201
203
|
|
|
202
204
|
## Odyssey Materials Helper license
|
|
203
205
|
|
|
204
|
-
The personal-equipment data
|
|
205
|
-
is reproduced as required:
|
|
206
|
+
The personal-equipment data and localized material and micro-resource name tables are
|
|
207
|
+
derived from Odyssey Materials Helper, whose MIT notice is reproduced as required:
|
|
206
208
|
|
|
207
209
|
```
|
|
208
210
|
Copyright (c) 2026 Jixxed
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{filterByKey}from"./chunk-S4DBNX2B.js";import{requireStringIfPresent}from"./chunk-B5TT26XE.js";import{deepFreeze}from"./chunk-DURKO7JU.js";var pre_engineered_default=[{symbol:"Hpt_Mining_AbrBlstr_Fixed_Small",name:"Abrasion Blaster",blueprint:"AbrasionBlaster_FarReaching",grade:1,acquisition:"mercenary",mercCoinCost:400},{symbol:"Hpt_CausticMissile_Fixed_Medium",name:"Enzyme Missile Rack",blueprint:"EnzymeMissileRack_HighYield",grade:1,acquisition:"mercenary",mercCoinCost:850},{symbol:"Hpt_Slugshot_Gimbal_Small",name:"Fragment Cannon",blueprint:"FragmentCannonSmall_DoubleScreaming",grade:1,acquisition:"mercenary",mercCoinCost:800},{symbol:"Hpt_Slugshot_Gimbal_Large",name:"Fragment Cannon",blueprint:"FragmentCannonLarge_DoubleScreaming",grade:1,acquisition:"mercenary",mercCoinCost:950},{symbol:"Hpt_MiningLaser_Fixed_Small",name:"Mining Laser",blueprint:"MiningLaser_LongRange",grade:1,acquisition:"mercenary",mercCoinCost:450},{symbol:"Hpt_MultiCannon_Fixed_Medium",name:"Multi-Cannon",blueprint:"MultiCannon_Rapid",grade:1,acquisition:"mercenary",mercCoinCost:850},{symbol:"Hpt_Railgun_Fixed_Medium",name:"Rail Gun",blueprint:"RailGun_LongShot",grade:1,acquisition:"mercenary",mercCoinCost:950},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"SeekerMissileRack_Drag",grade:1,acquisition:"mercenary",mercCoinCost:800},{symbol:"Hpt_BasicMissileRack_Fixed_Large",name:"Seeker Missile Rack",blueprint:"SeekerMissileRack_Drag",grade:1,acquisition:"mercenary",mercCoinCost:900},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"SeekerMissileRack_LightWeightThermal",grade:1,acquisition:"mercenary",mercCoinCost:800},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"SeekerMissileRackMedium_Lockdown",grade:1,acquisition:"mercenary",mercCoinCost:800},{symbol:"Hpt_BasicMissileRack_Fixed_Large",name:"Seeker Missile Rack",blueprint:"SeekerMissileRackLarge_Lockdown",grade:1,acquisition:"mercenary",mercCoinCost:900},{symbol:"Int_CargoRack_Size5_Class1",name:"Cargo Rack",blueprint:"CargoRackS5C1_Extended",grade:1,acquisition:"mercenary",mercCoinCost:550},{symbol:"Int_CargoRack_Size6_Class1",name:"Cargo Rack",blueprint:"CargoRackS6C1_Extended",grade:1,acquisition:"mercenary",mercCoinCost:550},{symbol:"Int_DetailedSurfaceScanner_Tiny",name:"Detailed Surface Scanner",blueprint:"DetailedSurfaceScanner_LongRange",grade:1,acquisition:"mercenary",mercCoinCost:350},{symbol:"Int_ModuleReinforcement_Size5_Class2",name:"Module Reinforcement Package",blueprint:"ModuleReinforcement_HeavyDuty",grade:1,acquisition:"mercenary",mercCoinCost:450},{symbol:"Int_PowerDistributor_Size3_Class2",name:"Power Distributor",blueprint:"PowerDistributorS3C2_SupportFocused",grade:1,acquisition:"mercenary",mercCoinCost:300},{symbol:"Int_PowerDistributor_Size3_Class5",name:"Power Distributor",blueprint:"PowerDistributorS3C5_SupportFocused",grade:1,acquisition:"mercenary",mercCoinCost:350},{symbol:"Int_PowerDistributor_Size4_Class2",name:"Power Distributor",blueprint:"PowerDistributorS4C2_SupportFocused",grade:1,acquisition:"mercenary",mercCoinCost:400},{symbol:"Int_PowerDistributor_Size4_Class5",name:"Power Distributor",blueprint:"PowerDistributorS4C5_SupportFocused",grade:1,acquisition:"mercenary",mercCoinCost:450},{symbol:"Int_PowerDistributor_Size5_Class5",name:"Power Distributor",blueprint:"PowerDistributor_Balanced",grade:1,acquisition:"mercenary",mercCoinCost:500},{symbol:"Int_PowerDistributor_Size6_Class5",name:"Power Distributor",blueprint:"PowerDistributorS6C5_SupportFocused",grade:1,acquisition:"mercenary",mercCoinCost:550},{symbol:"Hpt_Mining_AbrBlstr_Fixed_Small",name:"Abrasion Blaster",blueprint:"Weapon_LongRange",grade:5,acquisition:"communityGoal",modifiers:[{label:"DistributorDraw",method:"multiplicative",value:-.5},{label:"FalloffRange",method:"multiplicative",value:4},{label:"Integrity",method:"multiplicative",value:-.5},{label:"MaximumRange",method:"multiplicative",value:4},{label:"PowerDraw",method:"multiplicative",value:-.5},{label:"ThermalLoad",method:"multiplicative",value:-.5}]},{symbol:"Hpt_CausticMissile_Fixed_Medium",name:"Enzyme Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"communityGoal",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:.75},{label:"AmmoMaximum",method:"multiplicative",value:.25},{label:"Damage",method:"multiplicative",value:.5},{label:"Mass",method:"multiplicative",value:.6},{label:"PowerDraw",method:"multiplicative",value:.2}]},{symbol:"Hpt_Slugshot_Gimbal_Small",name:"Fragment Cannon",blueprint:"Weapon_DoubleShot",grade:5,acquisition:"communityGoal",experimental:"special_screening_shell",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1.6667},{label:"AmmoMaximum",method:"multiplicative",value:.67776},{label:"BurstInterval",method:"multiplicative",value:-.06},{label:"BurstSize",method:"overwrite",value:2},{label:"Mass",method:"multiplicative",value:.6},{label:"MaximumRange",method:"multiplicative",value:-.1},{label:"PowerDraw",method:"multiplicative",value:.2}]},{symbol:"Hpt_Slugshot_Gimbal_Large",name:"Fragment Cannon",blueprint:"Weapon_DoubleShot",grade:5,acquisition:"communityGoal",experimental:"special_screening_shell",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1.6667},{label:"AmmoMaximum",method:"multiplicative",value:.67776},{label:"BurstInterval",method:"multiplicative",value:-.06},{label:"BurstSize",method:"overwrite",value:2},{label:"Mass",method:"multiplicative",value:.6},{label:"MaximumRange",method:"multiplicative",value:-.1},{label:"PowerDraw",method:"multiplicative",value:.2}]},{symbol:"Hpt_Guardian_ShardCannon_Fixed_Medium",name:"Guardian Shard Cannon",blueprint:"Weapon_LongRange",grade:5,acquisition:"communityGoal",engineeringLocked:true,modifiers:[{label:"ArmourPenetration",method:"multiplicative",value:1.02},{label:"DistributorDraw",method:"multiplicative",value:5.05},{label:"Jitter",method:"additive",value:-3.5},{label:"Mass",method:"multiplicative",value:.5},{label:"MaximumRange",method:"multiplicative",value:4},{label:"PowerDraw",method:"multiplicative",value:1.3},{label:"ShotSpeed",method:"overwrite",value:1258.89},{label:"ThermalLoad",method:"multiplicative",value:15.5}]},{symbol:"Hpt_MultiCannon_Fixed_Medium",name:"Multi-Cannon",blueprint:"Weapon_RapidFire",grade:1,acquisition:"communityGoal",experimental:"special_phasing_sequence",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:3},{label:"AmmoMaximum",method:"overwrite",value:6400},{label:"BurstInterval",method:"overwrite",value:.1},{label:"FalloffRange",method:"multiplicative",value:-.1},{label:"Jitter",method:"additive",value:3},{label:"MaximumRange",method:"multiplicative",value:-.5},{label:"RoundsPerShot",method:"additive",value:2}]},{symbol:"Hpt_Railgun_Fixed_Medium",name:"Rail Gun",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"communityGoal",experimental:"special_feedback_cascade_cooled",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"BurstInterval",method:"multiplicative",value:-.61145},{label:"FalloffRange",method:"multiplicative",value:5},{label:"Mass",method:"multiplicative",value:.9},{label:"MaximumRange",method:"multiplicative",value:1},{label:"PowerDraw",method:"multiplicative",value:.65},{label:"ReloadTime",method:"multiplicative",value:.25}]},{symbol:"Hpt_Railgun_Fixed_Medium_Burst",name:"Imperial Hammer Rail Gun",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"communityGoal",experimental:"special_super_penetrator",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"BurstInterval",method:"multiplicative",value:-.2635},{label:"Damage",method:"multiplicative",value:-.2},{label:"Mass",method:"multiplicative",value:.7},{label:"PowerDraw",method:"multiplicative",value:.25}]},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"Weapon_HighCapacity",grade:1,acquisition:"communityGoal",experimental:"special_drag_munitions",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:2},{label:"AmmoMaximum",method:"multiplicative",value:2},{label:"BurstInterval",method:"multiplicative",value:-.2},{label:"DistributorDraw",method:"overwrite",value:.34},{label:"Mass",method:"multiplicative",value:1.5},{label:"PowerDraw",method:"multiplicative",value:.25}]},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"communityGoal",experimental:"special_fsd_interrupt",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"ArmourPenetration",method:"multiplicative",value:.4},{label:"BurstInterval",method:"multiplicative",value:-.1},{label:"Damage",method:"multiplicative",value:.35},{label:"Integrity",method:"multiplicative",value:1},{label:"Mass",method:"multiplicative",value:1.2},{label:"PowerDraw",method:"multiplicative",value:.3},{label:"ThermalLoad",method:"multiplicative",value:-.1}]},{symbol:"Hpt_BasicMissileRack_Fixed_Large",name:"Seeker Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"communityGoal",experimental:"special_fsd_interrupt",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"ArmourPenetration",method:"multiplicative",value:.4},{label:"BurstInterval",method:"multiplicative",value:-.1},{label:"Damage",method:"multiplicative",value:.35},{label:"Integrity",method:"multiplicative",value:1},{label:"Mass",method:"multiplicative",value:1.2},{label:"PowerDraw",method:"multiplicative",value:.3},{label:"ThermalLoad",method:"multiplicative",value:-.1}]},{symbol:"Hpt_ElectronicCountermeasure_Tiny",name:"Electronic Countermeasure",blueprint:"Misc_LightWeight",grade:5,acquisition:"communityGoal",modifiers:[{label:"Integrity",method:"multiplicative",value:1},{label:"Mass",method:"multiplicative",value:-.85},{label:"PowerDraw",method:"multiplicative",value:1}]},{symbol:"Hpt_CrimeScanner_Size0_Class5",name:"Kill Warrant Scanner",blueprint:"Sensor_FastScan",grade:5,acquisition:"communityGoal",modifiers:[{label:"Integrity",method:"multiplicative",value:-.5},{label:"MaxAngle",method:"multiplicative",value:-.3},{label:"PowerDraw",method:"multiplicative",value:.5},{label:"ScannerRange",method:"multiplicative",value:.65},{label:"ScannerTimeToScan",method:"multiplicative",value:-.8}]},{symbol:"Hpt_CrimeScanner_Size0_Class3",name:"Kill Warrant Scanner",blueprint:"Sensor_FastScan",grade:5,acquisition:"communityGoal",modifiers:[{label:"Integrity",method:"multiplicative",value:-.5},{label:"MaxAngle",method:"multiplicative",value:-.3},{label:"PowerDraw",method:"multiplicative",value:.5},{label:"ScannerRange",method:"multiplicative",value:.65},{label:"ScannerTimeToScan",method:"multiplicative",value:-.8}]},{symbol:"Hpt_PlasmaPointDefence_Turret_Tiny",name:"Point Defence",blueprint:"Misc_LightWeight",grade:5,acquisition:"communityGoal",modifiers:[{label:"Integrity",method:"multiplicative",value:-.5},{label:"Mass",method:"multiplicative",value:-.85},{label:"MaximumRange",method:"multiplicative",value:1},{label:"ThermalLoad",method:"multiplicative",value:.05}]},{symbol:"Int_PowerDistributor_Size3_Class5",name:"Power Distributor",blueprint:"PowerDistributor_PrioritySystems",grade:5,acquisition:"communityGoal",modifiers:[{label:"EnginesCapacity",method:"multiplicative",value:.45},{label:"EnginesRecharge",method:"multiplicative",value:.4},{label:"SystemsCapacity",method:"multiplicative",value:.45},{label:"SystemsRecharge",method:"multiplicative",value:.4},{label:"WeaponsCapacity",method:"multiplicative",value:-.25},{label:"WeaponsRecharge",method:"multiplicative",value:-.2}]},{symbol:"Int_PowerDistributor_Size3_Class2",name:"Power Distributor",blueprint:"PowerDistributor_PrioritySystems",grade:5,acquisition:"communityGoal",modifiers:[{label:"EnginesCapacity",method:"multiplicative",value:.45},{label:"EnginesRecharge",method:"multiplicative",value:.4},{label:"SystemsCapacity",method:"multiplicative",value:.45},{label:"SystemsRecharge",method:"multiplicative",value:.4},{label:"WeaponsCapacity",method:"multiplicative",value:-.25},{label:"WeaponsRecharge",method:"multiplicative",value:-.2}]},{symbol:"Int_PowerDistributor_Size4_Class5",name:"Power Distributor",blueprint:"PowerDistributor_PrioritySystems",grade:5,acquisition:"communityGoal",modifiers:[{label:"EnginesCapacity",method:"multiplicative",value:.45},{label:"EnginesRecharge",method:"multiplicative",value:.4},{label:"SystemsCapacity",method:"multiplicative",value:.45},{label:"SystemsRecharge",method:"multiplicative",value:.4},{label:"WeaponsCapacity",method:"multiplicative",value:-.25},{label:"WeaponsRecharge",method:"multiplicative",value:-.2}]},{symbol:"Int_PowerDistributor_Size4_Class2",name:"Power Distributor",blueprint:"PowerDistributor_PrioritySystems",grade:5,acquisition:"communityGoal",modifiers:[{label:"EnginesCapacity",method:"multiplicative",value:.45},{label:"EnginesRecharge",method:"multiplicative",value:.4},{label:"SystemsCapacity",method:"multiplicative",value:.45},{label:"SystemsRecharge",method:"multiplicative",value:.4},{label:"WeaponsCapacity",method:"multiplicative",value:-.25},{label:"WeaponsRecharge",method:"multiplicative",value:-.2}]},{symbol:"Int_PowerDistributor_Size6_Class5",name:"Power Distributor",blueprint:"PowerDistributor_PrioritySystems",grade:5,acquisition:"communityGoal",modifiers:[{label:"EnginesCapacity",method:"multiplicative",value:.45},{label:"EnginesRecharge",method:"multiplicative",value:.4},{label:"SystemsCapacity",method:"multiplicative",value:.45},{label:"SystemsRecharge",method:"multiplicative",value:.4},{label:"WeaponsCapacity",method:"multiplicative",value:-.25},{label:"WeaponsRecharge",method:"multiplicative",value:-.2}]},{symbol:"Int_Powerplant_Size3_Class5",name:"Power Plant",blueprint:"PowerPlant_Armoured",grade:5,acquisition:"communityGoal",modifiers:[{label:"HeatEfficiency",method:"multiplicative",value:.13},{label:"Integrity",method:"multiplicative",value:.95},{label:"Mass",method:"multiplicative",value:.2},{label:"PowerCapacity",method:"multiplicative",value:.52}]},{symbol:"Int_Powerplant_Size3_Class5",name:"Power Plant",blueprint:"PowerPlant_Boosted",grade:5,acquisition:"communityGoal",modifiers:[{label:"HeatEfficiency",method:"multiplicative",value:.35},{label:"Integrity",method:"multiplicative",value:-.3},{label:"PowerCapacity",method:"multiplicative",value:.6}]},{symbol:"Int_Powerplant_Size4_Class5",name:"Power Plant",blueprint:"PowerPlant_Boosted",grade:5,acquisition:"communityGoal",modifiers:[{label:"HeatEfficiency",method:"multiplicative",value:.35},{label:"Integrity",method:"multiplicative",value:-.3},{label:"PowerCapacity",method:"multiplicative",value:.6}]},{symbol:"Int_Powerplant_Size5_Class5",name:"Power Plant",blueprint:"PowerPlant_Boosted",grade:5,acquisition:"communityGoal",modifiers:[{label:"HeatEfficiency",method:"multiplicative",value:.35},{label:"Integrity",method:"overwrite",value:74},{label:"PowerCapacity",method:"multiplicative",value:.6}]},{symbol:"Int_Hyperdrive_Size3_Class5",name:"Frame Shift Drive",blueprint:"FSD_LongRange",grade:5,acquisition:"communityGoal",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Size4_Class5",name:"Frame Shift Drive",blueprint:"FSD_LongRange",grade:5,acquisition:"communityGoal",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Size6_Class5",name:"Frame Shift Drive",blueprint:"FSD_LongRange",grade:5,acquisition:"communityGoal",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_CargoRack_Size5_Class1",name:"Cargo Rack",blueprint:"CargoRack_IncreasedCapacity",grade:5,acquisition:"communityGoal",modifiers:[{label:"CargoCapacity",method:"multiplicative",value:.34375}]},{symbol:"Int_CargoRack_Size6_Class1",name:"Cargo Rack",blueprint:"CargoRack_IncreasedCapacity",grade:5,acquisition:"communityGoal",modifiers:[{label:"CargoCapacity",method:"multiplicative",value:.34375}]},{symbol:"Int_ShieldGenerator_Size3_Class5",name:"Shield Generator",blueprint:"ShieldGenerator_Kinetic",grade:5,acquisition:"communityGoal",modifiers:[{label:"Integrity",method:"multiplicative",value:.2},{label:"KineticResistance",method:"additive",value:.18},{label:"PowerDraw",method:"multiplicative",value:.4},{label:"ThermicResistance",method:"additive",value:.42}]},{symbol:"Hpt_ATDumbfireMissile_Fixed_Medium",name:"AX Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"techBroker",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"BurstInterval",method:"multiplicative",value:-.3},{label:"Damage",method:"multiplicative",value:-.03},{label:"DistributorDraw",method:"multiplicative",value:-.2},{label:"Jitter",method:"additive",value:.5},{label:"Mass",method:"multiplicative",value:.7},{label:"PowerDraw",method:"multiplicative",value:.2},{label:"ReloadTime",method:"multiplicative",value:-.45}]},{symbol:"Hpt_ATDumbfireMissile_Fixed_Large",name:"AX Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"techBroker",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"BurstInterval",method:"multiplicative",value:-.3},{label:"Damage",method:"multiplicative",value:-.03},{label:"DistributorDraw",method:"multiplicative",value:-.2},{label:"Jitter",method:"additive",value:.5},{label:"Mass",method:"multiplicative",value:.7},{label:"PowerDraw",method:"multiplicative",value:.2},{label:"ReloadTime",method:"multiplicative",value:-.45}]},{symbol:"Hpt_ATMultiCannon_Gimbal_Medium",name:"Enhanced AX Multi-Cannon",blueprint:"MC_Overcharged",grade:5,acquisition:"techBroker",experimental:"special_auto_loader",modifiers:[{label:"Damage",method:"multiplicative",value:.1},{label:"PowerDraw",method:"multiplicative",value:.75},{label:"ThermalLoad",method:"multiplicative",value:3}]},{symbol:"Hpt_ATMultiCannon_Gimbal_Large",name:"Enhanced AX Multi-Cannon",blueprint:"MC_Overcharged",grade:5,acquisition:"techBroker",experimental:"special_auto_loader",modifiers:[{label:"Damage",method:"multiplicative",value:.1},{label:"PowerDraw",method:"multiplicative",value:.75},{label:"ThermalLoad",method:"multiplicative",value:3}]},{symbol:"Hpt_Guardian_GaussCannon_Fixed_Small",name:"Guardian Gauss Cannon",blueprint:"Weapon_RapidFire",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:3},{label:"AmmoMaximum",method:"multiplicative",value:4},{label:"BurstInterval",method:"multiplicative",value:-.38237},{label:"BurstRateOfFire",method:"overwrite",value:10},{label:"BurstSize",method:"overwrite",value:4},{label:"Damage",method:"multiplicative",value:-.75214},{label:"DistributorDraw",method:"multiplicative",value:-.75},{label:"FalloffRange",method:"multiplicative",value:-.2},{label:"ThermalLoad",method:"multiplicative",value:-.75}]},{symbol:"Hpt_Guardian_GaussCannon_Fixed_Medium",name:"Guardian Gauss Cannon",blueprint:"Weapon_RapidFire",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:3},{label:"AmmoMaximum",method:"multiplicative",value:4},{label:"BurstInterval",method:"multiplicative",value:-.38237},{label:"BurstRateOfFire",method:"overwrite",value:10},{label:"BurstSize",method:"overwrite",value:4},{label:"Damage",method:"multiplicative",value:-.75214},{label:"DistributorDraw",method:"multiplicative",value:-.75},{label:"FalloffRange",method:"multiplicative",value:-.2},{label:"ThermalLoad",method:"multiplicative",value:-.75}]},{symbol:"Hpt_Guardian_PlasmaLauncher_Fixed_Small",name:"Guardian Plasma Charger",blueprint:"Weapon_Overcharged",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"AmmoClipSize",method:"overwrite",value:20},{label:"ArmourPenetration",method:"multiplicative",value:.375},{label:"Damage",method:"multiplicative",value:.66},{label:"PowerDraw",method:"multiplicative",value:.3239},{label:"ShotSpeed",method:"multiplicative",value:4},{label:"ThermalLoad",method:"multiplicative",value:.5}]},{symbol:"Hpt_Guardian_PlasmaLauncher_Fixed_Medium",name:"Guardian Plasma Charger",blueprint:"Weapon_Overcharged",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"AmmoClipSize",method:"overwrite",value:20},{label:"ArmourPenetration",method:"multiplicative",value:.375},{label:"Damage",method:"multiplicative",value:.66},{label:"PowerDraw",method:"multiplicative",value:.3239},{label:"ShotSpeed",method:"multiplicative",value:4},{label:"ThermalLoad",method:"multiplicative",value:.5}]},{symbol:"Hpt_Guardian_ShardCannon_Fixed_Small",name:"Guardian Shard Cannon",blueprint:"Weapon_LongRange",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"ArmourPenetration",method:"multiplicative",value:1.02},{label:"DistributorDraw",method:"multiplicative",value:4.2769},{label:"FalloffRange",method:"overwrite",value:1500},{label:"Jitter",method:"additive",value:-3.5},{label:"Mass",method:"multiplicative",value:.5},{label:"MaximumRange",method:"overwrite",value:3e3},{label:"PowerDraw",method:"multiplicative",value:1.3},{label:"ShotSpeed",method:"overwrite",value:3568.6},{label:"ThermalLoad",method:"multiplicative",value:15.5}]},{symbol:"Hpt_Guardian_ShardCannon_Fixed_Medium",name:"Guardian Shard Cannon",blueprint:"Weapon_LongRange",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"ArmourPenetration",method:"multiplicative",value:1.02},{label:"DistributorDraw",method:"overwrite",value:3.43},{label:"FalloffRange",method:"overwrite",value:1500},{label:"Jitter",method:"additive",value:-3.5},{label:"Mass",method:"multiplicative",value:.5},{label:"MaximumRange",method:"overwrite",value:3e3},{label:"PowerDraw",method:"multiplicative",value:1.3},{label:"ShotSpeed",method:"overwrite",value:6299.209},{label:"ThermalLoad",method:"multiplicative",value:15.5}]},{symbol:"Hpt_MiningLaser_Fixed_Small",name:"Mining Laser",blueprint:"Weapon_LongRange",grade:5,acquisition:"techBroker",experimental:"special_incendiary_rounds",modifiers:[{label:"Damage",method:"multiplicative",value:-.05},{label:"DistributorDraw",method:"multiplicative",value:-.5},{label:"FalloffRange",method:"multiplicative",value:7.3333},{label:"Integrity",method:"multiplicative",value:-.5},{label:"MaximumRange",method:"multiplicative",value:4},{label:"PowerDraw",method:"multiplicative",value:-.5},{label:"ThermalLoad",method:"multiplicative",value:-.83}]},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"techBroker",experimental:"special_thermal_cascade",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"BurstInterval",method:"multiplicative",value:-.1},{label:"DistributorDraw",method:"multiplicative",value:-.4},{label:"Integrity",method:"multiplicative",value:-.6},{label:"Mass",method:"multiplicative",value:-.9},{label:"PowerDraw",method:"multiplicative",value:-.2}]},{symbol:"Hpt_HeatSinkLauncher_Turret_Tiny",name:"Heat Sink Launcher",blueprint:"Misc_HeatSinkCapacity",grade:1,acquisition:"techBroker",modifiers:[{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"ReloadTime",method:"multiplicative",value:.75}]},{symbol:"Int_Hyperdrive_Size5_Class5",name:"Frame Shift Drive",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size2_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size3_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size4_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size5_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size6_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size7_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_DetailedSurfaceScanner_Tiny",name:"Detailed Surface Scanner",blueprint:"Sensor_Expanded",grade:5,acquisition:"techBroker",modifiers:[{label:"DSS_PatchRadius",method:"multiplicative",value:1}]}];var PRE_ENGINEERED_MODULES=deepFreeze(pre_engineered_default);function getPreEngineeredVariants(symbol){return filterByKey(PRE_ENGINEERED_MODULES,"symbol",symbol,"getPreEngineeredVariants: symbol")}function getPreEngineeredByBlueprint(fdname){return filterByKey(PRE_ENGINEERED_MODULES,"blueprint",fdname,"getPreEngineeredByBlueprint: fdname")}function isPreEngineered(symbol){requireStringIfPresent(symbol,"isPreEngineered: symbol");return getPreEngineeredVariants(symbol).length>0}export{PRE_ENGINEERED_MODULES,getPreEngineeredByBlueprint,getPreEngineeredVariants,isPreEngineered};//# sourceMappingURL=chunk-XYK6DYVQ.js.map
|
|
1
|
+
import{filterByKey}from"./chunk-S4DBNX2B.js";import{requireStringIfPresent}from"./chunk-B5TT26XE.js";import{deepFreeze}from"./chunk-DURKO7JU.js";var pre_engineered_default=[{symbol:"Hpt_Mining_AbrBlstr_Fixed_Small",name:"Abrasion Blaster",blueprint:"AbrasionBlaster_FarReaching",grade:1,acquisition:"mercenary",mercCoinCost:400},{symbol:"Hpt_CausticMissile_Fixed_Medium",name:"Enzyme Missile Rack",blueprint:"EnzymeMissileRack_HighYield",grade:1,acquisition:"mercenary",mercCoinCost:850},{symbol:"Hpt_Slugshot_Gimbal_Small",name:"Fragment Cannon",blueprint:"FragmentCannonSmall_DoubleScreaming",grade:1,acquisition:"mercenary",mercCoinCost:800},{symbol:"Hpt_Slugshot_Gimbal_Large",name:"Fragment Cannon",blueprint:"FragmentCannonLarge_DoubleScreaming",grade:1,acquisition:"mercenary",mercCoinCost:950},{symbol:"Hpt_MiningLaser_Fixed_Small",name:"Mining Laser",blueprint:"MiningLaser_LongRange",grade:1,acquisition:"mercenary",mercCoinCost:450},{symbol:"Hpt_MultiCannon_Fixed_Medium",name:"Multi-Cannon",blueprint:"MultiCannon_Rapid",grade:1,acquisition:"mercenary",mercCoinCost:850},{symbol:"Hpt_Railgun_Fixed_Medium",name:"Rail Gun",blueprint:"RailGun_LongShot",grade:1,acquisition:"mercenary",mercCoinCost:950},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"SeekerMissileRack_Drag",grade:1,acquisition:"mercenary",mercCoinCost:800},{symbol:"Hpt_BasicMissileRack_Fixed_Large",name:"Seeker Missile Rack",blueprint:"SeekerMissileRack_Drag",grade:1,acquisition:"mercenary",mercCoinCost:900},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"SeekerMissileRack_LightWeightThermal",grade:1,acquisition:"mercenary",mercCoinCost:800},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"SeekerMissileRackMedium_Lockdown",grade:1,acquisition:"mercenary",mercCoinCost:800},{symbol:"Hpt_BasicMissileRack_Fixed_Large",name:"Seeker Missile Rack",blueprint:"SeekerMissileRackLarge_Lockdown",grade:1,acquisition:"mercenary",mercCoinCost:900},{symbol:"Int_CargoRack_Size5_Class1",name:"Cargo Rack",blueprint:"CargoRackS5C1_Extended",grade:1,acquisition:"mercenary",mercCoinCost:550},{symbol:"Int_CargoRack_Size6_Class1",name:"Cargo Rack",blueprint:"CargoRackS6C1_Extended",grade:1,acquisition:"mercenary",mercCoinCost:550},{symbol:"Int_DetailedSurfaceScanner_Tiny",name:"Detailed Surface Scanner",blueprint:"DetailedSurfaceScanner_LongRange",grade:1,acquisition:"mercenary",mercCoinCost:350},{symbol:"Int_ModuleReinforcement_Size5_Class2",name:"Module Reinforcement Package",blueprint:"ModuleReinforcement_HeavyDuty",grade:1,acquisition:"mercenary",mercCoinCost:450},{symbol:"Int_PowerDistributor_Size3_Class2",name:"Power Distributor",blueprint:"PowerDistributorS3C2_SupportFocused",grade:1,acquisition:"mercenary",mercCoinCost:300},{symbol:"Int_PowerDistributor_Size3_Class5",name:"Power Distributor",blueprint:"PowerDistributorS3C5_SupportFocused",grade:1,acquisition:"mercenary",mercCoinCost:350},{symbol:"Int_PowerDistributor_Size4_Class2",name:"Power Distributor",blueprint:"PowerDistributorS4C2_SupportFocused",grade:1,acquisition:"mercenary",mercCoinCost:400},{symbol:"Int_PowerDistributor_Size4_Class5",name:"Power Distributor",blueprint:"PowerDistributorS4C5_SupportFocused",grade:1,acquisition:"mercenary",mercCoinCost:450},{symbol:"Int_PowerDistributor_Size5_Class5",name:"Power Distributor",blueprint:"PowerDistributor_Balanced",grade:1,acquisition:"mercenary",mercCoinCost:500},{symbol:"Int_PowerDistributor_Size6_Class5",name:"Power Distributor",blueprint:"PowerDistributorS6C5_SupportFocused",grade:1,acquisition:"mercenary",mercCoinCost:550},{symbol:"Hpt_Mining_AbrBlstr_Fixed_Small",name:"Abrasion Blaster",blueprint:"Weapon_LongRange",grade:5,acquisition:"communityGoal",modifiers:[{label:"DistributorDraw",method:"multiplicative",value:-.5},{label:"FalloffRange",method:"multiplicative",value:4},{label:"Integrity",method:"multiplicative",value:-.5},{label:"MaximumRange",method:"multiplicative",value:4},{label:"PowerDraw",method:"multiplicative",value:-.5},{label:"ThermalLoad",method:"multiplicative",value:-.5}]},{symbol:"Hpt_CausticMissile_Fixed_Medium",name:"Enzyme Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"communityGoal",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:.75},{label:"AmmoMaximum",method:"multiplicative",value:.25},{label:"Damage",method:"multiplicative",value:.5},{label:"Mass",method:"multiplicative",value:.6},{label:"PowerDraw",method:"multiplicative",value:.2}]},{symbol:"Hpt_Slugshot_Gimbal_Small",name:"Fragment Cannon",blueprint:"Weapon_DoubleShot",grade:5,acquisition:"communityGoal",experimental:"special_screening_shell",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1.6667},{label:"AmmoMaximum",method:"multiplicative",value:.67776},{label:"BurstInterval",method:"multiplicative",value:-.06},{label:"BurstSize",method:"overwrite",value:2},{label:"Mass",method:"multiplicative",value:.6},{label:"MaximumRange",method:"multiplicative",value:-.1},{label:"PowerDraw",method:"multiplicative",value:.2}]},{symbol:"Hpt_Slugshot_Gimbal_Large",name:"Fragment Cannon",blueprint:"Weapon_DoubleShot",grade:5,acquisition:"communityGoal",experimental:"special_screening_shell",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1.6667},{label:"AmmoMaximum",method:"multiplicative",value:.67776},{label:"BurstInterval",method:"multiplicative",value:-.06},{label:"BurstSize",method:"overwrite",value:2},{label:"Mass",method:"multiplicative",value:.6},{label:"MaximumRange",method:"multiplicative",value:-.1},{label:"PowerDraw",method:"multiplicative",value:.2}]},{symbol:"Hpt_Guardian_ShardCannon_Fixed_Medium",name:"Guardian Shard Cannon",blueprint:"Weapon_LongRange",grade:5,acquisition:"communityGoal",engineeringLocked:true,modifiers:[{label:"ArmourPenetration",method:"multiplicative",value:1.02},{label:"DistributorDraw",method:"multiplicative",value:5.05},{label:"Jitter",method:"additive",value:-3.5},{label:"Mass",method:"multiplicative",value:.5},{label:"MaximumRange",method:"multiplicative",value:4},{label:"PowerDraw",method:"multiplicative",value:1.3},{label:"ShotSpeed",method:"overwrite",value:1258.89},{label:"ThermalLoad",method:"multiplicative",value:15.5}]},{symbol:"Hpt_MultiCannon_Fixed_Medium",name:"Multi-Cannon",blueprint:"Weapon_RapidFire",grade:1,acquisition:"communityGoal",experimental:"special_phasing_sequence",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:3},{label:"AmmoMaximum",method:"overwrite",value:6400},{label:"BurstInterval",method:"overwrite",value:.1},{label:"FalloffRange",method:"multiplicative",value:-.1},{label:"Jitter",method:"additive",value:3},{label:"MaximumRange",method:"multiplicative",value:-.5},{label:"RoundsPerShot",method:"additive",value:2}]},{symbol:"Hpt_Railgun_Fixed_Medium",name:"Rail Gun",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"communityGoal",experimental:"special_feedback_cascade_cooled",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"BurstInterval",method:"multiplicative",value:-.61145},{label:"FalloffRange",method:"multiplicative",value:5},{label:"Mass",method:"multiplicative",value:.9},{label:"MaximumRange",method:"multiplicative",value:1},{label:"PowerDraw",method:"multiplicative",value:.65},{label:"ReloadTime",method:"multiplicative",value:.25}]},{symbol:"Hpt_Railgun_Fixed_Medium_Burst",name:"Imperial Hammer Rail Gun",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"communityGoal",experimental:"special_super_penetrator",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"BurstInterval",method:"multiplicative",value:-.2635},{label:"Damage",method:"multiplicative",value:-.2},{label:"Mass",method:"multiplicative",value:.7},{label:"PowerDraw",method:"multiplicative",value:.25}]},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"Weapon_HighCapacity",grade:1,acquisition:"communityGoal",experimental:"special_drag_munitions",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:2},{label:"AmmoMaximum",method:"multiplicative",value:2},{label:"BurstInterval",method:"multiplicative",value:-.2},{label:"DistributorDraw",method:"overwrite",value:.34},{label:"Mass",method:"multiplicative",value:1.5},{label:"PowerDraw",method:"multiplicative",value:.25}]},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"communityGoal",experimental:"special_fsd_interrupt",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"ArmourPenetration",method:"multiplicative",value:.4},{label:"BurstInterval",method:"multiplicative",value:-.1},{label:"Damage",method:"multiplicative",value:.35},{label:"Integrity",method:"multiplicative",value:1},{label:"Mass",method:"multiplicative",value:1.2},{label:"PowerDraw",method:"multiplicative",value:.3},{label:"ThermalLoad",method:"multiplicative",value:-.1}]},{symbol:"Hpt_BasicMissileRack_Fixed_Large",name:"Seeker Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"communityGoal",experimental:"special_fsd_interrupt",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"ArmourPenetration",method:"multiplicative",value:.4},{label:"BurstInterval",method:"multiplicative",value:-.1},{label:"Damage",method:"multiplicative",value:.35},{label:"Integrity",method:"multiplicative",value:1},{label:"Mass",method:"multiplicative",value:1.2},{label:"PowerDraw",method:"multiplicative",value:.3},{label:"ThermalLoad",method:"multiplicative",value:-.1}]},{symbol:"Hpt_ElectronicCountermeasure_Tiny",name:"Electronic Countermeasure",blueprint:"Misc_LightWeight",grade:5,acquisition:"communityGoal",modifiers:[{label:"Integrity",method:"multiplicative",value:1},{label:"Mass",method:"multiplicative",value:-.85},{label:"PowerDraw",method:"multiplicative",value:1}]},{symbol:"Hpt_CrimeScanner_Size0_Class5",name:"Kill Warrant Scanner",blueprint:"Sensor_FastScan",grade:5,acquisition:"communityGoal",modifiers:[{label:"Integrity",method:"multiplicative",value:-.5},{label:"MaxAngle",method:"multiplicative",value:-.3},{label:"PowerDraw",method:"multiplicative",value:.5},{label:"ScannerRange",method:"multiplicative",value:.65},{label:"ScannerTimeToScan",method:"multiplicative",value:-.8}]},{symbol:"Hpt_CrimeScanner_Size0_Class3",name:"Kill Warrant Scanner",blueprint:"Sensor_FastScan",grade:5,acquisition:"communityGoal",modifiers:[{label:"Integrity",method:"multiplicative",value:-.5},{label:"MaxAngle",method:"multiplicative",value:-.3},{label:"PowerDraw",method:"multiplicative",value:.5},{label:"ScannerRange",method:"multiplicative",value:.65},{label:"ScannerTimeToScan",method:"multiplicative",value:-.8}]},{symbol:"Hpt_PlasmaPointDefence_Turret_Tiny",name:"Point Defence",blueprint:"Misc_LightWeight",grade:5,acquisition:"communityGoal",modifiers:[{label:"Integrity",method:"multiplicative",value:-.5},{label:"Mass",method:"multiplicative",value:-.85},{label:"MaximumRange",method:"multiplicative",value:1},{label:"ThermalLoad",method:"multiplicative",value:.05}]},{symbol:"Int_PowerDistributor_Size3_Class5",name:"Power Distributor",blueprint:"PowerDistributor_PrioritySystems",grade:5,acquisition:"communityGoal",modifiers:[{label:"EnginesCapacity",method:"multiplicative",value:.45},{label:"EnginesRecharge",method:"multiplicative",value:.4},{label:"SystemsCapacity",method:"multiplicative",value:.45},{label:"SystemsRecharge",method:"multiplicative",value:.4},{label:"WeaponsCapacity",method:"multiplicative",value:-.25},{label:"WeaponsRecharge",method:"multiplicative",value:-.2}]},{symbol:"Int_PowerDistributor_Size3_Class2",name:"Power Distributor",blueprint:"PowerDistributor_PrioritySystems",grade:5,acquisition:"communityGoal",modifiers:[{label:"EnginesCapacity",method:"multiplicative",value:.45},{label:"EnginesRecharge",method:"multiplicative",value:.4},{label:"SystemsCapacity",method:"multiplicative",value:.45},{label:"SystemsRecharge",method:"multiplicative",value:.4},{label:"WeaponsCapacity",method:"multiplicative",value:-.25},{label:"WeaponsRecharge",method:"multiplicative",value:-.2}]},{symbol:"Int_PowerDistributor_Size4_Class5",name:"Power Distributor",blueprint:"PowerDistributor_PrioritySystems",grade:5,acquisition:"communityGoal",modifiers:[{label:"EnginesCapacity",method:"multiplicative",value:.45},{label:"EnginesRecharge",method:"multiplicative",value:.4},{label:"SystemsCapacity",method:"multiplicative",value:.45},{label:"SystemsRecharge",method:"multiplicative",value:.4},{label:"WeaponsCapacity",method:"multiplicative",value:-.25},{label:"WeaponsRecharge",method:"multiplicative",value:-.2}]},{symbol:"Int_PowerDistributor_Size4_Class2",name:"Power Distributor",blueprint:"PowerDistributor_PrioritySystems",grade:5,acquisition:"communityGoal",modifiers:[{label:"EnginesCapacity",method:"multiplicative",value:.45},{label:"EnginesRecharge",method:"multiplicative",value:.4},{label:"SystemsCapacity",method:"multiplicative",value:.45},{label:"SystemsRecharge",method:"multiplicative",value:.4},{label:"WeaponsCapacity",method:"multiplicative",value:-.25},{label:"WeaponsRecharge",method:"multiplicative",value:-.2}]},{symbol:"Int_PowerDistributor_Size6_Class5",name:"Power Distributor",blueprint:"PowerDistributor_PrioritySystems",grade:5,acquisition:"communityGoal",modifiers:[{label:"EnginesCapacity",method:"multiplicative",value:.45},{label:"EnginesRecharge",method:"multiplicative",value:.4},{label:"SystemsCapacity",method:"multiplicative",value:.45},{label:"SystemsRecharge",method:"multiplicative",value:.4},{label:"WeaponsCapacity",method:"multiplicative",value:-.25},{label:"WeaponsRecharge",method:"multiplicative",value:-.2}]},{symbol:"Int_Powerplant_Size3_Class5",name:"Power Plant",blueprint:"PowerPlant_Armoured",grade:5,acquisition:"communityGoal",modifiers:[{label:"HeatEfficiency",method:"multiplicative",value:.13},{label:"Integrity",method:"multiplicative",value:.95},{label:"Mass",method:"multiplicative",value:.2},{label:"PowerCapacity",method:"multiplicative",value:.52}]},{symbol:"Int_Powerplant_Size3_Class5",name:"Power Plant",blueprint:"PowerPlant_Boosted",grade:5,acquisition:"communityGoal",modifiers:[{label:"HeatEfficiency",method:"multiplicative",value:.35},{label:"Integrity",method:"multiplicative",value:-.3},{label:"PowerCapacity",method:"multiplicative",value:.6}]},{symbol:"Int_Powerplant_Size4_Class5",name:"Power Plant",blueprint:"PowerPlant_Boosted",grade:5,acquisition:"communityGoal",modifiers:[{label:"HeatEfficiency",method:"multiplicative",value:.35},{label:"Integrity",method:"multiplicative",value:-.3},{label:"PowerCapacity",method:"multiplicative",value:.6}]},{symbol:"Int_Powerplant_Size5_Class5",name:"Power Plant",blueprint:"PowerPlant_Boosted",grade:5,acquisition:"communityGoal",modifiers:[{label:"HeatEfficiency",method:"multiplicative",value:.35},{label:"Integrity",method:"overwrite",value:74},{label:"PowerCapacity",method:"multiplicative",value:.6}]},{symbol:"Int_Hyperdrive_Size3_Class5",name:"Frame Shift Drive",blueprint:"FSD_LongRange",grade:5,acquisition:"communityGoal",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Size4_Class5",name:"Frame Shift Drive",blueprint:"FSD_LongRange",grade:5,acquisition:"communityGoal",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Size6_Class5",name:"Frame Shift Drive",blueprint:"FSD_LongRange",grade:5,acquisition:"communityGoal",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_CargoRack_Size5_Class1",name:"Cargo Rack",blueprint:"CargoRack_IncreasedCapacity",grade:5,acquisition:"communityGoal",modifiers:[{label:"CargoCapacity",method:"multiplicative",value:.34375}]},{symbol:"Int_CargoRack_Size6_Class1",name:"Cargo Rack",blueprint:"CargoRack_IncreasedCapacity",grade:5,acquisition:"communityGoal",modifiers:[{label:"CargoCapacity",method:"multiplicative",value:.34375}]},{symbol:"Int_ShieldGenerator_Size3_Class5",name:"Shield Generator",blueprint:"ShieldGenerator_Kinetic",grade:5,acquisition:"communityGoal",modifiers:[{label:"Integrity",method:"multiplicative",value:.2},{label:"KineticResistance",method:"additive",value:.18},{label:"PowerDraw",method:"multiplicative",value:.4},{label:"ThermicResistance",method:"additive",value:.42}]},{symbol:"Hpt_ATDumbfireMissile_Fixed_Medium",name:"AX Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"techBroker",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"BurstInterval",method:"multiplicative",value:-.3},{label:"Damage",method:"multiplicative",value:-.03},{label:"DistributorDraw",method:"multiplicative",value:-.2},{label:"Jitter",method:"additive",value:.5},{label:"Mass",method:"multiplicative",value:.7},{label:"PowerDraw",method:"multiplicative",value:.2},{label:"ReloadTime",method:"multiplicative",value:-.45}]},{symbol:"Hpt_ATDumbfireMissile_Fixed_Large",name:"AX Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"techBroker",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"BurstInterval",method:"multiplicative",value:-.3},{label:"Damage",method:"multiplicative",value:-.03},{label:"DistributorDraw",method:"multiplicative",value:-.2},{label:"Jitter",method:"additive",value:.5},{label:"Mass",method:"multiplicative",value:.7},{label:"PowerDraw",method:"multiplicative",value:.2},{label:"ReloadTime",method:"multiplicative",value:-.45}]},{symbol:"Hpt_ATMultiCannon_Gimbal_Medium",name:"Enhanced AX Multi-Cannon",blueprint:"MC_Overcharged",grade:5,acquisition:"techBroker",experimental:"special_auto_loader",modifiers:[{label:"Damage",method:"multiplicative",value:.1},{label:"PowerDraw",method:"multiplicative",value:.75},{label:"ThermalLoad",method:"multiplicative",value:3}]},{symbol:"Hpt_ATMultiCannon_Gimbal_Large",name:"Enhanced AX Multi-Cannon",blueprint:"MC_Overcharged",grade:5,acquisition:"techBroker",experimental:"special_auto_loader",modifiers:[{label:"Damage",method:"multiplicative",value:.1},{label:"PowerDraw",method:"multiplicative",value:.75},{label:"ThermalLoad",method:"multiplicative",value:3}]},{symbol:"Hpt_Guardian_GaussCannon_Fixed_Small",name:"Guardian Gauss Cannon",blueprint:"Weapon_RapidFire",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:3},{label:"AmmoMaximum",method:"multiplicative",value:4},{label:"BurstInterval",method:"multiplicative",value:-.38237},{label:"BurstRateOfFire",method:"overwrite",value:10},{label:"BurstSize",method:"overwrite",value:4},{label:"Damage",method:"multiplicative",value:-.75214},{label:"DistributorDraw",method:"multiplicative",value:-.75},{label:"FalloffRange",method:"multiplicative",value:-.2},{label:"ThermalLoad",method:"multiplicative",value:-.75}]},{symbol:"Hpt_Guardian_GaussCannon_Fixed_Medium",name:"Guardian Gauss Cannon",blueprint:"Weapon_RapidFire",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:3},{label:"AmmoMaximum",method:"multiplicative",value:4},{label:"BurstInterval",method:"multiplicative",value:-.38237},{label:"BurstRateOfFire",method:"overwrite",value:10},{label:"BurstSize",method:"overwrite",value:4},{label:"Damage",method:"multiplicative",value:-.75214},{label:"DistributorDraw",method:"multiplicative",value:-.75},{label:"FalloffRange",method:"multiplicative",value:-.2},{label:"ThermalLoad",method:"multiplicative",value:-.75}]},{symbol:"Hpt_Guardian_PlasmaLauncher_Fixed_Small",name:"Guardian Plasma Charger",blueprint:"Weapon_Overcharged",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"AmmoClipSize",method:"overwrite",value:20},{label:"ArmourPenetration",method:"multiplicative",value:.375},{label:"Damage",method:"multiplicative",value:.66},{label:"PowerDraw",method:"multiplicative",value:.3239},{label:"ShotSpeed",method:"multiplicative",value:4},{label:"ThermalLoad",method:"multiplicative",value:.5}]},{symbol:"Hpt_Guardian_PlasmaLauncher_Fixed_Medium",name:"Guardian Plasma Charger",blueprint:"Weapon_Overcharged",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"AmmoClipSize",method:"overwrite",value:20},{label:"ArmourPenetration",method:"multiplicative",value:.375},{label:"Damage",method:"multiplicative",value:.66},{label:"PowerDraw",method:"multiplicative",value:.3239},{label:"ShotSpeed",method:"multiplicative",value:4},{label:"ThermalLoad",method:"multiplicative",value:.5}]},{symbol:"Hpt_Guardian_ShardCannon_Fixed_Small",name:"Guardian Shard Cannon",blueprint:"Weapon_LongRange",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"ArmourPenetration",method:"multiplicative",value:1.02},{label:"DistributorDraw",method:"multiplicative",value:4.2769},{label:"FalloffRange",method:"overwrite",value:1500},{label:"Jitter",method:"additive",value:-3.5},{label:"Mass",method:"multiplicative",value:.5},{label:"MaximumRange",method:"overwrite",value:3e3},{label:"PowerDraw",method:"multiplicative",value:1.3},{label:"ShotSpeed",method:"overwrite",value:3568.6},{label:"ThermalLoad",method:"multiplicative",value:15.5}]},{symbol:"Hpt_Guardian_ShardCannon_Fixed_Medium",name:"Guardian Shard Cannon",blueprint:"Weapon_LongRange",grade:1,acquisition:"techBroker",engineeringLocked:true,modifiers:[{label:"ArmourPenetration",method:"multiplicative",value:1.02},{label:"DistributorDraw",method:"overwrite",value:3.43},{label:"FalloffRange",method:"overwrite",value:1500},{label:"Jitter",method:"additive",value:-3.5},{label:"Mass",method:"multiplicative",value:.5},{label:"MaximumRange",method:"overwrite",value:3e3},{label:"PowerDraw",method:"multiplicative",value:1.3},{label:"ShotSpeed",method:"overwrite",value:6299.209},{label:"ThermalLoad",method:"multiplicative",value:15.5}]},{symbol:"Hpt_MiningLaser_Fixed_Small",name:"Mining Laser",blueprint:"Weapon_LongRange",grade:5,acquisition:"techBroker",experimental:"special_incendiary_rounds",modifiers:[{label:"Damage",method:"multiplicative",value:-.05},{label:"DistributorDraw",method:"multiplicative",value:-.5},{label:"FalloffRange",method:"multiplicative",value:7.3333},{label:"Integrity",method:"multiplicative",value:-.5},{label:"MaximumRange",method:"multiplicative",value:4},{label:"PowerDraw",method:"multiplicative",value:-.5},{label:"ThermalLoad",method:"multiplicative",value:-.83}]},{symbol:"Hpt_BasicMissileRack_Fixed_Medium",name:"Seeker Missile Rack",blueprint:"Weapon_HighCapacity",grade:5,acquisition:"techBroker",experimental:"special_thermal_cascade",modifiers:[{label:"AmmoClipSize",method:"multiplicative",value:1},{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"BurstInterval",method:"multiplicative",value:-.1},{label:"DistributorDraw",method:"multiplicative",value:-.4},{label:"Integrity",method:"multiplicative",value:-.6},{label:"Mass",method:"multiplicative",value:-.9},{label:"PowerDraw",method:"multiplicative",value:-.2}]},{symbol:"Hpt_HeatSinkLauncher_Turret_Tiny",name:"Heat Sink Launcher",blueprint:"Misc_HeatSinkCapacity",grade:1,acquisition:"techBroker",modifiers:[{label:"AmmoMaximum",method:"multiplicative",value:1},{label:"ReloadTime",method:"multiplicative",value:.75}]},{symbol:"Int_Hyperdrive_Size5_Class5",name:"Frame Shift Drive",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size2_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size3_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size4_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size5_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size6_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_Hyperdrive_Overcharge_Size7_Class5",name:"Frame Shift Drive (SCO)",blueprint:"FSD_LongRange",grade:5,acquisition:"techBroker",modifiers:[{label:"BootTime",method:"multiplicative",value:-.8},{label:"FSDHeatRate",method:"multiplicative",value:.2},{label:"FSDOptimalMass",method:"multiplicative",value:.7},{label:"Integrity",method:"multiplicative",value:-.3},{label:"Mass",method:"multiplicative",value:.3},{label:"PowerDraw",method:"multiplicative",value:.15}]},{symbol:"Int_DetailedSurfaceScanner_Tiny",name:"Detailed Surface Scanner",blueprint:"Sensor_Expanded",grade:5,acquisition:"techBroker",modifiers:[{label:"DSS_PatchRadius",method:"multiplicative",value:1}]},{symbol:"Hpt_FlakMortar_Turret_Medium",name:"Festive Green Remote Release Flak Launcher",blueprint:"Decorative_Green",grade:5,acquisition:"eventReward",modifiers:[{label:"Damage",method:"multiplicative",value:-.99}]},{symbol:"Hpt_FlakMortar_Turret_Medium",name:"Festive Red Remote Release Flak Launcher",blueprint:"Decorative_Red",grade:5,acquisition:"eventReward",modifiers:[{label:"Damage",method:"multiplicative",value:-.99}]},{symbol:"Hpt_FlakMortar_Turret_Medium",name:"Festive Yellow Remote Release Flak Launcher",blueprint:"Decorative_Yellow",grade:5,acquisition:"eventReward",modifiers:[{label:"Damage",method:"multiplicative",value:-.99}]}];var PRE_ENGINEERED_MODULES=deepFreeze(pre_engineered_default);function getPreEngineeredVariants(symbol){return filterByKey(PRE_ENGINEERED_MODULES,"symbol",symbol,"getPreEngineeredVariants: symbol")}function isPreEngineered(symbol){requireStringIfPresent(symbol,"isPreEngineered: symbol");return getPreEngineeredVariants(symbol).length>0}export{PRE_ENGINEERED_MODULES,getPreEngineeredVariants,isPreEngineered};//# sourceMappingURL=chunk-32PVERNH.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/ships/pre-engineered.ts"],"names":["filterByKey","requireStringIfPresent","deepFreeze","pre_engineered_default","symbol","PRE_ENGINEERED_MODULES","getPreEngineeredVariants","isPreEngineered","length"],"mappings":"O,433BAkKO,IAAMK,uBAA0DH,WACnEC,wBA4BG,SAASG,yBAAyBF,QACrC,OAAOJ,YACHK,uBACA,SACAD,OACA,mCAER,CAkBO,SAASG,gBAAgBH,QAC5BH,uBAAuBG,OAAQ,2BAC/B,OAAOE,yBAAyBF,QAAQI,OAAS,CACrD,QAAAH,uBAAAC,yBAAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{normalizeKey,CATALOGUE_KEY,findInKeyIndex}from"./chunk-S4DBNX2B.js";import{requireString}from"./chunk-B5TT26XE.js";var CANONICAL_LOCALE=Object.freeze({en:"en",de:"de",es:"es",fr:"fr",hu:"hu",it:"it",ka:"ka",pt:"pt","pt-br":"pt-BR",ru:"ru","zh-cn":"zh-CN"});function canonicalLocale(locale){return Object.hasOwn(CANONICAL_LOCALE,locale)?CANONICAL_LOCALE[locale]:void 0}function localeCandidates(locale,label){const normalized=requireString(locale,label).trim().replaceAll("_","-").toLowerCase();if(normalized==="zh"||normalized==="zh-hans"||normalized.startsWith("zh-hans-")){return["zh-CN"]}if(normalized.startsWith("zh-")&&normalized!=="zh-cn")return[];const exact=canonicalLocale(normalized);const language=canonicalLocale(normalized.split("-",1)[0]);if(exact===void 0)return language===void 0?[]:[language];return language===void 0||language===exact?[exact]:[exact,language]}function createLocalizedNameIndex(names){const index=/* @__PURE__ */Object.create(null);for(const[identifier,name]of Object.entries(names)){const key=normalizeKey(identifier,CATALOGUE_KEY);if(!Object.hasOwn(index,key))index[key]=name}return Object.freeze(index)}function createDeduplicatedLocalizedNameIndex(catalogue){const index=/* @__PURE__ */Object.create(null);for(const[identifier,nameKey]of Object.entries(catalogue.nameKeys)){const name=catalogue.names[nameKey];if(name===void 0)continue;const key=normalizeKey(identifier,CATALOGUE_KEY);if(!Object.hasOwn(index,key))index[key]=name}return Object.freeze(index)}function selectLocalizedName(names,locale,functionName){const candidates=localeCandidates(locale,`${functionName}: locale`);if(names===null)return null;for(const candidate of candidates){const name=names[candidate];if(name!==void 0)return name}return null}function getLocalizedName(names,identifier,locale,functionName,identifierName){const record=findInKeyIndex(names,identifier,`${functionName}: ${identifierName}`);return selectLocalizedName(record,locale,functionName)}export{createDeduplicatedLocalizedNameIndex,createLocalizedNameIndex,getLocalizedName};//# sourceMappingURL=chunk-4AE22CHV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/i18n/internal/localized-name.ts"],"names":["normalizeKey","CATALOGUE_KEY","findInKeyIndex","requireString","CANONICAL_LOCALE","Object","freeze","en","de","es","fr","hu","it","ka","pt","ru","canonicalLocale","locale","hasOwn","localeCandidates","label","normalized","trim","replaceAll","toLowerCase","startsWith","exact","language","split","createLocalizedNameIndex","names","index","create","identifier","name","entries","key","createDeduplicatedLocalizedNameIndex","catalogue","nameKey","nameKeys","selectLocalizedName","functionName","candidates","candidate","getLocalizedName","identifierName","record"],"mappings":"O,mHA4BA,IAAMI,iBAA8DC,OAAOC,OAAO,CAC9EC,GAAI,KACJC,GAAI,KACJC,GAAI,KACJC,GAAI,KACJC,GAAI,KACJC,GAAI,KACJC,GAAI,KACJC,GAAI,KACJ,QAAS,QACTC,GAAI,KACJ,QAAS,UAIb,SAASC,gBAAgBC,QACrB,OAAOZ,OAAOa,OAAOd,iBAAkBa,QAAUb,iBAAiBa,aAAU,CAChF,CAMA,SAASE,iBAAiBF,OAAgBG,OACtC,MAAMC,WAAalB,cAAcc,OAAQG,OAAOE,OAAOC,WAAW,IAAK,KAAKC,cAC5E,GAAIH,aAAe,MAAQA,aAAe,WAAaA,WAAWI,WAAW,YAAa,CACtF,MAAO,CAAC,QACZ,CACA,GAAIJ,WAAWI,WAAW,QAAUJ,aAAe,QAAA,MAAgB,GACnE,MAAMK,MAAQV,gBAAgBK,YAC9B,MAAMM,SAAWX,gBAAgBK,WAAWO,MAAM,IAAK,GAAG,IAC1D,GAAIF,aAAU,EAAW,OAAOC,gBAAa,EAAY,GAAK,CAACA,UAC/D,OAAOA,gBAAa,GAAaA,WAAaD,MAAQ,CAACA,OAAS,CAACA,MAAOC,SAC5E,CAGO,SAASE,yBAAyBC,OACrC,MAAMC,qBAAQ1B,OAAO2B,OAAO,MAC5B,IAAA,MAAYC,WAAYC,QAAS7B,OAAO8B,QAAQL,OAAQ,CACpD,MAAMM,IAAMpC,aAAaiC,WAAYhC,eACrC,IAAKI,OAAOa,OAAOa,MAAOK,KAAML,MAAMK,KAAOF,IACjD,CACA,OAAO7B,OAAOC,OAAOyB,MACzB,CAGO,SAASM,qCACZC,WAEA,MAAMP,qBAAQ1B,OAAO2B,OAAO,MAC5B,IAAA,MAAYC,WAAYM,WAAYlC,OAAO8B,QAAQG,UAAUE,UAAW,CACpE,MAAMN,KAAOI,UAAUR,MAAMS,SAC7B,GAAIL,YAAS,EAAW,SACxB,MAAME,IAAMpC,aAAaiC,WAAYhC,eACrC,IAAKI,OAAOa,OAAOa,MAAOK,KAAML,MAAMK,KAAOF,IACjD,CACA,OAAO7B,OAAOC,OAAOyB,MACzB,CAGA,SAASU,oBACLX,MACAb,OACAyB,cAEA,MAAMC,WAAaxB,iBAAiBF,OAAQ,GAAGyB,wBAC/C,GAAIZ,QAAU,KAAM,OAAO,KAC3B,IAAA,MAAWc,aAAaD,WAAY,CAChC,MAAMT,KAAOJ,MAAMc,WACnB,GAAIV,YAAS,EAAW,OAAOA,IACnC,CACA,OAAO,IACX,CAGO,SAASW,iBACZf,MACAG,WACAhB,OACAyB,aACAI,gBAEA,MAAMC,OAAS7C,eAAe4B,MAAOG,WAAY,GAAGS,iBAAiBI,kBACrE,OAAOL,oBAAoBM,OAAQ9B,OAAQyB,aAC/C,QAAAL,qCAAAR,yBAAAgB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{DATA_MICRO_RESOURCES}from"./chunk-GVLDFJEY.js";import{ITEM_MICRO_RESOURCES}from"./chunk-WHWFKHV3.js";import{COMPONENT_MICRO_RESOURCES}from"./chunk-HTB52N6S.js";import{CONSUMABLE_MICRO_RESOURCES}from"./chunk-K7L7SMIR.js";var ALL_MICRO_RESOURCES=Object.freeze([...COMPONENT_MICRO_RESOURCES,...CONSUMABLE_MICRO_RESOURCES,...DATA_MICRO_RESOURCES,...ITEM_MICRO_RESOURCES]);export{ALL_MICRO_RESOURCES};//# sourceMappingURL=chunk-4WC5NHBJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/materials/micro-resources-all.ts"],"names":["DATA_MICRO_RESOURCES","ITEM_MICRO_RESOURCES","COMPONENT_MICRO_RESOURCES","CONSUMABLE_MICRO_RESOURCES","ALL_MICRO_RESOURCES","Object","freeze"],"mappings":"O,4NA6BO,IAAMI,oBAAgDC,OAAOC,OAAO,IACpEJ,6BACAC,8BACAH,wBACAC,8BACNG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{CORE_MODULES}from"./chunk-O72KI7RP.js";import{HARDPOINT_MODULES}from"./chunk-BSOIPL4A.js";import{INTERNAL_MODULES}from"./chunk-NSSWYRHN.js";import{UTILITY_MODULES}from"./chunk-3IMWUYXJ.js";var ALL_MODULES=Object.freeze([...CORE_MODULES,...INTERNAL_MODULES,...HARDPOINT_MODULES,...UTILITY_MODULES]);export{ALL_MODULES};//# sourceMappingURL=chunk-53ERRGPM.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/ships/modules-all.ts"],"names":["HARDPOINT_MODULES","INTERNAL_MODULES","UTILITY_MODULES","
|
|
1
|
+
{"version":3,"sources":["../src/ships/modules-all.ts"],"names":["CORE_MODULES","HARDPOINT_MODULES","INTERNAL_MODULES","UTILITY_MODULES","ALL_MODULES","Object","freeze"],"mappings":"O,6LA0CO,IAAMI,YAA2CC,OAAOC,OAAO,IAC/DN,gBACAE,oBACAD,qBACAE,yBACNC"}
|