Pyfa - The Python Fitting Assistant

Thank you for the tool, OP. Just one questions : is there any chance we will see roaming triglavians damage profile selectable as other belt NPC damage profile?

1 Like

You have “factor reload” option turned on (shown via RMB on firepower panel, or by left-clicking menu item on it). When it is on, Pyfa tries to see if it’s beneficial to use fighters’ secondary ability and get fighters back for refueling from time to time (assuming 0 flight time), or disregard secondary damage ability and keep using primary without downtime.

As a rule, light/heavy assault fighters have more damage on average with secondary ability and coming back to refuel when needed, long-range heavy fighters have more damage if they keep using primary and do not refuel bombs. In either case, DPS drops. Depending on reload/refuel time, it can drop substantially, which is what you observe in your case.

Please provide the numbers as well as source where you got them. I can add them to Pyfa easily. With one issue which affects usability of it, though.

1 Like

Done, will be included in next release

2 Likes

Thanks a lot for 1) this nice feature and 2) taking the time to explain it.

1 Like

New release 2.11.1 with small assortment of features, including ability to change range of projected effects to gauge their effects at different ranges.

2 Likes

I am planning to take a look at jargon dictionary (which is used in item search in pyfa, ie eanm will find you energized adaptive membranes). If you are using it and iterested in any changes to it (or do not want changes), post in github ticket or in this thread.

1 Like

Release 2.12.0 which includes changes from EVE october update is out.

edit: please use release 2.12.1 which has few important bug fixes

2 Likes

Is it possible to get a “dark” mode in Pyfa (assuming thats nto already a thing and im being a retard)? :slight_smile: :heart:

As I attempted to overheat a module, pyfa crashed with the following information:

pyfa v2.13.0
EVE Data Version: 1585794 (2019-10-15 14:02:48)

OS version: Windows-10-10.0.17763-SP0
Python version: 3.6.8 (tags/v3.6.8:3c6b436a57, Dec 23 2018, 23:31:17) [MSC v.1916 32 bit (Intel)]
wxPython version: 4.0.6 (wxWidgets 3.0.5)
SQLAlchemy version: 1.3.10
Logbook version: 1.5.2
Requests version: 2.22.0
Dateutil version: 2.8.0

####################

Traceback (most recent call last):
File “C:\projects\pyfa\eos\db\saveddata\queries.py”, line 562, in commit
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 1027, in commit
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 494, in commit
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 473, in _prepare_impl
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 2470, in flush
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 2608, in _flush
File “C:\Python36\lib\site-packages\sqlalchemy\util\langhelpers.py”, line 68, in exit
File “C:\Python36\lib\site-packages\sqlalchemy\util\compat.py”, line 153, in reraise
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 2568, in _flush
File “C:\Python36\lib\site-packages\sqlalchemy\orm\unitofwork.py”, line 422, in execute
File “C:\Python36\lib\site-packages\sqlalchemy\orm\unitofwork.py”, line 589, in execute
File “C:\Python36\lib\site-packages\sqlalchemy\orm\persistence.py”, line 236, in save_obj
File “C:\Python36\lib\site-packages\sqlalchemy\orm\persistence.py”, line 1029, in _emit_update_statements
sqlalchemy.orm.exc.StaleDataError: UPDATE statement on table ‘modules’ expected to update 1 row(s); 0 were matched.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “C:\projects\pyfa\gui\fitCommands\gui\localModule\changeStates.py”, line 34, in Do
File “C:\projects\pyfa\eos\db\saveddata\queries.py”, line 566, in commit
File “C:\projects\pyfa\eos\db\saveddata\queries.py”, line 562, in commit
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 1027, in commit
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 494, in commit
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 473, in _prepare_impl
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 2470, in flush
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 2608, in _flush
File “C:\Python36\lib\site-packages\sqlalchemy\util\langhelpers.py”, line 68, in exit
File “C:\Python36\lib\site-packages\sqlalchemy\util\compat.py”, line 153, in reraise
File “C:\Python36\lib\site-packages\sqlalchemy\orm\session.py”, line 2568, in _flush
File “C:\Python36\lib\site-packages\sqlalchemy\orm\unitofwork.py”, line 422, in execute
File “C:\Python36\lib\site-packages\sqlalchemy\orm\unitofwork.py”, line 589, in execute
File “C:\Python36\lib\site-packages\sqlalchemy\orm\persistence.py”, line 236, in save_obj
File “C:\Python36\lib\site-packages\sqlalchemy\orm\persistence.py”, line 1029, in _emit_update_statements
sqlalchemy.orm.exc.StaleDataError:

####################

Traceback (most recent call last):
File “C:\projects\pyfa\gui\builtinViews\fittingView.py”, line 732, in click
File “C:\projects\pyfa\gui\builtinViewColumns\state.py”, line 49, in getToolTip
File “C:\projects\pyfa\eos\saveddata\module.py”, line 188, in isEmpty
File “C:\Python36\lib\site-packages\sqlalchemy\orm\attributes.py”, line 282, in get
File “C:\Python36\lib\site-packages\sqlalchemy\orm\attributes.py”, line 705, in get
File “C:\Python36\lib\site-packages\sqlalchemy\orm\state.py”, line 660, in _load_expired
File “C:\Python36\lib\site-packages\sqlalchemy\orm\loading.py”, line 985, in load_scalar_attributes
sqlalchemy.orm.exc.ObjectDeletedError: Instance ‘<Module at 0x16f7890>’ has been deleted, or its row is otherwise not present.

