Pyfa - The Python Fitting Assistant

Are the stats of the Domination Large Armor repairer not correct in Pyfa?
Ingame it says activation cost is 360GJ, Pyfa says 360, too, in the items info, but in the list of fitted items in my Abaddons fit it says 320.

Importing characters into Pyfa: in what Eve game sub directory do I look for the file that Pyfa wants for info on my character? It is looking for an xml file I believe and I don’t see any.

pyfa v2.48.0
EVE Data Version: 2154998 (2022-11-09 18:10:09)

OS version: Windows-10-10.0.22000-SP0
Python version: 3.7.9 (tags/v3.7.9:13c94747c7, Aug 17 2020, 18:58:18) [MSC v.1900 64 bit (AMD64)]
wxPython version: 4.0.6 (wxWidgets 3.0.5)
SQLAlchemy version: 1.3.23
Logbook version: 1.5.3
Requests version: 2.28.1
Dateutil version: 2.8.2


wx._core.wxAssertionError: C++ assertion “(argtype & (wxFormatStringSpecifier::value)) == argtype” failed at C:\PROJECTS\buildbots\win7-py27\dist-win64-py37\Phoenix\ext\wxWidgets\include\wx/strvararg.h(462) in wxArgNormalizer::wxArgNormalizer(): format specifier doesn’t match argument type

The above exception was the direct cause of the following exception:

SystemError: <class ‘wx._core.MouseEvent’> returned a result with an error set

help pyfa is dead

for some reason my PYFA is showing in a foreign language and I cannot work out howe to change it to english, can anyone help me out by telling me the menu i need to go into? thanks


I love this tool, thanks! :smiley:

sadly still no dark mode or i missed it?

changed some windows design settings and its looking nice now


Great App…

how do i download it?

From their repository:

Download the version you need (they have installers for Windows and Mac, source for Linux) and install it like any other application.

You can link it to your account and characters and it load their skills and allows import and export of fittings from the tool to the game.

A very nice bit of work. The PYFA developers should be commended for it.

1 Like

Got this error on a new install, Ubuntu.

If anyone has any info on what I can do to fix this, please let me know.

pyfa v2.49.0
EVE Data Version: None (None)

OS version: Linux-5.19.0-26-generic-x86_64-with-glibc2.36
Python version: 3.10.7 (main, Nov 24 2022, 19:45:47) [GCC 12.2.0]
wxPython version: 4.0.7 (wxWidgets 3.0.5)
SQLAlchemy version: 1.4.45
Logbook version: 1.5.3
Requests version: 2.27.1
Dateutil version: 2.8.2


Traceback (most recent call last):
  File "/home/usr/bin/pyfa/", line 150, in <module>
    mf = MainFrame(options.title)
  File "/home/usr/bin/pyfa/gui/", line 172, in __init__
    self.additionsPane = AdditionsPane(self.fitting_additions_split, self)
  File "/home/usr/bin/pyfa/gui/", line 66, in __init__
    self.notebook.AddPage(self.drone, _t("Drones"), image=droneImg, closeable=False)
  File "/home/usr/bin/pyfa/gui/", line 231, in AddPage
    self.tabs_container.AddTab(title, image, closeable)
  File "/home/usr/bin/pyfa/gui/", line 1266, in AddTab
    tab_renderer = _TabRenderer((200, self.height), title, img, closeable)
  File "/home/usr/bin/pyfa/gui/", line 385, in __init__
  File "/home/usr/bin/pyfa/gui/", line 479, in InitTab
  File "/home/usr/bin/pyfa/gui/", line 563, in InitColors
    self.inactive_color = color_utils.GetSuitable(self.tab_color, 0.25)
  File "/home/usr/bin/pyfa/gui/utils/", line 55, in GetSuitable
    return Darken(color, factor)
  File "/home/usr/bin/pyfa/gui/utils/", line 33, in Darken
    return wx.Colour(r, g, b, a)
TypeError: Colour(): arguments did not match any overloaded call:
  overload 1: too many arguments
  overload 2: argument 1 has unexpected type 'float'
  overload 3: argument 1 has unexpected type 'float'
  overload 4: argument 1 has unexpected type 'float'

How do I update PYFA? Do I just download the newer .exe file? Will it save my hundred fits?

hi. i ear about pifa some years ago and i didnt know what to do with it. and what can expecte with pifa, I mean its better than eve online fitting ?
can you give an exemple to see why i should download it ?
thanks in advance

Resolved. Yes, you just download the files on top of the old ones. It saves your fits.

Also, PYFA is fantastic in a way I never realized before. Abbreviations work with module search!

XLASB yields the X-Large Ancillary Shield Booster, the number 2 can be substituted for II, and even old module names work. DCU 2 yields, incredibly, Damage Control II, and typing Invuln pulls up Multispectrum Shield Hardeners, which used to be called Adaptive Invulnerability Fields.

While more specific modules like RFMSE don’t work, categories like LSE for Large Shield Extenders do.

ENAM 2, a corruption of EANM II, which is an abbreviation of the old module Energized Adaptive Nano Membrane II, still amazingly results in the Multispectrum Energized Membrane II being offered.

Is there currently a way to find out how much missile damage would be applied to a drone shot at during MWD transit, and/or how much damage said drone would take when orbiting?

If not, could this function be added?
I’d like to be able to figure out if I can kill a kiter’s drones before they kill me or if I should just warp away.

I tried to add a Hobgoblin II as a target for the damage graphing and couldn’t seem to find a way.

Hi ,I have met a network problem using pyfa these days after i assmble a new PC; It seems happens when i using the Manage ESI Charactor and Charactor editor; I can log in, so i don’t know what assert this

In general it would be very nice if we could just manually insert a targets Signature and Speed and get a graph how Missile Damage would apply.

1 Like

Hello guys! How to remove these odd numbers on the left of the modules?

Is there a way to make the font larger? I’ve found it has been getting hard on my eyes when I’m plugging away for a while.

Thanks for the great, free tool, by the way.

@Sable_Blitzmann Just a heads up, if you didn’t know already, the Metamorphosis had it’s stats updated today. Also, thank you very much for maintaining Pyfa.