Clean up unused effects

This commit is contained in:
DarkPhoenix
2018-05-03 09:58:44 +03:00
parent 7b6cb25ac4
commit 842be9535b
214 changed files with 6 additions and 2102 deletions

View File

@@ -5,7 +5,7 @@
# Charges from group: Advanced Autocannon Ammo (8 of 8)
# Charges from group: Advanced Beam Laser Crystal (8 of 8)
# Charges from group: Advanced Blaster Charge (8 of 8)
# Charges from group: Advanced Charge Bottle (5 of 6)
# Charges from group: Advanced Exotic Plasma Charge (5 of 6)
# Charges from group: Advanced Pulse Laser Crystal (8 of 8)
# Charges from group: Advanced Railgun Charge (8 of 8)
# Charges from group: Projectile Ammo (128 of 128)

View File

@@ -1,10 +0,0 @@
# Not used by any item
type = "gang", "active"
gangBonus = "armorHpBonus2"
gangBoost = "armorHP"
def handler(fit, module, context):
if "gang" not in context:
return
fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("armorHpBonus2"))

View File

@@ -1,21 +0,0 @@
# Not used by any item
type = "passive"
runTime = "early"
def handler(fit, src, context):
for attr in [
"structureRigDoomsdayDamageLossTargetBonus",
"structureRigScanResBonus",
"structureRigPDRangeBonus",
"structureRigPDCapUseBonus",
"structureRigMissileExploVeloBonus",
"structureRigMissileVelocityBonus",
"structureRigEwarOptimalBonus",
"structureRigEwarFalloffBonus",
"structureRigEwarCapUseBonus",
"structureRigMissileExplosionRadiusBonus"
]:
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Jury Rigging"),
attr, src.getModifiedItemAttr("structureRoleBonus"))

View File

@@ -1,9 +0,0 @@
# Not used by any item
type = "active", "projected"
def handler(fit, module, context):
if "projected" not in context:
return
fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"),
stackingPenalties=True)

View File

@@ -1,7 +1,7 @@
# disintegratorWeaponDamageMultiply
#
# Used by:
# Modules from group: Entropic Suppressor (3 of 3)
# Modules from group: Entropic Radiation Sink (3 of 3)
type = "passive"

View File

@@ -1,7 +1,7 @@
# disintegratorWeaponSpeedMultiply
#
# Used by:
# Modules from group: Entropic Suppressor (3 of 3)
# Modules from group: Entropic Radiation Sink (3 of 3)
type = "passive"

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, skill, context):
fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,9 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command Specialist"),
"commandBonusHidden",
src.getModifiedItemAttr("eliteBonusCommandDestroyer1"),
skill="Command Destroyers")

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), "signatureRadiusBonus",
src.getModifiedItemAttr("eliteBonusCommandDestroyer3"), skill="Command Destroyers")

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command Specialist"),
"commandBonusHidden", module.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships")

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.ship.increaseItemAttr("droneCapacity", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates")

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "trackingSpeed",
src.getModifiedItemAttr("eliteBonusGunship2"), stackingPenalties=True, skill="Assault Frigates")

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"),
"damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship2"),
skill="Assault Frigates")

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"),
"maxRange", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates")

View File

@@ -1,12 +0,0 @@
# Not used by any item
from eos.saveddata.module import State
type = "active", "projected"
def handler(fit, src, context):
if "projected" in context and ((hasattr(src, "state") and src.state >= State.ACTIVE) or hasattr(src, "amountActive")):
multiplier = src.amountActive if hasattr(src, "amountActive") else 1
amount = src.getModifiedItemAttr("energyNeutralizerAmount")
time = src.getModifiedItemAttr("duration")
fit.addDrain(src, time, amount * multiplier, 0)

View File

@@ -1,9 +0,0 @@
# Not used by any item
type = "projected", "active"
def handler(fit, src, context):
if "projected" in context:
amount = src.getModifiedItemAttr("powerTransferAmount")
duration = src.getModifiedItemAttr("duration")
fit.addDrain(src, duration, -amount, 0)

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "projected", "active"
def handler(fit, container, context):
if "projected" in context:
fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"),
stackingPenalties=True)

View File

@@ -1,16 +0,0 @@
# Not used by any item
"""
Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the
effects, and thus this effect file contains some custom information useful only to fighters.
"""
# User-friendly name for the ability
displayName = "Turret Attack"
# Attribute prefix that this ability targets
prefix = "fighterAbilityAttackMissile"
type = "active"
def handler(fit, src, context):
pass

