Merge branch 'effect_rollup_embedded' into effect_rollup

This commit is contained in:
Ryan Holmes
2019-03-22 18:59:20 -04:00
1987 changed files with 35687 additions and 24134 deletions

View File

@@ -61,8 +61,6 @@ before_build:
- ps: $env:PYFA_VERSION = (python ./scripts/dump_version.py)
- ps: echo("pyfa version ")
- ps: echo ($env:PYFA_VERSION)
- ps: python ./scripts/effect_rollup.py
build_script:
- ECHO "Build pyfa:"
@@ -121,7 +119,7 @@ artifacts:
- path: pyfa*-win.exe
#- path: pyfa_debug.zip
# name: Pyfa_debug
deploy:
tag: $(pyfa_version)
release: pyfa $(pyfa_version)
@@ -134,4 +132,4 @@ deploy:
APPVEYOR_REPO_TAG: true # deploy on tag push only
#on_success:
# - TODO: upload the content of dist/*.whl to a public wheelhouse
#
#

1
.gitignore vendored
View File

@@ -123,4 +123,3 @@ gitversion
*.swp
*.fsdbinary
/eos/effects/all.py

View File

@@ -12,7 +12,6 @@ before_install:
- bash scripts/setup-osx.sh
install:
- export PYFA_VERSION="$(python3 scripts/dump_version.py)"
- python3 ./scripts/effect_rollup.py
- bash scripts/package-osx.sh
before_deploy:
- export RELEASE_PKG_FILE=$(ls *.deb)

View File

@@ -15,8 +15,6 @@ gamedata_date = ""
gamedata_connectionstring = 'sqlite:///' + realpath(join(dirname(abspath(__file__)), "..", "eve.db"))
pyfalog.debug("Gamedata connection string: {0}", gamedata_connectionstring)
use_all_effect_module = True
if istravis is True or hasattr(sys, '_called_from_test'):
# Running in Travis. Run saveddata database in memory.
saveddata_connectionstring = 'sqlite:///:memory:'

35595
eos/effects.py Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,19 +0,0 @@
# ===============================================================================
# Copyright (C) 2010 Diego Duclos
# 2010 Anton Vorobyov
#
# This file, as well as all files in this folder, are part of eos.
#
# eos is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# eos is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with eos. If not, see <http://www.gnu.org/licenses/>.
# ===============================================================================

View File

@@ -1,11 +0,0 @@
# targetAttack
#
# Used by:
# Drones from group: Combat Drone (75 of 75)
# Modules from group: Energy Weapon (212 of 214)
type = 'active'
def handler(fit, module, context):
# Set reload time to 1 second
module.reloadTime = 1000

View File

