Python fitting assistant, cross-platform fitting tool for EVE Online

Overview

pyfa

Join us on Slack! Build Status

pyfa

What is it?

Pyfa, short for python fitting assistant, allows you to create, experiment with, and save ship fittings without being in game. Open source and written in Python, it is available on any platform where Python 3 and wxWidgets are available, including Windows, Mac OS X, and Linux.

Latest Version and Changelogs

The latest version along with release notes can always be found on the project's releases page. Pyfa will notify you if you are running an outdated version.

Installation

Windows and OS X users are supplied self-contained builds of pyfa on the latest releases page. An .exe installer is also available for Windows builds. Linux users can run pyfa using their distribution's Python interpreter. There is no official self-contained package for Linux, however, there are a number of third-party packages available through distribution-specific repositories.

OS X

Apart from the official release, there is also a Homebrew option for installing pyfa on OS X. Please note this is maintained by a third-party and is not tested by pyfa developers. Simply fire up in terminal:

$ brew install Caskroom/cask/pyfa

Linux Distro-specific Packages

The following is a list of pyfa packages available for certain distributions. Please note that these packages are maintained by third-parties and are not evaluated by the pyfa developers.

Contribution

If you wish to help with development or you need to run pyfa through a Python interpreter, check out the instructions.

Bug Reporting

The preferred method of reporting bugs is through the project's GitHub Issues interface. Alternatively, posting a report in the pyfa thread on the official EVE Online forums is acceptable. Guidelines for bug reporting can be found on this wiki page.

License

Pyfa is licensed under the GNU GPL v3.0, see LICENSE

Resources

Contacts:

CCP Copyright Notice

EVE Online, the EVE logo, EVE and all associated logos and designs are the intellectual property of CCP hf. All artwork, screenshots, characters, vehicles, storylines, world facts or other recognizable features of the intellectual property relating to these trademarks are likewise the intellectual property of CCP hf. EVE Online and the EVE logo are the registered trademarks of CCP hf. All rights are reserved worldwide. All other trademarks are the property of their respective owners. CCP hf. has granted permission to pyfa to use EVE Online and all associated logos and designs for promotional and information purposes on its website but does not endorse, and is not in any way affiliated with, pyfa. CCP is in no way responsible for the content on or functioning of this program, nor can it be liable for any damage arising from the use of this program.

