From 15087a290ae828b09c6c1ca50c87d6e608394eee Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Fri, 7 Nov 2014 12:49:34 +0300 Subject: [PATCH] Add proper support of attribute value limit This fixes issue with blighted/polarized weapons getting resistances down to negative values --- eos/db/gamedata/attribute.py | 3 +- eos/modifiedAttributeDict.py | 24 + eos/saveddata/fit.py | 1730 +++++++++++++++++----------------- staticdata/eve.db | Bin 14083072 -> 14085120 bytes 4 files changed, 891 insertions(+), 866 deletions(-) diff --git a/eos/db/gamedata/attribute.py b/eos/db/gamedata/attribute.py index e16463e1d..e6bcc80c8 100644 --- a/eos/db/gamedata/attribute.py +++ b/eos/db/gamedata/attribute.py @@ -18,7 +18,7 @@ #=============================================================================== from sqlalchemy import Table, Column, Integer, Float, Unicode, ForeignKey, String, Boolean -from sqlalchemy.orm import relation, mapper, synonym, deferred +from sqlalchemy.orm import relation, mapper, synonym, deferred, remote from sqlalchemy.ext.associationproxy import association_proxy from eos.types import Attribute, Icon, AttributeInfo, Unit from eos.db import gamedata_meta @@ -31,6 +31,7 @@ attributes_table = Table("dgmattribs", gamedata_meta, Column("attributeID", Integer, primary_key = True), Column("attributeName", String), Column("defaultValue", Float), + Column("maxAttributeID", Integer, ForeignKey("dgmattribs.attributeID")), Column("description", Unicode), Column("published", Boolean), Column("displayName", String), diff --git a/eos/modifiedAttributeDict.py b/eos/modifiedAttributeDict.py index ca3615281..79d871ce5 100644 --- a/eos/modifiedAttributeDict.py +++ b/eos/modifiedAttributeDict.py @@ -21,6 +21,7 @@ from math import exp import collections defaultValuesCache = {} +cappingAttrKeyCache = {} class ItemAttrShortcut(object): def getModifiedItemAttr(self, key): @@ -126,10 +127,29 @@ class ModifiedAttributeDict(collections.MutableMapping): return len(keys) def __calculateValue(self, key): + # It's possible that various attributes are capped by other attributes, + # it's defined by reference maxAttributeID + try: + cappingKey = cappingAttrKeyCache[key] + except KeyError: + from eos.db.gamedata.queries import getAttributeInfo + attrInfo = getAttributeInfo(key) + if attrInfo is None: + cappingId = cappingAttrKeyCache[key] = None + else: + cappingId = cappingAttrKeyCache[key] = attrInfo.maxAttributeID + if cappingId is None: + cappingKey = None + else: + cappingAttrInfo = getAttributeInfo(cappingId) + cappingKey = None if cappingAttrInfo is None else cappingAttrInfo.name + cappingValue = self.__calculateValue(cappingKey) if cappingKey is not None else None # If value is forced, we don't have to calculate anything, # just return forced value instead force = self.__forced[key] if key in self.__forced else None if force is not None: + if cappingValue is not None: + force = min(force, cappingValue) return force # Grab our values if they're there, otherwise we'll take default values preIncrease = self.__preIncreases[key] if key in self.__preIncreases else 0 @@ -176,6 +196,10 @@ class ModifiedAttributeDict(collections.MutableMapping): val *= 1 + (bonus - 1) * exp(- i ** 2 / 7.1289) val += postIncrease + # Cap value if we have cap defined + if cappingValue is not None: + val = min(val, cappingValue) + return val def getAfflictions(self, key): diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index 7eb67921a..ac66da6f1 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -1,865 +1,865 @@ -#=============================================================================== -# Copyright (C) 2010 Diego Duclos -# -# This file is 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 . -#=============================================================================== - -from eos.effectHandlerHelpers import HandledList, HandledModuleList, HandledDroneList, HandledImplantBoosterList, \ -HandledProjectedFitList, HandledProjectedModList, HandledProjectedDroneList, HandledCargoList -from eos.modifiedAttributeDict import ModifiedAttributeDict -from sqlalchemy.orm import validates, reconstructor -from itertools import chain -from eos import capSim -from copy import deepcopy -from math import sqrt, log, asinh -from eos.types import Drone, Cargo, Ship, Character, State, Slot, Module, Implant, Booster, Skill -from eos.saveddata.module import State -import time - -try: - from collections import OrderedDict -except ImportError: - from gui.utils.compat import OrderedDict - -class Fit(object): - """Represents a fitting, with modules, ship, implants, etc.""" - EXTRA_ATTRIBUTES = {"armorRepair": 0, - "hullRepair": 0, - "shieldRepair": 0, - "maxActiveDrones": 0, - "maxTargetsLockedFromSkills": 2, - "droneControlRange": 20000, - "cloaked": False, - "siege": False} - - PEAK_RECHARGE = 0.25 - - def __init__(self): - self.__modules = HandledModuleList() - self.__drones = HandledDroneList() - self.__cargo = HandledCargoList() - self.__implants = HandledImplantBoosterList() - self.__boosters = HandledImplantBoosterList() - self.__projectedFits = HandledProjectedFitList() - self.__projectedModules = HandledProjectedModList() - self.__projectedDrones = HandledProjectedDroneList() - self.__character = None - self.__owner = None - self.shipID = None - self.projected = False - self.name = "" - self.fleet = None - self.boostsFits = set() - self.gangBoosts = None - self.timestamp = time.time() - self.ecmProjectedStr = 1 - self.build() - - @reconstructor - def init(self): - self.build() - - def build(self): - from eos import db - self.__extraDrains = [] - self.__ehp = None - self.__weaponDPS = None - self.__minerYield = None - self.__weaponVolley = None - self.__droneDPS = None - self.__droneYield = None - self.__sustainableTank = None - self.__effectiveSustainableTank = None - self.__effectiveTank = None - self.__calculated = False - self.__capStable = None - self.__capState = None - self.__capUsed = None - self.__capRecharge = None - self.__calculatedTargets = [] - self.factorReload = False - self.fleet = None - self.boostsFits = set() - self.gangBoosts = None - self.ecmProjectedStr = 1 - self.extraAttributes = ModifiedAttributeDict(self) - self.extraAttributes.original = self.EXTRA_ATTRIBUTES - self.ship = Ship(db.getItem(self.shipID)) if self.shipID is not None else None - - @property - def targetResists(self): - return self.__targetResists - - @targetResists.setter - def targetResists(self, targetResists): - self.__targetResists = targetResists - self.__weaponDPS = None - self.__weaponVolley = None - self.__droneDPS = None - - @property - def damagePattern(self): - return self.__damagePattern - - @damagePattern.setter - def damagePattern(self, damagePattern): - self.__damagePattern = damagePattern - self.__ehp = None - self.__effectiveTank = None - - @property - def character(self): - return self.__character if self.__character is not None else Character.getAll0() - - @character.setter - def character(self, char): - self.__character = char - - @property - def ship(self): - return self.__ship - - @ship.setter - def ship(self, ship): - self.__ship = ship - self.shipID = ship.item.ID if ship is not None else None - - @property - def drones(self): - return self.__drones - - @property - def cargo(self): - return self.__cargo - - @property - def modules(self): - return self.__modules - - @property - def implants(self): - return self.__implants - - @property - def boosters(self): - return self.__boosters - - @property - def projectedModules(self): - return self.__projectedModules - - @property - def projectedFits(self): - return self.__projectedFits - - @property - def projectedDrones(self): - return self.__projectedDrones - - @property - def weaponDPS(self): - if self.__weaponDPS is None: - self.calculateWeaponStats() - - return self.__weaponDPS - - @property - def weaponVolley(self): - if self.__weaponVolley is None: - self.calculateWeaponStats() - - return self.__weaponVolley - - @property - def droneDPS(self): - if self.__droneDPS is None: - self.calculateWeaponStats() - - return self.__droneDPS - - @property - def totalDPS(self): - return self.droneDPS + self.weaponDPS - - @property - def minerYield(self): - if self.__minerYield is None: - self.calculateMiningStats() - - return self.__minerYield - - @property - def droneYield(self): - if self.__droneYield is None: - self.calculateMiningStats() - - return self.__droneYield - - @property - def totalYield(self): - return self.droneYield + self.minerYield - - @property - def maxTargets(self): - return min(self.extraAttributes["maxTargetsLockedFromSkills"], self.ship.getModifiedItemAttr("maxLockedTargets")) - - @property - def maxTargetRange(self): - return min(self.ship.getModifiedItemAttr("maxTargetRange"), 250000) - - @property - def scanStrength(self): - return max([self.ship.getModifiedItemAttr("scan%sStrength" % scanType) - for scanType in ("Magnetometric", "Ladar", "Radar", "Gravimetric")]) - - @property - def scanType(self): - maxStr = -1 - type = None - for scanType in ("Magnetometric", "Ladar", "Radar", "Gravimetric"): - currStr = self.ship.getModifiedItemAttr("scan%sStrength" % scanType) - if currStr > maxStr: - maxStr = currStr - type = scanType - elif currStr == maxStr: - type = "Multispectral" - - return type - - @property - def jamChance(self): - return (1-self.ecmProjectedStr)*100 - - @property - def alignTime(self): - agility = self.ship.getModifiedItemAttr("agility") - mass = self.ship.getModifiedItemAttr("mass") - - return -log(0.25) * agility * mass / 1000000 - - @property - def appliedImplants(self): - implantsBySlot = {} - if self.character: - for implant in self.character.implants: - implantsBySlot[implant.slot] = implant - - for implant in self.implants: - implantsBySlot[implant.slot] = implant - - return implantsBySlot.values() - - @validates("ID", "ownerID", "shipID") - def validator(self, key, val): - map = {"ID": lambda val: isinstance(val, int), - "ownerID" : lambda val: isinstance(val, int), - "shipID" : lambda val: isinstance(val, int) or val is None} - - if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) - else: return val - - def clear(self): - self.__effectiveTank = None - self.__weaponDPS = None - self.__minerYield = None - self.__weaponVolley = None - self.__effectiveSustainableTank = None - self.__sustainableTank = None - self.__droneDPS = None - self.__droneYield = None - self.__ehp = None - self.__calculated = False - self.__capStable = None - self.__capState = None - self.__capUsed = None - self.__capRecharge = None - self.ecmProjectedStr = 1 - del self.__calculatedTargets[:] - del self.__extraDrains[:] - - if self.ship is not None: self.ship.clear() - c = chain(self.modules, self.drones, self.boosters, self.implants, self.projectedDrones, self.projectedModules, self.projectedFits, (self.character, self.extraAttributes)) - for stuff in c: - if stuff is not None and stuff != self: stuff.clear() - - #Methods to register and get the thing currently affecting the fit, - #so we can correctly map "Affected By" - def register(self, currModifier): - self.__modifier = currModifier - if hasattr(currModifier, "itemModifiedAttributes"): - currModifier.itemModifiedAttributes.fit = self - if hasattr(currModifier, "chargeModifiedAttributes"): - currModifier.chargeModifiedAttributes.fit = self - - def getModifier(self): - return self.__modifier - - def calculateModifiedAttributes(self, targetFit=None, withBoosters=False, dirtyStorage=None): - refreshBoosts = False - if withBoosters is True: - refreshBoosts = True - if dirtyStorage is not None and self.ID in dirtyStorage: - refreshBoosts = True - if dirtyStorage is not None: - dirtyStorage.update(self.boostsFits) - if self.fleet is not None and refreshBoosts is True: - self.gangBoosts = self.fleet.recalculateLinear(withBoosters=withBoosters, dirtyStorage=dirtyStorage) - elif self.fleet is None: - self.gangBoosts = None - if dirtyStorage is not None: - try: - dirtyStorage.remove(self.ID) - except KeyError: - pass - # If we're not explicitly asked to project fit onto something, - # set self as target fit - if targetFit is None: - targetFit = self - forceProjected = False - # Else, we're checking all target projectee fits - elif targetFit not in self.__calculatedTargets: - self.__calculatedTargets.append(targetFit) - targetFit.calculateModifiedAttributes(dirtyStorage=dirtyStorage) - forceProjected = True - # Or do nothing if target fit is calculated - else: - return - - # If fit is calculated and we have nothing to do here, get out - if self.__calculated == True and forceProjected == False: - return - - # Mark fit as calculated - self.__calculated = True - - # There's a few things to keep in mind here - # 1: Early effects first, then regular ones, then late ones, regardless of anything else - # 2: Some effects aren't implemented - # 3: Some effects are implemented poorly and will just explode on us - # 4: Errors should be handled gracefully and preferably without crashing unless serious - for runTime in ("early", "normal", "late"): - # Build a little chain of stuff - # Avoid adding projected drones and modules when fit is projected onto self - # TODO: remove this workaround when proper self-projection using virtual duplicate fits is implemented - if forceProjected is True: - c = chain((self.character, self.ship), self.drones, self.boosters, self.appliedImplants, self.modules) - else: - c = chain((self.character, self.ship), self.drones, self.boosters, self.appliedImplants, self.modules, - self.projectedDrones, self.projectedModules) - - if self.gangBoosts is not None: - contextMap = {Skill: "skill", - Ship: "ship", - Module: "module", - Implant: "implant"} - for name, info in self.gangBoosts.iteritems(): - # Unpack all data required to run effect properly - effect, thing = info[1] - if effect.runTime == runTime: - context = ("gang", contextMap[type(thing)]) - if isinstance(thing, Module): - if effect.isType("offline") or (effect.isType("passive") and thing.state >= State.ONLINE) or \ - (effect.isType("active") and thing.state >= State.ACTIVE): - # Run effect, and get proper bonuses applied - try: - effect.handler(self, thing, context) - except: - pass - else: - # Run effect, and get proper bonuses applied - try: - effect.handler(self, thing, context) - except: - pass - - for item in c: - # Registering the item about to affect the fit allows us to track "Affected By" relations correctly - if item is not None: - self.register(item) - item.calculateModifiedAttributes(self, runTime, False) - if forceProjected is True: - targetFit.register(item) - item.calculateModifiedAttributes(targetFit, runTime, True) - - for fit in self.projectedFits: - fit.calculateModifiedAttributes(self, withBoosters=withBoosters, dirtyStorage=dirtyStorage) - - def fill(self): - """ - Fill this fit's module slots with enough dummy slots so that all slots are used. - This is mostly for making the life of gui's easier. - GUI's can call fill() and then stop caring about empty slots completely. - """ - if self.ship is None: - return - - for slotType in (Slot.LOW, Slot.MED, Slot.HIGH, Slot.RIG, Slot.SUBSYSTEM): - amount = self.getSlotsFree(slotType, True) - if amount > 0: - for _ in xrange(int(amount)): - self.modules.append(Module.buildEmpty(slotType)) - - if amount < 0: - #Look for any dummies of that type to remove - toRemove = [] - for mod in self.modules: - if mod.isEmpty and mod.slot == slotType: - toRemove.append(mod) - amount += 1 - if amount == 0: - break - for mod in toRemove: - self.modules.remove(mod) - - def unfill(self): - for i in xrange(len(self.modules) - 1, -1, -1): - mod = self.modules[i] - if mod.isEmpty: - del self.modules[i] - - @property - def modCount(self): - x=0 - for i in xrange(len(self.modules) - 1, -1, -1): - mod = self.modules[i] - if not mod.isEmpty: - x += 1 - return x - - def getItemAttrSum(self, dict, attr): - amount = 0 - for mod in dict: - add = mod.getModifiedItemAttr(attr) - if add is not None: - amount += add - - return amount - - def getItemAttrOnlineSum(self, dict, attr): - amount = 0 - for mod in dict: - add = mod.getModifiedItemAttr(attr) if mod.state >= State.ONLINE else None - if add is not None: - amount += add - - return amount - - def getHardpointsUsed(self, type): - amount = 0 - for mod in self.modules: - if mod.hardpoint is type and not mod.isEmpty: - amount += 1 - - return amount - - def getSlotsUsed(self, type, countDummies=False): - amount = 0 - for mod in self.modules: - if mod.slot is type and (not mod.isEmpty or countDummies): - amount += 1 - - return amount - - def getSlotsFree(self, type, countDummies=False): - slots = {Slot.LOW: "lowSlots", - Slot.MED: "medSlots", - Slot.HIGH: "hiSlots", - Slot.RIG: "rigSlots", - Slot.SUBSYSTEM: "maxSubSystems"} - - slotsUsed = self.getSlotsUsed(type, countDummies) - totalSlots = self.ship.getModifiedItemAttr(slots[type]) or 0 - return int(totalSlots - slotsUsed) - - @property - def calibrationUsed(self): - return self.getItemAttrSum(self.modules, 'upgradeCost') - - @property - def pgUsed(self): - return self.getItemAttrOnlineSum(self.modules, "power") - - @property - def cpuUsed(self): - return self.getItemAttrOnlineSum(self.modules, "cpu") - - @property - def droneBandwidthUsed(self): - amount = 0 - for d in self.drones: - amount += d.getModifiedItemAttr("droneBandwidthUsed") * d.amountActive - - return amount - - @property - def droneBayUsed(self): - amount = 0 - for d in self.drones: - amount += d.item.volume * d.amount - - return amount - - @property - def cargoBayUsed(self): - amount = 0 - for c in self.cargo: - amount += c.getModifiedItemAttr("volume") * c.amount - - return amount - - @property - def activeDrones(self): - amount = 0 - for d in self.drones: - amount +=d.amountActive - - return amount - - # Expresses how difficult a target is to probe down with scan probes - # If this is <1.08, the ship is unproabeable - @property - def probeSize(self): - sigRad = self.ship.getModifiedItemAttr("signatureRadius") - sensorStr = float(self.scanStrength) - probeSize = sigRad / sensorStr if sensorStr != 0 else None - # http://www.eveonline.com/ingameboard.asp?a=topic&threadID=1532170&page=2#42 - if probeSize is not None: - # http://forum.eve-ru.com/index.php?showtopic=74195&view=findpost&p=1333691 - # http://forum.eve-ru.com/index.php?showtopic=74195&view=findpost&p=1333763 - # Tests by tester128 and several conclusions by me, prove that cap is in range - # from 1.1 to 1.12, we're picking average value - probeSize = max(probeSize, 1.11) - return probeSize - - @property - def warpSpeed(self): - base = self.ship.getModifiedItemAttr("baseWarpSpeed") or 1 - multiplier = self.ship.getModifiedItemAttr("warpSpeedMultiplier") or 1 - return base * multiplier - - @property - def maxWarpDistance(self): - capacity = self.ship.getModifiedItemAttr("capacitorCapacity") - mass = self.ship.getModifiedItemAttr("mass") - warpCapNeed = self.ship.getModifiedItemAttr("warpCapacitorNeed") - return capacity / (mass * warpCapNeed) - - @property - def capStable(self): - if self.__capStable is None: - self.simulateCap() - - return self.__capStable - - @property - def capState(self): - """ - If the cap is stable, the capacitor state is the % at which it is stable. - If the cap is unstable, this is the amount of time before it runs out - """ - if self.__capState is None: - self.simulateCap() - - return self.__capState - - @property - def capUsed(self): - if self.__capUsed is None: - self.simulateCap() - - return self.__capUsed - - @property - def capRecharge(self): - if self.__capRecharge is None: - self.simulateCap() - - return self.__capRecharge - - - @property - def sustainableTank(self): - if self.__sustainableTank is None: - self.calculateSustainableTank() - - return self.__sustainableTank - - def calculateSustainableTank(self, effective=True): - if self.__sustainableTank is None: - if self.capStable: - sustainable = {} - sustainable["armorRepair"] = self.extraAttributes["armorRepair"] - sustainable["shieldRepair"] = self.extraAttributes["shieldRepair"] - sustainable["hullRepair"] = self.extraAttributes["hullRepair"] - else: - sustainable = {} - - repairers = [] - #Map a repairer type to the attribute it uses - groupAttrMap = {"Armor Repair Unit": "armorDamageAmount", - "Fueled Armor Repairer": "armorDamageAmount", - "Hull Repair Unit": "structureDamageAmount", - "Shield Booster": "shieldBonus", - "Fueled Shield Booster": "shieldBonus", - "Remote Armor Repairer": "armorDamageAmount", - "Remote Shield Booster": "shieldBonus"} - #Map repairer type to attribute - groupStoreMap = {"Armor Repair Unit": "armorRepair", - "Hull Repair Unit": "hullRepair", - "Shield Booster": "shieldRepair", - "Fueled Shield Booster": "shieldRepair", - "Remote Armor Repairer": "armorRepair", - "Remote Shield Booster": "shieldRepair", - "Fueled Armor Repairer": "armorRepair",} - - capUsed = self.capUsed - for attr in ("shieldRepair", "armorRepair", "hullRepair"): - sustainable[attr] = self.extraAttributes[attr] - dict = self.extraAttributes.getAfflictions(attr) - if self in dict: - for mod, _, amount, used in dict[self]: - if not used: - continue - if mod.projected is False: - usesCap = True - try: - if mod.capUse: - capUsed -= mod.capUse - else: - usesCap = False - except AttributeError: - usesCap = False - # Modules which do not use cap are not penalized based on cap use - if usesCap: - cycleTime = mod.getModifiedItemAttr("duration") - amount = mod.getModifiedItemAttr(groupAttrMap[mod.item.group.name]) - sustainable[attr] -= amount / (cycleTime / 1000.0) - repairers.append(mod) - - - #Sort repairers by efficiency. We want to use the most efficient repairers first - repairers.sort(key=lambda mod: mod.getModifiedItemAttr(groupAttrMap[mod.item.group.name]) / mod.getModifiedItemAttr("capacitorNeed"), reverse = True) - - #Loop through every module until we're above peak recharge - #Most efficient first, as we sorted earlier. - #calculate how much the repper can rep stability & add to total - totalPeakRecharge = self.capRecharge - for mod in repairers: - if capUsed > totalPeakRecharge: break - cycleTime = mod.cycleTime - capPerSec = mod.capUse - if capPerSec is not None and cycleTime is not None: - #Check how much this repper can work - sustainability = min(1, (totalPeakRecharge - capUsed) / capPerSec) - - #Add the sustainable amount - amount = mod.getModifiedItemAttr(groupAttrMap[mod.item.group.name]) - sustainable[groupStoreMap[mod.item.group.name]] += sustainability * (amount / (cycleTime / 1000.0)) - capUsed += capPerSec - - sustainable["passiveShield"] = self.calculateShieldRecharge() - self.__sustainableTank = sustainable - - return self.__sustainableTank - - def calculateCapRecharge(self, percent = PEAK_RECHARGE): - capacity = self.ship.getModifiedItemAttr("capacitorCapacity") - rechargeRate = self.ship.getModifiedItemAttr("rechargeRate") / 1000.0 - return 10 / rechargeRate * sqrt(percent) * (1 - sqrt(percent)) * capacity - - def calculateShieldRecharge(self, percent = PEAK_RECHARGE): - capacity = self.ship.getModifiedItemAttr("shieldCapacity") - rechargeRate = self.ship.getModifiedItemAttr("shieldRechargeRate") / 1000.0 - return 10 / rechargeRate * sqrt(percent) * (1 - sqrt(percent)) * capacity - - def addDrain(self, cycleTime, capNeed, clipSize=0): - self.__extraDrains.append((cycleTime, capNeed, clipSize)) - - def removeDrain(self, i): - del self.__extraDrains[i] - - def iterDrains(self): - return self.__extraDrains.__iter__() - - def __generateDrain(self): - drains = [] - capUsed = 0 - capAdded = 0 - for mod in self.modules: - if mod.state >= State.ACTIVE: - if mod.getModifiedItemAttr("capacitorNeed") != 0: - cycleTime = mod.rawCycleTime or 0 - reactivationTime = mod.getModifiedItemAttr("moduleReactivationDelay") or 0 - fullCycleTime = cycleTime + reactivationTime - if fullCycleTime > 0: - capNeed = mod.capUse - if capNeed > 0: - capUsed += capNeed - else: - capAdded -= capNeed - - drains.append((int(fullCycleTime), mod.getModifiedItemAttr("capacitorNeed") or 0, mod.numShots or 0)) - - for fullCycleTime, capNeed, clipSize in self.iterDrains(): - drains.append((int(fullCycleTime), capNeed, clipSize)) - if capNeed > 0: - capUsed += capNeed / (fullCycleTime / 1000.0) - else: - capAdded += -capNeed / (fullCycleTime / 1000.0) - - return drains, capUsed, capAdded - - def simulateCap(self): - drains, self.__capUsed, self.__capRecharge = self.__generateDrain() - self.__capRecharge += self.calculateCapRecharge() - if len(drains) > 0: - sim = capSim.CapSimulator() - sim.init(drains) - sim.capacitorCapacity = self.ship.getModifiedItemAttr("capacitorCapacity") - sim.capacitorRecharge = self.ship.getModifiedItemAttr("rechargeRate") - sim.stagger = True - sim.scale = False - sim.t_max = 6 * 60 * 60 * 1000 - sim.reload = self.factorReload - sim.run() - - capState = (sim.cap_stable_low + sim.cap_stable_high) / (2 * sim.capacitorCapacity) - self.__capStable = capState > 0 - self.__capState = min(100, capState * 100) if self.__capStable else sim.t / 1000.0 - else: - self.__capStable = True - self.__capState = 100 - - @property - def hp(self): - hp = {} - for (type, attr) in (('shield', 'shieldCapacity'), ('armor', 'armorHP'), ('hull', 'hp')): - hp[type] = self.ship.getModifiedItemAttr(attr) - - return hp - - @property - def ehp(self): - if self.__ehp is None: - if self.damagePattern is None: - ehp = self.hp - else: - ehp = self.damagePattern.calculateEhp(self) - self.__ehp = ehp - - return self.__ehp - - @property - def tank(self): - hps = {"passiveShield" : self.calculateShieldRecharge()} - for type in ("shield", "armor", "hull"): - hps["%sRepair" % type] = self.extraAttributes["%sRepair" % type] - - return hps - - @property - def effectiveTank(self): - if self.__effectiveTank is None: - if self.damagePattern is None: - ehps = self.tank - else: - ehps = self.damagePattern.calculateEffectiveTank(self, self.extraAttributes) - - self.__effectiveTank = ehps - - return self.__effectiveTank - - @property - def effectiveSustainableTank(self): - if self.__effectiveSustainableTank is None: - if self.damagePattern is None: - eshps = self.sustainableTank - else: - eshps = self.damagePattern.calculateEffectiveTank(self, self.sustainableTank) - - self.__effectiveSustainableTank = eshps - - return self.__effectiveSustainableTank - - - def calculateLockTime(self, radius): - scanRes = self.ship.getModifiedItemAttr("scanResolution") - if scanRes is not None and scanRes > 0: - # Yes, this function returns time in seconds, not miliseconds. - # 40,000 is indeed the correct constant here. - return min(40000 / scanRes / asinh(radius)**2, 30*60) - else: - return self.ship.getModifiedItemAttr("scanSpeed") / 1000.0 - - def calculateMiningStats(self): - minerYield = 0 - droneYield = 0 - - for mod in self.modules: - minerYield += mod.miningStats - - for drone in self.drones: - droneYield += drone.miningStats - - self.__minerYield = minerYield - self.__droneYield = droneYield - - def calculateWeaponStats(self): - weaponDPS = 0 - droneDPS = 0 - weaponVolley = 0 - - for mod in self.modules: - dps, volley = mod.damageStats(self.targetResists) - weaponDPS += dps - weaponVolley += volley - - for drone in self.drones: - droneDPS += drone.damageStats(self.targetResists) - - self.__weaponDPS = weaponDPS - self.__weaponVolley = weaponVolley - self.__droneDPS = droneDPS - - @property - def fits(self): - for mod in self.modules: - if not mod.fits(self): - return False - - return True - - def __deepcopy__(self, memo): - copy = Fit() - #Character and owner are not copied - copy.character = self.__character - copy.owner = self.owner - copy.ship = deepcopy(self.ship, memo) - copy.name = "%s copy" % self.name - copy.damagePattern = self.damagePattern - copy.targetResists = self.targetResists - - toCopy = ("modules", "drones", "cargo", "implants", "boosters", "projectedModules", "projectedDrones") - for name in toCopy: - orig = getattr(self, name) - c = getattr(copy, name) - for i in orig: - c.append(deepcopy(i, memo)) - - for fit in self.projectedFits: - copy.projectedFits.append(fit) - - return copy +#=============================================================================== +# Copyright (C) 2010 Diego Duclos +# +# This file is 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 . +#=============================================================================== + +from eos.effectHandlerHelpers import HandledList, HandledModuleList, HandledDroneList, HandledImplantBoosterList, \ +HandledProjectedFitList, HandledProjectedModList, HandledProjectedDroneList, HandledCargoList +from eos.modifiedAttributeDict import ModifiedAttributeDict +from sqlalchemy.orm import validates, reconstructor +from itertools import chain +from eos import capSim +from copy import deepcopy +from math import sqrt, log, asinh +from eos.types import Drone, Cargo, Ship, Character, State, Slot, Module, Implant, Booster, Skill +from eos.saveddata.module import State +import time + +try: + from collections import OrderedDict +except ImportError: + from gui.utils.compat import OrderedDict + +class Fit(object): + """Represents a fitting, with modules, ship, implants, etc.""" + EXTRA_ATTRIBUTES = {"armorRepair": 0, + "hullRepair": 0, + "shieldRepair": 0, + "maxActiveDrones": 0, + "maxTargetsLockedFromSkills": 2, + "droneControlRange": 20000, + "cloaked": False, + "siege": False} + + PEAK_RECHARGE = 0.25 + + def __init__(self): + self.__modules = HandledModuleList() + self.__drones = HandledDroneList() + self.__cargo = HandledCargoList() + self.__implants = HandledImplantBoosterList() + self.__boosters = HandledImplantBoosterList() + self.__projectedFits = HandledProjectedFitList() + self.__projectedModules = HandledProjectedModList() + self.__projectedDrones = HandledProjectedDroneList() + self.__character = None + self.__owner = None + self.shipID = None + self.projected = False + self.name = "" + self.fleet = None + self.boostsFits = set() + self.gangBoosts = None + self.timestamp = time.time() + self.ecmProjectedStr = 1 + self.build() + + @reconstructor + def init(self): + self.build() + + def build(self): + from eos import db + self.__extraDrains = [] + self.__ehp = None + self.__weaponDPS = None + self.__minerYield = None + self.__weaponVolley = None + self.__droneDPS = None + self.__droneYield = None + self.__sustainableTank = None + self.__effectiveSustainableTank = None + self.__effectiveTank = None + self.__calculated = False + self.__capStable = None + self.__capState = None + self.__capUsed = None + self.__capRecharge = None + self.__calculatedTargets = [] + self.factorReload = False + self.fleet = None + self.boostsFits = set() + self.gangBoosts = None + self.ecmProjectedStr = 1 + self.extraAttributes = ModifiedAttributeDict(self) + self.extraAttributes.original = self.EXTRA_ATTRIBUTES + self.ship = Ship(db.getItem(self.shipID)) if self.shipID is not None else None + + @property + def targetResists(self): + return self.__targetResists + + @targetResists.setter + def targetResists(self, targetResists): + self.__targetResists = targetResists + self.__weaponDPS = None + self.__weaponVolley = None + self.__droneDPS = None + + @property + def damagePattern(self): + return self.__damagePattern + + @damagePattern.setter + def damagePattern(self, damagePattern): + self.__damagePattern = damagePattern + self.__ehp = None + self.__effectiveTank = None + + @property + def character(self): + return self.__character if self.__character is not None else Character.getAll0() + + @character.setter + def character(self, char): + self.__character = char + + @property + def ship(self): + return self.__ship + + @ship.setter + def ship(self, ship): + self.__ship = ship + self.shipID = ship.item.ID if ship is not None else None + + @property + def drones(self): + return self.__drones + + @property + def cargo(self): + return self.__cargo + + @property + def modules(self): + return self.__modules + + @property + def implants(self): + return self.__implants + + @property + def boosters(self): + return self.__boosters + + @property + def projectedModules(self): + return self.__projectedModules + + @property + def projectedFits(self): + return self.__projectedFits + + @property + def projectedDrones(self): + return self.__projectedDrones + + @property + def weaponDPS(self): + if self.__weaponDPS is None: + self.calculateWeaponStats() + + return self.__weaponDPS + + @property + def weaponVolley(self): + if self.__weaponVolley is None: + self.calculateWeaponStats() + + return self.__weaponVolley + + @property + def droneDPS(self): + if self.__droneDPS is None: + self.calculateWeaponStats() + + return self.__droneDPS + + @property + def totalDPS(self): + return self.droneDPS + self.weaponDPS + + @property + def minerYield(self): + if self.__minerYield is None: + self.calculateMiningStats() + + return self.__minerYield + + @property + def droneYield(self): + if self.__droneYield is None: + self.calculateMiningStats() + + return self.__droneYield + + @property + def totalYield(self): + return self.droneYield + self.minerYield + + @property + def maxTargets(self): + return min(self.extraAttributes["maxTargetsLockedFromSkills"], self.ship.getModifiedItemAttr("maxLockedTargets")) + + @property + def maxTargetRange(self): + return self.ship.getModifiedItemAttr("maxTargetRange") + + @property + def scanStrength(self): + return max([self.ship.getModifiedItemAttr("scan%sStrength" % scanType) + for scanType in ("Magnetometric", "Ladar", "Radar", "Gravimetric")]) + + @property + def scanType(self): + maxStr = -1 + type = None + for scanType in ("Magnetometric", "Ladar", "Radar", "Gravimetric"): + currStr = self.ship.getModifiedItemAttr("scan%sStrength" % scanType) + if currStr > maxStr: + maxStr = currStr + type = scanType + elif currStr == maxStr: + type = "Multispectral" + + return type + + @property + def jamChance(self): + return (1-self.ecmProjectedStr)*100 + + @property + def alignTime(self): + agility = self.ship.getModifiedItemAttr("agility") + mass = self.ship.getModifiedItemAttr("mass") + + return -log(0.25) * agility * mass / 1000000 + + @property + def appliedImplants(self): + implantsBySlot = {} + if self.character: + for implant in self.character.implants: + implantsBySlot[implant.slot] = implant + + for implant in self.implants: + implantsBySlot[implant.slot] = implant + + return implantsBySlot.values() + + @validates("ID", "ownerID", "shipID") + def validator(self, key, val): + map = {"ID": lambda val: isinstance(val, int), + "ownerID" : lambda val: isinstance(val, int), + "shipID" : lambda val: isinstance(val, int) or val is None} + + if map[key](val) == False: raise ValueError(str(val) + " is not a valid value for " + key) + else: return val + + def clear(self): + self.__effectiveTank = None + self.__weaponDPS = None + self.__minerYield = None + self.__weaponVolley = None + self.__effectiveSustainableTank = None + self.__sustainableTank = None + self.__droneDPS = None + self.__droneYield = None + self.__ehp = None + self.__calculated = False + self.__capStable = None + self.__capState = None + self.__capUsed = None + self.__capRecharge = None + self.ecmProjectedStr = 1 + del self.__calculatedTargets[:] + del self.__extraDrains[:] + + if self.ship is not None: self.ship.clear() + c = chain(self.modules, self.drones, self.boosters, self.implants, self.projectedDrones, self.projectedModules, self.projectedFits, (self.character, self.extraAttributes)) + for stuff in c: + if stuff is not None and stuff != self: stuff.clear() + + #Methods to register and get the thing currently affecting the fit, + #so we can correctly map "Affected By" + def register(self, currModifier): + self.__modifier = currModifier + if hasattr(currModifier, "itemModifiedAttributes"): + currModifier.itemModifiedAttributes.fit = self + if hasattr(currModifier, "chargeModifiedAttributes"): + currModifier.chargeModifiedAttributes.fit = self + + def getModifier(self): + return self.__modifier + + def calculateModifiedAttributes(self, targetFit=None, withBoosters=False, dirtyStorage=None): + refreshBoosts = False + if withBoosters is True: + refreshBoosts = True + if dirtyStorage is not None and self.ID in dirtyStorage: + refreshBoosts = True + if dirtyStorage is not None: + dirtyStorage.update(self.boostsFits) + if self.fleet is not None and refreshBoosts is True: + self.gangBoosts = self.fleet.recalculateLinear(withBoosters=withBoosters, dirtyStorage=dirtyStorage) + elif self.fleet is None: + self.gangBoosts = None + if dirtyStorage is not None: + try: + dirtyStorage.remove(self.ID) + except KeyError: + pass + # If we're not explicitly asked to project fit onto something, + # set self as target fit + if targetFit is None: + targetFit = self + forceProjected = False + # Else, we're checking all target projectee fits + elif targetFit not in self.__calculatedTargets: + self.__calculatedTargets.append(targetFit) + targetFit.calculateModifiedAttributes(dirtyStorage=dirtyStorage) + forceProjected = True + # Or do nothing if target fit is calculated + else: + return + + # If fit is calculated and we have nothing to do here, get out + if self.__calculated == True and forceProjected == False: + return + + # Mark fit as calculated + self.__calculated = True + + # There's a few things to keep in mind here + # 1: Early effects first, then regular ones, then late ones, regardless of anything else + # 2: Some effects aren't implemented + # 3: Some effects are implemented poorly and will just explode on us + # 4: Errors should be handled gracefully and preferably without crashing unless serious + for runTime in ("early", "normal", "late"): + # Build a little chain of stuff + # Avoid adding projected drones and modules when fit is projected onto self + # TODO: remove this workaround when proper self-projection using virtual duplicate fits is implemented + if forceProjected is True: + c = chain((self.character, self.ship), self.drones, self.boosters, self.appliedImplants, self.modules) + else: + c = chain((self.character, self.ship), self.drones, self.boosters, self.appliedImplants, self.modules, + self.projectedDrones, self.projectedModules) + + if self.gangBoosts is not None: + contextMap = {Skill: "skill", + Ship: "ship", + Module: "module", + Implant: "implant"} + for name, info in self.gangBoosts.iteritems(): + # Unpack all data required to run effect properly + effect, thing = info[1] + if effect.runTime == runTime: + context = ("gang", contextMap[type(thing)]) + if isinstance(thing, Module): + if effect.isType("offline") or (effect.isType("passive") and thing.state >= State.ONLINE) or \ + (effect.isType("active") and thing.state >= State.ACTIVE): + # Run effect, and get proper bonuses applied + try: + effect.handler(self, thing, context) + except: + pass + else: + # Run effect, and get proper bonuses applied + try: + effect.handler(self, thing, context) + except: + pass + + for item in c: + # Registering the item about to affect the fit allows us to track "Affected By" relations correctly + if item is not None: + self.register(item) + item.calculateModifiedAttributes(self, runTime, False) + if forceProjected is True: + targetFit.register(item) + item.calculateModifiedAttributes(targetFit, runTime, True) + + for fit in self.projectedFits: + fit.calculateModifiedAttributes(self, withBoosters=withBoosters, dirtyStorage=dirtyStorage) + + def fill(self): + """ + Fill this fit's module slots with enough dummy slots so that all slots are used. + This is mostly for making the life of gui's easier. + GUI's can call fill() and then stop caring about empty slots completely. + """ + if self.ship is None: + return + + for slotType in (Slot.LOW, Slot.MED, Slot.HIGH, Slot.RIG, Slot.SUBSYSTEM): + amount = self.getSlotsFree(slotType, True) + if amount > 0: + for _ in xrange(int(amount)): + self.modules.append(Module.buildEmpty(slotType)) + + if amount < 0: + #Look for any dummies of that type to remove + toRemove = [] + for mod in self.modules: + if mod.isEmpty and mod.slot == slotType: + toRemove.append(mod) + amount += 1 + if amount == 0: + break + for mod in toRemove: + self.modules.remove(mod) + + def unfill(self): + for i in xrange(len(self.modules) - 1, -1, -1): + mod = self.modules[i] + if mod.isEmpty: + del self.modules[i] + + @property + def modCount(self): + x=0 + for i in xrange(len(self.modules) - 1, -1, -1): + mod = self.modules[i] + if not mod.isEmpty: + x += 1 + return x + + def getItemAttrSum(self, dict, attr): + amount = 0 + for mod in dict: + add = mod.getModifiedItemAttr(attr) + if add is not None: + amount += add + + return amount + + def getItemAttrOnlineSum(self, dict, attr): + amount = 0 + for mod in dict: + add = mod.getModifiedItemAttr(attr) if mod.state >= State.ONLINE else None + if add is not None: + amount += add + + return amount + + def getHardpointsUsed(self, type): + amount = 0 + for mod in self.modules: + if mod.hardpoint is type and not mod.isEmpty: + amount += 1 + + return amount + + def getSlotsUsed(self, type, countDummies=False): + amount = 0 + for mod in self.modules: + if mod.slot is type and (not mod.isEmpty or countDummies): + amount += 1 + + return amount + + def getSlotsFree(self, type, countDummies=False): + slots = {Slot.LOW: "lowSlots", + Slot.MED: "medSlots", + Slot.HIGH: "hiSlots", + Slot.RIG: "rigSlots", + Slot.SUBSYSTEM: "maxSubSystems"} + + slotsUsed = self.getSlotsUsed(type, countDummies) + totalSlots = self.ship.getModifiedItemAttr(slots[type]) or 0 + return int(totalSlots - slotsUsed) + + @property + def calibrationUsed(self): + return self.getItemAttrSum(self.modules, 'upgradeCost') + + @property + def pgUsed(self): + return self.getItemAttrOnlineSum(self.modules, "power") + + @property + def cpuUsed(self): + return self.getItemAttrOnlineSum(self.modules, "cpu") + + @property + def droneBandwidthUsed(self): + amount = 0 + for d in self.drones: + amount += d.getModifiedItemAttr("droneBandwidthUsed") * d.amountActive + + return amount + + @property + def droneBayUsed(self): + amount = 0 + for d in self.drones: + amount += d.item.volume * d.amount + + return amount + + @property + def cargoBayUsed(self): + amount = 0 + for c in self.cargo: + amount += c.getModifiedItemAttr("volume") * c.amount + + return amount + + @property + def activeDrones(self): + amount = 0 + for d in self.drones: + amount +=d.amountActive + + return amount + + # Expresses how difficult a target is to probe down with scan probes + # If this is <1.08, the ship is unproabeable + @property + def probeSize(self): + sigRad = self.ship.getModifiedItemAttr("signatureRadius") + sensorStr = float(self.scanStrength) + probeSize = sigRad / sensorStr if sensorStr != 0 else None + # http://www.eveonline.com/ingameboard.asp?a=topic&threadID=1532170&page=2#42 + if probeSize is not None: + # http://forum.eve-ru.com/index.php?showtopic=74195&view=findpost&p=1333691 + # http://forum.eve-ru.com/index.php?showtopic=74195&view=findpost&p=1333763 + # Tests by tester128 and several conclusions by me, prove that cap is in range + # from 1.1 to 1.12, we're picking average value + probeSize = max(probeSize, 1.11) + return probeSize + + @property + def warpSpeed(self): + base = self.ship.getModifiedItemAttr("baseWarpSpeed") or 1 + multiplier = self.ship.getModifiedItemAttr("warpSpeedMultiplier") or 1 + return base * multiplier + + @property + def maxWarpDistance(self): + capacity = self.ship.getModifiedItemAttr("capacitorCapacity") + mass = self.ship.getModifiedItemAttr("mass") + warpCapNeed = self.ship.getModifiedItemAttr("warpCapacitorNeed") + return capacity / (mass * warpCapNeed) + + @property + def capStable(self): + if self.__capStable is None: + self.simulateCap() + + return self.__capStable + + @property + def capState(self): + """ + If the cap is stable, the capacitor state is the % at which it is stable. + If the cap is unstable, this is the amount of time before it runs out + """ + if self.__capState is None: + self.simulateCap() + + return self.__capState + + @property + def capUsed(self): + if self.__capUsed is None: + self.simulateCap() + + return self.__capUsed + + @property + def capRecharge(self): + if self.__capRecharge is None: + self.simulateCap() + + return self.__capRecharge + + + @property + def sustainableTank(self): + if self.__sustainableTank is None: + self.calculateSustainableTank() + + return self.__sustainableTank + + def calculateSustainableTank(self, effective=True): + if self.__sustainableTank is None: + if self.capStable: + sustainable = {} + sustainable["armorRepair"] = self.extraAttributes["armorRepair"] + sustainable["shieldRepair"] = self.extraAttributes["shieldRepair"] + sustainable["hullRepair"] = self.extraAttributes["hullRepair"] + else: + sustainable = {} + + repairers = [] + #Map a repairer type to the attribute it uses + groupAttrMap = {"Armor Repair Unit": "armorDamageAmount", + "Fueled Armor Repairer": "armorDamageAmount", + "Hull Repair Unit": "structureDamageAmount", + "Shield Booster": "shieldBonus", + "Fueled Shield Booster": "shieldBonus", + "Remote Armor Repairer": "armorDamageAmount", + "Remote Shield Booster": "shieldBonus"} + #Map repairer type to attribute + groupStoreMap = {"Armor Repair Unit": "armorRepair", + "Hull Repair Unit": "hullRepair", + "Shield Booster": "shieldRepair", + "Fueled Shield Booster": "shieldRepair", + "Remote Armor Repairer": "armorRepair", + "Remote Shield Booster": "shieldRepair", + "Fueled Armor Repairer": "armorRepair",} + + capUsed = self.capUsed + for attr in ("shieldRepair", "armorRepair", "hullRepair"): + sustainable[attr] = self.extraAttributes[attr] + dict = self.extraAttributes.getAfflictions(attr) + if self in dict: + for mod, _, amount, used in dict[self]: + if not used: + continue + if mod.projected is False: + usesCap = True + try: + if mod.capUse: + capUsed -= mod.capUse + else: + usesCap = False + except AttributeError: + usesCap = False + # Modules which do not use cap are not penalized based on cap use + if usesCap: + cycleTime = mod.getModifiedItemAttr("duration") + amount = mod.getModifiedItemAttr(groupAttrMap[mod.item.group.name]) + sustainable[attr] -= amount / (cycleTime / 1000.0) + repairers.append(mod) + + + #Sort repairers by efficiency. We want to use the most efficient repairers first + repairers.sort(key=lambda mod: mod.getModifiedItemAttr(groupAttrMap[mod.item.group.name]) / mod.getModifiedItemAttr("capacitorNeed"), reverse = True) + + #Loop through every module until we're above peak recharge + #Most efficient first, as we sorted earlier. + #calculate how much the repper can rep stability & add to total + totalPeakRecharge = self.capRecharge + for mod in repairers: + if capUsed > totalPeakRecharge: break + cycleTime = mod.cycleTime + capPerSec = mod.capUse + if capPerSec is not None and cycleTime is not None: + #Check how much this repper can work + sustainability = min(1, (totalPeakRecharge - capUsed) / capPerSec) + + #Add the sustainable amount + amount = mod.getModifiedItemAttr(groupAttrMap[mod.item.group.name]) + sustainable[groupStoreMap[mod.item.group.name]] += sustainability * (amount / (cycleTime / 1000.0)) + capUsed += capPerSec + + sustainable["passiveShield"] = self.calculateShieldRecharge() + self.__sustainableTank = sustainable + + return self.__sustainableTank + + def calculateCapRecharge(self, percent = PEAK_RECHARGE): + capacity = self.ship.getModifiedItemAttr("capacitorCapacity") + rechargeRate = self.ship.getModifiedItemAttr("rechargeRate") / 1000.0 + return 10 / rechargeRate * sqrt(percent) * (1 - sqrt(percent)) * capacity + + def calculateShieldRecharge(self, percent = PEAK_RECHARGE): + capacity = self.ship.getModifiedItemAttr("shieldCapacity") + rechargeRate = self.ship.getModifiedItemAttr("shieldRechargeRate") / 1000.0 + return 10 / rechargeRate * sqrt(percent) * (1 - sqrt(percent)) * capacity + + def addDrain(self, cycleTime, capNeed, clipSize=0): + self.__extraDrains.append((cycleTime, capNeed, clipSize)) + + def removeDrain(self, i): + del self.__extraDrains[i] + + def iterDrains(self): + return self.__extraDrains.__iter__() + + def __generateDrain(self): + drains = [] + capUsed = 0 + capAdded = 0 + for mod in self.modules: + if mod.state >= State.ACTIVE: + if mod.getModifiedItemAttr("capacitorNeed") != 0: + cycleTime = mod.rawCycleTime or 0 + reactivationTime = mod.getModifiedItemAttr("moduleReactivationDelay") or 0 + fullCycleTime = cycleTime + reactivationTime + if fullCycleTime > 0: + capNeed = mod.capUse + if capNeed > 0: + capUsed += capNeed + else: + capAdded -= capNeed + + drains.append((int(fullCycleTime), mod.getModifiedItemAttr("capacitorNeed") or 0, mod.numShots or 0)) + + for fullCycleTime, capNeed, clipSize in self.iterDrains(): + drains.append((int(fullCycleTime), capNeed, clipSize)) + if capNeed > 0: + capUsed += capNeed / (fullCycleTime / 1000.0) + else: + capAdded += -capNeed / (fullCycleTime / 1000.0) + + return drains, capUsed, capAdded + + def simulateCap(self): + drains, self.__capUsed, self.__capRecharge = self.__generateDrain() + self.__capRecharge += self.calculateCapRecharge() + if len(drains) > 0: + sim = capSim.CapSimulator() + sim.init(drains) + sim.capacitorCapacity = self.ship.getModifiedItemAttr("capacitorCapacity") + sim.capacitorRecharge = self.ship.getModifiedItemAttr("rechargeRate") + sim.stagger = True + sim.scale = False + sim.t_max = 6 * 60 * 60 * 1000 + sim.reload = self.factorReload + sim.run() + + capState = (sim.cap_stable_low + sim.cap_stable_high) / (2 * sim.capacitorCapacity) + self.__capStable = capState > 0 + self.__capState = min(100, capState * 100) if self.__capStable else sim.t / 1000.0 + else: + self.__capStable = True + self.__capState = 100 + + @property + def hp(self): + hp = {} + for (type, attr) in (('shield', 'shieldCapacity'), ('armor', 'armorHP'), ('hull', 'hp')): + hp[type] = self.ship.getModifiedItemAttr(attr) + + return hp + + @property + def ehp(self): + if self.__ehp is None: + if self.damagePattern is None: + ehp = self.hp + else: + ehp = self.damagePattern.calculateEhp(self) + self.__ehp = ehp + + return self.__ehp + + @property + def tank(self): + hps = {"passiveShield" : self.calculateShieldRecharge()} + for type in ("shield", "armor", "hull"): + hps["%sRepair" % type] = self.extraAttributes["%sRepair" % type] + + return hps + + @property + def effectiveTank(self): + if self.__effectiveTank is None: + if self.damagePattern is None: + ehps = self.tank + else: + ehps = self.damagePattern.calculateEffectiveTank(self, self.extraAttributes) + + self.__effectiveTank = ehps + + return self.__effectiveTank + + @property + def effectiveSustainableTank(self): + if self.__effectiveSustainableTank is None: + if self.damagePattern is None: + eshps = self.sustainableTank + else: + eshps = self.damagePattern.calculateEffectiveTank(self, self.sustainableTank) + + self.__effectiveSustainableTank = eshps + + return self.__effectiveSustainableTank + + + def calculateLockTime(self, radius): + scanRes = self.ship.getModifiedItemAttr("scanResolution") + if scanRes is not None and scanRes > 0: + # Yes, this function returns time in seconds, not miliseconds. + # 40,000 is indeed the correct constant here. + return min(40000 / scanRes / asinh(radius)**2, 30*60) + else: + return self.ship.getModifiedItemAttr("scanSpeed") / 1000.0 + + def calculateMiningStats(self): + minerYield = 0 + droneYield = 0 + + for mod in self.modules: + minerYield += mod.miningStats + + for drone in self.drones: + droneYield += drone.miningStats + + self.__minerYield = minerYield + self.__droneYield = droneYield + + def calculateWeaponStats(self): + weaponDPS = 0 + droneDPS = 0 + weaponVolley = 0 + + for mod in self.modules: + dps, volley = mod.damageStats(self.targetResists) + weaponDPS += dps + weaponVolley += volley + + for drone in self.drones: + droneDPS += drone.damageStats(self.targetResists) + + self.__weaponDPS = weaponDPS + self.__weaponVolley = weaponVolley + self.__droneDPS = droneDPS + + @property + def fits(self): + for mod in self.modules: + if not mod.fits(self): + return False + + return True + + def __deepcopy__(self, memo): + copy = Fit() + #Character and owner are not copied + copy.character = self.__character + copy.owner = self.owner + copy.ship = deepcopy(self.ship, memo) + copy.name = "%s copy" % self.name + copy.damagePattern = self.damagePattern + copy.targetResists = self.targetResists + + toCopy = ("modules", "drones", "cargo", "implants", "boosters", "projectedModules", "projectedDrones") + for name in toCopy: + orig = getattr(self, name) + c = getattr(copy, name) + for i in orig: + c.append(deepcopy(i, memo)) + + for fit in self.projectedFits: + copy.projectedFits.append(fit) + + return copy diff --git a/staticdata/eve.db b/staticdata/eve.db index 01c0a0058f698f39a944436cc79b543e38482cbe..c4c2a52832f9671003b5e07ba6ebe719ba70a71f 100644 GIT binary patch delta 151924 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%0DyyD=oNwlO3~GgtVSt1E*J^TN1s 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%0DXkYf@%a8Tkt~?U$8_l^-#OQu3+Lzt<^3!~k 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