@@ -1,9 +0,0 @@
# eliteBonusGunshipCapRecharge2
#
# Used by:
# Ship: Vengeance
type = "passive"
def handler(fit, ship, context):
fit.ship.boostItemAttr("rechargeRate", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates")

View File

@@ -1,10 +0,0 @@
# selfT2SmallLaserPulseDamageBonus
#
# Used by:
# Skill: Small Pulse Laser Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Pulse Laser Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2SmallLaserBeamDamageBonus
#
# Used by:
# Skill: Small Beam Laser Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Beam Laser Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2SmallHybridBlasterDamageBonus
#
# Used by:
# Skill: Small Blaster Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Blaster Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2SmallHybridRailDamageBonus
#
# Used by:
# Skill: Small Railgun Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Railgun Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2SmallProjectileACDamageBonus
#
# Used by:
# Skill: Small Autocannon Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Autocannon Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2SmallProjectileArtyDamageBonus
#
# Used by:
# Skill: Small Artillery Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Artillery Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2MediumLaserPulseDamageBonus
#
# Used by:
# Skill: Medium Pulse Laser Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Pulse Laser Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,32 +0,0 @@
# useMissiles
#
# Used by:
# Modules from group: Missile Launcher Heavy (12 of 12)
# Modules from group: Missile Launcher Rocket (15 of 15)
# Modules named like: Launcher (154 of 154)
# Structure Modules named like: Standup Launcher (7 of 7)
type = 'active', "projected"
def handler(fit, src, context):
# Set reload time to 10 seconds
src.reloadTime = 10000
if "projected" in context:
if src.item.group.name == 'Missile Launcher Bomb':
# Bomb Launcher Cooldown Timer
moduleReactivationDelay = src.getModifiedItemAttr("moduleReactivationDelay")
speed = src.getModifiedItemAttr("speed")
# Void and Focused Void Bombs
neutAmount = src.getModifiedChargeAttr("energyNeutralizerAmount")
if moduleReactivationDelay and neutAmount and speed:
fit.addDrain(src, speed + moduleReactivationDelay, neutAmount, 0)
# Lockbreaker Bombs
ecmStrengthBonus = src.getModifiedChargeAttr("scan{0}StrengthBonus".format(fit.scanType))
if ecmStrengthBonus:
strModifier = 1 - ecmStrengthBonus / fit.scanStrength
fit.ecmProjectedStr *= strModifier

View File

@@ -1,10 +0,0 @@
# selfT2MediumLaserBeamDamageBonus
#
# Used by:
# Skill: Medium Beam Laser Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Beam Laser Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2MediumHybridBlasterDamageBonus
#
# Used by:
# Skill: Medium Blaster Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Blaster Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2MediumHybridRailDamageBonus
#
# Used by:
# Skill: Medium Railgun Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Railgun Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2MediumProjectileACDamageBonus
#
# Used by:
# Skill: Medium Autocannon Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Autocannon Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2MediumProjectileArtyDamageBonus
#
# Used by:
# Skill: Medium Artillery Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Artillery Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2LargeLaserPulseDamageBonus
#
# Used by:
# Skill: Large Pulse Laser Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Pulse Laser Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2LargeLaserBeamDamageBonus
#
# Used by:
# Skill: Large Beam Laser Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Beam Laser Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2LargeHybridBlasterDamageBonus
#
# Used by:
# Skill: Large Blaster Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Blaster Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2LargeHybridRailDamageBonus
#
# Used by:
# Skill: Large Railgun Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Railgun Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2LargeProjectileACDamageBonus
#
# Used by:
# Skill: Large Autocannon Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Autocannon Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,10 +0,0 @@
# selfT2LargeProjectileArtyDamageBonus
#
# Used by:
# Skill: Large Artillery Specialization
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Artillery Specialization"),
"damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level)

View File

@@ -1,11 +0,0 @@
# eliteBonusGunshipHybridDmg2
#
# Used by:
# Ship: Harpy
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"),
"damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship2"),
skill="Assault Frigates")

View File

@@ -1,11 +0,0 @@
# shipMissileHeavyVelocityBonusCC2
#
# Used by:
# Ship: Caracal
# Ship: Osprey Navy Issue
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"),
"maxVelocity", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser")

View File

@@ -1,11 +0,0 @@
# shipMissileLightVelocityBonusCC2
#
# Used by:
# Ship: Caracal
# Ship: Osprey Navy Issue
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"),
"maxVelocity", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser")

View File

@@ -1,13 +0,0 @@
# remoteArmorSystemsCapNeedBonusPostPercentCapacitorNeedLocationShipModulesRequiringRemoteArmorSystems
#
# Used by:
# Implants named like: Inherent Implants 'Noble' Remote Armor Repair Systems RA (6 of 6)
# Modules named like: Remote Repair Augmentor (6 of 8)
# Skill: Remote Armor Repair Systems
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"),
"capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level)

View File

@@ -1,10 +0,0 @@
# eliteBonusLogisticRemoteArmorRepairCapNeed1
#
# Used by:
# Ship: Oneiros
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed",
src.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers")

View File

@@ -1,11 +0,0 @@
# eliteBonusLogisticRemoteArmorRepairCapNeed2
#
# Used by:
# Ship: Guardian
# Ship: Rabisu
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed",
src.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers")

View File

@@ -1,10 +0,0 @@
# eliteBonusLogisticShieldTransferCapNeed2
#
# Used by:
# Ship: Scimitar
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed",
src.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers")

View File

@@ -1,11 +0,0 @@
# eliteBonusLogisticShieldTransferCapNeed1
#
# Used by:
# Ship: Basilisk
# Ship: Etana
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed",
src.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers")

View File

@@ -1,10 +0,0 @@
# shipRemoteArmorRangeGC1
#
# Used by:
# Ship: Oneiros
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "maxRange",
src.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser")

View File

@@ -1,10 +0,0 @@
# shipRemoteArmorRangeAC2
#
# Used by:
# Ship: Guardian
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "maxRange",
src.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser")

View File

