These forums have been archived and are now read-only.

The new forums are live and can be found at https://forums.eveonline.com/

Ships & Modules

 
  • Topic is locked indefinitely.
 

pyfa v1.29.4 - The Python Fitting Assistant

Author
C-137
C3 Corporation
#181 - 2016-06-27 07:01:51 UTC  |  Edited by: C-137
So a few days ago I noticed that EFT seemed to be showing wrong numbers for applied DPS. At least according to the EVEuni wiki info, which CCP has quoted as correct recently. So I made a quick spreadsheet to test damage application, and EFT was overestimating by 15%. I thought I should check PYFA as well, and it was showing the same thing.

So, the question then is, am I wrong, or are both EFT and PYFA wrong?

(Large Images)
PFYA Graph
EFT Graph


Excel Sheet - Added Pyfa Implementation for reference, updated for error fix.

Ok, so a quick look on the pyfa code shows:
multiplier = (chanceToHit ** 2 + chanceToHit + 0.0499) / 2

My implementation is:
multiplier = (chanceToHit - 0.01) * [ (0.50 + chanceToHit + 0.49) / 2 ]


So at 100% hit, pyfa shows 102.495% while I (and EvEuni) show 101.505%.

This should be 1% * 300% plus 99% * AverageHitDamage%
Where AverageHitDamage% is (LowHit% + HighHit%)/2
LowHit is 50% always
HighHit is 50% to 149% depending on accuracy
HighHit thus = 0...0.99 + 0.5 or chanceToHit + 0.5 (it is not 0-1 since that is a 'crit')

This makes:
AverageHitDamage% = (0.50 + chanceToHit + 0.49) / 2


The 0.49 is a 49% damage bonus for maximum hit quality, the 0.50 is the 50% minimum damage%.
And if we go back to the 100% hit% from above, 99% is the chance to hit that remains from non-crit hits. Or rather:

Average Crit = chanceToCrit * CritDamage%
Average Crit = 1% * 300%
Average Hit = (chanceToHit - chanceToCrit) * (AverageHitDamage%)
Average Hit = (chanceToHit - 0.01) * ( (0.50 + chanceToHit + 0.49) / 2 )
Average Damage = Avg.Crit + Avg.Hit
Avg,Dmg = 3% + (chanceToHit - 1%) * (AverageHit)

Average Damage is a modifier, so you can apply it where you want.

AverageDPS = ShipDPS * ( 0.03 + ( ( chanceToHit - 0.01 ) * ( ( chanceToHit + 0.50 + 0.49 ) / 2 ) )


Well the story deepens, as I am still getting a discrepancy...
So I get the same values for Hit%, Angular Velocity, etc. I suspect PYFA is doing something with the SigRadius.
In addition to all the above (PYFA damage% error), there is an error with skills affecting things they should not. (Either TargetSig or the 40,000 base W.A.S target size) See picture for Lv0 skills test showing PFYA under-estimating applied dps EFT has the same issue as well. (EFT numbers are slightly different because it enforces min-skill levels)


There was an error in another part of my sheet, but the above issue is still present in PYFA and EFT, the difference is only about 1% though. Interesting that it seems both EFT and PYFA have the same error. The red/blue bars in the sheet show the relative difference.
Jezza McWaffle
Lazerhawks
L A Z E R H A W K S
#182 - 2016-06-28 12:37:18 UTC  |  Edited by: Jezza McWaffle
Unless I already missed this I noticed in the latest build that EWAR resistances have been 'fixed' on capitals, however this does not work on my end. The same lock ranges, scan res, tracking etc shows on the previous and new build.

Tried doing a completely new install and nothing changes, which caps did you test the ewar resistances on?

Wormholes worst badass | Checkout my Wormhole blog

Shalashaska Adam
Snakes and Lasers
#183 - 2016-07-01 14:15:06 UTC
Is there an ETA for the June release?
Sable Blitzmann
24th Imperial Crusade
Amarr Empire
#184 - 2016-07-01 20:27:19 UTC
Jezza McWaffle wrote:
Unless I already missed this I noticed in the latest build that EWAR resistances have been 'fixed' on capitals, however this does not work on my end. The same lock ranges, scan res, tracking etc shows on the previous and new build.

Tried doing a completely new install and nothing changes, which caps did you test the ewar resistances on?


Give me more specific information. The fit that you are using, and the fit / modules you are projecting, the expected vs actual values...

@C-137: That's too much math and numbers for me to look at right now, but I'll take a look when I can and see if I can see anything wonky. =)