View File

@@ -1,26 +0,0 @@
# Not used by any item
"""
Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the
effects, and thus this effect file contains some custom information useful only to fighters.
"""
from eos.modifiedAttributeDict import ModifiedAttributeDict
# User-friendly name for the ability
displayName = "ECM"
prefix = "fighterAbilityECM"
type = "projected", "active"
grouped = True
def handler(fit, module, context, **kwargs):
if "projected" not in context:
return
# jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str))
strModifier = 1 - (module.getModifiedItemAttr("{}Strength{}".format(prefix, fit.scanType)) * module.amountActive) / fit.scanStrength
if 'effect' in kwargs:
strModifier *= ModifiedAttributeDict.getResistance(fit, kwargs['effect'])
fit.ecmProjectedStr *= strModifier

View File

@@ -1,23 +0,0 @@
# Not used by any item
"""
Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the
effects, and thus this effect file contains some custom information useful only to fighters.
"""
# User-friendly name for the ability
from eos.modifiedAttributeDict import ModifiedAttributeDict
displayName = "Energy Neutralizer"
prefix = "fighterAbilityEnergyNeutralizer"
type = "active", "projected"
grouped = True
def handler(fit, src, context, **kwargs):
if "projected" in context:
amount = src.getModifiedItemAttr("{}Amount".format(prefix)) * src.amountActive
time = src.getModifiedItemAttr("{}Duration".format(prefix))
if 'effect' in kwargs:
amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect'])
fit.addDrain(src, time, amount, 0)

View File

@@ -1,37 +0,0 @@
# Not used by any item
"""
Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the
effects, and thus this effect file contains some custom information useful only to fighters.
"""
# User-friendly name for the ability
displayName = "Evasive Maneuvers"
prefix = "fighterAbilityEvasiveManeuvers"
# Is ability applied to the fighter squad as a whole, or per fighter?
grouped = True
type = "active"
runTime = "late"
def handler(fit, container, context):
container.boostItemAttr("maxVelocity",
container.getModifiedItemAttr("fighterAbilityEvasiveManeuversSpeedBonus"))
container.boostItemAttr("signatureRadius",
container.getModifiedItemAttr("fighterAbilityEvasiveManeuversSignatureRadiusBonus"),
stackingPenalties=True)
# These may not have stacking penalties, but there's nothing else that affects the attributes yet to check.
container.multiplyItemAttr("shieldEmDamageResonance",
container.getModifiedItemAttr("fighterAbilityEvasiveManeuversEmResonance"),
stackingPenalties=True)
container.multiplyItemAttr("shieldThermalDamageResonance",
container.getModifiedItemAttr("fighterAbilityEvasiveManeuversThermResonance"),
stackingPenalties=True)
container.multiplyItemAttr("shieldKineticDamageResonance",
container.getModifiedItemAttr("fighterAbilityEvasiveManeuversKinResonance"),
stackingPenalties=True)
container.multiplyItemAttr("shieldExplosiveDamageResonance",
container.getModifiedItemAttr("fighterAbilityEvasiveManeuversExpResonance"),
stackingPenalties=True)

View File

@@ -1,19 +0,0 @@
# Not used by any item
"""
Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the
effects, and thus this effect file contains some custom information useful only to fighters.
"""
# User-friendly name for the ability
displayName = "Bomb"
# Attribute prefix that this ability targets
prefix = "fighterAbilityLaunchBomb"
type = "active"
# This flag is required for effects that use charges in order to properly calculate reload time
hasCharges = True
def handler(fit, src, context):
pass

View File

@@ -1,21 +0,0 @@
# Not used by any item
"""
Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the
effects, and thus this effect file contains some custom information useful only to fighters.
"""
# User-friendly name for the ability
displayName = "Microwarpdrive"
# Is ability applied to the fighter squad as a whole, or per fighter?
grouped = True
type = "active"
runTime = "late"
def handler(fit, module, context):
module.boostItemAttr("maxVelocity", module.getModifiedItemAttr("fighterAbilityMicroWarpDriveSpeedBonus"),
stackingPenalties=True)
module.boostItemAttr("signatureRadius",
module.getModifiedItemAttr("fighterAbilityMicroWarpDriveSignatureRadiusBonus"),
stackingPenalties=True)