@@ -1,11 +0,0 @@
# shipShieldTransferRangeCC1
#
# Used by:
# Ship: Basilisk
# Ship: Etana
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "maxRange",
src.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser")

View File

@@ -1,10 +0,0 @@
# shipShieldTransferRangeMC2
#
# Used by:
# Ship: Scimitar
type = "passive"
def handler(fit, src, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "maxRange",
src.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser")

View File

@@ -1,11 +0,0 @@
# eliteBonusHeavyGunshipHybridOptimal1
#
# Used by:
# Ship: Eagle
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"),
"maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"),
skill="Heavy Assault Cruisers")

View File

@@ -1,11 +0,0 @@
# eliteBonusHeavyGunshipProjectileOptimal1
#
# Used by:
# Ship: Muninn
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"),
"maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"),
skill="Heavy Assault Cruisers")

View File

@@ -1,11 +0,0 @@
# eliteBonusHeavyGunshipLaserOptimal1
#
# Used by:
# Ship: Zealot
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"),
"maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"),
skill="Heavy Assault Cruisers")

View File

@@ -1,11 +0,0 @@
# eliteBonusHeavyGunshipProjectileFallOff1
#
# Used by:
# Ship: Vagabond
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"),
"falloff", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"),
skill="Heavy Assault Cruisers")

View File

@@ -1,12 +0,0 @@
# eliteBonusHeavyGunshipHybridDmg2
#
# Used by:
# Ship: Deimos
# Ship: Eagle
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"),
"damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"),
skill="Heavy Assault Cruisers")

View File

@@ -1,11 +0,0 @@
# eliteBonusHeavyGunshipLaserDmg2
#
# Used by:
# Ship: Zealot
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"),
"damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"),
skill="Heavy Assault Cruisers")

View File

@@ -1,11 +0,0 @@
# eliteBonusHeavyGunshipProjectileTracking2
#
# Used by:
# Ship: Muninn
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"),
"trackingSpeed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"),
skill="Heavy Assault Cruisers")

View File

@@ -1,11 +0,0 @@
# eliteBonusHeavyGunshipHybridFallOff1
#
# Used by:
# Ship: Deimos
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"),
"falloff", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"),
skill="Heavy Assault Cruisers")

View File

@@ -1,11 +0,0 @@
# eliteBonusHeavyGunshipHeavyMissileFlightTime1
#
# Used by:
# Ship: Cerberus
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"),
"explosionDelay", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"),
skill="Heavy Assault Cruisers")

View File

@@ -1,11 +0,0 @@
# eliteBonusHeavyGunshipLightMissileFlightTime1
#
# Used by:
# Ship: Cerberus
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"),
"explosionDelay", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"),
skill="Heavy Assault Cruisers")

View File

@@ -1,10 +0,0 @@
# eliteBonusHeavyGunshipDroneControlRange1
#
# Used by:
# Ship: Ishtar
type = "passive"
def handler(fit, ship, context):
fit.extraAttributes.increase("droneControlRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"),
skill="Heavy Assault Cruisers")

View File

@@ -1,11 +0,0 @@
# eliteBonusHeavyGunshipProjectileDmg2
#
# Used by:
# Ship: Vagabond
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"),
"damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"),
skill="Heavy Assault Cruisers")

View File

@@ -1,12 +0,0 @@
# shipProjectileTrackingMF2
#
# Used by:
# Variations of ship: Slasher (3 of 3)
# Ship: Republic Fleet Firetail
# Ship: Wolf
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"),
"trackingSpeed", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate")

View File

@@ -1,12 +0,0 @@
# accerationControlSkillAb&MwdSpeedBoost
#
# Used by:
# Implant: Zor's Custom Navigation Hyper-Link
# Skill: Acceleration Control
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module",
"speedFactor", container.getModifiedItemAttr("speedFBonus") * level)

View File

@@ -1,11 +0,0 @@
# eliteBonusGunshipLaserDamage2
#
# Used by:
# Ship: Retribution
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"),
"damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship2"),
skill="Assault Frigates")

View File

@@ -1,9 +0,0 @@
# electronicAttributeModifyOnline
#
# Used by:
# Modules from group: Automated Targeting System (6 of 6)
type = "passive"
def handler(fit, module, context):
fit.ship.increaseItemAttr("maxLockedTargets", module.getModifiedItemAttr("maxLockedTargetsBonus"))

View File

