From 78b176a135cc21471e8cb29bbdc3e9110317811b Mon Sep 17 00:00:00 2001 From: fonsuiplaysvideogames <60384561+fonsuiplaysvideogames@users.noreply.github.com> Date: Thu, 16 Jul 2020 16:20:24 -0400 Subject: [PATCH 01/13] Update fit.py --- eos/saveddata/fit.py | 48 ++++++++++++++++++++++++++++++++++---------- 1 file changed, 37 insertions(+), 11 deletions(-) diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index 4504130a1..48fed0cbf 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -751,66 +751,92 @@ class Fit: # Localized environment effects if warfareBuffID == 79: # AOE_Beacon_bioluminescence_cloud - self.ship.boostItemAttr("signatureRadius", value, stackingPenalties=True) + self.ship.boostItemAttr("signatureRadius", value) if warfareBuffID == 80: # AOE_Beacon_caustic_cloud_local_repair self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", value, stackingPenalties=True) + "armorDamageAmount", value) if warfareBuffID == 81: # AOE_Beacon_caustic_cloud_remote_repair self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "armorDamageAmount", value, stackingPenalties=True) + "armorDamageAmount", value) if warfareBuffID == 88: # AOE_Beacon_filament_cloud_shield_booster_shield_bonus self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", value, stackingPenalties=True) + "shieldBonus", value) if warfareBuffID == 89: # AOE_Beacon_filament_cloud_shield_booster_duration self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "duration", value, stackingPenalties=True) + "duration", value) # Abyssal Weather Effects if warfareBuffID == 90: # Weather_electric_storm_EM_resistance_penalty for tankType in ("shield", "armor"): self.ship.boostItemAttr("{}EmDamageResonance".format(tankType), value) + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "{}EmDamageResonance".format(tankType), value) self.ship.boostItemAttr("emDamageResonance", value) # for hull + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "emDamageResonance", value) #for hull if warfareBuffID == 92: # Weather_electric_storm_capacitor_recharge_bonus - self.ship.boostItemAttr("rechargeRate", value, stackingPenalties=True) + self.ship.boostItemAttr("rechargeRate", value) if warfareBuffID == 93: # Weather_xenon_gas_explosive_resistance_penalty for tankType in ("shield", "armor"): self.ship.boostItemAttr("{}ExplosiveDamageResonance".format(tankType), value) + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "{}ExplosiveDamageResonance".format(tankType), value) self.ship.boostItemAttr("explosiveDamageResonance", value) # for hull + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "explosiveDamageResonance", value) # for hull if warfareBuffID == 94: # Weather_xenon_gas_shield_hp_bonus - self.ship.boostItemAttr("shieldCapacity", value) # for hull + self.ship.boostItemAttr("shieldCapacity", value) + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "shieldCapacity", value) if warfareBuffID == 95: # Weather_infernal_thermal_resistance_penalty for tankType in ("shield", "armor"): self.ship.boostItemAttr("{}ThermalDamageResonance".format(tankType), value) + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "{}ThermalDamageResonance".format(tankType), value) self.ship.boostItemAttr("thermalDamageResonance", value) # for hull + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "thermalDamageResonance", value) # for hull if warfareBuffID == 96: # Weather_infernal_armor_hp_bonus - self.ship.boostItemAttr("armorHP", value) # for hull + self.ship.boostItemAttr("armorHP", value) + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "armorHP", value) if warfareBuffID == 97: # Weather_darkness_turret_range_penalty self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "maxRange", value, stackingPenalties=True) + "maxRange", value) + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "maxRange", value) self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "falloff", value, stackingPenalties=True) + "falloff", value) + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "falloff", value) if warfareBuffID == 98: # Weather_darkness_velocity_bonus self.ship.boostItemAttr("maxVelocity", value) + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "maxVelocity", value) if warfareBuffID == 99: # Weather_caustic_toxin_kinetic_resistance_penalty for tankType in ("shield", "armor"): self.ship.boostItemAttr("{}KineticDamageResonance".format(tankType), value) + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "{}KineticDamageResonance".format(tankType), value) self.ship.boostItemAttr("kineticDamageResonance", value) # for hull + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "kineticDamageResonance", value) # for hull if warfareBuffID == 100: # Weather_caustic_toxin_scan_resolution_bonus - self.ship.boostItemAttr("scanResolution", value, stackingPenalties=True) + self.ship.boostItemAttr("scanResolution", value) del self.commandBonuses[warfareBuffID] From 2f02747b2930e14cb0c17420ebee376ddc3279e2 Mon Sep 17 00:00:00 2001 From: fonsuiplaysvideogames <60384561+fonsuiplaysvideogames@users.noreply.github.com> Date: Thu, 16 Jul 2020 16:24:08 -0400 Subject: [PATCH 02/13] Update fit.py --- eos/saveddata/fit.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index 48fed0cbf..d012fa2e7 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -752,6 +752,8 @@ class Fit: if warfareBuffID == 79: # AOE_Beacon_bioluminescence_cloud self.ship.boostItemAttr("signatureRadius", value) + self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), + "signatureRadius", value) if warfareBuffID == 80: # AOE_Beacon_caustic_cloud_local_repair self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), From 33377357f65c070d0c7c683e4c8e28cd33535da3 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Sun, 26 Jul 2020 10:36:55 +0300 Subject: [PATCH 03/13] Change dampener definition to include named variations --- service/jargon/defaults.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/service/jargon/defaults.yaml b/service/jargon/defaults.yaml index 5895f522a..0a134a8a4 100644 --- a/service/jargon/defaults.yaml +++ b/service/jargon/defaults.yaml @@ -809,11 +809,11 @@ damp: - 'sd-\d00' sd: - '(^| )sd' # Checking only beginning of a word to remove unwanted spam - - 'remote sensor dampener' + - 'sensor dampener' - '(targeting range|scan resolution) dampening script' rsd: - 'rsd' - - 'remote sensor dampener' + - 'sensor dampener' - 'sd-\d00' - '(targeting range|scan resolution) dampening script' From 2d9e873d42a241c1f1ad6691ee70944ec1d8e072 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Tue, 28 Jul 2020 15:21:08 +0300 Subject: [PATCH 04/13] Update staticdata to 1777281 --- staticdata/fsd_binary/dogmaeffects.json | 166 ++- .../fsd_binary/requiredskillsfortypes.json | 30 + staticdata/fsd_binary/typedogma.json | 1014 +++++++++++++++-- staticdata/fsd_lite/evetypes.json | 636 ++++++++++- staticdata/phobos/metadata.json | 4 +- staticdata/phobos/traits.json | 46 +- 6 files changed, 1719 insertions(+), 177 deletions(-) diff --git a/staticdata/fsd_binary/dogmaeffects.json b/staticdata/fsd_binary/dogmaeffects.json index a38480af2..3bd51a8cc 100644 --- a/staticdata/fsd_binary/dogmaeffects.json +++ b/staticdata/fsd_binary/dogmaeffects.json @@ -44807,7 +44807,7 @@ "disallowAutoRepeat": 0, "effectCategory": 0, "effectID": 5503, - "effectName": "eliteBonusCommandShipHeavyDroneTrackingCS2", + "effectName": "eliteBonusCommandShipDroneTrackingCS2", "electronicChance": 0, "isAssistance": 0, "isOffensive": 0, @@ -44819,7 +44819,7 @@ "modifiedAttributeID": 160, "modifyingAttributeID": 999, "operation": 6, - "skillTypeID": 3441 + "skillTypeID": 3436 } ], "propulsionChance": 0, @@ -79064,5 +79064,167 @@ "propulsionChance": 0, "published": 0, "rangeChance": 0 + }, + "8068": { + "disallowAutoRepeat": 0, + "effectCategory": 0, + "effectID": 8068, + "effectName": "shipShieldResistanceBonusMBC1", + "electronicChance": 0, + "isAssistance": 0, + "isOffensive": 0, + "isWarpSafe": 0, + "modifierInfo": [ + { + "domain": "shipID", + "func": "ItemModifier", + "modifiedAttributeID": 271, + "modifyingAttributeID": 748, + "operation": 6 + }, + { + "domain": "shipID", + "func": "ItemModifier", + "modifiedAttributeID": 274, + "modifyingAttributeID": 748, + "operation": 6 + }, + { + "domain": "shipID", + "func": "ItemModifier", + "modifiedAttributeID": 272, + "modifyingAttributeID": 748, + "operation": 6 + }, + { + "domain": "shipID", + "func": "ItemModifier", + "modifiedAttributeID": 273, + "modifyingAttributeID": 748, + "operation": 6 + } + ], + "propulsionChance": 0, + "published": 0, + "rangeChance": 0 + }, + "8070": { + "disallowAutoRepeat": 0, + "effectCategory": 0, + "effectID": 8070, + "effectName": "eliteBonusCommandShipsHeavyHAMvelocityCS2", + "electronicChance": 0, + "isAssistance": 0, + "isOffensive": 0, + "isWarpSafe": 0, + "modifierInfo": [ + { + "domain": "charID", + "func": "OwnerRequiredSkillModifier", + "modifiedAttributeID": 37, + "modifyingAttributeID": 999, + "operation": 6, + "skillTypeID": 3324 + }, + { + "domain": "charID", + "func": "OwnerRequiredSkillModifier", + "modifiedAttributeID": 37, + "modifyingAttributeID": 999, + "operation": 6, + "skillTypeID": 25719 + } + ], + "propulsionChance": 0, + "published": 0, + "rangeChance": 0 + }, + "8071": { + "disallowAutoRepeat": 0, + "effectCategory": 0, + "effectID": 8071, + "effectName": " eliteBonusCommandShipDroneRangeCS1", + "electronicChance": 0, + "isAssistance": 0, + "isOffensive": 0, + "isWarpSafe": 0, + "modifierInfo": [ + { + "domain": "charID", + "func": "OwnerRequiredSkillModifier", + "modifiedAttributeID": 54, + "modifyingAttributeID": 1000, + "operation": 6, + "skillTypeID": 3436 + } + ], + "propulsionChance": 0, + "published": 0, + "rangeChance": 0 + }, + "8072": { + "disallowAutoRepeat": 0, + "effectCategory": 0, + "effectID": 8072, + "effectName": "shipArmorResistanceBonusGBC2", + "electronicChance": 0, + "isAssistance": 0, + "isOffensive": 0, + "isWarpSafe": 0, + "modifierInfo": [ + { + "domain": "shipID", + "func": "ItemModifier", + "modifiedAttributeID": 267, + "modifyingAttributeID": 746, + "operation": 6 + }, + { + "domain": "shipID", + "func": "ItemModifier", + "modifiedAttributeID": 270, + "modifyingAttributeID": 746, + "operation": 6 + }, + { + "domain": "shipID", + "func": "ItemModifier", + "modifiedAttributeID": 268, + "modifyingAttributeID": 746, + "operation": 6 + }, + { + "domain": "shipID", + "func": "ItemModifier", + "modifiedAttributeID": 269, + "modifyingAttributeID": 746, + "operation": 6 + } + ], + "propulsionChance": 0, + "published": 0, + "rangeChance": 0 + }, + "8073": { + "disallowAutoRepeat": 0, + "effectCategory": 0, + "effectID": 8073, + "effectName": "eliteBonusCommandShipShieldHPCS1", + "electronicChance": 0, + "isAssistance": 0, + "isOffensive": 0, + "isWarpSafe": 0, + "modifierInfo": [ + { + "domain": "shipID", + "func": "ItemModifier", + "modifiedAttributeID": 263, + "modifyingAttributeID": 1000, + "operation": 6 + } + ], + "propulsionChance": 0, + "published": 0, + "rangeChance": 0 } } \ No newline at end of file diff --git a/staticdata/fsd_binary/requiredskillsfortypes.json b/staticdata/fsd_binary/requiredskillsfortypes.json index a52a0c606..70fe07851 100644 --- a/staticdata/fsd_binary/requiredskillsfortypes.json +++ b/staticdata/fsd_binary/requiredskillsfortypes.json @@ -25594,5 +25594,35 @@ }, "55859": { "3402": 1 + }, + "55927": { + "3402": 1 + }, + "55928": { + "3402": 1 + }, + "55929": { + "3402": 1 + }, + "55942": { + "3402": 1 + }, + "55943": { + "3402": 1 + }, + "55944": { + "3402": 1 + }, + "55945": { + "3402": 1 + }, + "55946": { + "3402": 1 + }, + "55947": { + "3402": 1 + }, + "55977": { + "3402": 1 } } \ No newline at end of file diff --git a/staticdata/fsd_binary/typedogma.json b/staticdata/fsd_binary/typedogma.json index 687991404..a51929dfb 100644 --- a/staticdata/fsd_binary/typedogma.json +++ b/staticdata/fsd_binary/typedogma.json @@ -1060534,7 +1060534,7 @@ }, { "attributeID": 12, - "value": 6.0 + "value": 7.0 }, { "attributeID": 13, @@ -1060542,7 +1060542,7 @@ }, { "attributeID": 14, - "value": 6.0 + "value": 5.0 }, { "attributeID": 15, @@ -1060558,7 +1060558,7 @@ }, { "attributeID": 37, - "value": 145.0 + "value": 150.0 }, { "attributeID": 48, @@ -1060578,7 +1060578,7 @@ }, { "attributeID": 76, - "value": 65000.0 + "value": 75000.0 }, { "attributeID": 79, @@ -1060710,7 +1060710,7 @@ }, { "attributeID": 283, - "value": 250.0 + "value": 300.0 }, { "attributeID": 422, @@ -1060746,7 +1060746,7 @@ }, { "attributeID": 564, - "value": 200.0 + "value": 240.0 }, { "attributeID": 600, @@ -1060766,7 +1060766,7 @@ }, { "attributeID": 746, - "value": 7.5 + "value": -4.0 }, { "attributeID": 747, @@ -1060782,7 +1060782,7 @@ }, { "attributeID": 1000, - "value": 7.5 + "value": 10.0 }, { "attributeID": 1132, @@ -1060870,10 +1060870,6 @@ "effectID": 2251, "isDefault": 0 }, - { - "effectID": 5342, - "isDefault": 0 - }, { "effectID": 5343, "isDefault": 0 @@ -1060882,18 +1060878,10 @@ "effectID": 5348, "isDefault": 0 }, - { - "effectID": 5502, - "isDefault": 0 - }, { "effectID": 5503, "isDefault": 0 }, - { - "effectID": 5504, - "isDefault": 0 - }, { "effectID": 5572, "isDefault": 0 @@ -1060905,6 +1060893,14 @@ { "effectID": 6783, "isDefault": 0 + }, + { + "effectID": 8071, + "isDefault": 0 + }, + { + "effectID": 8072, + "isDefault": 0 } ] }, @@ -1061149,7 +1061145,7 @@ }, { "attributeID": 564, - "value": 220.0 + "value": 264.0 }, { "attributeID": 600, @@ -1061257,11 +1061253,7 @@ }, { "attributeID": 1924, - "value": 3.0 - }, - { - "attributeID": 2574, - "value": 100.0 + "value": 4.0 } ], "dogmaEffects": [ @@ -1061292,10 +1061284,6 @@ { "effectID": 5574, "isDefault": 0 - }, - { - "effectID": 6783, - "isDefault": 0 } ] }, @@ -1061540,7 +1061528,7 @@ }, { "attributeID": 564, - "value": 195.0 + "value": 234.0 }, { "attributeID": 600, @@ -1061660,10 +1061648,6 @@ } ], "dogmaEffects": [ - { - "effectID": 2161, - "isDefault": 0 - }, { "effectID": 2251, "isDefault": 0 @@ -1061703,6 +1061687,10 @@ { "effectID": 6783, "isDefault": 0 + }, + { + "effectID": 8073, + "isDefault": 0 } ] }, @@ -1061731,7 +1061719,7 @@ }, { "attributeID": 11, - "value": 1500.0 + "value": 1550.0 }, { "attributeID": 12, @@ -1061759,11 +1061747,11 @@ }, { "attributeID": 37, - "value": 150.0 + "value": 158.0 }, { "attributeID": 48, - "value": 400.0 + "value": 420.0 }, { "attributeID": 49, @@ -1061947,7 +1061935,7 @@ }, { "attributeID": 564, - "value": 210.0 + "value": 252.0 }, { "attributeID": 600, @@ -1062055,11 +1062043,7 @@ }, { "attributeID": 1924, - "value": 3.0 - }, - { - "attributeID": 2574, - "value": 100.0 + "value": 4.0 } ], "dogmaEffects": [ @@ -1062102,10 +1062086,6 @@ { "effectID": 5575, "isDefault": 0 - }, - { - "effectID": 6783, - "isDefault": 0 } ] }, @@ -1063662,11 +1063642,11 @@ }, { "attributeID": 37, - "value": 155.0 + "value": 165.0 }, { "attributeID": 48, - "value": 440.0 + "value": 450.0 }, { "attributeID": 49, @@ -1063850,7 +1063830,7 @@ }, { "attributeID": 564, - "value": 200.0 + "value": 240.0 }, { "attributeID": 600, @@ -1063958,11 +1063938,7 @@ }, { "attributeID": 1924, - "value": 3.0 - }, - { - "attributeID": 2574, - "value": 100.0 + "value": 4.0 } ], "dogmaEffects": [ @@ -1063993,10 +1063969,6 @@ { "effectID": 5574, "isDefault": 0 - }, - { - "effectID": 6783, - "isDefault": 0 } ] }, @@ -1064073,7 +1064045,7 @@ }, { "attributeID": 76, - "value": 65000.0 + "value": 75000.0 }, { "attributeID": 79, @@ -1064241,7 +1064213,7 @@ }, { "attributeID": 564, - "value": 220.0 + "value": 264.0 }, { "attributeID": 600, @@ -1064261,7 +1064233,7 @@ }, { "attributeID": 748, - "value": 7.5 + "value": -4.0 }, { "attributeID": 749, @@ -1064273,7 +1064245,7 @@ }, { "attributeID": 999, - "value": 5.0 + "value": 10.0 }, { "attributeID": 1000, @@ -1064365,10 +1064337,6 @@ "effectID": 2251, "isDefault": 0 }, - { - "effectID": 3767, - "isDefault": 0 - }, { "effectID": 5349, "isDefault": 0 @@ -1064377,10 +1064345,6 @@ "effectID": 5350, "isDefault": 0 }, - { - "effectID": 5351, - "isDefault": 0 - }, { "effectID": 5496, "isDefault": 0 @@ -1064389,10 +1064353,6 @@ "effectID": 5497, "isDefault": 0 }, - { - "effectID": 5498, - "isDefault": 0 - }, { "effectID": 5573, "isDefault": 0 @@ -1064404,6 +1064364,14 @@ { "effectID": 6783, "isDefault": 0 + }, + { + "effectID": 8068, + "isDefault": 0 + }, + { + "effectID": 8070, + "isDefault": 0 } ] }, @@ -1064436,11 +1064404,11 @@ }, { "attributeID": 12, - "value": 5.0 + "value": 4.0 }, { "attributeID": 13, - "value": 5.0 + "value": 6.0 }, { "attributeID": 14, @@ -1064460,7 +1064428,7 @@ }, { "attributeID": 37, - "value": 140.0 + "value": 150.0 }, { "attributeID": 48, @@ -1064648,7 +1064616,7 @@ }, { "attributeID": 564, - "value": 195.0 + "value": 234.0 }, { "attributeID": 600, @@ -1064680,7 +1064648,7 @@ }, { "attributeID": 1000, - "value": -7.5 + "value": -10.0 }, { "attributeID": 1132, @@ -1064756,11 +1064724,7 @@ }, { "attributeID": 1924, - "value": 3.0 - }, - { - "attributeID": 2574, - "value": 100.0 + "value": 4.0 } ], "dogmaEffects": [ @@ -1064815,10 +1064779,6 @@ { "effectID": 5575, "isDefault": 0 - }, - { - "effectID": 6783, - "isDefault": 0 } ] }, @@ -1065063,7 +1065023,7 @@ }, { "attributeID": 564, - "value": 210.0 + "value": 252.0 }, { "attributeID": 600, @@ -2265474,6 +2265434,10 @@ } ], "dogmaEffects": [ + { + "effectID": 10, + "isDefault": 0 + }, { "effectID": 6741, "isDefault": 0 @@ -2282645,7 +2282609,7 @@ }, { "attributeID": 2422, - "value": 18473.0 + "value": 18627.66597222222 } ], "dogmaEffects": [ @@ -2376870,5 +2376834,871 @@ "isDefault": 0 } ] + }, + "55919": { + "dogmaAttributes": [ + { + "attributeID": 9, + "value": 100000000.0 + } + ], + "dogmaEffects": [] + }, + "55920": { + "dogmaAttributes": [ + { + "attributeID": 9, + "value": 100000000.0 + } + ], + "dogmaEffects": [] + }, + "55921": { + "dogmaAttributes": [ + { + "attributeID": 9, + "value": 100000000.0 + } + ], + "dogmaEffects": [] + }, + "55922": { + "dogmaAttributes": [ + { + "attributeID": 9, + "value": 100000000.0 + } + ], + "dogmaEffects": [] + }, + "55923": { + "dogmaAttributes": [ + { + "attributeID": 9, + "value": 100000000.0 + } + ], + "dogmaEffects": [] + }, + "55924": { + "dogmaAttributes": [ + { + "attributeID": 9, + "value": 100000000.0 + } + ], + "dogmaEffects": [] + }, + "55925": { + "dogmaAttributes": [ + { + "attributeID": 9, + "value": 100000000.0 + } + ], + "dogmaEffects": [] + }, + "55927": { + "dogmaAttributes": [ + { + "attributeID": 175, + "value": 5.0 + }, + { + "attributeID": 176, + "value": 5.0 + }, + { + "attributeID": 177, + "value": 5.0 + }, + { + "attributeID": 178, + "value": 5.0 + }, + { + "attributeID": 179, + "value": 5.0 + }, + { + "attributeID": 182, + "value": 3402.0 + }, + { + "attributeID": 277, + "value": 1.0 + }, + { + "attributeID": 330, + "value": 43200000.0 + }, + { + "attributeID": 1087, + "value": 19.0 + }, + { + "attributeID": 1890, + "value": 1.0 + }, + { + "attributeID": 1916, + "value": 1.0 + }, + { + "attributeID": 2422, + "value": 18506.66597222222 + } + ], + "dogmaEffects": [ + { + "effectID": 302, + "isDefault": 0 + }, + { + "effectID": 304, + "isDefault": 0 + }, + { + "effectID": 306, + "isDefault": 0 + }, + { + "effectID": 308, + "isDefault": 0 + }, + { + "effectID": 310, + "isDefault": 0 + } + ] + }, + "55928": { + "dogmaAttributes": [ + { + "attributeID": 175, + "value": 5.0 + }, + { + "attributeID": 176, + "value": 5.0 + }, + { + "attributeID": 177, + "value": 5.0 + }, + { + "attributeID": 178, + "value": 5.0 + }, + { + "attributeID": 179, + "value": 5.0 + }, + { + "attributeID": 182, + "value": 3402.0 + }, + { + "attributeID": 277, + "value": 1.0 + }, + { + "attributeID": 330, + "value": 43200000.0 + }, + { + "attributeID": 1087, + "value": 51.0 + }, + { + "attributeID": 1890, + "value": 1.0 + }, + { + "attributeID": 1916, + "value": 1.0 + }, + { + "attributeID": 2422, + "value": 18522.66597222222 + } + ], + "dogmaEffects": [ + { + "effectID": 302, + "isDefault": 0 + }, + { + "effectID": 304, + "isDefault": 0 + }, + { + "effectID": 306, + "isDefault": 0 + }, + { + "effectID": 308, + "isDefault": 0 + }, + { + "effectID": 310, + "isDefault": 0 + } + ] + }, + "55929": { + "dogmaAttributes": [ + { + "attributeID": 175, + "value": 5.0 + }, + { + "attributeID": 176, + "value": 5.0 + }, + { + "attributeID": 177, + "value": 5.0 + }, + { + "attributeID": 178, + "value": 5.0 + }, + { + "attributeID": 179, + "value": 5.0 + }, + { + "attributeID": 182, + "value": 3402.0 + }, + { + "attributeID": 277, + "value": 1.0 + }, + { + "attributeID": 330, + "value": 86400000.0 + }, + { + "attributeID": 1087, + "value": 52.0 + }, + { + "attributeID": 1890, + "value": 1.0 + }, + { + "attributeID": 1916, + "value": 1.0 + }, + { + "attributeID": 2422, + "value": 18522.66597222222 + } + ], + "dogmaEffects": [ + { + "effectID": 302, + "isDefault": 0 + }, + { + "effectID": 304, + "isDefault": 0 + }, + { + "effectID": 306, + "isDefault": 0 + }, + { + "effectID": 308, + "isDefault": 0 + }, + { + "effectID": 310, + "isDefault": 0 + } + ] + }, + "55935": { + "dogmaAttributes": [ + { + "attributeID": 1158, + "value": 1.0 + } + ], + "dogmaEffects": [] + }, + "55936": { + "dogmaAttributes": [ + { + "attributeID": 1158, + "value": 1.0 + } + ], + "dogmaEffects": [] + }, + "55937": { + "dogmaAttributes": [ + { + "attributeID": 1158, + "value": 1.0 + } + ], + "dogmaEffects": [] + }, + "55938": { + "dogmaAttributes": [ + { + "attributeID": 1158, + "value": 1.0 + } + ], + "dogmaEffects": [] + }, + "55939": { + "dogmaAttributes": [ + { + "attributeID": 1158, + "value": 1.0 + } + ], + "dogmaEffects": [] + }, + "55940": { + "dogmaAttributes": [ + { + "attributeID": 1158, + "value": 1.0 + } + ], + "dogmaEffects": [] + }, + "55941": { + "dogmaAttributes": [ + { + "attributeID": 1158, + "value": 1.0 + } + ], + "dogmaEffects": [] + }, + "55942": { + "dogmaAttributes": [ + { + "attributeID": 175, + "value": 1.0 + }, + { + "attributeID": 176, + "value": 1.0 + }, + { + "attributeID": 177, + "value": 1.0 + }, + { + "attributeID": 178, + "value": 1.0 + }, + { + "attributeID": 179, + "value": 1.0 + }, + { + "attributeID": 182, + "value": 3402.0 + }, + { + "attributeID": 277, + "value": 1.0 + }, + { + "attributeID": 330, + "value": 60000.0 + }, + { + "attributeID": 1087, + "value": 25.0 + }, + { + "attributeID": 1647, + "value": 2400.0 + }, + { + "attributeID": 1890, + "value": 1.0 + }, + { + "attributeID": 1916, + "value": 1.0 + } + ], + "dogmaEffects": [ + { + "effectID": 302, + "isDefault": 0 + }, + { + "effectID": 304, + "isDefault": 0 + }, + { + "effectID": 306, + "isDefault": 0 + }, + { + "effectID": 308, + "isDefault": 0 + }, + { + "effectID": 310, + "isDefault": 0 + } + ] + }, + "55943": { + "dogmaAttributes": [ + { + "attributeID": 175, + "value": 1.0 + }, + { + "attributeID": 176, + "value": 1.0 + }, + { + "attributeID": 177, + "value": 1.0 + }, + { + "attributeID": 178, + "value": 1.0 + }, + { + "attributeID": 179, + "value": 1.0 + }, + { + "attributeID": 182, + "value": 3402.0 + }, + { + "attributeID": 277, + "value": 1.0 + }, + { + "attributeID": 330, + "value": 60000.0 + }, + { + "attributeID": 1087, + "value": 26.0 + }, + { + "attributeID": 1647, + "value": 2400.0 + }, + { + "attributeID": 1890, + "value": 1.0 + }, + { + "attributeID": 1916, + "value": 1.0 + } + ], + "dogmaEffects": [ + { + "effectID": 302, + "isDefault": 0 + }, + { + "effectID": 304, + "isDefault": 0 + }, + { + "effectID": 306, + "isDefault": 0 + }, + { + "effectID": 308, + "isDefault": 0 + }, + { + "effectID": 310, + "isDefault": 0 + } + ] + }, + "55944": { + "dogmaAttributes": [ + { + "attributeID": 175, + "value": 1.0 + }, + { + "attributeID": 176, + "value": 1.0 + }, + { + "attributeID": 177, + "value": 1.0 + }, + { + "attributeID": 178, + "value": 1.0 + }, + { + "attributeID": 179, + "value": 1.0 + }, + { + "attributeID": 182, + "value": 3402.0 + }, + { + "attributeID": 277, + "value": 1.0 + }, + { + "attributeID": 330, + "value": 60000.0 + }, + { + "attributeID": 1087, + "value": 27.0 + }, + { + "attributeID": 1647, + "value": 2400.0 + }, + { + "attributeID": 1890, + "value": 1.0 + }, + { + "attributeID": 1916, + "value": 1.0 + } + ], + "dogmaEffects": [ + { + "effectID": 302, + "isDefault": 0 + }, + { + "effectID": 304, + "isDefault": 0 + }, + { + "effectID": 306, + "isDefault": 0 + }, + { + "effectID": 308, + "isDefault": 0 + }, + { + "effectID": 310, + "isDefault": 0 + } + ] + }, + "55945": { + "dogmaAttributes": [ + { + "attributeID": 175, + "value": 1.0 + }, + { + "attributeID": 176, + "value": 1.0 + }, + { + "attributeID": 177, + "value": 1.0 + }, + { + "attributeID": 178, + "value": 1.0 + }, + { + "attributeID": 179, + "value": 1.0 + }, + { + "attributeID": 182, + "value": 3402.0 + }, + { + "attributeID": 277, + "value": 1.0 + }, + { + "attributeID": 330, + "value": 60000.0 + }, + { + "attributeID": 1087, + "value": 28.0 + }, + { + "attributeID": 1647, + "value": 2400.0 + }, + { + "attributeID": 1890, + "value": 1.0 + }, + { + "attributeID": 1916, + "value": 1.0 + } + ], + "dogmaEffects": [ + { + "effectID": 302, + "isDefault": 0 + }, + { + "effectID": 304, + "isDefault": 0 + }, + { + "effectID": 306, + "isDefault": 0 + }, + { + "effectID": 308, + "isDefault": 0 + }, + { + "effectID": 310, + "isDefault": 0 + } + ] + }, + "55946": { + "dogmaAttributes": [ + { + "attributeID": 175, + "value": 1.0 + }, + { + "attributeID": 176, + "value": 1.0 + }, + { + "attributeID": 177, + "value": 1.0 + }, + { + "attributeID": 178, + "value": 1.0 + }, + { + "attributeID": 179, + "value": 1.0 + }, + { + "attributeID": 182, + "value": 3402.0 + }, + { + "attributeID": 277, + "value": 1.0 + }, + { + "attributeID": 330, + "value": 60000.0 + }, + { + "attributeID": 1087, + "value": 29.0 + }, + { + "attributeID": 1647, + "value": 2400.0 + }, + { + "attributeID": 1890, + "value": 1.0 + }, + { + "attributeID": 1916, + "value": 1.0 + } + ], + "dogmaEffects": [ + { + "effectID": 302, + "isDefault": 0 + }, + { + "effectID": 304, + "isDefault": 0 + }, + { + "effectID": 306, + "isDefault": 0 + }, + { + "effectID": 308, + "isDefault": 0 + }, + { + "effectID": 310, + "isDefault": 0 + } + ] + }, + "55947": { + "dogmaAttributes": [ + { + "attributeID": 175, + "value": 1.0 + }, + { + "attributeID": 176, + "value": 1.0 + }, + { + "attributeID": 177, + "value": 1.0 + }, + { + "attributeID": 178, + "value": 1.0 + }, + { + "attributeID": 179, + "value": 1.0 + }, + { + "attributeID": 182, + "value": 3402.0 + }, + { + "attributeID": 277, + "value": 1.0 + }, + { + "attributeID": 330, + "value": 60000.0 + }, + { + "attributeID": 1087, + "value": 30.0 + }, + { + "attributeID": 1647, + "value": 2400.0 + }, + { + "attributeID": 1890, + "value": 1.0 + }, + { + "attributeID": 1916, + "value": 1.0 + } + ], + "dogmaEffects": [ + { + "effectID": 302, + "isDefault": 0 + }, + { + "effectID": 304, + "isDefault": 0 + }, + { + "effectID": 306, + "isDefault": 0 + }, + { + "effectID": 308, + "isDefault": 0 + }, + { + "effectID": 310, + "isDefault": 0 + } + ] + }, + "55977": { + "dogmaAttributes": [ + { + "attributeID": 175, + "value": 1.0 + }, + { + "attributeID": 176, + "value": 1.0 + }, + { + "attributeID": 177, + "value": 1.0 + }, + { + "attributeID": 178, + "value": 1.0 + }, + { + "attributeID": 179, + "value": 1.0 + }, + { + "attributeID": 182, + "value": 3402.0 + }, + { + "attributeID": 277, + "value": 1.0 + }, + { + "attributeID": 330, + "value": 2937600000.0 + }, + { + "attributeID": 1087, + "value": 53.0 + }, + { + "attributeID": 1890, + "value": 1.0 + }, + { + "attributeID": 1916, + "value": 1.0 + }, + { + "attributeID": 2422, + "value": 18506.125 + } + ], + "dogmaEffects": [ + { + "effectID": 302, + "isDefault": 0 + }, + { + "effectID": 304, + "isDefault": 0 + }, + { + "effectID": 306, + "isDefault": 0 + }, + { + "effectID": 308, + "isDefault": 0 + }, + { + "effectID": 310, + "isDefault": 0 + } + ] } } \ No newline at end of file diff --git a/staticdata/fsd_lite/evetypes.json b/staticdata/fsd_lite/evetypes.json index 58f8f7e02..6b3212ebd 100644 --- a/staticdata/fsd_lite/evetypes.json +++ b/staticdata/fsd_lite/evetypes.json @@ -141559,30 +141559,31 @@ "volume": 0.01 }, "22442": { - "basePrice": 59965600, - "capacity": 400, + "basePrice": 59965600.0, + "capacity": 400.0, "certificateTemplate": 167, "description": "Command ships are engineered specifically to wreak havoc on a battlefield of many. Sporting advanced command module interfaces, these vessels are more than capable of turning the tide in large engagements. Command ships represent the ultimate in Command Burst efficiency; the boosts they give their comrades in combat make them indispensable assets to any well-rounded fleet.\r\n\r\nDeveloper: CreoDron\r\n\r\nAs the largest drone developer and manufacturer in space, CreoDron has a vested interest in drone carriers. While sacrificing relatively little in the way of defensive capability, the Eos can chew its way through surprisingly strong opponents - provided, of course, that the pilot uses top-of-the-line CreoDron drones.", "descriptionID": 93919, "factionID": 500004, "graphicID": 2925, "groupID": 540, + "isDynamicType": false, "isisGroupID": 24, "marketGroupID": 831, - "mass": 13000000, + "mass": 12500000.0, "metaGroupID": 2, "metaLevel": 5, "portionSize": 1, "published": true, "raceID": 8, - "radius": 196, + "radius": 196.0, "soundID": 20074, "techLevel": 2, "typeID": 22442, "typeName": "Eos", "typeNameID": 105398, "variationParentTypeID": 24700, - "volume": 270000, + "volume": 270000.0, "wreckTypeID": 26520 }, "22443": { @@ -141602,30 +141603,31 @@ "volume": 0.01 }, "22444": { - "basePrice": 53673600, - "capacity": 475, + "basePrice": 53673600.0, + "capacity": 475.0, "certificateTemplate": 123, "description": "Command ships are engineered specifically to wreak havoc on a battlefield of many. Sporting advanced command module interfaces, these vessels are more than capable of turning the tide in large engagements. Command ships represent the ultimate in Command Burst efficiency; the boosts they give their comrades in combat make them indispensable assets to any well-rounded fleet.\r\n\r\nDeveloper: Boundless Creation\r\n\r\nBoundless Creation's ships are based on the Brutor tribe's philosophy of warfare: simply fit as much firepower onto your ship as possible. Defense systems and electronics arrays therefore tend to take a back seat to sheer annihilative potential.", "descriptionID": 93921, "factionID": 500002, "graphicID": 2912, "groupID": 540, + "isDynamicType": false, "isisGroupID": 24, "marketGroupID": 834, - "mass": 12800000, + "mass": 12800000.0, "metaGroupID": 2, "metaLevel": 5, "portionSize": 1, "published": true, "raceID": 2, - "radius": 258, + "radius": 258.0, "soundID": 20076, "techLevel": 2, "typeID": 22444, "typeName": "Sleipnir", "typeNameID": 105400, "variationParentTypeID": 24702, - "volume": 216000, + "volume": 216000.0, "wreckTypeID": 26542 }, "22445": { @@ -141645,30 +141647,31 @@ "volume": 0.01 }, "22446": { - "basePrice": 57182600, - "capacity": 400, + "basePrice": 57182600.0, + "capacity": 400.0, "certificateTemplate": 178, "description": "Command ships are engineered specifically to wreak havoc on a battlefield of many. Sporting advanced command module interfaces, these vessels are more than capable of turning the tide in large engagements. Command ships represent the ultimate in Command Burst efficiency; the boosts they give their comrades in combat make them indispensable assets to any well-rounded fleet.\r\n\r\nDeveloper: Ishukone\r\n\r\nMost of the recent designs off their assembly line have provided for a combination that the Ishukone name is becoming known for: great long-range capabilities and shield systems unmatched anywhere else.", "descriptionID": 93922, "factionID": 500001, "graphicID": 2807, "groupID": 540, + "isDynamicType": false, "isisGroupID": 24, "marketGroupID": 828, - "mass": 14000000, + "mass": 14000000.0, "metaGroupID": 2, "metaLevel": 5, "portionSize": 1, "published": true, "raceID": 1, - "radius": 215, + "radius": 215.0, "soundID": 20068, "techLevel": 2, "typeID": 22446, "typeName": "Vulture", "typeNameID": 105401, "variationParentTypeID": 16227, - "volume": 252000, + "volume": 252000.0, "wreckTypeID": 26498 }, "22447": { @@ -141688,30 +141691,31 @@ "volume": 0.01 }, "22448": { - "basePrice": 56953600, - "capacity": 375, + "basePrice": 56953600.0, + "capacity": 375.0, "certificateTemplate": 177, "description": "Command ships are engineered specifically to wreak havoc on a battlefield of many. Sporting advanced command module interfaces, these vessels are more than capable of turning the tide in large engagements. Command ships represent the ultimate in Command Burst efficiency; the boosts they give their comrades in combat make them indispensable assets to any well-rounded fleet.\r\n\r\nDeveloper: Carthum Conglomerate\r\n\r\nCarthum ships are the very embodiment of the Amarrian warfare philosophy. Possessing sturdy armor and advanced weapons systems, they provide a nice mix of offense and defense. On the other hand, their electronics and shield systems tend to be rather limited.", "descriptionID": 93916, "factionID": 500003, "graphicID": 2926, "groupID": 540, + "isDynamicType": false, "isisGroupID": 24, "marketGroupID": 825, - "mass": 13300000, + "mass": 12300000.0, "metaGroupID": 2, "metaLevel": 5, "portionSize": 1, "published": true, "raceID": 4, - "radius": 173, + "radius": 173.0, "soundID": 20061, "techLevel": 2, "typeID": 22448, "typeName": "Absolution", "typeNameID": 105395, "variationParentTypeID": 24696, - "volume": 234000, + "volume": 234000.0, "wreckTypeID": 26476 }, "22449": { @@ -141903,30 +141907,31 @@ "volume": 0.01 }, "22466": { - "basePrice": 59062600, - "capacity": 400, + "basePrice": 59062600.0, + "capacity": 400.0, "certificateTemplate": 180, "description": "Command ships are engineered specifically to wreak havoc on a battlefield of many. Sporting advanced command module interfaces, these vessels are more than capable of turning the tide in large engagements. Command ships represent the ultimate in Command Burst efficiency; the boosts they give their comrades in combat make them indispensable assets to any well-rounded fleet.\r\n\r\nDeveloper: Duvolle Labs\r\n\r\nDuvolle Labs manufactures sturdy ships with a good mix of offensive and defensive capabilities. Since the company is one of New Eden's foremost manufacturers of particle blasters, its ships tend to favor turrets and thus have somewhat higher power output than normal.", "descriptionID": 93917, "factionID": 500004, "graphicID": 2798, "groupID": 540, + "isDynamicType": false, "isisGroupID": 24, "marketGroupID": 831, - "mass": 12300000, + "mass": 12300000.0, "metaGroupID": 2, "metaLevel": 5, "portionSize": 1, "published": true, "raceID": 8, - "radius": 196, + "radius": 196.0, "soundID": 20072, "techLevel": 2, "typeID": 22466, "typeName": "Astarte", "typeNameID": 105396, "variationParentTypeID": 16229, - "volume": 270000, + "volume": 270000.0, "wreckTypeID": 26520 }, "22467": { @@ -141946,30 +141951,31 @@ "volume": 0.01 }, "22468": { - "basePrice": 51354600, - "capacity": 575, + "basePrice": 51354600.0, + "capacity": 575.0, "certificateTemplate": 162, "description": "Command ships are engineered specifically to wreak havoc on a battlefield of many. Sporting advanced command module interfaces, these vessels are more than capable of turning the tide in large engagements. Command ships represent the ultimate in Command Burst efficiency; the boosts they give their comrades in combat make them indispensable assets to any well-rounded fleet.\r\n\r\nDeveloper: Core Complexion Inc.\r\n\r\nCore Complexion's ships are unusual in that they favor electronics and defense over the \"lots of guns\" approach traditionally favored by the Minmatar.", "descriptionID": 95051, "factionID": 500002, "graphicID": 2794, "groupID": 540, + "isDynamicType": false, "isisGroupID": 24, "marketGroupID": 834, - "mass": 12500000, + "mass": 12500000.0, "metaGroupID": 2, "metaLevel": 5, "portionSize": 1, "published": true, "raceID": 2, - "radius": 258, + "radius": 258.0, "soundID": 20076, "techLevel": 2, "typeID": 22468, "typeName": "Claymore", "typeNameID": 106631, "variationParentTypeID": 16231, - "volume": 216000, + "volume": 216000.0, "wreckTypeID": 26542 }, "22469": { @@ -141989,30 +141995,31 @@ "volume": 0.01 }, "22470": { - "basePrice": 58533600, - "capacity": 700, + "basePrice": 58533600.0, + "capacity": 700.0, "certificateTemplate": 179, "description": "Command ships are engineered specifically to wreak havoc on a battlefield of many. Sporting advanced command module interfaces, these vessels are more than capable of turning the tide in large engagements. Command ships represent the ultimate in Command Burst efficiency; the boosts they give their comrades in combat make them indispensable assets to any well-rounded fleet.\r\n\r\nDeveloper: Kaalakiota\r\n\r\nAs befits one of the largest weapons manufacturers in the known world, Kaalakiota's ships are very combat focused. Favoring the traditional Caldari combat strategy, they are designed around a substantial number of weapons systems, especially missile launchers. However, they have rather weak armor and structure, relying more on shields for protection.", "descriptionID": 93920, "factionID": 500001, "graphicID": 2801, "groupID": 540, + "isDynamicType": false, "isisGroupID": 24, "marketGroupID": 828, - "mass": 14810000, + "mass": 13200000.0, "metaGroupID": 2, "metaLevel": 5, "portionSize": 1, "published": true, "raceID": 1, - "radius": 215, + "radius": 215.0, "soundID": 20068, "techLevel": 2, "typeID": 22470, "typeName": "Nighthawk", "typeNameID": 105399, "variationParentTypeID": 24698, - "volume": 252000, + "volume": 252000.0, "wreckTypeID": 26498 }, "22471": { @@ -142032,30 +142039,31 @@ "volume": 0.01 }, "22474": { - "basePrice": 58986600, - "capacity": 645, + "basePrice": 58986600.0, + "capacity": 645.0, "certificateTemplate": 38, "description": "Command ships are engineered specifically to wreak havoc on a battlefield of many. Sporting advanced command module interfaces, these vessels are more than capable of turning the tide in large engagements. Command ships represent the ultimate in Command Burst efficiency; the boosts they give their comrades in combat make them indispensable assets to any well-rounded fleet.\r\n\r\nDeveloper: Khanid Innovation\r\n\r\nIn addition to robust electronics systems, the Khanid Kingdom's ships possess advanced armor alloys capable of withstanding a great deal of punishment. Generally eschewing the use of turrets, they tend to gear their vessels more towards close-range missile combat.", "descriptionID": 93918, "factionID": 500003, "graphicID": 2804, "groupID": 540, + "isDynamicType": false, "isisGroupID": 24, "marketGroupID": 825, - "mass": 13500000, + "mass": 13500000.0, "metaGroupID": 2, "metaLevel": 5, "portionSize": 1, "published": true, "raceID": 4, - "radius": 173, + "radius": 173.0, "soundID": 20064, "techLevel": 2, "typeID": 22474, "typeName": "Damnation", "typeNameID": 105397, "variationParentTypeID": 16233, - "volume": 234000, + "volume": 234000.0, "wreckTypeID": 26476 }, "22475": { @@ -538605,6 +538613,7 @@ "mass": 0.5, "portionSize": 1, "published": true, + "raceID": 4, "radius": 1.0, "typeID": 47182, "typeName": "Men's Amarr 'Loyalist' T-Shirt", @@ -538673,6 +538682,7 @@ "mass": 0.5, "portionSize": 1, "published": true, + "raceID": 4, "radius": 1.0, "typeID": 47186, "typeName": "Women's Amarr 'Loyalist' T-Shirt", @@ -585094,8 +585104,8 @@ "radius": 42.0, "soundID": 20063, "typeID": 52655, - "typeName": "Tangling Strike Kikimora", - "typeNameID": 551340, + "typeName": "Raznaborg Tangling Kikimora", + "typeNameID": 568843, "volume": 43000.0, "wreckTypeID": 52660 }, @@ -621536,14 +621546,18 @@ "55751": { "basePrice": 0.0, "capacity": 0.0, + "description": "Wearing this beret displays your loyalty to the Amarr Empire, with a simple design and powerful symbolism rising above more than just a fashion statement.", + "descriptionID": 568712, "groupID": 1092, "iconID": 24489, + "marketGroupID": 1943, "mass": 0.5, "portionSize": 1, - "published": false, + "published": true, + "raceID": 4, "radius": 1.0, "typeID": 55751, - "typeName": "55751_Female_hair_HeadWear_Beret_F01_Types_HeadWear_Beret_AmarrFoundationF01.png", + "typeName": "Women's Amarr 'Loyalist' Beret", "typeNameID": 567325, "volume": 0.1 }, @@ -621598,14 +621612,18 @@ "55755": { "basePrice": 0.0, "capacity": 0.0, + "description": "Wearing this beret displays your loyalty to the Amarr Empire, with a simple design and powerful symbolism rising above more than just a fashion statement.", + "descriptionID": 568713, "groupID": 1092, "iconID": 24493, + "marketGroupID": 1943, "mass": 0.5, "portionSize": 1, - "published": false, + "published": true, + "raceID": 4, "radius": 1.0, "typeID": 55755, - "typeName": "55755_Male_hair_HeadWear_Beret_M01_Types_HeadWear_Beret_AmarrFoundationM01.png", + "typeName": "Men's Amarr 'Loyalist' Beret", "typeNameID": 567333, "volume": 0.1 }, @@ -622497,7 +622515,7 @@ "55822": { "basePrice": 10000.0, "capacity": 0.0, - "description": "This filament allows a fleet containing a single capsuleer to enter an Abyssal Proving Ground for a fight to the death against five other capsuleers.\r\nThe ships allowed to enter this proving ground event are the Coercer, Dragoon, Cormorant, Corax, Catalyst, Algos, Thrasher, Talwar, and Sunesis\r\n\r\nThe proving ground event accessed through this filament will be accessible from July 31st to August 4th, YC122", + "description": "This filament allows a fleet containing a single capsuleer to enter an Abyssal Proving Ground for a fight to the death against four other capsuleers.\r\nThe ships allowed to enter this proving ground event are the Coercer, Dragoon, Cormorant, Corax, Catalyst, Algos, Thrasher, Talwar, and Sunesis\r\n\r\nThe proving ground event accessed through this filament will be accessible from July 31st to August 4th, YC122", "descriptionID": 567626, "groupID": 4050, "iconID": 24497, @@ -622550,16 +622568,19 @@ "55825": { "basePrice": 10000.0, "capacity": 0.0, + "description": "The format for this event will be announced soon.\r\n\r\nThe proving ground event accessed through this filament will be accessible from August 21st to 25th, YC122", + "descriptionID": 568728, "groupID": 4050, - "iconID": 21928, + "iconID": 24497, + "marketGroupID": 2747, "mass": 0.0, "metaLevel": 0, "portionSize": 1, - "published": false, + "published": true, "radius": 1.0, "techLevel": 1, "typeID": 55825, - "typeName": "Proving Filament 9", + "typeName": "Event 4 Proving Filament", "typeNameID": 567584, "volume": 0.1 }, @@ -623932,6 +623953,190 @@ "typeNameID": 567889, "volume": 1.0 }, + "55919": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Empress Jamyl I has been venerated as a saint of the Amarr faith since her death at as the result of a Drifter attack in YC117. It is normal for occupants of the throne of Amarr to be considered major saints once they pass on, particularly as emperors are considered living prophets of the faith. Not all are venerated with the degree of fervor attached to the memory of Empress Jamyl I. Popularly known as \"St. Jamyl the Liberator\" for her \"divine return\" in order to repel a Minmatar invasion of core Amarr worlds in YC110, some Jamylite cults carry their worship of her so far that it treads into heretical territory.", + "descriptionID": 567954, + "graphicID": 2910, + "groupID": 226, + "isDynamicType": false, + "isisGroupID": 4, + "mass": 0.0, + "portionSize": 1, + "published": false, + "raceID": 4, + "radius": 6800.0, + "typeID": 55919, + "typeName": "TES Jamyl the Liberator", + "typeNameID": 567953, + "volume": 0.0 + }, + "55920": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Royal Heirs that commit ritual suicide in accordance with the Rite of Shathol'Syn are considered to have sacrificed their lives for the Amarr faith in order to usher in the reign of a new emperor. Such lords and ladies of the Great Houses of the Amarr Empire attain a saintly status by their sacrifice. Royal Heir Yonis Ardishapur was noted throughout his life for considerable piety, tastes approaching the ascetic, and a great concern to spread the Amarr faith and improve the lives of the faithful. Yonis Ardishapur's development of the Ammatar Mandate is considered his greatest achievement by House Ardishapur and is being continued by Lord Arim Ardishapur.", + "descriptionID": 567956, + "graphicID": 2910, + "groupID": 226, + "isDynamicType": false, + "isisGroupID": 4, + "mass": 0.0, + "portionSize": 1, + "published": false, + "raceID": 4, + "radius": 6800.0, + "typeID": 55920, + "typeName": "TES Yonis the Pious", + "typeNameID": 567955, + "volume": 0.0 + }, + "55921": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Royal Heirs that commit ritual suicide in accordance with the Rite of Shathol'Syn are considered to have sacrificed their lives for the Amarr faith in order to usher in the reign of a new emperor. Such lords and ladies of the Great Houses of the Amarr Empire attain a saintly status by their sacrifice. Royal Heir Uriam Kador was well-known as a man of deep passions that made him a rather impulsive leader of House Kador. Uriam's most notorious act was to order an incursion into the Gallente Federation by the Kador Fleet in late YC110. The ensuing military disaster and its aftermath greatly diminished the prestige of House Kador, though it has been restored in large part by the efforts of his successor, Lady Hamideh Kador. ", + "descriptionID": 567958, + "graphicID": 2910, + "groupID": 226, + "isDynamicType": false, + "isisGroupID": 4, + "mass": 0.0, + "portionSize": 1, + "published": false, + "raceID": 4, + "radius": 6800.0, + "typeID": 55921, + "typeName": "TES Uriam of Fiery Heart", + "typeNameID": 567957, + "volume": 0.0 + }, + "55922": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Royal Heirs that commit ritual suicide in accordance with the Rite of Shathol'Syn are considered to have sacrificed their lives for the Amarr faith in order to usher in the reign of a new emperor. Such lords and ladies of the Great Houses of the Amarr Empire attain a saintly status by their sacrifice. King Garkeh Khanid II's decision to bring the Khanid Kingdom once more under the greater Amarr Empire's dominion led to his being considered a Royal Heir upon the death of Empress Jamyl I. His death was followed a declaration by King Farokh Khanid III that his predecessor be known as \"St. Garkeh of the True Vigil on the Khanid Marches\". A gigantic Grand Basilica is being constructed on Khanid Prime V in the memory of \"Garkeh of the Marches\".", + "descriptionID": 567960, + "graphicID": 2910, + "groupID": 226, + "isDynamicType": false, + "isisGroupID": 4, + "mass": 0.0, + "portionSize": 1, + "published": false, + "raceID": 4, + "radius": 6800.0, + "typeID": 55922, + "typeName": "TES Garkeh of the Marches", + "typeNameID": 567959, + "volume": 0.0 + }, + "55923": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Royal Heirs that commit ritual suicide in accordance with the Rite of Shathol'Syn are considered to have sacrificed their lives for the Amarr faith in order to usher in the reign of a new emperor. Such lords and ladies of the Great Houses of the Amarr Empire attain a saintly status by their sacrifice. Royal Heir Aritcio Kor-Azor effectively had two lives in his time as head of House Kor-Azor. The first consisted of his capricious and brutal reign of terror over the Kor-Azor demesne, only curtailed when his depredations on commoners and vassal nobles alike led to severe action by the Order of the Speakers of Truth. His \"second life\" was marked by many acts of generosity and tolerance as head of House Kor-Azor. His personal selection of Lady Ersilia Kor-Azor as successor was in recognition of her great skill as a diplomat and administrator.", + "descriptionID": 567962, + "graphicID": 2910, + "groupID": 226, + "isDynamicType": false, + "isisGroupID": 4, + "mass": 0.0, + "portionSize": 1, + "published": false, + "raceID": 4, + "radius": 6800.0, + "typeID": 55923, + "typeName": "TES Aritcio the Redeemed", + "typeNameID": 567961, + "volume": 0.0 + }, + "55924": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Royal Heirs that commit ritual suicide in accordance with the Rite of Shathol'Syn are considered to have sacrificed their lives for the Amarr faith in order to usher in the reign of a new emperor. Such lords and ladies of the Great Houses of the Amarr Empire attain a saintly status by their sacrifice. Royal Heir Merimeth Sarum was forced to wait a long time for confirmation of his status as head of House Sarum due to the circumstances of Jamyl Sarum's \"first death\" and the corrupted court politics of the Karsoth Interregnum. His short reign as official Royal Heir of House Sarum is perhaps most significant for his support for Lord Arrach Sarum as his designated successor.", + "descriptionID": 567964, + "graphicID": 2910, + "groupID": 226, + "isDynamicType": false, + "isisGroupID": 4, + "mass": 0.0, + "portionSize": 1, + "published": false, + "raceID": 4, + "radius": 6800.0, + "typeID": 55924, + "typeName": "TES Merimeth the Serene", + "typeNameID": 567963, + "volume": 0.0 + }, + "55925": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Her Most Sublime and Imperial Majesty Catiz I, First Apostle of the True Faith and Sovereign Defender of the Imperial Rite is now considered the head of the Emperor Family, and strictly no longer a member of House Tash-Murkon. Nevertheless, it is a point of pride for the Tash-Murkon that within a relatively short time of their elevation to Royal Family status they have provided an Empress of Holy Amarr. It is particularly notable that House Tash-Murkon has a strong Udorian lineage which they do not seek to conceal. As a result, Empress Catiz I is the first occupant of the Throne of Amarr known to have uncontested Udorian ancestry.", + "descriptionID": 567966, + "graphicID": 2910, + "groupID": 226, + "isDynamicType": false, + "isisGroupID": 4, + "mass": 0.0, + "portionSize": 1, + "published": false, + "raceID": 4, + "radius": 6800.0, + "typeID": 55925, + "typeName": "TES Catiz of Tash-Murkon", + "typeNameID": 567965, + "volume": 0.0 + }, + "55927": { + "basePrice": 32768.0, + "capacity": 0.0, + "description": "This Cerebral Accelerator is only designed for and available on Serenity.\r\n\r\nCerebral accelerators are military grade boosters that significantly increase a pilot’s skill development for a given window of time. This is achieved by priming the user’s brain and neural pathways for increased data bandwidth during knowledge transfer.\r\n\r\nCapsuleers using this accelerator can expect a massive increase in neural bandwidth, aiding much more rapid transfer of neural data from skill packs.\r\n\r\nThe only drawback to this accelerator is that capsuleer training renders it ineffective after one use. Depending on the Capsuleer's knowledge of the Biology skill it will cease to function after at least 12 hours once activated, due to natural degradation of the biochemical compounds used to stimulate the user’s neural activity. The compounds are only guaranteed to function until YC122/08/31.", + "descriptionID": 568275, + "groupID": 303, + "iconID": 10144, + "isDynamicType": false, + "mass": 1.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55927, + "typeName": "Serenity Monthly Cerebral Accelerator - 2020.8", + "typeNameID": 568274, + "volume": 1.0 + }, + "55928": { + "basePrice": 32768.0, + "capacity": 0.0, + "description": "This Cerebral Accelerator is only designed for and available on Serenity.\r\n\r\nCerebral accelerators are military grade boosters that significantly increase a pilot’s skill development for a given window of time. This is achieved by priming the user’s brain and neural pathways for increased data bandwidth during knowledge transfer.\r\n\r\nCapsuleers using this accelerator can expect a massive increase in neural bandwidth, aiding much more rapid transfer of neural data from skill packs.\r\n\r\nThe only drawback to this accelerator is that capsuleer training renders it ineffective after one use. Depending on the Capsuleer's knowledge of the Biology skill it will cease to function after at least 12 hours once activated, due to natural degradation of the biochemical compounds used to stimulate the user’s neural activity. The compounds are only guaranteed to function until YC122/09/17.", + "descriptionID": 568432, + "groupID": 303, + "iconID": 10144, + "isDynamicType": false, + "mass": 1.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55928, + "typeName": "Serenity August Season Standard Cerebral Accelerator", + "typeNameID": 568431, + "volume": 1.0 + }, + "55929": { + "basePrice": 32768.0, + "capacity": 0.0, + "description": "This Cerebral Accelerator is only designed for and available on Serenity.\r\n\r\nCerebral accelerators are military grade boosters that significantly increase a pilot’s skill development for a given window of time. This is achieved by priming the user’s brain and neural pathways for increased data bandwidth during knowledge transfer.\r\n\r\nCapsuleers using this accelerator can expect a massive increase in neural bandwidth, aiding much more rapid transfer of neural data from skill packs.\r\n\r\nThe only drawback to this accelerator is that capsuleer training renders it ineffective after one use. Depending on the Capsuleer's knowledge of the Biology skill it will cease to function after at least 24 hours once activated, due to natural degradation of the biochemical compounds used to stimulate the user’s neural activity. The compounds are only guaranteed to function until YC122/09/17.", + "descriptionID": 568434, + "groupID": 303, + "iconID": 10144, + "isDynamicType": false, + "mass": 1.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55929, + "typeName": "Serenity August Season Advanced Cerebral Accelerator", + "typeNameID": 568433, + "volume": 1.0 + }, "5593": { "basePrice": 0.0, "capacity": 0.0, @@ -623951,6 +624156,252 @@ "typeNameID": 101802, "volume": 5.0 }, + "55935": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Fitted with a power flash-battery, this beacon sends out signals throughout the entire solar system.", + "descriptionID": 568445, + "graphicID": 1211, + "groupID": 310, + "mass": 1.0, + "portionSize": 1, + "published": false, + "radius": 1.0, + "typeID": 55935, + "typeName": "TES Jamyl the Liberator Parade", + "typeNameID": 568444, + "volume": 1.0 + }, + "55936": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Fitted with a power flash-battery, this beacon sends out signals throughout the entire solar system.", + "descriptionID": 568447, + "graphicID": 1211, + "groupID": 310, + "mass": 1.0, + "portionSize": 1, + "published": false, + "radius": 1.0, + "typeID": 55936, + "typeName": "TES Yonis the Pious Parade", + "typeNameID": 568446, + "volume": 1.0 + }, + "55937": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Fitted with a power flash-battery, this beacon sends out signals throughout the entire solar system.", + "descriptionID": 568449, + "graphicID": 1211, + "groupID": 310, + "mass": 1.0, + "portionSize": 1, + "published": false, + "radius": 1.0, + "typeID": 55937, + "typeName": "TES Uriam of Fiery Heart Parade", + "typeNameID": 568448, + "volume": 1.0 + }, + "55938": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Fitted with a power flash-battery, this beacon sends out signals throughout the entire solar system.", + "descriptionID": 568451, + "graphicID": 1211, + "groupID": 310, + "mass": 1.0, + "portionSize": 1, + "published": false, + "radius": 1.0, + "typeID": 55938, + "typeName": "TES Garkeh of the Marches Parade", + "typeNameID": 568450, + "volume": 1.0 + }, + "55939": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Fitted with a power flash-battery, this beacon sends out signals throughout the entire solar system.", + "descriptionID": 568453, + "graphicID": 1211, + "groupID": 310, + "mass": 1.0, + "portionSize": 1, + "published": false, + "radius": 1.0, + "typeID": 55939, + "typeName": "TES Aritcio the Redeemed Parade", + "typeNameID": 568452, + "volume": 1.0 + }, + "55940": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Fitted with a power flash-battery, this beacon sends out signals throughout the entire solar system.", + "descriptionID": 568455, + "graphicID": 1211, + "groupID": 310, + "mass": 1.0, + "portionSize": 1, + "published": false, + "radius": 1.0, + "typeID": 55940, + "typeName": "TES Merimeth the Serene Parade", + "typeNameID": 568454, + "volume": 1.0 + }, + "55941": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Fitted with a power flash-battery, this beacon sends out signals throughout the entire solar system.", + "descriptionID": 568457, + "graphicID": 1211, + "groupID": 310, + "mass": 1.0, + "portionSize": 1, + "published": false, + "radius": 1.0, + "typeID": 55941, + "typeName": "TES Catiz of Tash-Murkon Parade", + "typeNameID": 568456, + "volume": 1.0 + }, + "55942": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "This Cerebral Accelerator is only designed for and available on Serenity.", + "descriptionID": 568464, + "groupID": 303, + "iconID": 10144, + "isDynamicType": false, + "mass": 0.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55942, + "typeName": "Standard Armor Skill Accelerator", + "typeNameID": 568463, + "volume": 1.0 + }, + "55943": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "This Cerebral Accelerator is only designed for and available on Serenity.", + "descriptionID": 568466, + "groupID": 303, + "iconID": 10144, + "isDynamicType": false, + "mass": 0.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55943, + "typeName": "Elite Armor Skill Accelerator", + "typeNameID": 568465, + "volume": 1.0 + }, + "55944": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "This Cerebral Accelerator is only designed for and available on Serenity.", + "descriptionID": 568469, + "groupID": 303, + "iconID": 10144, + "isDynamicType": false, + "mass": 0.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55944, + "typeName": "Standard Shield Skill Accelerator", + "typeNameID": 568468, + "volume": 1.0 + }, + "55945": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "This Cerebral Accelerator is only designed for and available on Serenity.", + "descriptionID": 568471, + "groupID": 303, + "iconID": 10144, + "isDynamicType": false, + "mass": 0.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55945, + "typeName": "Elite Shield Skill Accelerator", + "typeNameID": 568470, + "volume": 1.0 + }, + "55946": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "This Cerebral Accelerator is only designed for and available on Serenity.", + "descriptionID": 568473, + "groupID": 303, + "iconID": 10144, + "isDynamicType": false, + "mass": 0.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55946, + "typeName": "Standard Engineering Skill Accelerator", + "typeNameID": 568472, + "volume": 1.0 + }, + "55947": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "This Cerebral Accelerator is only designed for and available on Serenity.", + "descriptionID": 568475, + "groupID": 303, + "iconID": 10144, + "isDynamicType": false, + "mass": 0.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55947, + "typeName": "Elite Engineering Skill Accelerator", + "typeNameID": 568474, + "volume": 1.0 + }, + "55948": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "This SKIN will be applied directly to your character's SKIN collection when redeemed, instead of being placed in your inventory.", + "descriptionID": 568486, + "groupID": 1950, + "mass": 0.0, + "portionSize": 1, + "published": true, + "raceID": 4, + "radius": 1.0, + "typeID": 55948, + "typeName": "Amarr Shuttle Khanid SKIN", + "typeNameID": 568485, + "volume": 0.01 + }, + "55949": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "This SKIN will be applied directly to your character's SKIN collection when redeemed, instead of being placed in your inventory.", + "descriptionID": 568489, + "groupID": 1950, + "mass": 0.0, + "portionSize": 1, + "published": true, + "raceID": 4, + "radius": 1.0, + "typeID": 55949, + "typeName": "Sigil Khanid SKIN", + "typeNameID": 568488, + "volume": 0.01 + }, "5595": { "basePrice": 0.0, "capacity": 0.0, @@ -623989,6 +624440,91 @@ "typeNameID": 101794, "volume": 5.0 }, + "55977": { + "basePrice": 32768.0, + "capacity": 0.0, + "description": "This Cerebral Accelerator is only designed for and available on Serenity.", + "descriptionID": 568692, + "groupID": 303, + "iconID": 10144, + "isDynamicType": false, + "mass": 1.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55977, + "typeName": "Serenity August Season Pass", + "typeNameID": 568691, + "volume": 1.0 + }, + "55980": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Contains Foundation Day clothing items to demonstrate your faith in the Amarr Empire!", + "descriptionID": 568725, + "groupID": 1194, + "iconID": 24297, + "mass": 0.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55980, + "typeName": "Amarr Foundation Day Apparel Crate", + "typeNameID": 568724, + "volume": 0.1 + }, + "55981": { + "basePrice": 0.0, + "capacity": 0.0, + "description": "Contains a Festival Launcher module and a set of Crown Imperial fireworks", + "descriptionID": 568727, + "groupID": 1194, + "iconID": 24297, + "mass": 0.0, + "portionSize": 1, + "published": true, + "radius": 1.0, + "typeID": 55981, + "typeName": "Amarr Foundation Day Fireworks Crate", + "typeNameID": 568726, + "volume": 0.1 + }, + "55982": { + "basePrice": 10000.0, + "capacity": 0.0, + "description": "The format for this event will be announced soon.\r\n\r\nThe proving ground event accessed through this filament will be accessible from August 28th to September 1st, YC122", + "descriptionID": 568730, + "groupID": 4050, + "iconID": 24501, + "mass": 0.0, + "metaLevel": 0, + "portionSize": 1, + "published": false, + "radius": 1.0, + "techLevel": 1, + "typeID": 55982, + "typeName": "Event 5 Proving Filament", + "typeNameID": 568729, + "volume": 0.1 + }, + "55983": { + "basePrice": 10000.0, + "capacity": 0.0, + "description": "The format for this event will be announced soon.\r\n\r\nThe proving ground event accessed through this filament will be accessible from September 4th to 8th, YC122", + "descriptionID": 568732, + "groupID": 4050, + "iconID": 24498, + "mass": 0.0, + "metaLevel": 0, + "portionSize": 1, + "published": false, + "radius": 1.0, + "techLevel": 1, + "typeID": 55983, + "typeName": "Event 6 Proving Filament", + "typeNameID": 568731, + "volume": 0.1 + }, "5599": { "basePrice": 0.0, "capacity": 0.0, diff --git a/staticdata/phobos/metadata.json b/staticdata/phobos/metadata.json index f77a21c44..19edc071e 100644 --- a/staticdata/phobos/metadata.json +++ b/staticdata/phobos/metadata.json @@ -1,10 +1,10 @@ [ { "field_name": "client_build", - "field_value": 1769230 + "field_value": 1777281 }, { "field_name": "dump_time", - "field_value": 1594723755 + "field_value": 1595924073 } ] \ No newline at end of file diff --git a/staticdata/phobos/traits.json b/staticdata/phobos/traits.json index 0691ecdf1..ef2d28dcf 100644 --- a/staticdata/phobos/traits.json +++ b/staticdata/phobos/traits.json @@ -73,8 +73,8 @@ "text": "bonus to Heavy Missile and Heavy Assault Missile Launcher rate of fire" }, { - "number": "5%", - "text": "bonus to Heavy Missile and Heavy Assault Missile explosion velocity" + "number": "10%", + "text": "bonus to Heavy Missile and Heavy Assault Missile velocity" }, { "number": "3%", @@ -90,8 +90,8 @@ "text": "bonus to Heavy Missile and Heavy Assault Missile Launcher rate of fire" }, { - "number": "7.5%", - "text": "bonus to Shield Booster amount" + "number": "4%", + "text": "bonus to all shield resistances" } ], "header": "Minmatar Battlecruiser bonuses (per skill level):" @@ -120,10 +120,6 @@ "bonuses": [ { "text": "·Can use two Command Burst modules" - }, - { - "number": "100%", - "text": "bonus to Command Burst area of effect range" } ], "header": "Role Bonus:" @@ -140,7 +136,7 @@ "text": "bonus to Medium Hybrid Turret falloff" }, { - "number": "3%", + "number": "4%", "text": "bonus to Armored Command and Skirmish Command burst strength and duration" } ], @@ -5994,10 +5990,6 @@ "bonuses": [ { "text": "·Can use two Command Burst modules" - }, - { - "number": "100%", - "text": "bonus to Command Burst area of effect range" } ], "header": "Role Bonus:" @@ -6006,7 +5998,7 @@ { "bonuses": [ { - "number": "7.5%", + "number": "10%", "text": "bonus to Heavy Missile and Heavy Assault Missile Launcher rate of fire" }, { @@ -6014,7 +6006,7 @@ "text": "bonus to Heavy Missile and Heavy Assault Missile explosion radius" }, { - "number": "3%", + "number": "4%", "text": "bonus to Shield Command and Information Command burst strength and duration" } ], @@ -8945,11 +8937,11 @@ "bonuses": [ { "number": "7.5%", - "text": "bonus to Heavy Drone max velocity and tracking speed" + "text": "bonus to Drone tracking speed" }, { - "number": "7.5%", - "text": "bonus to Medium Hybrid Turret tracking speed" + "number": "10%", + "text": "bonus to Drone optimal range" }, { "number": "3%", @@ -8965,8 +8957,8 @@ "text": "bonus to Drone hitpoints and damage" }, { - "number": "7.5%", - "text": "bonus to Armor Repairer amount" + "number": "4%", + "text": "bonus to all armor resistances" } ], "header": "Gallente Battlecruiser bonuses (per skill level):" @@ -8981,10 +8973,6 @@ "bonuses": [ { "text": "·Can use two Command Burst modules" - }, - { - "number": "100%", - "text": "bonus to Command Burst area of effect range" } ], "header": "Role Bonus:" @@ -9001,7 +8989,7 @@ "text": "bonus to Medium Projectile Turret falloff" }, { - "number": "3%", + "number": "4%", "text": "bonus to Shield Command and Skirmish Command burst strength and duration" } ], @@ -9043,7 +9031,7 @@ "bonuses": [ { "number": "10%", - "text": "bonus to Medium Hybrid Turret optimal range" + "text": "bonus to shield hitpoints" }, { "number": "10%", @@ -9079,10 +9067,6 @@ "bonuses": [ { "text": "·Can use two Command Burst modules" - }, - { - "number": "100%", - "text": "bonus to Command Burst area of effect range" } ], "header": "Role Bonus:" @@ -9099,7 +9083,7 @@ "text": "bonus to Medium Energy Turret rate of fire" }, { - "number": "3%", + "number": "4%", "text": "bonus to Armored Command and Information Command burst strength and duration" } ], From 174ac976829e71b1837311874b1f74bd1ba44d47 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Tue, 28 Jul 2020 15:57:55 +0300 Subject: [PATCH 05/13] Implement new CS effects --- eos/effects.py | 182 +++++++++++++++++++++++++------------------------ 1 file changed, 92 insertions(+), 90 deletions(-) diff --git a/eos/effects.py b/eos/effects.py index 20ddd5244..ad2a6f77a 100644 --- a/eos/effects.py +++ b/eos/effects.py @@ -6540,23 +6540,6 @@ class Effect2160(BaseEffect): skill='Command Ships', **kwargs) -class Effect2161(BaseEffect): - """ - eliteBonusCommandShipHybridOptimalCS1 - - Used by: - Ship: Vulture - """ - - type = 'passive' - - @staticmethod - def handler(fit, ship, context, projectionRange, **kwargs): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), - 'maxRange', ship.getModifiedItemAttr('eliteBonusCommandShips1'), - skill='Command Ships', **kwargs) - - class Effect2179(BaseEffect): """ shipBonusDroneHitpointsGC2 @@ -11795,23 +11778,6 @@ class Effect3766(BaseEffect): skill='Interceptors', **kwargs) -class Effect3767(BaseEffect): - """ - eliteBonusCommandShipsHeavyMissileExplosionVelocityCS2 - - Used by: - Ship: Claymore - """ - - type = 'passive' - - @staticmethod - def handler(fit, ship, context, projectionRange, **kwargs): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), - 'aoeVelocity', ship.getModifiedItemAttr('eliteBonusCommandShips2'), - skill='Command Ships', **kwargs) - - class Effect3771(BaseEffect): """ armorHPBonusAddPassive @@ -19585,9 +19551,9 @@ class Effect5342(BaseEffect): shipArmorRepairing1GBC2 Used by: - Variations of ship: Myrmidon (2 of 2) Ship: Astarte Ship: Brutix + Ship: Myrmidon """ type = 'passive' @@ -19670,7 +19636,7 @@ class Effect5351(BaseEffect): shipShieldBoost1MBC1 Used by: - Variations of ship: Cyclone (2 of 2) + Ship: Cyclone Ship: Sleipnir """ @@ -20823,23 +20789,6 @@ class Effect5497(BaseEffect): 'speed', ship.getModifiedItemAttr('eliteBonusCommandShips1'), skill='Command Ships', **kwargs) -class Effect5498(BaseEffect): - """ - eliteBonusCommandShipsHeavyAssaultMissileExplosionVelocityCS2 - - Used by: - Ship: Claymore - """ - - type = 'passive' - - @staticmethod - def handler(fit, ship, context, projectionRange, **kwargs): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), - 'aoeVelocity', ship.getModifiedItemAttr('eliteBonusCommandShips2'), - skill='Command Ships', **kwargs) - - class Effect5499(BaseEffect): """ eliteBonusCommandShipsHeavyAssaultMissileExplosionRadiusCS2 @@ -20891,26 +20840,9 @@ class Effect5501(BaseEffect): skill='Command Ships', **kwargs) -class Effect5502(BaseEffect): - """ - eliteBonusCommandShipMediumHybridTrackingCS1 - - Used by: - Ship: Eos - """ - - type = 'passive' - - @staticmethod - def handler(fit, ship, context, projectionRange, **kwargs): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), - 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusCommandShips1'), - skill='Command Ships', **kwargs) - - class Effect5503(BaseEffect): """ - eliteBonusCommandShipHeavyDroneTrackingCS2 + eliteBonusCommandShipDroneTrackingCS2 Used by: Ship: Eos @@ -20920,28 +20852,11 @@ class Effect5503(BaseEffect): @staticmethod def handler(fit, ship, context, projectionRange, **kwargs): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusCommandShips2'), skill='Command Ships', **kwargs) -class Effect5504(BaseEffect): - """ - eliteBonusCommandShipHeavyDroneVelocityCS2 - - Used by: - Ship: Eos - """ - - type = 'passive' - - @staticmethod - def handler(fit, ship, context, projectionRange, **kwargs): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), - 'maxVelocity', ship.getModifiedItemAttr('eliteBonusCommandShips2'), - skill='Command Ships', **kwargs) - - class Effect5505(BaseEffect): """ eliteBonusCommandShipMediumHybridRoFCS1 @@ -32068,7 +31983,7 @@ class Effect6783(BaseEffect): Used by: Ships from group: Carrier (4 of 4) Ships from group: Combat Battlecruiser (14 of 14) - Ships from group: Command Ship (8 of 8) + Ships from group: Command Ship (4 of 8) Ships from group: Force Auxiliary (6 of 6) Ships from group: Supercarrier (6 of 6) Ships from group: Titan (7 of 7) @@ -36848,3 +36763,90 @@ class Effect8066(BaseEffect): def handler(fit, implant, context, projectionRange, **kwargs): fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Vorton Projector Operation'), 'damageMultiplier', implant.getModifiedItemAttr('damageMultiplierBonus'), **kwargs) + + +class Effect8068(BaseEffect): + """ + shipShieldResistanceBonusMBC1 + + Used by: + Ship: Claymore + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context, projectionRange, **kwargs): + damageTypes = ('Em', 'Explosive', 'Kinetic', 'Thermal') + for damageType in damageTypes: + fit.ship.boostItemAttr(f'shield{damageType}DamageResonance', ship.getModifiedItemAttr('shipBonusMBC1'), + skill='Minmatar Battlecruiser', **kwargs) + + +class Effect8070(BaseEffect): + """ + eliteBonusCommandShipsHeavyHAMvelocityCS2 + + Used by: + Ship: Claymore + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context, projectionRange, **kwargs): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles') or + mod.charge.requiresSkill('Heavy Assault Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('eliteBonusCommandShips2'), + skill='Command Ships', **kwargs) + + +class Effect8071(BaseEffect): + """ + eliteBonusCommandShipDroneRangeCS1 + + Used by: + Ship: Eos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context, projectionRange, **kwargs): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'maxRange', ship.getModifiedItemAttr('eliteBonusCommandShips1'), + skill='Command Ships', **kwargs) + + +class Effect8072(BaseEffect): + """ + shipArmorResistanceBonusGBC2 + + Used by: + Ship: Eos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context, projectionRange, **kwargs): + damageTypes = ('Em', 'Explosive', 'Kinetic', 'Thermal') + for damageType in damageTypes: + fit.ship.boostItemAttr(f'armor{damageType}DamageResonance', ship.getModifiedItemAttr('shipBonusGBC2'), + skill='Gallente Battlecruiser', **kwargs) + + +class Effect8073(BaseEffect): + """ + eliteBonusCommandShipShieldHPCS1 + + Used by: + Ship: Vulture + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context, projectionRange, **kwargs): + fit.ship.boostItemAttr('shieldCapacity', ship.getModifiedItemAttr('eliteBonusCommandShips1'), + skill='Command Ships', **kwargs) From bca8ba3114c8d5a9e62dc7b21fa68c3e22071072 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Tue, 28 Jul 2020 15:58:15 +0300 Subject: [PATCH 06/13] Bump version --- version.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.yml b/version.yml index 073f51e38..27d0498ef 100644 --- a/version.yml +++ b/version.yml @@ -1 +1 @@ -version: v2.23.0 +version: v2.24.0 From 2ed5dbc3c7b8a0a84dc45831bc3b91cd72c41f06 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Tue, 28 Jul 2020 17:12:15 +0300 Subject: [PATCH 07/13] Avoid using newer matplotlib --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 1b61854f0..0454586d5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,6 @@ wxPython == 4.0.6 logbook >= 1.0.0 -matplotlib >= 3.1.2 +matplotlib == 3.2.2 python-dateutil requests >= 2.0.0 sqlalchemy >= 1.3.0 From 93ae9e08918b9680365be9b739ea1389b2eef9b2 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Tue, 28 Jul 2020 17:39:20 +0300 Subject: [PATCH 08/13] Bump version --- version.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.yml b/version.yml index 27d0498ef..97f405e70 100644 --- a/version.yml +++ b/version.yml @@ -1 +1 @@ -version: v2.24.0 +version: v2.24.1 From f91e0b2e2326d0136184ae77bf02c5819316b396 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Wed, 29 Jul 2020 09:02:46 +0300 Subject: [PATCH 09/13] Do not crash on ship w/o labels and w/o slots --- gui/builtinViews/fittingView.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gui/builtinViews/fittingView.py b/gui/builtinViews/fittingView.py index 3884eda6e..b1d4d074c 100644 --- a/gui/builtinViews/fittingView.py +++ b/gui/builtinViews/fittingView.py @@ -562,7 +562,10 @@ class FittingView(d.Display): if sFit.serviceFittingOptions["rackSlots"]: # flag to know when to add blanks, based on previous slot - slotDivider = None if sFit.serviceFittingOptions["rackLabels"] else self.mods[0].slot + if sFit.serviceFittingOptions["rackLabels"] or len(self.mods) == 0: + slotDivider = None + else: + slotDivider = self.mods[0].slot # first loop finds where slot dividers must go before modifying self.mods for i, mod in enumerate(self.mods): From 508572e08bb65e1a3e2a3561492890681f3707a8 Mon Sep 17 00:00:00 2001 From: fonsuiplaysvideogames <60384561+fonsuiplaysvideogames@users.noreply.github.com> Date: Wed, 29 Jul 2020 21:33:15 -0400 Subject: [PATCH 10/13] Update fit.py --- eos/saveddata/fit.py | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index d012fa2e7..44a3e663b 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -751,25 +751,25 @@ class Fit: # Localized environment effects if warfareBuffID == 79: # AOE_Beacon_bioluminescence_cloud - self.ship.boostItemAttr("signatureRadius", value) + self.ship.boostItemAttr("signatureRadius", value, stackingPenalties=True) self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "signatureRadius", value) + "signatureRadius", value, stackingPenalties=True) if warfareBuffID == 80: # AOE_Beacon_caustic_cloud_local_repair self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", value) + "armorDamageAmount", value, stackingPenalties=True) if warfareBuffID == 81: # AOE_Beacon_caustic_cloud_remote_repair self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "armorDamageAmount", value) + "armorDamageAmount", value, stackingPenalties=True) if warfareBuffID == 88: # AOE_Beacon_filament_cloud_shield_booster_shield_bonus self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", value) + "shieldBonus", value, stackingPenalties=True) if warfareBuffID == 89: # AOE_Beacon_filament_cloud_shield_booster_duration self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "duration", value) + "duration", value, stackingPenalties=True) # Abyssal Weather Effects @@ -783,7 +783,7 @@ class Fit: "emDamageResonance", value) #for hull if warfareBuffID == 92: # Weather_electric_storm_capacitor_recharge_bonus - self.ship.boostItemAttr("rechargeRate", value) + self.ship.boostItemAttr("rechargeRate", value, stackingPenalties=True) if warfareBuffID == 93: # Weather_xenon_gas_explosive_resistance_penalty for tankType in ("shield", "armor"): @@ -815,13 +815,13 @@ class Fit: if warfareBuffID == 97: # Weather_darkness_turret_range_penalty self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "maxRange", value) + "maxRange", value, stackingPenalties=True) self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "maxRange", value) + "maxRange", value, stackingPenalties=True) self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "falloff", value) + "falloff", value, stackingPenalties=True) self.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "falloff", value) + "falloff", value, stackingPenalties=True) if warfareBuffID == 98: # Weather_darkness_velocity_bonus self.ship.boostItemAttr("maxVelocity", value) @@ -838,7 +838,7 @@ class Fit: "kineticDamageResonance", value) # for hull if warfareBuffID == 100: # Weather_caustic_toxin_scan_resolution_bonus - self.ship.boostItemAttr("scanResolution", value) + self.ship.boostItemAttr("scanResolution", value, stackingPenalties=True) del self.commandBonuses[warfareBuffID] From 676794baeda6992e17ecae6ad2535987fde411ba Mon Sep 17 00:00:00 2001 From: Alexander Maryanovsky Date: Thu, 30 Jul 2020 11:31:00 +0300 Subject: [PATCH 11/13] Ignore _TabRenderer.SetSize when new size is the same as old size. --- gui/chrome_tabs.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gui/chrome_tabs.py b/gui/chrome_tabs.py index 8ca0f92a0..c1e623900 100644 --- a/gui/chrome_tabs.py +++ b/gui/chrome_tabs.py @@ -402,6 +402,10 @@ class _TabRenderer: width = max(width, self.min_width) height = max(height, self.min_height) + cur_width, cur_height = self.tab_size + if (width == cur_width) and (height == cur_height): + return + self.tab_size = (width, height) self.InitTab() From 016f2b44ff87a00ea9ec103c629b36c090f38063 Mon Sep 17 00:00:00 2001 From: Alexander Maryanovsky Date: Thu, 30 Jul 2020 11:35:30 +0300 Subject: [PATCH 12/13] Do not sleep for half a second in OpenFitsThread.run() --- gui/mainFrame.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/gui/mainFrame.py b/gui/mainFrame.py index 4d9a3df05..7fbab0ec2 100644 --- a/gui/mainFrame.py +++ b/gui/mainFrame.py @@ -110,8 +110,6 @@ class OpenFitsThread(threading.Thread): self.start() def run(self): - time.sleep(0.5) # Give GUI some time to finish drawing - # `startup` tells FitSpawner that we are loading fits are startup, and # has 3 values: # False = Set as default in FitSpawner itself, never set here From 4d8dbe74bd32392a25d0a9b98b8fd560b1d0b080 Mon Sep 17 00:00:00 2001 From: Alexander Maryanovsky Date: Thu, 30 Jul 2020 16:03:00 +0300 Subject: [PATCH 13/13] _TabsContainer.CheckTabSelected no longer posts PageChanged event twice --- gui/chrome_tabs.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/gui/chrome_tabs.py b/gui/chrome_tabs.py index 8ca0f92a0..4bebf7f89 100644 --- a/gui/chrome_tabs.py +++ b/gui/chrome_tabs.py @@ -975,9 +975,6 @@ class _TabsContainer(wx.Panel): sel_tab = self.tabs.index(tab) self.Parent.SetSelection(sel_tab) - wx.PostEvent(self.Parent, PageChanged(self.tabs.index(old_sel_tab), - self.tabs.index(tab))) - return True return False