Comments
  • i18n Localization

    i18n Localization

    This PR is to show and discuss current efforts to support basic localization in pyfa.

    We will only support languages that the official EVE client supports (it would be weird to have Klingon in the UI but everything in the EVE database is English πŸ˜€)

    Feel free to contribute to this branch after brushing up on the latest comments to avoid duplication of effort.

    Couple of notes:

    • The translations themselves aren't a high priority due to the chance of source strings changing during development. This PR is focused on getting core support for translations in pyfa, and the translations can come later. That being said, we will of course accept PRs with translations, just know that they may need to be re-done as this codebase progresses.
    • At this time we're not looking to get full localization support (for example, 1,234 vs 1.234, date formats, etc). We're focused on GUI text translations. But again, if you know how to do proper localization for digits, etc, PRs are welcome!

    TODOs:

    • [x] Complete GUI annotations (_t("")) (~~also need to switch current _() to _t(), see https://github.com/pyfa-org/Pyfa/pull/2202#issuecomment-646968963 for details~~ DONE)
    • [x] Work out a way for accessing locale settings as soon as pyfa startup (needed for eos initialization)
    • [x] Set eos language based on user's saved preference
    • [x] Database translations. Need input from @DarkFenX on best way to do this since I've been in a hole for the past year and things have changed 😁
      • Phobos supports dumping translations with the data. We'll then need to load eos with the needed translation string and probably alias the translated properties in SQLAlchemy so that we automatically pull the correct column.
      • To expose the language to eos, we'll probably just write eos.config.lang = <lang> in pyfa.py once we get that info.
    • [x] GUI stuff to choose between translations
    • [ ] (maybe) First time start up to have the user choose language (and default to user's current language if supported)
    • [x] Some script for automatically generate *.mo and packaging translations. Unsure what we can do here that's cross-platform and not environment-bound. Open to suggestions (@zhaoweny suggests "I think pyfa should rely on shell script for this, because even Git for Windows has required msgfmt, and python's implementation msgfmt.py is hard to detect (e.g. a virtualenv might not have this)")
    • [x] Windows / Mac builds: run translations automatically for each build. I assume we would only want to maintain the uncompiled .po, and then have the build scripts deal with the compiled .mo. This means that folks running from source would have to compile them themselves if they want localization...
    • [ ] Ensure helper scripts still work

    Bugs:

    • [x] https://github.com/pyfa-org/Pyfa/pull/2202#issuecomment-647032997
    • [x] https://github.com/pyfa-org/Pyfa/pull/2202#issuecomment-663879122
    opened by blitzmann 83
  • Crash on opening fit / searching market

    Crash on opening fit / searching market

    Some folks are experiencing random crashes in Windows. If you're experiencing these issues, please post here and subscribe to the thread - I may have you try to test a few things.

    EDIT:

    • Crashes happen with the Citadel Pre Release. v1.20.1 is unaffected.

    WORKAROUND:

    • Running pyfa in administrator mode fixes the crashes according to some users. 0.o
    bug investigate workaround-available 
    opened by blitzmann 73
  • Mac build

    Mac build

    Hi. I'm a python developer on a mac. Might not be too helpful in developing out the whole shebang, but I'd be willing to help out with your build stuff. Let me know what I can do.

    macOS 
    opened by dangayle 50
  • App doesn't launch

    App doesn't launch

    After instalation, program doesn't respond. No errors or any warning shows up.

    image

    Bug Report

    Expected behavior:

    Actual behavior:

    Detailed steps to reproduce:

    Fits involved in EFT format (Edit > To Clipboard > EFT):

    Release or development git branch? Please note the release version or commit hash:

    Operating system and version (eg: Windows 10, OS X 10.9, OS X 10.11, Ubuntu 16.10):

    Other relevant information:

    bug 
    opened by qJackDodgersp 46
  • CREST Fitting Support

    CREST Fitting Support

    CCP FoxFour just release documentation on this today, see https://github.com/ccpgames/eveonline-third-party-documentation/commit/1ff6d7ac56c4b1c66b0e39155b502dfb7ec0336c

    This issue will keep track of current progress.


    • [x] Webserver support for gathering auth code. This will probably require rebuilding Windows and Mac skels
    • [ ] Fallback in case webserver is not viable due to user restrictions (unsure of mechanism here)
    • [x] Database support for CREST Characters, which will hold the refresh token
    • [x] Getting and displaying saved fittings from EVE server. This is done, and works in this way: Select the character and fetch characters. Tree displays. Select fitting, and the modules (and cargo/drones/whatever is attached to saved fitting) are loaded as pyfa Items and then passed into a Cargo wrapper (Cargo items display amount unlike Modules) and then displayed. This will work for the initial release, but will need to be iterated on. I want to make it look somewhat like the fitting view with the slots separated. This will take more work simply because that view assumes it's being attached to a fit and calculated with a character, which we don't want (or do we???). https://gyazo.com/6da86533ba59b09ce70ae873bccb583e
    • [x] Importing saved fits
    • [x] Exporting to CREST format - Done. This is somewhat of a pain as we need to know the invFlag for the module, which is different than what pyfa uses. I aim to make a simple converter between pyfa's internal position and the inf flag, but for now I've got a working thing.
    • [x] Sending fit to server

    Known issues: (as of 10/25/15)

    • [x] Very little testing has been done with regards on how to handle errors from CCP (such as too many fittings)
    • [x] Changing between the two modes does not work until pyfa is restarted -- menus need to know when the mode changes, as does the CREST service (so it may reload the settings).
    • [x] Changing clientID and clientSecret and trying to access CREST with refresh token bound to the old settings hangs the program. The solution here would be to simply delete all saved characters
    • [ ] [backend] CREST Characters are not cached at the database level for some reason. I have a stopgap in place to cache them at the service level, but this is not ideal. This shouldn't affect end-users either way.
    • [x] If internet connection is not available, CREST calls fail. Not sure of the best approach here. Maybe simply catch the exception when calling fetch / post / delete and display status message?
    • [ ] Need a message if response handling fails for some reason (bad state, incorrect info)
    • [x] After adding characters via User-defined mode, menu items are disabled until restart. (the CREST menus are generally buggy and not working well, fix all these)

    To-do's:

    • [x] Support DELETE of fitting
    • [x] force kill the server before starting again, just in case it's still running for whatever reason.
    • [ ] Possibly rework the response handling so that the "Done" message shown to the user only says that if everything actually worked. Maybe move the entirety of the response handle logic into AuthHandler
    • [ ] Work with pycrest's cache when adding / deleting fit so that we can at least keep an up-to-date copy on our end.
    • [ ] Merge the fit export with the clipboard export options
    • [ ] Possible search function for fit browser, and display currently selected fit and ship type above the module listing
    enhancement 
    opened by blitzmann 40
  • Cap/shield Simulation

    Cap/shield Simulation

    Use new module for cap/shield simulation.

    Things left to be done.

    • [x] Handle projected items on cap graph
    • [x] Graph pane doesn't refresh when switching views. ~Need to add that.~ No plans to fix as a larger issue.
    • [x] Switch cap stability numbers to new formula.

    You can get the cap graph to show properly by opening the graph window, switching to capacitor, then dragging and dropping your fit in.

    Blocked 
    opened by Ebag333 37
  • Reactive Armor Hardener resistance calculation incorrect

    Reactive Armor Hardener resistance calculation incorrect

    In pyfa the Reactive Armor Hardener always sets its resistance profile equal to the incoming damage profile. That's not how it works in game though. In game the RAH adjusts to match the ship's overall resistances to the incoming damage, rather than matching its own resistances. What this means is that when taking 50% EM and 50% Thermal damage in a ship with 80% EM resistance and 50% Thermal resistance, the RAH will converge on 0% EM and 60% Thermal, not 30% EM and 30% Thermal. Another example: when taking 25%/25%/25%/25% damage in a ship with resists of 60%/50%/40%/30% the RAH will converge on 0%/5.8%/21.5%/32.7%, not 25%/25%/25%/25%.

    There are certain case with one or two attackers doing mixed damage where the RAH will shift to 30%/30% or 20%/20%/20%, but it's not possible to figure out whether that will happen based solely on a damage profile, so that can be disregarded.

    I would fix the calculation and put in a pull request, but I'm not familiar enough with pyfa's codebase to make it work. The calculation would need to know the ship's resistances with the effects of all other modules except Damage Control, and I'm not sure how to get that.

    discussion 
    opened by MrNukealizer 37
  • (Linux) Memory Leak in 1.28.0

    (Linux) Memory Leak in 1.28.0

    The current version - 1.28.0 - seems top have a massive memory leak.

    The app won't start and after eating up roughly 8GB of RAM and 5GB of my swap drive I managed to finally kill the application.

    ~/downloads/pyfa-1.28.0-yc119.3-1.0-linux/pyfa $ python2.7 pyfa.py [2017-03-16 21:30:49.189095] WARNING: config: Failed to import: configforced [2017-03-16 21:30:49.327758] DEBUG: config: Configuring Pyfa [2017-03-16 21:30:49.503067] DEBUG: service.prefetch: Run database migration. [2017-03-16 21:30:49.507228] DEBUG: service.prefetch: Import Required Database Values. [2017-03-16 21:30:49.581644] DEBUG: service.prefetch: Starting database validation. [2017-03-16 21:30:49.581758] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for character skills. [2017-03-16 21:30:49.582639] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for orphaned characters attached to fits. [2017-03-16 21:30:49.583363] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for orphaned damage patterns attached to fits. [2017-03-16 21:30:49.584073] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for missing damage pattern names. [2017-03-16 21:30:49.584728] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for missing target resist names. [2017-03-16 21:30:49.585380] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for orphaned drones items. [2017-03-16 21:30:49.586140] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for orphaned cargo items. [2017-03-16 21:30:49.587061] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for orphaned fighters items. [2017-03-16 21:30:49.587753] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for orphaned modules items. [2017-03-16 21:30:49.589932] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for null damagePatterns values. (em) [2017-03-16 21:30:49.590614] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for null damagePatterns values. (thermal) [2017-03-16 21:30:49.591270] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for null damagePatterns values. (kinetic) [2017-03-16 21:30:49.591938] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for null damagePatterns values. (explosive) [2017-03-16 21:30:49.592603] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for null targetResists values. (em) [2017-03-16 21:30:49.593266] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for null targetResists values. (thermal) [2017-03-16 21:30:49.593911] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for null targetResists values. (kinetic) [2017-03-16 21:30:49.594568] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for null targetResists values. (explosive) [2017-03-16 21:30:49.595263] DEBUG: eos.db.saveddata.databaseRepair: Running database cleanup for duplicated selected ammo profiles. [2017-03-16 21:30:49.595918] DEBUG: service.prefetch: Completed database validation.

    At this point it eats up all memory

    killed

    bug fixed 
    opened by ppfeufer 35
  • Add abyss / invasion damage and resist profiles

    Add abyss / invasion damage and resist profiles

    According to russian forums, stats of these rats are now exposed to the client. Fuzzwork makes use of them: https://www.fuzzwork.co.uk/info/?typeid=52183

    Lists of ships might be available per group, at least for invasion NPC ships: https://zkillboard.com/group/4028/

    enhancement done 
    opened by DarkFenX 34
  • Proxy issues makes some feature crash

    Proxy issues makes some feature crash

    Bug Report

    I'm using pyfa on a corporation computer with proxy. When I try to open the SSO -> manage character I got the following error

    OS version: Windows-10-10.0.16299-SP0
    Python version: 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 17:54:52) [MSC v.1900 32 bit (Intel)]
    wxPython version: 4.0.0b2 (wxWidgets 3.0.4)
    SQLAlchemy version: 1.1.10
    Logbook version: 1.0.0
    Requests version: 2.18.4
    Dateutil version: 2.6.0
    
    ####################
    
    Traceback (most recent call last):
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\mainFrame.py", line 641, in ssoHandler
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\esiFittings.py", line 297, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\esiFittings.py", line 328, in popCharList
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esi.py", line 36, in getInstance
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esi.py", line 43, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esiAccess.py", line 88, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 289, in getProxySettingsInRequestsFormat
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 263, in getProxySettings
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 251, in autodetect
    ValueError: too many values to unpack (expected 2)
    
    ####################
    
    Traceback (most recent call last):
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\mainFrame.py", line 403, in showCharacterEditor
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 175, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 781, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 810, in ssoListChanged
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 814, in charChanged
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esi.py", line 36, in getInstance
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esi.py", line 43, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esiAccess.py", line 88, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 289, in getProxySettingsInRequestsFormat
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 263, in getProxySettings
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 251, in autodetect
    ValueError: too many values to unpack (expected 2)
    
    ####################
    
    Traceback (most recent call last):
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\mainFrame.py", line 459, in showPreferenceDialog
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\preferenceDialog.py", line 65, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\builtinPreferenceViews\pyfaNetworkPreferences.py", line 150, in populatePanel
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 251, in autodetect
    ValueError: too many values to unpack (expected 2)
    
    ####################
    
    Traceback (most recent call last):
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterSelection.py", line 177, in charChanged
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\mainFrame.py", line 403, in showCharacterEditor
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 175, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 781, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 810, in ssoListChanged
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 814, in charChanged
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esi.py", line 36, in getInstance
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esi.py", line 43, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esiAccess.py", line 88, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 289, in getProxySettingsInRequestsFormat
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 263, in getProxySettings
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 251, in autodetect
    ValueError: too many values to unpack (expected 2)
    
    ####################
    
    Traceback (most recent call last):
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\mainFrame.py", line 403, in showCharacterEditor
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 175, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 781, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 810, in ssoListChanged
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\characterEditor.py", line 814, in charChanged
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esi.py", line 36, in getInstance
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esi.py", line 43, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esiAccess.py", line 88, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 289, in getProxySettingsInRequestsFormat
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 263, in getProxySettings
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 251, in autodetect
    ValueError: too many values to unpack (expected 2)
    
    ####################
    
    Traceback (most recent call last):
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\mainFrame.py", line 641, in ssoHandler
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\esiFittings.py", line 297, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\gui\esiFittings.py", line 328, in popCharList
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esi.py", line 36, in getInstance
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esi.py", line 43, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\esiAccess.py", line 88, in __init__
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 289, in getProxySettingsInRequestsFormat
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 263, in getProxySettings
      File "C:\Users\holme\Documents\Sync\Git\blitzmann\Pyfa\service\settings.py", line 251, in autodetect
    ValueError: too many values to unpack (expected 2)
    

    It also happens with multiple other menu choices (windows/preference, window/character editor). It seems to be related to the system proxy detection as it crash the same if I disable local network interface and share my phone network over USB

    Expected behavior:

    Not being able to pull anything remotely is fine if proxy isn't working, I should however be able to access local feature, shouldn't I ?

    Actual behavior:

    A crash window pop when trying to use listed features

    image

    Detailed steps to reproduce:

    You may try pyfa behind a proxied windows 10, if that's not enough I can try to get as much information as I can

    Release or development git branch? Please note the release version or commit hash:

    Release 2.3.1 (Same issue on 2.4.0)

    Operating system and version (eg: Windows 10, OS X 10.9, OS X 10.11, Ubuntu 16.10):

    Windows 10 behind a corporate proxy

    bug fixed logged 
    opened by Slivo-fr 32
  • Decide on format for fit statistics that is copied to clipboard

    Decide on format for fit statistics that is copied to clipboard

    Task at hand

    Revisited pull request #1733 by @m-sasha, which allows to copy the fit stats to the clipboard. But we need to decide on format. @DarkFenX, @blitzmann and any people interested, could you take a look at it?

    Actual behaviour. Currently look like this:

    notepad++_2019-10-21_08-45-01

    Posting as a picture since GitHub somewhat breaks formatting if pasted as is. I'll post as plain text at the end of the issue

    Expected behaviour

    It seem decent to me, but perhaps too much into? Maybe have two options available? Like limit default info to dps numbers, total ehp, total active tank, speed. And have a second option "Expanded info" with all info that is in actual behavior? But won't it be to much rework since we don't know how often-used this feature will be?

    Paste of fit stats as is

    All reps (Hyperion)

    DPS: 700 (Weapon: 383, Drone: 317, Volley: 2509)

          TOTAL      EM   THERM     KIN     EXP
    

    EHP 75.5k 82.3k 75.7k 80.1k 73.7k Shield 14.8k 12% 30% 48% 56% Armor 34.3k 78% 72% 72% 61% Hull 26.4k 60% 60% 60% 60%

    REPS TOTAL SELF SUST REMOTE Shield 147 81.6 0 65 Armor 1.65k 1.59k 0 65.3 Hull 38.5 6.5 0 32 Total 1.84k 1.67k 0 162

    Speed: 144 m/s Signature: 1.21k m Capacitor: 9k GJ (Lasts 42s) Targeting range: 107 km Scan resolution: 138 mm Sensor strength: 27.6

    enhancement done 
    opened by Gochim 31
  • Linux/AppImage: Missing library opening on Fedora 37

    Linux/AppImage: Missing library opening on Fedora 37

    Bug Report

    Expected behavior:

    The AppImage opens.

    Actual behavior:

    Error message:

    yfa v2.49.0
    EVE Data Version: 2178459 (2022-12-11 00:27:31)
    
    OS version: Linux-6.0.15-300.rog.fc37.x86_64-x86_64-with-fedora-37-Thirty_Seven
    Python version: 3.7.16 (default, Dec 11 2022, 22:28:19) 
    [GCC 10.2.1 20210130 (Red Hat 10.2.1-11)]
    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
    
    ####################
    
    Traceback (most recent call last):
      File "/run/user/1000/.mount_pyfa-v8mhX2C/opt/pyfa/pyfa.py", line 148, in <module>
        from gui.mainFrame import MainFrame
      File "/run/user/1000/.mount_pyfa-v8mhX2C/opt/pyfa/gui/mainFrame.py", line 62, in <module>
        from gui.updateDialog import UpdateDialog
      File "/run/user/1000/.mount_pyfa-v8mhX2C/opt/pyfa/gui/updateDialog.py", line 25, in <module>
        import wx.html2
      File "/run/user/1000/.mount_pyfa-v8mhX2C/opt/python3.7/lib/python3.7/site-packages/wx/html2.py", line 15, in <module>
        from ._html2 import *
    ImportError: libwebkit2gtk-4.0.so.37: cannot open shared object file: No such file or directory
    

    Detailed steps to reproduce:

    1. Install Fedora 37
    2. Try to run the AppImage

    Fits involved in EFT format (Edit > To Clipboard > EFT):

    Release or development git branch? Please note the release version or commit hash:

    Release

    Operating system and version (eg: Windows 10, OS X 10.9, OS X 10.11, Ubuntu 16.10):

    Fedora 37

    Other relevant information:

    At first I thought the libwebkit2gtk library might be in the excludelist, but I can't see it in the code either here or in https://github.com/AppImageCommunity/pkg2appimage/blob/master/excludelist . So I guess this must be some packaging issue where it should be including the library but isn't. I am not familiar with AppImage packaging so opening issue.

    opened by updraft0 1
  • Issue upon Opening the program

    Issue upon Opening the program

    Bug Report

    I keep getting this error whenever I open the pyfa

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

    OS version: Windows-10-10.0.19041-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

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

    Traceback (most recent call last): File "pyfa.py", line 148, in File "C:\Python37-x64\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module File "gui\mainFrame.py", line 40, in File "C:\Python37-x64\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module File "graphs_init_.py", line 22, in File "C:\Python37-x64\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module File "graphs\gui\frame.py", line 25, in File "C:\Python37-x64\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module File "gui\display.py", line 23, in File "C:\Python37-x64\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module File "gui\viewColumn.py", line 71, in File "C:\Python37-x64\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module File "gui\builtinViewColumns\baseName.py", line 35, in File "C:\Python37-x64\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module File "gui\builtinContextMenus_init_.py", line 20, in File "C:\Python37-x64\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module File "gui\builtinContextMenus\itemStats.py", line 7, in File "C:\Python37-x64\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module File "gui\itemStats.py", line 33, in File "C:\Python37-x64\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module File "gui\builtinItemStatsViews\itemDescription.py", line 4, in File "C:\Python37-x64\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module File "site-packages\wx\html.py", line 18, in ModuleNotFoundError: No module named 'wx._html'

    Expected behavior:

    Opening the program

    Actual behavior:

    No unusual behavior aside from getting the error

    Detailed steps to reproduce:

    Just opening the program

    Fits involved in EFT format (Edit > To Clipboard > EFT):

    No EFT involvement

    Release or development git branch? Please note the release version or commit hash:

    Latest release

    Operating system and version (eg: Windows 10, OS X 10.9, OS X 10.11, Ubuntu 16.10):

    Windows 10

    Other relevant information:

    N/A

    opened by MarcoPalayad 0
  • Bug report

    Bug report

    Bug Report

    File "service\server.py", line 29, in do_GET File "service\esi.py", line 172, in handleServerLogin File "service\esi.py", line 138, in handleLogin File "service\esiAccess.py", line 175, in auth File "service\esiAccess.py", line 203, in token_call File "site-packages\requests\sessions.py", line 635, in post File "site-packages\requests\sessions.py", line 587, in request File "site-packages\requests\sessions.py", line 701, in send File "site-packages\requests\adapters.py", line 559, in send

    Expected behavior:

    import charactor via ESI

    Actual behavior:

    After pyfa processing, then error show up

    Detailed steps to reproduce:

    Fits involved in EFT format (Edit > To Clipboard > EFT):

    Release or development git branch? Please note the release version or commit hash:

    Operating system and version (eg: Windows 10, OS X 10.9, OS X 10.11, Ubuntu 16.10):

    Other relevant information:

    opened by slszmgl 0
  • I keep getting this message when I try to close the program.

    I keep getting this message when I try to close the program.

    Bug Report

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

    OS version: Windows-10-10.0.22621-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

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

    Traceback (most recent call last): File "gui\mainFrame.py", line 396, in OnClose File "service\settings.py", line 86, in saveAll File "service\settings.py", line 105, in save PermissionError: [Errno 13] Permission denied: 'C:\Users\scott\.pyfa\settings\pyfaEOSSettings'

    Expected behavior:

    Application should close

    Actual behavior:

    Doesn't close. I have to kill the app with task manager.

    Detailed steps to reproduce:

    Fits involved in EFT format (Edit > To Clipboard > EFT):

    Release or development git branch? Please note the release version or commit hash:

    Operating system and version (eg: Windows 10, OS X 10.9, OS X 10.11, Ubuntu 16.10):

    Other relevant information:

    opened by selittle64 0
  • XML Import Error?

    XML Import Error?

    image

    I have uploaded your XML export (Ctrl+S) onto Eve-HR and this is what it spat out, then saying that no pilots can use the fitting in corp - there are 8 pilots that can use the fitting.

    I already reached out to Ascorbic, but just in case it's an exporting error, I thought I should also leave a note here :)

    Thanks for continuing a great product.

    opened by THETGURU 0
Releases(v2.49.0)
Quiz Game: answering questions naturally with a friendly UI to enjoy the game

About Quiz Game : The Game is about answering questions naturally with a friendl

4 Jan 19, 2022
Termordle - a terminal based wordle clone in python

Termordle - a terminal based wordle clone in python

2 Feb 08, 2022
Graphical impimetaion of Conway's Game of Life in Python using pyglet

Conway's Game of Life in Python Konstantin Opora Conway's Game of Life: graphical implementation in python using pyglet. developed in Python 3.10.0 Re

Konstantin Opora 1 Nov 30, 2021
MinMax Algo , Python

Write a PYTHON program to play the game of TIC-TAC-TOE on a 3Γ—3 board with alternate inputs from user and computer.

Naman Anand 1 Nov 26, 2021
An algorithm to reach a correlated equilibrium in multiplayer games.

Correlatedpy: a python library for distributed learning of correlated equilibrium in multiplayer strategic games. View Demo Β· Report Bug Β· Request Fea

Omar Boufous 2 Feb 01, 2022
BritishTrainsDepartureBoard - A pygame program that immitates the dot matrix departure screens found at National Rail stations

BritishTrainsDepartureBoard - A pygame program that immitates the dot matrix departure screens found at National Rail stations

Finn O'Neill 3 Aug 10, 2022
Atari2600 Training / Evaluation with RLlib

Training Atari2600 by Reinforcement Learning Train Atari2600 and check how it works! How to Setup You can setup packages on your local env. $ make set

Jinwoo Park (Curt) 1 Dec 12, 2021
Deliver buycraft orders to players across the map in minecraft servers using baritone

Deliver buycraft orders to players across the map in minecraft servers using baritone

synthels 1 Nov 14, 2021
View your VALORANT performance in different areas of every map in the game!

Valorant-Zone-Stats Inspired by Leetify's awesome Map Zones Tool for CS:GO A simple desktop program to view your VALORANT performance in different are

Louis 76 Jan 01, 2023
Game using Python

🎑 Rock-Paper_Scissor Game Using Python Beginner Friendly Easy to use β™Ÿ Want to Play this? Clone this repository Open in any IDE(for eg. VS Code, PyCh

Akash Kumar 1 Oct 17, 2021
A converter for the .BMR / .RLE bitmap files used in some Neversoft PS1 games.

Requirements python3 pyqt5 - can be installed with pip install PyQt5 pypng - Included Usage Instructions This program can be running py main.py in the

4 Jul 30, 2022
EL JUEGO DEL GUSANITO

EL JUEGO DEL GUSANITO El juego consiste en una lΓ­nea que no para de moverse, el usuario lo controla con las flechas de: β†’ derecha ← izquierda ↑ arriba

Valeria Saidid Miranda Ibarra 0 Dec 19, 2021
This is simple minesweeper-like Telegram game

This is simple minesweeper-like Telegram game. You need to open all "free" squares and put flags on squares with bombs on them. If you open a cell with a bomb, the game is over.

Aleksandr 32 Dec 31, 2022
:tada: 2048 in your terminal

term2048 term2048 is a terminal-based version of 2048. Install pip install term2048 To upgrade a previous installation, use: pip install -U term2048

Baptiste Fontaine 798 Nov 21, 2022
This is a repository created to run a workshop on Game Theory using the programming language Python and more specifically an open-source software called the Axelrod Python library

Game-Theory-and-Python This is a repository created to run a workshop on Game Theory using the programming language Python and more specifically an op

Nikoleta Glynatsi 136 Dec 01, 2022
Dueling Platform for Competitive Programming. Learn through Games.

CP-Dueling Dueling Platform for Competitive Programming. Learn through Games. Setting Up Minimum Python version needed = 3.9.9 Install Virtualenv and

Bhavesh 3 Feb 07, 2022
Simple program to play Metamon automatically

Getting Started Radio Caca Important disclaimer This software is intended for use by individuals familiar with Python programming language. It uses se

Metamon Island 35 Dec 28, 2022
A bot that deletes any embeds sent by a tropical webhook containing hex #000000 rancher's boots

tropical-webhook-cleanup how to use download the source code as zip get your discord bot token from https://discord.com/developers/applications put yo

carreb 0 Nov 25, 2022
Vac-Man in Python

Vac-Man in Python This is my personal version of Vax-man game using python, which is the first assignment of EA Software Engineering Virtual Experienc

ZiXiang Luo 3 Jan 05, 2022
A simple python script to pregenerate minecraft worlds.

mcloady mcloady is a lightweight python script used to pre-generate Minecraft terrain using MCRcon and carpet mod (optional). Inspired by Pre-Generati

5 Dec 08, 2021