@@ -1,11 +0,0 @@
# eliteBonusLogisticEnergyTransferCapNeed1
#
# Used by:
# Ship: Guardian
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter",
"capacitorNeed", ship.getModifiedItemAttr("eliteBonusLogistics1"),
skill="Logistics Cruisers")

View File

@@ -1,10 +0,0 @@
# shipEnergyTransferRange1
#
# Used by:
# Ship: Guardian
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter",
"maxRange", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser")

View File

@@ -1,12 +0,0 @@
# eliteBonusLogisticEnergyTransferCapNeed2
#
# Used by:
# Ship: Basilisk
# Ship: Etana
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter",
"capacitorNeed", ship.getModifiedItemAttr("eliteBonusLogistics2"),
skill="Logistics Cruisers")

View File

@@ -1,11 +0,0 @@
# shipEnergyTransferRange2
#
# Used by:
# Ship: Basilisk
# Ship: Etana
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter",
"maxRange", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser")

View File

@@ -1,10 +0,0 @@
# structureStealthEmitterArraySigDecrease
#
# Used by:
# Implants named like: X Instinct Booster (4 of 4)
# Implants named like: grade Halo (15 of 18)
type = "passive"
def handler(fit, implant, context):
fit.ship.boostItemAttr("signatureRadius", implant.getModifiedItemAttr("signatureRadiusBonus"))

View File

@@ -1,13 +0,0 @@
# iceHarvestCycleTimeModulesRequiringIceHarvesting
#
# Used by:
# Implants named like: Inherent Implants 'Yeti' Ice Harvesting IH (3 of 3)
# Module: Medium Ice Harvester Accelerator I
# Skill: Ice Harvesting
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"),
"duration", container.getModifiedItemAttr("iceHarvestCycleBonus") * level)

View File

@@ -1,12 +0,0 @@
# miningInfoMultiplier
#
# Used by:
# Charges from group: Mining Crystal (40 of 40)
# Charges named like: Mining Crystal (42 of 42)
type = "passive"
def handler(fit, module, context):
module.multiplyItemAttr("specialtyMiningAmount",
module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier"))
# module.multiplyItemAttr("miningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier"))

View File

@@ -1,9 +0,0 @@
# crystalMiningamountInfo2
#
# Used by:
# Modules from group: Frequency Mining Laser (3 of 3)
type = "passive"
runTime = "late"
def handler(fit, module, context):
module.preAssignItemAttr("specialtyMiningAmount", module.getModifiedItemAttr("miningAmount"))

View File

@@ -1,12 +0,0 @@
# shipEnergyDrainAmountAF1
#
# Used by:
# Ship: Caedes
# Ship: Cruor
# Ship: Sentinel
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu",
"powerTransferAmount", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate")

View File

@@ -1,12 +0,0 @@
# shipBonusPirateSmallHybridDmg
#
# Used by:
# Ship: Daredevil
# Ship: Hecate
# Ship: Sunesis
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"),
"damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7"))

View File

@@ -1,11 +0,0 @@
# shipEnergyVampireTransferAmountBonusAB
#
# Used by:
# Ship: Bhaalgorn
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu",
"powerTransferAmount", ship.getModifiedItemAttr("shipBonusAB"),
skill="Amarr Battleship")

View File

@@ -1,12 +0,0 @@
# shipEnergyVampireTransferAmountBonusAc
#
# Used by:
# Ship: Ashimmu
# Ship: Rabisu
# Ship: Vangel
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu",
"powerTransferAmount", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser")

View File

@@ -1,10 +0,0 @@
# shipStasisWebRangeBonusMB
#
# Used by:
# Ship: Bhaalgorn
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web",
"maxRange", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship")

View File

@@ -1,10 +0,0 @@
# shipStasisWebRangeBonusMC2
#
# Used by:
# Ship: Ashimmu
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web",
"maxRange", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser")

View File

@@ -1,11 +0,0 @@
# shipProjectileTrackingGF
#
# Used by:
# Ship: Chremoas
# Ship: Dramiel
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"),
"trackingSpeed", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate")

View File

@@ -1,12 +0,0 @@
# shipMissileVelocityPirateFactionFrigate
#
# Used by:
# Ship: Barghest
# Ship: Garmur
# Ship: Orthrus
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"),
"maxVelocity", ship.getModifiedItemAttr("shipBonusRole7"))

