Compare commits
21 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
55ad95081b | ||
|
|
da8da1759f | ||
|
|
b4e758b9ee | ||
|
|
3ba41db699 | ||
|
|
cfc47cf483 | ||
|
|
38c8be995b | ||
|
|
492207700b | ||
|
|
b69adefbf8 | ||
|
|
361299f51e | ||
|
|
025091c3f6 | ||
|
|
a54d70036b | ||
|
|
9e67b5962c | ||
|
|
ed0c080163 | ||
|
|
21389d84fc | ||
|
|
0fe54631ad | ||
|
|
36ea5200f2 | ||
|
|
d9934160a6 | ||
|
|
b9c92c48d3 | ||
|
|
6d23df6156 | ||
|
|
a913ab72c2 | ||
|
|
f6d33a2ac1 |
@@ -45,7 +45,7 @@ install:
|
||||
|
||||
# Upgrade to the latest version of pip to avoid it displaying warnings
|
||||
# about it being out of date.
|
||||
- "pip install --disable-pip-version-check --user --upgrade pip"
|
||||
- "python -m pip install --disable-pip-version-check --user --upgrade pip"
|
||||
|
||||
# Install the build dependencies of the project. If some dependencies contain
|
||||
# compiled extensions and are not provided as pre-built wheel packages,
|
||||
@@ -53,7 +53,7 @@ install:
|
||||
# target Python version and architecture
|
||||
- ECHO "Install pip requirements:"
|
||||
- "python -m pip install -r requirements.txt"
|
||||
- "python -m pip install PyInstaller"
|
||||
- "python -m pip install PyInstaller==3.3"
|
||||
|
||||
before_build:
|
||||
# directory that will contain the built files
|
||||
|
||||
@@ -32,7 +32,7 @@ DB_PATH = os.path.join(ROOT_DIR, 'eve.db')
|
||||
JSON_DIR = os.path.join(ROOT_DIR, 'staticdata')
|
||||
if ROOT_DIR not in sys.path:
|
||||
sys.path.insert(0, ROOT_DIR)
|
||||
GAMEDATA_SCHEMA_VERSION = 2
|
||||
GAMEDATA_SCHEMA_VERSION = 3
|
||||
|
||||
|
||||
def db_needs_update():
|
||||
@@ -206,7 +206,7 @@ def update_db():
|
||||
def processDogmaEffects():
|
||||
print('processing dogmaeffects')
|
||||
data = _readData('fsd_binary', 'dogmaeffects', keyIdName='effectID')
|
||||
_addRows(data, eos.gamedata.Effect)
|
||||
_addRows(data, eos.gamedata.Effect, fieldMap={'resistanceAttributeID': 'resistanceID'})
|
||||
|
||||
def processDogmaTypeEffects(eveTypesData):
|
||||
print('processing dogmatypeeffects')
|
||||
|
||||
@@ -8,43 +8,25 @@ many upgrade files as there are database versions (version 5 would include
|
||||
upgrade files 1-5)
|
||||
"""
|
||||
|
||||
import pkgutil
|
||||
import re
|
||||
|
||||
from eos.utils.pyinst_support import iterNamespace
|
||||
|
||||
updates = {}
|
||||
appVersion = 0
|
||||
|
||||
prefix = __name__ + "."
|
||||
|
||||
# load modules to work based with and without pyinstaller
|
||||
# from: https://github.com/webcomics/dosage/blob/master/dosagelib/loader.py
|
||||
# see: https://github.com/pyinstaller/pyinstaller/issues/1905
|
||||
|
||||
# load modules using iter_modules()
|
||||
# (should find all filters in normal build, but not pyinstaller)
|
||||
module_names = [m[1] for m in pkgutil.iter_modules(__path__, prefix)]
|
||||
|
||||
# special handling for PyInstaller
|
||||
importers = map(pkgutil.get_importer, __path__)
|
||||
toc = set()
|
||||
for i in importers:
|
||||
if hasattr(i, 'toc'):
|
||||
toc |= i.toc
|
||||
|
||||
for elm in toc:
|
||||
if elm.startswith(prefix):
|
||||
module_names.append(elm)
|
||||
|
||||
for modname in module_names:
|
||||
for modName in iterNamespace(__name__, __path__):
|
||||
# loop through python files, extracting update number and function, and
|
||||
# adding it to a list
|
||||
modname_tail = modname.rsplit('.', 1)[-1]
|
||||
module = __import__(modname, fromlist=True)
|
||||
modname_tail = modName.rsplit('.', 1)[-1]
|
||||
m = re.match("^upgrade(?P<index>\d+)$", modname_tail)
|
||||
if not m:
|
||||
continue
|
||||
index = int(m.group("index"))
|
||||
appVersion = max(appVersion, index)
|
||||
module = __import__(modName, fromlist=True)
|
||||
upgrade = getattr(module, "upgrade", False)
|
||||
if upgrade:
|
||||
updates[index] = upgrade
|
||||
|
||||
@@ -40,7 +40,7 @@ class Effect4(BaseEffect):
|
||||
shieldBoosting
|
||||
|
||||
Used by:
|
||||
Modules from group: Shield Booster (97 of 97)
|
||||
Modules from group: Shield Booster (89 of 89)
|
||||
"""
|
||||
|
||||
runTime = 'late'
|
||||
@@ -144,7 +144,7 @@ class Effect27(BaseEffect):
|
||||
armorRepair
|
||||
|
||||
Used by:
|
||||
Modules from group: Armor Repair Unit (108 of 108)
|
||||
Modules from group: Armor Repair Unit (100 of 100)
|
||||
"""
|
||||
|
||||
runTime = 'late'
|
||||
@@ -1756,7 +1756,7 @@ class Effect598(BaseEffect):
|
||||
ammoSpeedMultiplier
|
||||
|
||||
Used by:
|
||||
Charges from group: Festival Charges (27 of 28)
|
||||
Charges from group: Festival Charges (28 of 28)
|
||||
Charges from group: Interdiction Probe (2 of 2)
|
||||
Charges from group: Structure Festival Charges (2 of 2)
|
||||
Special Edition Assetss from group: Festival Charges Expired (4 of 4)
|
||||
@@ -9578,7 +9578,7 @@ class Effect3200(BaseEffect):
|
||||
|
||||
Used by:
|
||||
Modules from group: Ancillary Armor Repairer (7 of 7)
|
||||
Modules from group: Armor Repair Unit (108 of 108)
|
||||
Modules from group: Armor Repair Unit (100 of 100)
|
||||
"""
|
||||
|
||||
type = 'overheat'
|
||||
@@ -9596,7 +9596,7 @@ class Effect3201(BaseEffect):
|
||||
|
||||
Used by:
|
||||
Modules from group: Ancillary Shield Booster (8 of 8)
|
||||
Modules from group: Shield Booster (97 of 97)
|
||||
Modules from group: Shield Booster (89 of 89)
|
||||
"""
|
||||
|
||||
type = 'overheat'
|
||||
@@ -23579,7 +23579,7 @@ class Effect5994(BaseEffect):
|
||||
resistanceKillerHullAll
|
||||
|
||||
Used by:
|
||||
Modules named like: Polarized (12 of 18)
|
||||
Modules named like: Polarized (12 of 15)
|
||||
"""
|
||||
|
||||
type = 'passive'
|
||||
@@ -23596,7 +23596,7 @@ class Effect5995(BaseEffect):
|
||||
resistanceKillerShieldArmorAll
|
||||
|
||||
Used by:
|
||||
Modules named like: Polarized (12 of 18)
|
||||
Modules named like: Polarized (12 of 15)
|
||||
"""
|
||||
|
||||
type = 'passive'
|
||||
@@ -36211,7 +36211,7 @@ class Effect8011(BaseEffect):
|
||||
shieldHpBonusPostPercentHpLocationShip
|
||||
|
||||
Used by:
|
||||
Implants named like: grade Nirvana (10 of 12)
|
||||
Implants named like: grade Nirvana (15 of 18)
|
||||
"""
|
||||
|
||||
type = 'passive'
|
||||
@@ -36226,7 +36226,7 @@ class Effect8013(BaseEffect):
|
||||
setBonusNirvana
|
||||
|
||||
Used by:
|
||||
Implants named like: grade Nirvana (12 of 12)
|
||||
Implants named like: grade Nirvana (18 of 18)
|
||||
"""
|
||||
|
||||
runTime = 'early'
|
||||
|
||||
@@ -118,15 +118,15 @@ BUILTINS = OrderedDict([
|
||||
# Source: ticket #2067
|
||||
(-86, ('[NPC][Invasion][Invading Precursor Entities]Dread', 0, 417, 0, 583)),
|
||||
(-87, ('[NPC][Invasion][Invading Precursor Entities]Normal Subcaps', 0, 610, 0, 390)),
|
||||
(-88, ('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 0% spool up', 363, 160, 363, 115)),
|
||||
(-89, ('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 50% spool up', 286, 249, 286, 179)),
|
||||
(-90, ('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 100% spool up', 236, 307, 236, 221)),
|
||||
(-88, ('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 0% spool up', 367, 155, 367, 112)),
|
||||
(-89, ('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 50% spool up', 291, 243, 291, 175)),
|
||||
(-90, ('[NPC][Invasion][Invading Precursor Entities]Subcaps w/missiles 100% spool up', 241, 301, 241, 217)),
|
||||
(-91, ('[NPC][Invasion][Retaliating Amarr Entities]Dread/Subcaps', 583, 417, 0, 0)),
|
||||
(-92, ('[NPC][Invasion][Retaliating Caldari Entities]Dread', 1000, 0, 0, 0)),
|
||||
(-93, ('[NPC][Invasion][Retaliating Caldari Entities]Subcaps', 511, 21, 29, 439)),
|
||||
(-93, ('[NPC][Invasion][Retaliating Caldari Entities]Subcaps', 511, 21, 29, 440)),
|
||||
(-94, ('[NPC][Invasion][Retaliating Gallente Entities]Dread/Subcaps', 0, 417, 583, 0)),
|
||||
(-95, ('[NPC][Invasion][Retaliating Minmatar Entities]Dread', 0, 0, 583, 417)),
|
||||
(-96, ('[NPC][Invasion][Retaliating Minmatar Entities]Subcaps', 302, 132, 330, 236)),
|
||||
(-96, ('[NPC][Invasion][Retaliating Minmatar Entities]Subcaps', 302, 136, 328, 234)),
|
||||
(-97, ('[NPC][Mission]Amarr Empire', 4464, 3546, 97, 0)),
|
||||
(-98, ('[NPC][Mission]Caldari State', 0, 2139, 4867, 0)),
|
||||
(-99, ('[NPC][Mission]CONCORD', 336, 134, 212, 412)),
|
||||
|
||||
@@ -99,7 +99,7 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut):
|
||||
self.__itemModifiedAttributes = ModifiedAttributeDict()
|
||||
self.__chargeModifiedAttributes = ModifiedAttributeDict()
|
||||
|
||||
if len(self.abilities) != len(self.item.effects):
|
||||
if {a.effectID for a in self.abilities} != {e.ID for e in self.item.effects.values()}:
|
||||
self.__abilities = []
|
||||
for ability in self.__getAbilities():
|
||||
self.__abilities.append(ability)
|
||||
|
||||
39
eos/utils/pyinst_support.py
Normal file
39
eos/utils/pyinst_support.py
Normal file
@@ -0,0 +1,39 @@
|
||||
"""
|
||||
Slightly modified version of function taken from here:
|
||||
https://github.com/pyinstaller/pyinstaller/issues/1905#issuecomment-525221546
|
||||
"""
|
||||
|
||||
|
||||
import pkgutil
|
||||
|
||||
|
||||
def iterNamespace(name, path):
|
||||
"""Pyinstaller-compatible namespace iteration.
|
||||
|
||||
Yields the name of all modules found at a given Fully-qualified path.
|
||||
|
||||
To have it running with pyinstaller, it requires to ensure a hook inject the
|
||||
"hidden" modules from your plugins folder inside the executable:
|
||||
|
||||
- if your plugins are under the ``myappname/pluginfolder`` module
|
||||
- create a file ``specs/hook-<myappname.pluginfolder>.py``
|
||||
- content of this file should be:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
from PyInstaller.utils.hooks import collect_submodules
|
||||
hiddenimports = collect_submodules('<myappname.pluginfolder>')
|
||||
"""
|
||||
prefix = name + "."
|
||||
for p in pkgutil.iter_modules(path, prefix):
|
||||
yield p[1]
|
||||
|
||||
# special handling when the package is bundled with PyInstaller 3.5
|
||||
# See https://github.com/pyinstaller/pyinstaller/issues/1905#issuecomment-445787510
|
||||
toc = set()
|
||||
for importer in pkgutil.iter_importers(name.partition(".")[0]):
|
||||
if hasattr(importer, 'toc'):
|
||||
toc |= importer.toc
|
||||
for name in toc:
|
||||
if name.startswith(prefix):
|
||||
yield name
|
||||
@@ -171,7 +171,7 @@ class ItemAffectedBy(wx.Panel):
|
||||
|
||||
def sortAttrDisplayName(self, attr):
|
||||
info = self.stuff.item.attributes.get(attr)
|
||||
if info and info.displayName != "":
|
||||
if info and info.displayName:
|
||||
return info.displayName
|
||||
|
||||
return attr
|
||||
@@ -251,7 +251,7 @@ class ItemAffectedBy(wx.Panel):
|
||||
|
||||
for attrName in attrOrder:
|
||||
attrInfo = self.stuff.item.attributes.get(attrName)
|
||||
displayName = attrInfo.displayName if attrInfo and attrInfo.displayName != "" else attrName
|
||||
displayName = attrInfo.displayName if attrInfo and attrInfo.displayName else attrName
|
||||
|
||||
if attrInfo:
|
||||
if attrInfo.iconID is not None:
|
||||
@@ -444,7 +444,7 @@ class ItemAffectedBy(wx.Panel):
|
||||
attrModifier = "-"
|
||||
attrAmount = -attrAmount
|
||||
|
||||
attributes.append((attrName, (displayName if displayName != "" else attrName), attrModifier,
|
||||
attributes.append((attrName, (displayName if displayName else attrName), attrModifier,
|
||||
attrAmount, penalized, attrIcon))
|
||||
|
||||
attrSorted = sorted(attributes, key=lambda attribName: attribName[0])
|
||||
@@ -454,14 +454,14 @@ class ItemAffectedBy(wx.Panel):
|
||||
if self.showRealNames:
|
||||
display = "%s %s %.2f %s" % (attrName, attrModifier, attrAmount, penalized)
|
||||
saved = "%s %s %.2f %s" % (
|
||||
displayName if displayName != "" else attrName,
|
||||
displayName if displayName else attrName,
|
||||
attrModifier,
|
||||
attrAmount,
|
||||
penalized
|
||||
)
|
||||
else:
|
||||
display = "%s %s %.2f %s" % (
|
||||
displayName if displayName != "" else attrName,
|
||||
displayName if displayName else attrName,
|
||||
attrModifier,
|
||||
attrAmount,
|
||||
penalized
|
||||
|
||||
@@ -303,7 +303,6 @@ class CharacterSelection(wx.Panel):
|
||||
if tabulationLevel == 0:
|
||||
for item, subReqs in reqs.items():
|
||||
skillsMap = self._buildSkillsTooltipCondensed(subReqs, item.name, 1, skillsMap)
|
||||
sorted(skillsMap, key=skillsMap.get)
|
||||
else:
|
||||
for name, info in reqs.items():
|
||||
level, ID, more = info
|
||||
@@ -323,3 +322,25 @@ class CharacterSelection(wx.Panel):
|
||||
skillsMap = self._buildSkillsTooltipCondensed(more, currItem, tabulationLevel + 1, skillsMap)
|
||||
|
||||
return skillsMap
|
||||
|
||||
def _buildSkillsTooltipSuperCondensed(self, reqs, currItem="", tabulationLevel=0, skillsMap=None):
|
||||
allReqs = {}
|
||||
implicitReqs = {}
|
||||
|
||||
def traverseReqs(itemReqs, topLevel=True):
|
||||
for skillName, (skillLevel, skillTypeID, subReqs) in itemReqs.items():
|
||||
if (skillTypeID, skillName) not in allReqs or allReqs[(skillTypeID, skillName)] < skillLevel:
|
||||
allReqs[(skillTypeID, skillName)] = skillLevel
|
||||
if not topLevel and (skillTypeID not in implicitReqs or implicitReqs[skillTypeID] < skillLevel):
|
||||
implicitReqs[skillTypeID] = skillLevel
|
||||
traverseReqs(subReqs, topLevel=False)
|
||||
|
||||
for item, itemReqs in reqs.items():
|
||||
traverseReqs(itemReqs)
|
||||
|
||||
newReqs = {}
|
||||
for (skillTypeID, skillName), skillLevel in allReqs.items():
|
||||
if skillTypeID not in implicitReqs or implicitReqs[skillTypeID] < skillLevel:
|
||||
newReqs[skillName] = skillLevel, skillTypeID
|
||||
|
||||
return newReqs
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
wxPython == 4.0.6
|
||||
wxPython == 4.0.7.post2
|
||||
logbook >= 1.0.0
|
||||
matplotlib == 3.0.3
|
||||
numpy==1.16.4
|
||||
@@ -11,4 +11,3 @@ packaging == 16.8
|
||||
roman == 2.0.0
|
||||
beautifulsoup4 == 4.6.0
|
||||
pyyaml >= 5.1
|
||||
PyInstaller == 3.3
|
||||
|
||||
@@ -5,3 +5,4 @@ sudo python3 -m ensurepip --upgrade
|
||||
# A manual check that the correct version of Python is running.
|
||||
python3 --version
|
||||
python3 -m pip install -r requirements.txt
|
||||
python3 -m pip install PyInstaller==3.3
|
||||
|
||||
@@ -376,8 +376,8 @@ class Character:
|
||||
char.apiUpdateCharSheet(skills, securitystatus)
|
||||
eos.db.commit()
|
||||
|
||||
@staticmethod
|
||||
def changeLevel(charID, skillID, level, persist=False, ifHigher=False):
|
||||
@classmethod
|
||||
def changeLevel(cls, charID, skillID, level, persist=False, ifHigher=False):
|
||||
char = eos.db.getCharacter(charID)
|
||||
skill = char.getSkill(skillID)
|
||||
|
||||
@@ -386,10 +386,19 @@ class Character:
|
||||
|
||||
if isinstance(level, str) or level > 5 or level < 0:
|
||||
skill.setLevel(None, persist)
|
||||
else:
|
||||
eos.db.commit()
|
||||
elif skill.level != level:
|
||||
cls._trainSkillReqs(char, skill, persist)
|
||||
skill.setLevel(level, persist)
|
||||
eos.db.commit()
|
||||
|
||||
eos.db.commit()
|
||||
@classmethod
|
||||
def _trainSkillReqs(cls, char, skill, persist):
|
||||
for childSkillItem, neededSkillLevel in skill.item.requiredSkills.items():
|
||||
childSkill = char.getSkill(childSkillItem.ID)
|
||||
if childSkill.level < neededSkillLevel:
|
||||
childSkill.setLevel(neededSkillLevel, persist)
|
||||
cls._trainSkillReqs(char, childSkill, persist)
|
||||
|
||||
@staticmethod
|
||||
def revertLevel(charID, skillID):
|
||||
@@ -442,13 +451,13 @@ class Character:
|
||||
if subThing is not None:
|
||||
if isinstance(thing, es_Fighter) and attr == "charge":
|
||||
continue
|
||||
self._checkRequirements(fit, fit.character, subThing, subReqs)
|
||||
self._checkRequirements(fit.character, subThing, subReqs)
|
||||
if subReqs:
|
||||
reqs[subThing] = subReqs
|
||||
|
||||
return reqs
|
||||
|
||||
def _checkRequirements(self, fit, char, subThing, reqs):
|
||||
def _checkRequirements(self, char, subThing, reqs):
|
||||
for req, level in subThing.requiredSkills.items():
|
||||
name = req.name
|
||||
ID = req.ID
|
||||
@@ -456,8 +465,7 @@ class Character:
|
||||
currLevel, subs = info if info is not None else 0, {}
|
||||
if level > currLevel and (char is None or char.getSkill(req).level < level):
|
||||
reqs[name] = (level, ID, subs)
|
||||
self._checkRequirements(fit, char, req, subs)
|
||||
|
||||
self._checkRequirements(char, req, subs)
|
||||
return reqs
|
||||
|
||||
|
||||
|
||||
@@ -7,37 +7,17 @@ item's name. The name of the file is usually arbitrary unless it's used in logic
|
||||
elsewhere (in which case can be accessed with packs[name])
|
||||
"""
|
||||
|
||||
import pkgutil
|
||||
|
||||
from eos.utils.pyinst_support import iterNamespace
|
||||
|
||||
|
||||
# init parent dict
|
||||
all = {}
|
||||
|
||||
# init container to store the separate conversion packs in case we need them
|
||||
packs = {}
|
||||
|
||||
prefix = __name__ + "."
|
||||
|
||||
# load modules to work based with and without pyinstaller
|
||||
# from: https://github.com/webcomics/dosage/blob/master/dosagelib/loader.py
|
||||
# see: https://github.com/pyinstaller/pyinstaller/issues/1905
|
||||
|
||||
# load modules using iter_modules()
|
||||
# (should find all filters in normal build, but not pyinstaller)
|
||||
module_names = [m[1] for m in pkgutil.iter_modules(__path__, prefix)]
|
||||
|
||||
# special handling for PyInstaller
|
||||
importers = map(pkgutil.get_importer, __path__)
|
||||
toc = set()
|
||||
for i in importers:
|
||||
if hasattr(i, 'toc'):
|
||||
toc |= i.toc
|
||||
|
||||
for elm in toc:
|
||||
if elm.startswith(prefix):
|
||||
module_names.append(elm)
|
||||
|
||||
for modname in module_names:
|
||||
conversionPack = __import__(modname, fromlist="dummy")
|
||||
for modName in iterNamespace(__name__, __path__):
|
||||
conversionPack = __import__(modName, fromlist="dummy")
|
||||
all.update(conversionPack.CONVERSIONS)
|
||||
modname_tail = modname.rsplit('.', 1)[-1]
|
||||
modname_tail = modName.rsplit('.', 1)[-1]
|
||||
packs[modname_tail] = conversionPack.CONVERSIONS
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""
|
||||
Conversion pack for Januray 2020 release
|
||||
Conversion pack for January 2020 release
|
||||
"""
|
||||
|
||||
CONVERSIONS = {
|
||||
@@ -10,5 +10,29 @@ CONVERSIONS = {
|
||||
'Large Clarity Ward Booster I': 'Large Clarity Ward Enduring Shield Booster',
|
||||
'Large C5-L Emergency Shield Overload I': 'Large C5-L Compact Shield Booster',
|
||||
'X-Large Clarity Ward Booster I': 'X-Large Clarity Ward Enduring Shield Booster',
|
||||
'X-Large C5-L Emergency Shield Overload I': 'X-Large C5-L Compact Shield Booster'
|
||||
'X-Large C5-L Emergency Shield Overload I': 'X-Large C5-L Compact Shield Booster',
|
||||
'Small I-a Polarized Armor Regenerator': 'Small I-a Enduring Armor Repairer',
|
||||
'Small \'Accommodation\' Vestment Reconstructer I': 'Small ACM Compact Armor Repairer',
|
||||
'Medium I-a Polarized Armor Regenerator': 'Medium I-a Enduring Armor Repairer',
|
||||
'Medium \'Accommodation\' Vestment Reconstructer I': 'Medium ACM Compact Armor Repairer',
|
||||
'Large I-a Polarized Armor Regenerator': 'Large I-a Enduring Armor Repairer',
|
||||
'Large \'Accommodation\' Vestment Reconstructer I': 'Large ACM Compact Armor Repairer',
|
||||
# Entries below were removed from DB, but CCP converted them to another item type
|
||||
'Small Converse Deflection Catalyzer': 'Small Clarity Ward Enduring Shield Booster',
|
||||
'Small Neutron Saturation Injector I': 'Small C5-L Compact Shield Booster',
|
||||
'Medium Converse Deflection Catalyzer': 'Medium Clarity Ward Enduring Shield Booster',
|
||||
'Medium Neutron Saturation Injector I': 'Medium C5-L Compact Shield Booster',
|
||||
'Large Converse Deflection Catalyzer': 'Large Clarity Ward Enduring Shield Booster',
|
||||
'Large Neutron Saturation Injector I': 'Large C5-L Compact Shield Booster',
|
||||
'X-Large Converse Deflection Catalyzer': 'X-Large Clarity Ward Enduring Shield Booster',
|
||||
'X-Large Neutron Saturation Injector I': 'X-Large C5-L Compact Shield Booster',
|
||||
'Small Inefficient Armor Repair Unit': 'Small ACM Compact Armor Repairer',
|
||||
'Small Automated Carapace Restoration': 'Small I-a Enduring Armor Repairer',
|
||||
'Medium Inefficient Armor Repair Unit': 'Medium ACM Compact Armor Repairer',
|
||||
'Medium Automated Carapace Restoration': 'Medium I-a Enduring Armor Repairer',
|
||||
'Medium Nano Armor Repair Unit I': '\'Meditation\' Medium Armor Repairer I',
|
||||
'Large Inefficient Armor Repair Unit': 'Large ACM Compact Armor Repairer',
|
||||
'Large Automated Carapace Restoration': 'Large I-a Enduring Armor Repairer',
|
||||
# This item was not mentioned, assuming conversion to storyline
|
||||
'Large \'Reprieve\' Vestment Reconstructer I': '\'Protest\' Large Armor Repairer I'
|
||||
}
|
||||
|
||||
@@ -87986,5 +87986,65 @@
|
||||
"3380": [
|
||||
4
|
||||
]
|
||||
},
|
||||
"53839": {
|
||||
"3411": [
|
||||
5
|
||||
]
|
||||
},
|
||||
"53853": {
|
||||
"3411": [
|
||||
2
|
||||
]
|
||||
},
|
||||
"53854": {
|
||||
"3411": [
|
||||
2
|
||||
]
|
||||
},
|
||||
"53855": {
|
||||
"3411": [
|
||||
3
|
||||
]
|
||||
},
|
||||
"53856": {
|
||||
"3411": [
|
||||
3
|
||||
]
|
||||
},
|
||||
"53857": {
|
||||
"3411": [
|
||||
4
|
||||
]
|
||||
},
|
||||
"53859": {
|
||||
"3380": [
|
||||
4
|
||||
]
|
||||
},
|
||||
"53860": {
|
||||
"3380": [
|
||||
4
|
||||
]
|
||||
},
|
||||
"53861": {
|
||||
"3380": [
|
||||
4
|
||||
]
|
||||
},
|
||||
"53862": {
|
||||
"3380": [
|
||||
4
|
||||
]
|
||||
},
|
||||
"53863": {
|
||||
"3380": [
|
||||
4
|
||||
]
|
||||
},
|
||||
"53864": {
|
||||
"3380": [
|
||||
4
|
||||
]
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -5362,12 +5362,11 @@
|
||||
"descriptionID": 87829,
|
||||
"groupID": 40,
|
||||
"iconID": 84,
|
||||
"marketGroupID": 610,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 2,
|
||||
"radius": 500.0,
|
||||
"techLevel": 1,
|
||||
@@ -5406,12 +5405,11 @@
|
||||
"descriptionID": 95300,
|
||||
"groupID": 40,
|
||||
"iconID": 84,
|
||||
"marketGroupID": 610,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 1,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 8,
|
||||
"radius": 500.0,
|
||||
"techLevel": 1,
|
||||
@@ -5450,12 +5448,11 @@
|
||||
"descriptionID": 87832,
|
||||
"groupID": 40,
|
||||
"iconID": 84,
|
||||
"marketGroupID": 611,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 2,
|
||||
"radius": 500.0,
|
||||
"techLevel": 1,
|
||||
@@ -5494,12 +5491,11 @@
|
||||
"descriptionID": 95295,
|
||||
"groupID": 40,
|
||||
"iconID": 84,
|
||||
"marketGroupID": 611,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 1,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 8,
|
||||
"radius": 500.0,
|
||||
"techLevel": 1,
|
||||
@@ -5538,12 +5534,11 @@
|
||||
"descriptionID": 87835,
|
||||
"groupID": 40,
|
||||
"iconID": 84,
|
||||
"marketGroupID": 612,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 2,
|
||||
"radius": 500.0,
|
||||
"techLevel": 1,
|
||||
@@ -5582,12 +5577,11 @@
|
||||
"descriptionID": 95315,
|
||||
"groupID": 40,
|
||||
"iconID": 84,
|
||||
"marketGroupID": 612,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 1,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 8,
|
||||
"radius": 500.0,
|
||||
"techLevel": 1,
|
||||
@@ -36877,7 +36871,7 @@
|
||||
"marketGroupID": 1051,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 7,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -36898,7 +36892,7 @@
|
||||
"marketGroupID": 1051,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -36919,7 +36913,7 @@
|
||||
"marketGroupID": 1051,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -36940,7 +36934,7 @@
|
||||
"marketGroupID": 1050,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 7,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -36961,7 +36955,7 @@
|
||||
"marketGroupID": 1050,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -36982,7 +36976,7 @@
|
||||
"marketGroupID": 1050,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -37003,7 +36997,7 @@
|
||||
"marketGroupID": 1049,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 7,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -37024,7 +37018,7 @@
|
||||
"marketGroupID": 1049,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -37045,7 +37039,7 @@
|
||||
"marketGroupID": 1049,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -56244,7 +56238,7 @@
|
||||
"marketGroupID": 1049,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -56265,7 +56259,7 @@
|
||||
"marketGroupID": 1050,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -56286,7 +56280,7 @@
|
||||
"marketGroupID": 1051,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -83156,7 +83150,7 @@
|
||||
"marketGroupID": 1051,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 7,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -83177,7 +83171,7 @@
|
||||
"marketGroupID": 1050,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 7,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -83198,7 +83192,7 @@
|
||||
"marketGroupID": 1049,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 7,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -84023,7 +84017,7 @@
|
||||
"marketGroupID": 1051,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -84044,7 +84038,7 @@
|
||||
"marketGroupID": 1050,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -84065,7 +84059,7 @@
|
||||
"marketGroupID": 1049,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -146773,7 +146767,7 @@
|
||||
"marketGroupID": 1050,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 3,
|
||||
"metaLevel": 7,
|
||||
"metaLevel": 6,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"techLevel": 1,
|
||||
@@ -146825,7 +146819,7 @@
|
||||
"marketGroupID": 1051,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 3,
|
||||
"metaLevel": 7,
|
||||
"metaLevel": 6,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"techLevel": 1,
|
||||
@@ -232483,7 +232477,7 @@
|
||||
"marketGroupID": 1051,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -232575,7 +232569,7 @@
|
||||
"marketGroupID": 1050,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -232721,7 +232715,7 @@
|
||||
"marketGroupID": 1049,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 4,
|
||||
"metaLevel": 9,
|
||||
"metaLevel": 8,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
@@ -510303,7 +510297,7 @@
|
||||
"raceID": 1,
|
||||
"techLevel": 1,
|
||||
"typeID": 4529,
|
||||
"typeName": "Small I-a Polarized Armor Regenerator",
|
||||
"typeName": "Small I-a Enduring Armor Repairer",
|
||||
"typeNameID": 77030,
|
||||
"variationParentTypeID": 523,
|
||||
"volume": 5.0
|
||||
@@ -510334,13 +510328,13 @@
|
||||
"descriptionID": 87515,
|
||||
"groupID": 62,
|
||||
"iconID": 80,
|
||||
"marketGroupID": 1049,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 2,
|
||||
"radius": 1.0,
|
||||
"techLevel": 1,
|
||||
"typeID": 4531,
|
||||
"typeName": "Small Inefficient Armor Repair Unit",
|
||||
@@ -510358,13 +510352,13 @@
|
||||
"marketGroupID": 1049,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 4,
|
||||
"metaLevel": 1,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
"techLevel": 1,
|
||||
"typeID": 4533,
|
||||
"typeName": "Small 'Accommodation' Vestment Reconstructer I",
|
||||
"typeName": "Small ACM Compact Armor Repairer",
|
||||
"typeNameID": 77032,
|
||||
"variationParentTypeID": 523,
|
||||
"volume": 5.0
|
||||
@@ -510376,13 +510370,13 @@
|
||||
"descriptionID": 87517,
|
||||
"groupID": 62,
|
||||
"iconID": 80,
|
||||
"marketGroupID": 1049,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 3,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 8,
|
||||
"radius": 1.0,
|
||||
"techLevel": 1,
|
||||
"typeID": 4535,
|
||||
"typeName": "Small Automated Carapace Restoration",
|
||||
@@ -514477,7 +514471,7 @@
|
||||
"raceID": 1,
|
||||
"techLevel": 1,
|
||||
"typeID": 4569,
|
||||
"typeName": "Medium I-a Polarized Armor Regenerator",
|
||||
"typeName": "Medium I-a Enduring Armor Repairer",
|
||||
"typeNameID": 77034,
|
||||
"variationParentTypeID": 3528,
|
||||
"volume": 10.0
|
||||
@@ -514808,13 +514802,13 @@
|
||||
"descriptionID": 87519,
|
||||
"groupID": 62,
|
||||
"iconID": 80,
|
||||
"marketGroupID": 1050,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 2,
|
||||
"radius": 1.0,
|
||||
"techLevel": 1,
|
||||
"typeID": 4571,
|
||||
"typeName": "Medium Inefficient Armor Repair Unit",
|
||||
@@ -515131,13 +515125,13 @@
|
||||
"marketGroupID": 1050,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 4,
|
||||
"metaLevel": 1,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
"techLevel": 1,
|
||||
"typeID": 4573,
|
||||
"typeName": "Medium 'Accommodation' Vestment Reconstructer I",
|
||||
"typeName": "Medium ACM Compact Armor Repairer",
|
||||
"typeNameID": 77036,
|
||||
"variationParentTypeID": 3528,
|
||||
"volume": 10.0
|
||||
@@ -515461,13 +515455,13 @@
|
||||
"descriptionID": 87521,
|
||||
"groupID": 62,
|
||||
"iconID": 80,
|
||||
"marketGroupID": 1050,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 3,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 8,
|
||||
"radius": 1.0,
|
||||
"techLevel": 1,
|
||||
"typeID": 4575,
|
||||
"typeName": "Medium Automated Carapace Restoration",
|
||||
@@ -516087,7 +516081,7 @@
|
||||
"mass": 500.0,
|
||||
"metaLevel": 4,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 2,
|
||||
"techLevel": 1,
|
||||
"typeID": 4579,
|
||||
@@ -520665,7 +520659,7 @@
|
||||
"raceID": 1,
|
||||
"techLevel": 1,
|
||||
"typeID": 4609,
|
||||
"typeName": "Large I-a Polarized Armor Regenerator",
|
||||
"typeName": "Large I-a Enduring Armor Repairer",
|
||||
"typeNameID": 77039,
|
||||
"variationParentTypeID": 3538,
|
||||
"volume": 50.0
|
||||
@@ -520996,13 +520990,13 @@
|
||||
"descriptionID": 87524,
|
||||
"groupID": 62,
|
||||
"iconID": 80,
|
||||
"marketGroupID": 1051,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 2,
|
||||
"radius": 1.0,
|
||||
"techLevel": 1,
|
||||
"typeID": 4611,
|
||||
"typeName": "Large Inefficient Armor Repair Unit",
|
||||
@@ -521320,13 +521314,13 @@
|
||||
"marketGroupID": 1051,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 4,
|
||||
"metaLevel": 1,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"raceID": 4,
|
||||
"techLevel": 1,
|
||||
"typeID": 4613,
|
||||
"typeName": "Large 'Accommodation' Vestment Reconstructer I",
|
||||
"typeName": "Large ACM Compact Armor Repairer",
|
||||
"typeNameID": 77041,
|
||||
"variationParentTypeID": 3538,
|
||||
"volume": 50.0
|
||||
@@ -521638,13 +521632,13 @@
|
||||
"descriptionID": 87526,
|
||||
"groupID": 62,
|
||||
"iconID": 80,
|
||||
"marketGroupID": 1051,
|
||||
"mass": 500.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 3,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 8,
|
||||
"radius": 1.0,
|
||||
"techLevel": 1,
|
||||
"typeID": 4615,
|
||||
"typeName": "Large Automated Carapace Restoration",
|
||||
@@ -522579,7 +522573,7 @@
|
||||
"mass": 500.0,
|
||||
"metaLevel": 5,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 4,
|
||||
"techLevel": 1,
|
||||
"typeID": 4621,
|
||||
@@ -597089,7 +597083,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53722,
|
||||
"typeName": "Mid-Grade Nirvana Alpha Blueprint",
|
||||
"typeName": "Mid-grade Nirvana Alpha Blueprint",
|
||||
"typeNameID": 555323,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597105,7 +597099,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53723,
|
||||
"typeName": "Mid-Grade Nirvana Beta Blueprint",
|
||||
"typeName": "Mid-grade Nirvana Beta Blueprint",
|
||||
"typeNameID": 555324,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597121,7 +597115,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53724,
|
||||
"typeName": "Mid-Grade Nirvana Delta Blueprint",
|
||||
"typeName": "Mid-grade Nirvana Delta Blueprint",
|
||||
"typeNameID": 555325,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597137,7 +597131,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53725,
|
||||
"typeName": "Mid-Grade Nirvana Epsilon Blueprint",
|
||||
"typeName": "Mid-grade Nirvana Epsilon Blueprint",
|
||||
"typeNameID": 555326,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597153,7 +597147,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53726,
|
||||
"typeName": "Mid-Grade Nirvana Gamma Blueprint",
|
||||
"typeName": "Mid-grade Nirvana Gamma Blueprint",
|
||||
"typeNameID": 555327,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597169,7 +597163,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53727,
|
||||
"typeName": "Mid-Grade Nirvana Omega Blueprint",
|
||||
"typeName": "Mid-grade Nirvana Omega Blueprint",
|
||||
"typeNameID": 555328,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597185,7 +597179,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53728,
|
||||
"typeName": "High-Grade Nirvana Alpha Blueprint",
|
||||
"typeName": "High-grade Nirvana Alpha Blueprint",
|
||||
"typeNameID": 555329,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597201,7 +597195,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53729,
|
||||
"typeName": "High-Grade Nirvana Beta Blueprint",
|
||||
"typeName": "High-grade Nirvana Beta Blueprint",
|
||||
"typeNameID": 555330,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597217,7 +597211,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53730,
|
||||
"typeName": "High-Grade Nirvana Delta Blueprint",
|
||||
"typeName": "High-grade Nirvana Delta Blueprint",
|
||||
"typeNameID": 555331,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597233,7 +597227,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53731,
|
||||
"typeName": "High-Grade Nirvana Epsilon Blueprint",
|
||||
"typeName": "High-grade Nirvana Epsilon Blueprint",
|
||||
"typeNameID": 555332,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597249,7 +597243,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53732,
|
||||
"typeName": "High-Grade Nirvana Gamma Blueprint",
|
||||
"typeName": "High-grade Nirvana Gamma Blueprint",
|
||||
"typeNameID": 555333,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597265,7 +597259,7 @@
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53733,
|
||||
"typeName": "High-Grade Nirvana Omega Blueprint",
|
||||
"typeName": "High-grade Nirvana Omega Blueprint",
|
||||
"typeNameID": 555334,
|
||||
"volume": 0.01
|
||||
},
|
||||
@@ -597285,6 +597279,26 @@
|
||||
"typeNameID": 555558,
|
||||
"volume": 1.0
|
||||
},
|
||||
"53839": {
|
||||
"basePrice": 800000.0,
|
||||
"capacity": 0.0,
|
||||
"description": "This Omega implant appears to have been developed using Sansha's Nation technology and is likely to be used by elite pilots of Nation and related factions.\r\n\r\nThis type of implant has no inherent effect of its own but when used in conjunction with other Nirvana implants it will boost their effectiveness.\r\n\r\n10% bonus to the strength of all Nirvana implant secondary effects. ",
|
||||
"descriptionID": 555581,
|
||||
"groupID": 300,
|
||||
"iconID": 2224,
|
||||
"isDynamicType": false,
|
||||
"marketGroupID": 1506,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53839,
|
||||
"typeName": "Low-grade Nirvana Omega",
|
||||
"typeNameID": 555580,
|
||||
"volume": 1.0
|
||||
},
|
||||
"53846": {
|
||||
"basePrice": 0.0,
|
||||
"capacity": 0.0,
|
||||
@@ -597319,6 +597333,202 @@
|
||||
"typeNameID": 555748,
|
||||
"volume": 0.1
|
||||
},
|
||||
"53853": {
|
||||
"basePrice": 0.0,
|
||||
"capacity": 0.0,
|
||||
"description": "This ocular filter appears to have been developed using Sansha's Nation technology and is likely to be used by elite pilots of Nation and related factions. It provides increasing shield hitpoint bonuses when plugged in alongside other implants from the same set.\r\n\r\nPrimary Effect: +2 bonus to Perception\r\n\r\nSecondary Effect: 1% bonus to shield hitpoints\r\n\r\nSet Effect: 2.5% bonus to the strength of all Nirvana implant secondary effects",
|
||||
"descriptionID": 556162,
|
||||
"groupID": 300,
|
||||
"iconID": 2053,
|
||||
"isDynamicType": false,
|
||||
"marketGroupID": 618,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53853,
|
||||
"typeName": "Low-grade Nirvana Alpha",
|
||||
"typeNameID": 556161,
|
||||
"volume": 1.0
|
||||
},
|
||||
"53854": {
|
||||
"basePrice": 800000.0,
|
||||
"capacity": 0.0,
|
||||
"description": "This memory augmentation appears to have been developed using Sansha's Nation technology and is likely to be used by elite pilots of Nation and related factions. It provides increasing shield hitpoint bonuses when plugged in alongside other implants from the same set.\r\n\r\nPrimary Effect: +2 bonus to Memory\r\n\r\nSecondary Effect: 2% bonus to shield hitpoints\r\n\r\nSet Effect: 2.5% bonus to the strength of all Nirvana implant secondary effects",
|
||||
"descriptionID": 556165,
|
||||
"groupID": 300,
|
||||
"iconID": 2061,
|
||||
"isDynamicType": false,
|
||||
"marketGroupID": 619,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53854,
|
||||
"typeName": "Low-grade Nirvana Beta",
|
||||
"typeNameID": 556164,
|
||||
"volume": 1.0
|
||||
},
|
||||
"53855": {
|
||||
"basePrice": 800000.0,
|
||||
"capacity": 0.0,
|
||||
"description": "This neural boost implant appears to have been developed using Sansha's Nation technology and is likely to be used by elite pilots of Nation and related factions. It provides increasing shield hitpoint bonuses when plugged in alongside other implants from the same set.\r\n\r\nPrimary Effect: +2 bonus to Willpower\r\n\r\nSecondary Effect: 3% bonus to shield hitpoints\r\n\r\nSet Effect: 2.5% bonus to the strength of all Nirvana implant secondary effects",
|
||||
"descriptionID": 556178,
|
||||
"groupID": 300,
|
||||
"iconID": 2054,
|
||||
"isDynamicType": false,
|
||||
"marketGroupID": 620,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53855,
|
||||
"typeName": "Low-grade Nirvana Gamma",
|
||||
"typeNameID": 556177,
|
||||
"volume": 1.0
|
||||
},
|
||||
"53856": {
|
||||
"basePrice": 800000.0,
|
||||
"capacity": 0.0,
|
||||
"description": "This cybernetic subprocessor appears to have been developed using Sansha's Nation technology and is likely to be used by elite pilots of Nation and related factions. It provides increasing shield hitpoint bonuses when plugged in alongside other implants from the same set.\r\n\r\nPrimary Effect: +2 bonus to Intelligence\r\n\r\nSecondary Effect: 4% bonus to shield hitpoints\r\n\r\nSet Effect: 2.5% bonus to the strength of all Nirvana implant secondary effects",
|
||||
"descriptionID": 556370,
|
||||
"groupID": 300,
|
||||
"iconID": 2062,
|
||||
"isDynamicType": false,
|
||||
"marketGroupID": 621,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53856,
|
||||
"typeName": "Low-grade Nirvana Delta",
|
||||
"typeNameID": 556369,
|
||||
"volume": 1.0
|
||||
},
|
||||
"53857": {
|
||||
"basePrice": 800000.0,
|
||||
"capacity": 0.0,
|
||||
"description": "This social adaptation chip appears to have been developed using Sansha's Nation technology and is likely to be used by elite pilots of Nation and related factions. It provides increasing shield hitpoint bonuses when plugged in alongside other implants from the same set.\r\n\r\nPrimary Effect: +2 bonus to Charisma\r\n\r\nSecondary Effect: 5% bonus to shield hitpoints\r\n\r\nSet Effect: 2.5% bonus to the strength of all Nirvana implant secondary effects (copy)",
|
||||
"descriptionID": 556372,
|
||||
"groupID": 300,
|
||||
"iconID": 2060,
|
||||
"isDynamicType": false,
|
||||
"marketGroupID": 622,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53857,
|
||||
"typeName": "Low-grade Nirvana Epsilon",
|
||||
"typeNameID": 556371,
|
||||
"volume": 1.0
|
||||
},
|
||||
"53859": {
|
||||
"basePrice": 0.0,
|
||||
"capacity": 0.0,
|
||||
"groupID": 724,
|
||||
"iconID": 2053,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53859,
|
||||
"typeName": "Low-grade Nirvana Alpha Blueprint",
|
||||
"typeNameID": 557151,
|
||||
"volume": 0.01
|
||||
},
|
||||
"53860": {
|
||||
"basePrice": 0.0,
|
||||
"capacity": 0.0,
|
||||
"groupID": 724,
|
||||
"iconID": 2061,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53860,
|
||||
"typeName": "Low-grade Nirvana Beta Blueprint",
|
||||
"typeNameID": 557154,
|
||||
"volume": 0.01
|
||||
},
|
||||
"53861": {
|
||||
"basePrice": 0.0,
|
||||
"capacity": 0.0,
|
||||
"groupID": 724,
|
||||
"iconID": 2062,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53861,
|
||||
"typeName": "Low-grade Nirvana Delta Blueprint",
|
||||
"typeNameID": 557168,
|
||||
"volume": 0.01
|
||||
},
|
||||
"53862": {
|
||||
"basePrice": 0.0,
|
||||
"capacity": 0.0,
|
||||
"groupID": 724,
|
||||
"iconID": 2060,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53862,
|
||||
"typeName": "Low-grade Nirvana Epsilon Blueprint",
|
||||
"typeNameID": 557169,
|
||||
"volume": 0.01
|
||||
},
|
||||
"53863": {
|
||||
"basePrice": 0.0,
|
||||
"capacity": 0.0,
|
||||
"groupID": 724,
|
||||
"iconID": 2054,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53863,
|
||||
"typeName": "Low-grade Nirvana Gamma Blueprint",
|
||||
"typeNameID": 557170,
|
||||
"volume": 0.01
|
||||
},
|
||||
"53864": {
|
||||
"basePrice": 0.0,
|
||||
"capacity": 0.0,
|
||||
"groupID": 724,
|
||||
"iconID": 2224,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"radius": 1.0,
|
||||
"techLevel": 2,
|
||||
"typeID": 53864,
|
||||
"typeName": "Low-grade Nirvana Omega Blueprint",
|
||||
"typeNameID": 557171,
|
||||
"volume": 0.01
|
||||
},
|
||||
"5399": {
|
||||
"basePrice": 0.0,
|
||||
"capacity": 0.0,
|
||||
@@ -602690,12 +602900,11 @@
|
||||
"descriptionID": 87666,
|
||||
"groupID": 40,
|
||||
"iconID": 84,
|
||||
"marketGroupID": 609,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 2,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 2,
|
||||
"radius": 500.0,
|
||||
"techLevel": 1,
|
||||
@@ -602759,12 +602968,11 @@
|
||||
"descriptionID": 95311,
|
||||
"groupID": 40,
|
||||
"iconID": 84,
|
||||
"marketGroupID": 609,
|
||||
"mass": 0.0,
|
||||
"metaGroupID": 1,
|
||||
"metaLevel": 1,
|
||||
"portionSize": 1,
|
||||
"published": true,
|
||||
"published": false,
|
||||
"raceID": 8,
|
||||
"radius": 500.0,
|
||||
"techLevel": 1,
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
[
|
||||
{
|
||||
"field_name": "client_build",
|
||||
"field_value": 1646988
|
||||
"field_value": 1655072
|
||||
},
|
||||
{
|
||||
"field_name": "dump_time",
|
||||
"field_value": 1579174763
|
||||
"field_value": 1580211149
|
||||
}
|
||||
]
|
||||
@@ -1 +1 @@
|
||||
version: v2.16.0
|
||||
version: v2.16.3
|
||||
|
||||
Reference in New Issue
Block a user