View File

@@ -1,19 +0,0 @@
# Not used by any item
"""
Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the
effects, and thus this effect file contains some custom information useful only to fighters.
"""
# User-friendly name for the ability
displayName = "Missile Attack"
# Attribute prefix that this ability targets
prefix = "fighterAbilityMissiles"
type = "active"
# This flag is required for effects that use charges in order to properly calculate reload time
hasCharges = True
def handler(fit, src, context):
pass

View File

@@ -1,18 +0,0 @@
# Not used by any item
"""
Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the
effects, and thus this effect file contains some custom information useful only to fighters.
"""
# User-friendly name for the ability
displayName = "Stasis Webifier"
prefix = "fighterAbilityStasisWebifier"
type = "active", "projected"
grouped = True
def handler(fit, src, context):
if "projected" not in context:
return
fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("{}SpeedPenalty".format(prefix)) * src.amountActive,
stackingPenalties=True)

View File

@@ -1,17 +0,0 @@
# Not used by any item
"""
Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the
effects, and thus this effect file contains some custom information useful only to fighters.
"""
# User-friendly name for the ability
displayName = "Warp Disruption"
prefix = "fighterAbilityWarpDisruption"
type = "active", "projected"
grouped = True
def handler(fit, src, context):
if "projected" not in context:
return
fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("{}PointStrength".format(prefix)) * src.amountActive)

View File

@@ -1,11 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
# Note: we increase maxGroupActive by two.
# If we only increased it by one, we'd get the number to stay equal
# As Comman Processors use one themselves too
fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gang Coordinator" and
"maxGroupActive" in mod.itemModifiedAttributes,
"maxGroupActive", 1)

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Ice Harvesting"),
"capacitorNeed", ship.getModifiedItemAttr("iceHarvestCycleBonus"))

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "gang"
gangBoost = "maxTargetRange"
gangBonus = "maxTargetRangeBonus"
def handler(fit, container, context):
fit.ship.boostItemAttr(gangBoost, container.getModifiedItemAttr(gangBonus))

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, implant, context):
fit.character.getSkill("Information Command").suppress()
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command Specialist"),
"commandBonusHidden", implant.getModifiedItemAttr("mindlinkBonus"))

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = 'active'
def handler(fit, module, context):
pass

View File

@@ -1,52 +0,0 @@
# Not used by any item
type = "active"
runTime = "early"
def handler(fit, module, context):
# Resistances
for layer, attrPrefix in (('shield', 'shield'), ('armor', 'armor'), ('hull', '')):
for damageType in ('Kinetic', 'Thermal', 'Explosive', 'Em'):
bonus = "%s%sDamageResonance" % (attrPrefix, damageType)
bonus = "%s%s" % (bonus[0].lower(), bonus[1:])
booster = "%s%sDamageResonance" % (layer, damageType)
penalize = False if layer == 'hull' else True
fit.ship.multiplyItemAttr(bonus, module.getModifiedItemAttr(booster),
stackingPenalties=penalize, penaltyGroup="preMul")
# Turrets
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or
mod.item.requiresSkill("Large Hybrid Turret") or
mod.item.requiresSkill("Large Projectile Turret"),
"maxRange", module.getModifiedItemAttr("maxRangeBonus"),
stackingPenalties=True)
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or
mod.item.requiresSkill("Large Hybrid Turret") or
mod.item.requiresSkill("Large Projectile Turret"),
"falloff", module.getModifiedItemAttr("falloffBonus"),
stackingPenalties=True)
# Missiles
fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes") or
mod.charge.requiresSkill("Cruise Missiles") or
mod.charge.requiresSkill("Heavy Missiles"),
"maxVelocity", module.getModifiedItemAttr("missileVelocityBonus"))
# Tanking
fit.modules.filteredItemBoost(
lambda mod: mod.item.requiresSkill("Capital Repair Systems") or mod.item.requiresSkill("Repair Systems"),
"armorDamageAmount", module.getModifiedItemAttr("armorDamageAmountBonus"),
stackingPenalties=True)
fit.modules.filteredItemBoost(
lambda mod: mod.item.requiresSkill("Capital Shield Operation") or mod.item.requiresSkill("Shield Operation"),
"shieldBonus", module.getModifiedItemAttr("shieldBoostMultiplier"),
stackingPenalties=True)
# Speed penalty
fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"))
# Max locked targets
fit.ship.forceItemAttr("maxLockedTargets", module.getModifiedItemAttr("maxLockedTargets"))
# Block Hostile ewar
fit.ship.forceItemAttr("disallowOffensiveModifiers", module.getModifiedItemAttr("disallowOffensiveModifiers"))

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
fit.ship.increaseItemAttr("mass", module.getModifiedItemAttr("mass") or 0)

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
fit.ship.increaseItemAttr("maxVelocity", module.getModifiedItemAttr("maxVelocity"))

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Director"),
"commandBonus", ship.getModifiedItemAttr("commandBonusEffective"))

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
for type in ("Em", "Explosive", "Kinetic", "Thermal"):
fit.ship.preAssignItemAttr("armor{0}DamageResonance".format(type),
module.getModifiedItemAttr("passiveArmor{0}DamageResonance".format(type)))

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
for type in ("Em", "Explosive", "Kinetic", "Thermal"):
fit.ship.preAssignItemAttr("shield{0}DamageResonance".format(type),
module.getModifiedItemAttr("passiveShield{0}DamageResonance".format(type)))