View File

@@ -1,11 +0,0 @@
# shipProjectileRofPirateCruiser
#
# Used by:
# Ship: Cynabal
# Ship: Moracha
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"),
"speed", ship.getModifiedItemAttr("shipBonusRole7"))

View File

@@ -1,11 +0,0 @@
# shipHybridDmgPirateCruiser
#
# Used by:
# Ship: Gnosis
# Ship: Vigilant
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"),
"damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7"))

View File

@@ -1,11 +0,0 @@
# shipMissileVelocityPirateFactionLight
#
# Used by:
# Ship: Corax
# Ship: Talwar
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"),
"maxVelocity", ship.getModifiedItemAttr("shipBonusRole7"))

View File

@@ -1,10 +0,0 @@
# shipProjectileRofPirateBattleship
#
# Used by:
# Ship: Machariel
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"),
"speed", ship.getModifiedItemAttr("shipBonusRole7"))

View File

@@ -1,10 +0,0 @@
# shipHybridDmgPirateBattleship
#
# Used by:
# Ship: Vindicator
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"),
"damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7"))

View File

@@ -1,11 +0,0 @@
# setBonusBloodraider
#
# Used by:
# Implants named like: grade Talisman (18 of 18)
runTime = "early"
type = "passive"
def handler(fit, implant, context):
fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant",
"durationBonus", implant.getModifiedItemAttr("implantSetBloodraider"))

View File

@@ -1,10 +0,0 @@
# setBonusBloodraiderNosferatu
#
# Used by:
# Implants named like: grade Talisman (15 of 18)
type = "passive"
def handler(fit, implant, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capacitor Emission Systems"),
"duration", implant.getModifiedItemAttr("durationBonus"))

View File

@@ -1,11 +0,0 @@
# setBonusSerpentis
#
# Used by:
# Implants named like: grade Snake (18 of 18)
runTime = "early"
type = "passive"
def handler(fit, implant, context):
fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant",
"velocityBonus", implant.getModifiedItemAttr("implantSetSerpentis"))

View File

@@ -1,11 +0,0 @@
# interceptor2HybridTracking
#
# Used by:
# Ship: Taranis
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"),
"trackingSpeed", ship.getModifiedItemAttr("eliteBonusInterceptor2"),
skill="Interceptors")

View File

@@ -1,11 +0,0 @@
# interceptor2LaserTracking
#
# Used by:
# Ship: Crusader
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"),
"trackingSpeed", ship.getModifiedItemAttr("eliteBonusInterceptor2"),
skill="Interceptors")

View File

@@ -1,14 +0,0 @@
# structuralAnalysisEffect
#
# Used by:
# Implants named like: Inherent Implants 'Noble' Repair Proficiency RP (6 of 6)
# Modules named like: Auxiliary Nano Pump (8 of 8)
# Implant: Imperial Navy Modified 'Noble' Implant
type = "passive"
def handler(fit, container, context):
penalized = "implant" not in context
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"),
"armorDamageAmount", container.getModifiedItemAttr("repairBonus"),
stackingPenalties=penalized)

View File

@@ -1,16 +0,0 @@
# ewSkillScanStrengthBonus
#
# Used by:
# Modules named like: Particle Dispersion Augmentor (8 of 8)
# Skill: Signal Dispersion
type = "passive"
def handler(fit, container, context):
groups = ("ECM", "Burst Jammer")
level = container.level if "skill" in context else 1
for scanType in ("Gravimetric", "Ladar", "Magnetometric", "Radar"):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups,
"scan{0}StrengthBonus".format(scanType),
container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level,
stackingPenalties=False if "skill" in context else True)

View File

@@ -1,12 +0,0 @@
# ewSkillRsdCapNeedBonusSkillLevel
#
# Used by:
# Implants named like: Zainou 'Gypsy' Sensor Linking SL (6 of 6)
# Skill: Sensor Linking
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"),
"capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level)

View File

@@ -1,12 +0,0 @@
# ewSkillTdCapNeedBonusSkillLevel
#
# Used by:
# Implants named like: Zainou 'Gypsy' Weapon Disruption WD (6 of 6)
# Skill: Weapon Disruption
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"),
"capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level)

View File