June release should be coming out tonight sometime
Shalashaska Adam
Snakes and Lasers
#185 - 2016-07-01 23:43:18 UTC
Sable Blitzmann wrote:

June release should be coming out tonight sometime


Splendid.
Sable Blitzmann
24th Imperial Crusade
Amarr Empire
#186 - 2016-07-02 02:46:17 UTC
Jezza McWaffle
Lazerhawks
L A Z E R H A W K S
#187 - 2016-07-02 08:36:10 UTC
Sable Blitzmann wrote:
Jezza McWaffle wrote:
Unless I already missed this I noticed in the latest build that EWAR resistances have been 'fixed' on capitals, however this does not work on my end. The same lock ranges, scan res, tracking etc shows on the previous and new build.

Tried doing a completely new install and nothing changes, which caps did you test the ewar resistances on?


Give me more specific information. The fit that you are using, and the fit / modules you are projecting, the expected vs actual values...


I wasn't using any specific fit, just grabbing any of the FAX's for example and sticking a T2 triage on their, now without any links or anything Pyfa says default lock range on the Lif with Triage is 125km, which is accurate.

If I apply 1 T2 remote sensor damp range scri[ted Pyfa says I should get 86km lock range, and 63 with 2 on it. If I apply this in game I get 113 and 104km lock range respectively.

I have the same issue with remote sensor boosters as well.

If you would prefer I'll post this issue on Github rather than here.

Wormholes worst badass | Checkout my Wormhole blog

Elise Hridmar
Exiled Ronin.
#188 - 2016-07-03 15:58:55 UTC  |  Edited by: Elise Hridmar
Adding the new Asklepian implants to any fit currently doesn't change anything about it's armor rep amount. But also checking it's "effect" tab while it's added to a ship fit none of the effects are checked for actually being implemented.
Is this just because it's effects are still fairly new? ( http://i.imgur.com/NTq4oBE.png )

here is a legion fit with two medium armor reps with the mid-grade implants on: http://i.imgur.com/4tMD2Rh.png

and here is the same legion with the implants turned off: http://i.imgur.com/bJ0KKeK.png

the armor reps are the same on both fits. this happens for all sets of Asklepian implants.

I post this then see that someone has already posted this issue on the Github page. GG

EDIT: I noticed you did post a 'fix' on the issue page. how would i add that to my current version of Pyfa?
Soel Reit
The Scope
Gallente Federation
#189 - 2016-07-08 11:04:56 UTC
lock range of carriers:
as soon as i open a carrier fit is the right one. when i click any module/change fit, it goes back to 300 km.
Attention
Okee Fenokee
Spontaneous Massive Existence Failure
#190 - 2016-07-08 11:15:59 UTC
Apologies if this is not the right place to ask, but I did not find a solution on The Internet(TM) and I suspect human error on my end so I did not want to open an issue on GitHub right away.

Launching Pyfa results in "TypeError: defPaths() takes no arguments (1 given)" in pyfa__main__.py (for the detailed message see screenshot). Am I correct to assume that the Pyfa EXE Installer for Windows includes all necessary libraries? Looking at the installation directory, this appears to be the case. What am I doing wrong?

Platform: Windows 10 Pro (64 bit)
Old Pervert
Perkone
Caldari State
#191 - 2016-07-08 20:16:23 UTC
Feature Request: Outgoing Damage Profile
Sometimes it's not clear-cut (without doing the math) what your damage output profile is. For example, a rattlesnake. What percentage of your damage goes into each type?

I envision it visually exactly as the incoming damage profile, 4 percentage bars in the firepower panel.

Bug Report: Reactive Armor Hardener -- Resistance Phasing skill
When I have my own character selected (who does not have the skill injected) and right-click on the module to go into the module skills, there is only one skill listed: Thermodynamics. When I select the All 5 character and right-click on the menu into the module skills, Resistance Phasing shows up.
Sable Blitzmann
24th Imperial Crusade
Amarr Empire
#192 - 2016-07-11 04:15:09 UTC
Okee Fenokee wrote:
Apologies if this is not the right place to ask, but I did not find a solution on The Internet(TM) and I suspect human error on my end so I did not want to open an issue on GitHub right away.

Launching Pyfa results in "TypeError: defPaths() takes no arguments (1 given)" in pyfa__main__.py (for the detailed message see screenshot). Am I correct to assume that the Pyfa EXE Installer for Windows includes all necessary libraries? Looking at the installation directory, this appears to be the case. What am I doing wrong?

Platform: Windows 10 Pro (64 bit)


I've seen these types of errors happen if you recently upgraded from a very old version. I would completely delete the pyfa folder and try to download the latest version again (I recommend the .exe installer over the zip archive, as the .exe installer will do some file cleanups if needed during upgrades)
Tauza
Royal Amarr Institute
Amarr Empire
#193 - 2016-07-11 17:01:18 UTC
Is there any plans to add citadels? Since they fit like ships I would think that they, and the future structures would be something that everyone would be interested in.
Okee Fenokee
Spontaneous Massive Existence Failure
#194 - 2016-07-12 18:05:36 UTC
Sable Blitzmann wrote:
I would completely delete the pyfa folder and try to download the latest version again

Uninstalled Pyfa, manually deleted the remaining folder and contents, re-installed, and now I can launch Pyfa without problems. Thank you!
K950
Get Fing Rekt Son
Monsters Reborn
#195 - 2016-07-12 21:37:20 UTC
I'm liking some of the recent changes...compare thing built into the module stats, drag & drop replace modules...

=/
=\

Good work.

3 standing requests still:

> All Level 3 character, All Level 4 character (it's a huge PIA to make the plan in EVEMon. I started twice, aborted twice...massive PIA)
> Capacitor values (+values) next to the module, in the same way that there are minus values for items like armor reppers, hybrid guns, hardeners, sensor boosters, etc. Some + value from a cap battery or cap recharger or CCC would help me recognize how much benefit I'm getting from that module
> A Notes panel underneath the fit like EFT does where I can drop notes on the item; what this fit is for, how to use it, strengths, weaknesses, other chatter.

Nice work on the program.
Magicmix
Viziam
Amarr Empire
#196 - 2016-07-15 13:56:55 UTC
Any advice on how to get the skills to read correctly? Ive tried 2 API keys and neither read the correct information.

IE currently I have caldarri drone spec level 4 but pyfa only reads level 1.
Okee Fenokee
Spontaneous Massive Existence Failure
#197 - 2016-07-15 18:57:01 UTC  |  Edited by: Okee Fenokee
Is there any way to delete old fittings (e.g. "delete all fittings that have not been modified for X days") other than deleting saveddata.db as a whole? I don't want to lose my settings and fresh fittings, just get rid of pre-tiericide stuff as painlessly as possible.
Alyx Finley
Online Trade Association Holdings
#198 - 2016-07-22 07:11:38 UTC  |  Edited by: Alyx Finley
How do install YC 118.6 - v1.22.2 over a previous version? For the life of me, can't get it to work after download the folder from https://github.com/pyfa-org/Pyfa/tree/v1.22.2. Using Windows 10. Can't find an EXE installer file at https://github.com/pyfa-org/Pyfa/releases/tag/v1.22.2

Thanks.
Sable Blitzmann
24th Imperial Crusade
Amarr Empire
#199 - 2016-07-24 05:41:23 UTC
All,

Real life has reared it's ugly head and I'll be extremely busy for the next few weeks, which means I'll be a bit slower with development / checking the thread. In the mean time, if you have ideas / bug reports, please remember to post on the github issues page noted in the first post of this topic. I tend to check it much more frequently ;)

Alyx Finley wrote:
How do install YC 118.6 - v1.22.2 over a previous version? For the life of me, can't get it to work after download the folder from https://github.com/pyfa-org/Pyfa/tree/v1.22.2. Using Windows 10. Can't find an EXE installer file at https://github.com/pyfa-org/Pyfa/releases/tag/v1.22.2

Thanks.

Scroll all the way to the bottom, there should be a pyfa-1.22.2-yc_118.6-1.0-win.exe link. use that to install.

Okee Fenokee wrote:
Is there any way to delete old fittings (e.g. "delete all fittings that have not been modified for X days") other than deleting saveddata.db as a whole? I don't want to lose my settings and fresh fittings, just get rid of pre-tiericide stuff as painlessly as possible.


Unfortunately not. We don't track modified date, only created date. I know it sucks, especially for the past 2-3 years now that CCP is doing balance passes every update and nullifying old fits. =/
Sable Blitzmann
24th Imperial Crusade
Amarr Empire
#200 - 2016-07-24 05:42:57 UTC
Magicmix wrote:
Any advice on how to get the skills to read correctly? Ive tried 2 API keys and neither read the correct information.

IE currently I have caldarri drone spec level 4 but pyfa only reads level 1.


Please contact me through email (check README) with API key details so i can take a look. it reads fine for me, make sure that you are updating the information on a regular basis (click the refresh icon next to the character)