View File

@@ -1,7 +0,0 @@
# Not used by any item
runTime = "early"
type = "passive"
def handler(fit, module, context):
fit.ship.preAssignItemAttr("agility", module.getModifiedItemAttr("agility"))

View File

@@ -1,10 +0,0 @@
# nosCpuNeedBonusEffect
#
# Used by:
# Ship: Rabisu
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "cpu",
src.getModifiedItemAttr("nosferatuCpuNeedBonus"))

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"),
"falloffEffectiveness", src.getModifiedItemAttr("shipBonusORECapital3"),
skill="Capital Industrial Ships")

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"),
"maxRange", ship.getModifiedItemAttr("shipBonusORECapital3"),
skill="Capital Industrial Ships")

View File

@@ -3,7 +3,7 @@
# Used by:
# Modules from group: Energy Weapon (101 of 214)
# Modules from group: Hybrid Weapon (105 of 221)
# Modules from group: Precursor Turret (14 of 14)
# Modules from group: Precursor Weapon (14 of 14)
# Modules from group: Projectile Weapon (99 of 165)
type = "overheat"

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = 'active'
def handler(fit, module, context):
pass

View File

@@ -1,10 +0,0 @@
# probeLauncherCPUPercentBonusTacticalDestroyer
#
# Used by:
# Ships from group: Tactical Destroyer (4 of 4)
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Astrometrics"),
"cpu", ship.getModifiedItemAttr("roleBonusT3ProbeCPU"))

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
fit.ship.increaseItemAttr("rechargeRate", module.getModifiedItemAttr("rechargeRate"))

View File

@@ -1,11 +0,0 @@
# Not used by any item
type = "projected", "active"
runTime = "late"
def handler(fit, module, context):
if "projected" not in context:
return
bonus = module.getModifiedItemAttr("structureDamageAmount")
duration = module.getModifiedItemAttr("duration") / 1000.0
fit.extraAttributes.increase("hullRepair", bonus / duration)

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill),
"drawback", skill.getModifiedItemAttr("rigDrawbackBonus") * skill.level)

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
fit.ship.increaseItemAttr("scanResolution", module.getModifiedItemAttr("scanResolution"))

View File

@@ -1,9 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
sensorTypes = ("Gravimetric", "Ladar", "Magnetometric", "Radar")
for sensorType in sensorTypes:
sensAttr = "scan{0}Strength".format(sensorType)
fit.ship.increaseItemAttr(sensAttr, module.getModifiedItemAttr(sensAttr))

View File

@@ -1,11 +0,0 @@
# Not used by any item
type = "active"
def handler(fit, module, context):
for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"):
fit.ship.boostItemAttr(
"scan{}Strength".format(scanType),
module.getModifiedItemAttr("scan{}StrengthPercent".format(scanType)),
stackingPenalties=True
)

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
runTime = "early"
def handler(fit, src, context):
fit.ship.forceItemAttr("structureFullPowerStateHitpointMultiplier", src.getModifiedItemAttr("serviceModuleFullPowerStateHitpointMultiplier"))

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
fit.ship.increaseItemAttr("shieldRechargeRate", module.getModifiedItemAttr("shieldRechargeRate") or 0)

View File