@@ -1,12 +0,0 @@
# ewSkillTpCapNeedBonusSkillLevel
#
# Used by:
# Implants named like: Zainou 'Gypsy' Target Painting TG (6 of 6)
# Skill: Target Painting
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Target Painting"),
"capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level)

View File

@@ -1,13 +0,0 @@
# ewSkillEwCapNeedSkillLevel
#
# Used by:
# Implants named like: Zainou 'Gypsy' Electronic Warfare EW (6 of 6)
# Modules named like: Signal Disruption Amplifier (8 of 8)
# Skill: Electronic Warfare
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM",
"capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level)

View File

@@ -1,10 +0,0 @@
# shieldBoostAmplifierPassive
#
# Used by:
# Implants named like: grade Crystal (15 of 18)
type = "passive"
def handler(fit, container, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"),
"shieldBonus", container.getModifiedItemAttr("shieldBoostMultiplier"))

View File

@@ -1,11 +0,0 @@
# setBonusGuristas
#
# Used by:
# Implants named like: grade Crystal (18 of 18)
runTime = "early"
type = "passive"
def handler(fit, implant, context):
fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant",
"shieldBoostMultiplier", implant.getModifiedItemAttr("implantSetGuristas"))

View File

@@ -1,13 +0,0 @@
# systemScanDurationSkillAstrometrics
#
# Used by:
# Implants named like: Poteque 'Prospector' Astrometric Acquisition AQ (3 of 3)
# Skill: Astrometric Acquisition
# Skill: Astrometrics
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Astrometrics"),
"duration", container.getModifiedItemAttr("durationBonus") * level)

View File

@@ -1,14 +0,0 @@
# propulsionSkillCapNeedBonusSkillLevel
#
# Used by:
# Implants named like: Zainou 'Gypsy' Propulsion Jamming PJ (6 of 6)
# Skill: Propulsion Jamming
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Propulsion Jamming"),
"capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level)

View File

@@ -1,10 +0,0 @@
# shipBonusHybridOptimalCB
#
# Used by:
# Ship: Rokh
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"),
"maxRange", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship")

View File

@@ -1,13 +0,0 @@
# caldariShipEwStrengthCB
#
# Used by:
# Ship: Scorpion
type = "passive"
def handler(fit, ship, context):
for sensorType in ("Gravimetric", "Ladar", "Magnetometric", "Radar"):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Electronic Warfare"),
"scan{0}StrengthBonus".format(sensorType),
ship.getModifiedItemAttr("shipBonusCB"), stackingPenalties=True,
skill="Caldari Battleship")

View File

@@ -1,10 +0,0 @@
# caldariShipEwOptimalRangeCB3
#
# Used by:
# Ship: Scorpion
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM",
"maxRange", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship")

View File

@@ -1,10 +0,0 @@
# caldariShipEwOptimalRangeCC2
#
# Used by:
# Ship: Blackbird
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM",
"maxRange", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser")

View File

@@ -1,12 +0,0 @@
# caldariShipEwCapacitorNeedCC
#
# Used by:
# Ship: Chameleon
# Ship: Falcon
# Ship: Rook
type = "passive"
def handler(fit, ship, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM",
"capacitorNeed", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser")

View File

@@ -1,13 +0,0 @@
# ewSkillRsdMaxRangeBonus
#
# Used by:
# Modules named like: Particle Dispersion Projector (8 of 8)
# Skill: Long Distance Jamming
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"),
"maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level,
stackingPenalties="skill" not in context)

View File

@@ -1,13 +0,0 @@
# ewSkillTpMaxRangeBonus
#
# Used by:
# Modules named like: Particle Dispersion Projector (8 of 8)
# Skill: Long Distance Jamming
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter",
"maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level,
stackingPenalties="skill" not in context)

View File

@@ -1,13 +0,0 @@
# ewSkillTdMaxRangeBonus
#
# Used by:
# Modules named like: Particle Dispersion Projector (8 of 8)
# Skill: Long Distance Jamming
type = "passive"
def handler(fit, container, context):
level = container.level if "skill" in context else 1
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Weapon Disruptor",
"maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level,
stackingPenalties="skill" not in context)

View File

@@ -1,10 +0,0 @@
# ewSkillRsdFallOffBonus
#
# Used by:
# Skill: Frequency Modulation
type = "passive"
def handler(fit, skill, context):
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"),
"falloffEffectiveness", skill.getModifiedItemAttr("falloffBonus") * skill.level)

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