Hello and thank you for this wonderful tool!

Would it be possible for you to easily implement the following feature:

Being able to see how much a module costs before actually adding it to the fit could be a very nice time saver.

1 Like

Today I got another message with the following information, but pyfa didn’t crash:

pyfa v2.13.0
EVE Data Version: 1585794 (2019-10-15 14:02:48)

OS version: Windows-10-10.0.17763-SP0
Python version: 3.6.8 (tags/v3.6.8:3c6b436a57, Dec 23 2018, 23:31:17) [MSC v.1916 32 bit (Intel)]
wxPython version: 4.0.6 (wxWidgets 3.0.5)
SQLAlchemy version: 1.3.10
Logbook version: 1.5.2
Requests version: 2.22.0
Dateutil version: 2.8.0

####################

Traceback (most recent call last):
File “C:\projects\pyfa\gui\contextMenu.py”, line 163, in handler
File “C:\projects\pyfa\gui\contextMenu.py”, line 257, in _baseActivate
File “C:\projects\pyfa\gui\builtinContextMenus\additionsImport.py”, line 43, in activate
File “C:\projects\pyfa\service\port\eft.py”, line 884, in parseAdditions
File “C:\projects\pyfa\service\market.py”, line 379, in getItem
File “C:\projects\pyfa\eos\db\gamedata\queries.py”, line 60, in checkAndReturn
File “C:\projects\pyfa\eos\db\gamedata\queries.py”, line 95, in getItem
AttributeError: ‘NoneType’ object has no attribute ‘ID’

This happened after I clicked on “Paste Drones” without clicking “Copy All Drones” beforehand.

1 Like

Regarding crashes - I am unsure what could’ve caused 1st crash. I get similar error when DB file is changed externally (e.g. via dropbox sync). Maybe you have the same case?
Second crash - reproduced and fixed it, will be included into next release.

@Lian_Hoshi, regarding price column - added github ticket: https://github.com/pyfa-org/Pyfa/issues/2071 I have few other improvements I am working on, so hopefully someone else picks it up.

Also, 2.14.0 is out, with AF and combat interceptor changes.

4 Likes

Hello Pyfa friends, thanks for this great tool.

I was playing around with a Kronos fiting and found a discrepancy on calculations. Below is my fit:

[Kronos, *Simulated Kronos Fitting]

Capacitor Flux Coil II
Centus X-Type Large Armor Repairer
Centum A-Type Energized Thermal Membrane
Centum A-Type Energized Explosive Membrane
Centum A-Type Energized Kinetic Membrane
Federation Navy 1600mm Steel Plates
Damage Control II
500MN Microwarpdrive II
Cap Recharger II
Cap Recharger II
Cap Recharger II
Neutron Blaster Cannon II
Neutron Blaster Cannon II
Neutron Blaster Cannon II
Neutron Blaster Cannon II
Bastion Module I
Drone Link Augmentor II
Auto Targeting System II
Large Capacitor Control Circuit II
Large Capacitor Control Circuit II

I get a stable capacitor on both Pyfa and EVE’s fitting tool, nevertheless, Pyfa indicates that it is stable at 29.8% whereas EVE indicates 4%. I tested with another combinations by removing one Cap Recharger II and both Pyfa and EVE say capacitor lasts 3m33s, therefore, apparently the error in calculation happens only when cap is stable.

There is only one way to check: test it in actual game by taking the Kronos fit and using its mods for some time.

EVE ingame fitting tool uses approximate methods while pyfa uses cap simulator which usually provides much more accurate results (but this is the most obvious in edge-cases, and your case is not). Cap stability in pyfa shows lower cap watermark. You can see how cap fluctuates by opening capacitor graph for your fit.

And if pyfa is in the wrong according to actual test, please post here again.

edit: 2.14.1 is out with Vengeance speed fix.

2 Likes

Where has the sig radius option gone from GRAPHs? This was reallly useful when working out what DPS actually applies to a given target. You were able to play around with things like painters, MWDs, and boosts.

Without it the graph tool is practically useless???

@ISK_Lord, option is there: https://funkyimg.com/i/2Z37C.png

Select some target with non-infinite signature radius (create dummy one with 100m if you wish) and play with “target sig %” field. Or do you want to be able to change it while having X as something different (like range)?


In other news, release for november EVE update is up: https://github.com/pyfa-org/Pyfa/releases/tag/v2.15.0

2 Likes

Command Brust is not being calculated. v2.15.0

Hey,

is it possible to integrate an duplicate fit scanner inside pyfa?

Any time i load older fittings, i do get many double after it and its annoying to remove them manually again.

Would be great to avoid it in future :slight_smile:

Thnx, Ping

There’s a goof in the latest version of PYFA. The Inherent Implants ‘Noble’ Hull Upgrades are wrong. In PYFA, those implants only give the armor hit point bonus. The implants actually give hitpoint and repair amount bonus. Like The HG-1003 implant shows only giving 3% armor hit point. IT should say 3% Repair Bonus and 3% armor hitpoint bonus.

I cant seem to add characters via SSO? The characters get add fine and can import fittings but in the fitting windows and character editor it doesnt show them. only the default “All 0” or “All 5”. Im using the latest build of the game v2.15.1. ran as administrator, installed and reinstalled, logged in and out of game and Pyfa, revoked SSO’s and re did them. Ive tried everything i can find online but still nothing.

Known issue or something is amiss?

Any help would be much appreciated
Thanks
Ganjena

3 Likes