@@ -1,9 +0,0 @@
# Not used by any item
type = "projected", "active"
def handler(fit, container, context):
if "projected" in context:
bonus = container.getModifiedItemAttr("shieldBonus")
duration = container.getModifiedItemAttr("duration") / 1000.0
fit.extraAttributes.increase("shieldRepair", bonus / duration)

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu",
"maxRange", ship.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer")

View File

@@ -1,9 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
for type in ("shieldCapacity", "armorHP", "hp"):
fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"),
type, ship.getModifiedItemAttr("shipBonusORECapital4"),
skill="Capital Industrial Ships")

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"),
"damageMultiplier", ship.getModifiedItemAttr("shipBonusORECapital4"),
skill="Capital Industrial Ships")

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
if fit.extraAttributes["siege"]:
fit.ship.increaseItemAttr("commandBonusEffective", ship.getModifiedItemAttr("shipBonusORECapital2"),
skill="Capital Industrial Ships")

View File

@@ -1,11 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
fit.ship.multiplyItemAttr(
"scanResolution",
1 / module.getModifiedItemAttr("modeScanResPostDiv"),
stackingPenalties=True,
penaltyGroup="postDiv"
)

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"),
"trackingSpeed", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate")

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"),
"damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7"))

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "gang"
gangBoost = "shieldCapacity"
gangBonus = "shieldCapacityBonus"
def handler(fit, container, context):
fit.ship.boostItemAttr(gangBoost, container.getModifiedItemAttr(gangBonus))

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
runTime = "early"
def handler(fit, module, context):
fit.ship.preAssignItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadius"))

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "gang"
gangBoost = "agility"
gangBonus = "agilityBonus"
def handler(fit, container, context):
fit.ship.boostItemAttr(gangBoost, container.getModifiedItemAttr(gangBonus))

View File

@@ -1,11 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Guided Bomb Launcher",
"speed", ship.getModifiedItemAttr("structureAoERoFRoleBonus"))
for attr in ["duration", "durationTargetIlluminationBurstProjector", "durationWeaponDisruptionBurstProjector",
"durationECMJammerBurstProjector", "durationSensorDampeningBurstProjector", "capacitorNeed"]:
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Burst Projector",
attr, ship.getModifiedItemAttr("structureAoERoFRoleBonus"))

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
runTime = "early"
def handler(fit, src, context):
fit.ship.multiplyItemAttr("hiddenArmorHPMultiplier", src.getModifiedItemAttr("armorHPMultiplier"))

View File

@@ -1,17 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
missileGroups = ("Structure Anti-Capital Missile", "Structure Anti-Subcapital Missile")
for dmgType in ("em", "kinetic", "explosive", "thermal"):
fit.modules.filteredChargeMultiply(lambda mod: mod.charge.group.name in missileGroups,
"%sDamage" % dmgType,
module.getModifiedItemAttr("missileDamageMultiplierBonus"),
stackingPenalties=True)
launcherGroups = ("Structure XL Missile Launcher", "Structure Multirole Missile Launcher")
fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name in launcherGroups,
"speed", module.getModifiedItemAttr("speedMultiplier"),
stackingPenalties=True)

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, ship, context):
fit.ship.increaseItemAttr("capacitorCapacity", ship.getModifiedItemAttr("capacitorBonus"))

View File

@@ -1,13 +0,0 @@
# Not used by any item
from eos.saveddata.module import State
type = "active", "projected"
def handler(fit, container, context):
amount = 0
if "projected" in context:
if (hasattr(container, "state") and container.state >= State.ACTIVE) or hasattr(container, "amountActive"):
amount = container.getModifiedItemAttr("energyNeutralizerAmount")
time = container.getModifiedItemAttr("duration")
fit.addDrain(container, time, amount, 0)

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.ship.multiplyItemAttr("shieldCapacity", src.getModifiedItemAttr("structureFullPowerStateHitpointMultiplier") or 0)
fit.ship.multiplyItemAttr("armorHP", src.getModifiedItemAttr("structureFullPowerStateHitpointMultiplier") or 0)

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.ship.multiplyItemAttr("armorHP", src.getModifiedItemAttr("hiddenArmorHPMultiplier") or 0)

View File

@@ -1,10 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
groups = ("Structure Anti-Subcapital Missile", "Structure Anti-Capital Missile")
for dmgType in ("em", "kinetic", "explosive", "thermal"):
fit.modules.filteredChargeMultiply(lambda mod: mod.item.group.name in groups,
"%sDamage" % dmgType,
src.getModifiedItemAttr("hiddenMissileDamageMultiplier"))

View File

@@ -1,15 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, container, context):
missileGroups = ("Structure Anti-Capital Missile", "Structure Anti-Subcapital Missile")
for srcAttr, tgtAttr in (
("aoeCloudSizeBonus", "aoeCloudSize"),
("aoeVelocityBonus", "aoeVelocity"),
("missileVelocityBonus", "maxVelocity"),
("explosionDelayBonus", "explosionDelay"),
):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in missileGroups,
tgtAttr, container.getModifiedItemAttr(srcAttr),
stackingPenalties=True)

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
fit.ship.multiplyItemAttr("rechargeRate", module.getModifiedItemAttr("capacitorRechargeRateMultiplier"))

View File

@@ -1,10 +0,0 @@
# Not used by any item
type = "projected", "active"
def handler(fit, module, context):
if "projected" in context:
# jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str))
strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType)) / fit.scanStrength
fit.ecmProjectedStr *= strModifier

View File

@@ -1,14 +0,0 @@
# Not used by any item
type = "projected", "active"
def handler(fit, module, context, *args, **kwargs):
if "projected" not in context:
return
fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"),
stackingPenalties=True, *args, **kwargs)
fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"),
stackingPenalties=True, *args, **kwargs)

View File

@@ -1,9 +0,0 @@
# Not used by any item
type = "active", "projected"
def handler(fit, module, context, *args, **kwargs):
if "projected" not in context:
return
fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"),
stackingPenalties=True, *args, **kwargs)

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "projected", "active"
def handler(fit, container, context, *args, **kwargs):
if "projected" in context:
fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"),
stackingPenalties=True, *args, **kwargs)

View File

@@ -1,26 +0,0 @@
# Not used by any item
type = "active", "projected"
def handler(fit, module, context, *args, **kwargs):
if "projected" in context:
for srcAttr, tgtAttr in (
("aoeCloudSizeBonus", "aoeCloudSize"),
("aoeVelocityBonus", "aoeVelocity"),
("missileVelocityBonus", "maxVelocity"),
("explosionDelayBonus", "explosionDelay"),
):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"),
tgtAttr, module.getModifiedItemAttr(srcAttr),
stackingPenalties=True, *args, **kwargs)
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"),
stackingPenalties=True, *args, **kwargs)
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"maxRange", module.getModifiedItemAttr("maxRangeBonus"),
stackingPenalties=True, *args, **kwargs)
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"falloff", module.getModifiedItemAttr("falloffBonus"),
stackingPenalties=True, *args, **kwargs)

View File

@@ -1,10 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
groups = ("Structure Anti-Subcapital Missile", "Structure Anti-Capital Missile")
fit.modules.filteredItemBoost(lambda mod: mod.charge.group.name in groups,
"aoeVelocity", src.getModifiedItemAttr("structureRigMissileExploVeloBonus"),
stackingPenalties=True)

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Structure Doomsday Weapon",
"lightningWeaponDamageLossTarget",
src.getModifiedItemAttr("structureRigDoomsdayDamageLossTargetBonus"))

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Structure Doomsday Weapon",
"lightningWeaponTargetAmount",
src.getModifiedItemAttr("structureRigDoomsdayTargetAmountBonus"))

View File

@@ -1,9 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
groups = ("Structure ECM Battery", "Structure Disruption Battery")
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups,
"capacitorNeed", src.getModifiedItemAttr("structureRigEwarCapUseBonus"),
stackingPenalties=True)

View File

@@ -1,18 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
groups = ("Structure ECM Battery", "Structure Disruption Battery")
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups,
"falloff", src.getModifiedItemAttr("structureRigEwarFalloffBonus"),
stackingPenalties=True)
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups,
"maxRange", src.getModifiedItemAttr("structureRigEwarOptimalBonus"),
stackingPenalties=True)
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups,
"falloffEffectiveness", src.getModifiedItemAttr("structureRigEwarFalloffBonus"),
stackingPenalties=True)

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Structure Guided Bomb",
"aoeCloudSize", src.getModifiedItemAttr("structureRigMissileExplosionRadiusBonus"),
stackingPenalties=True)

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("structureRigMaxTargetRangeBonus"))

View File

@@ -1,6 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.extraAttributes.increase("maxTargetsLockedFromSkills", src.getModifiedItemAttr("structureRigMaxTargetBonus"))

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Energy Neutralizer",
"capacitorNeed", src.getModifiedItemAttr("structureRigEwarCapUseBonus"),
stackingPenalties=True)

View File

@@ -1,12 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Energy Neutralizer",
"maxRange", src.getModifiedItemAttr("structureRigEwarOptimalBonus"),
stackingPenalties=True)
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Energy Neutralizer",
"falloffEffectiveness", src.getModifiedItemAttr("structureRigEwarFalloffBonus"),
stackingPenalties=True)

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Area Denial Module",
"capacitorNeed", src.getModifiedItemAttr("structureRigPDCapUseBonus"),
stackingPenalties=True)

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Area Denial Module",
"empFieldRange", src.getModifiedItemAttr("structureRigPDRangeBonus"),
stackingPenalties=True)

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.ship.boostItemAttr("scanResolution", src.getModifiedItemAttr("structureRigScanResBonus"),
stackingPenalties=True)

View File

@@ -1,8 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Structure Guided Bomb",
"maxVelocity", src.getModifiedItemAttr("structureRigMissileVelocityBonus"),
stackingPenalties=True)

View File

@@ -1,9 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
groups = ("Structure Anti-Subcapital Missile", "Structure Anti-Capital Missile")
fit.modules.filteredItemBoost(lambda mod: mod.charge.group.name in groups,
"maxVelocity", src.getModifiedItemAttr("structureRigMissileVelocityBonus"),
stackingPenalties=True)

View File

@@ -1,17 +0,0 @@
# Not used by any item
from eos.saveddata.module import State
# Not used by any item
runTime = "early"
type = "projected", "active"
def handler(fit, module, context):
if "projected" in context:
fit.ship.increaseItemAttr("warpScrambleStatus", module.getModifiedItemAttr("warpScrambleStrength"))
if module.charge is not None and module.charge.ID == 47336:
for mod in fit.modules:
if not mod.isEmpty and mod.item.requiresSkill("High Speed Maneuvering") and mod.state > State.ONLINE:
mod.state = State.ONLINE
if not mod.isEmpty and mod.item.requiresSkill("Micro Jump Drive Operation") and mod.state > State.ONLINE:
mod.state = State.ONLINE

View File

@@ -1,12 +0,0 @@
# subsystemBonusAmarrDefensive2ArmorRepHeat
#
# Used by:
# Subsystem: Legion Defensive - Nanobot Injector
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), "overloadArmorDamageAmount",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive2"), skill="Amarr Defensive Systems")
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), "overloadSelfDurationBonus",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive2"), skill="Amarr Defensive Systems")

View File

@@ -1,9 +0,0 @@
# Not used by any item
type = "passive"
runTime = "early"
def handler(fit, module, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"),
"armorDamageAmount", module.getModifiedItemAttr("subsystemBonusAmarrDefensive2"),
skill="Amarr Defensive Systems")

View File

@@ -1,20 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff3Value",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive"),
skill="Amarr Defensive Systems")
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff2Value",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive"),
skill="Amarr Defensive Systems")
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff4Value",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive"),
skill="Amarr Defensive Systems")
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "buffDuration",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive"),
skill="Amarr Defensive Systems")
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff1Value",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive"),
skill="Amarr Defensive Systems")

View File

@@ -1,9 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
for type in ("Em", "Explosive", "Kinetic", "Thermal"):
fit.ship.boostItemAttr("armor{0}DamageResonance".format(type),
module.getModifiedItemAttr("subsystemBonusAmarrDefensive"),
skill="Amarr Defensive Systems")

View File

@@ -1,20 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff1Value",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive"),
skill="Amarr Defensive Systems")
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff4Value",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive"),
skill="Amarr Defensive Systems")
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff3Value",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive"),
skill="Amarr Defensive Systems")
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff2Value",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive"),
skill="Amarr Defensive Systems")
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "buffDuration",
src.getModifiedItemAttr("subsystemBonusAmarrDefensive"),
skill="Amarr Defensive Systems")

View File

@@ -1,7 +0,0 @@
# Not used by any item
type = "passive"
def handler(fit, module, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command Specialist"),
"commandBonusHidden", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), skill="Amarr Defensive Systems")

Some files were not shown because too many files have changed in this diff Show More