collin-li / pokemon-go-iv-calculator

This is a Pokemon GO IV calculator and results tracker developed in a MS Excel/VBA environment
MIT License
17 stars 5 forks source link

Appraisal Logic #1

Closed collin-li closed 7 years ago

collin-li commented 7 years ago

The algorithm currently does not comprehensively eliminate IV permutations where a non-Best stat is greater than or equal to a Best stat.

Currently, it is using the following logic upfront to set bounds on the possible IV combinations:

    If Not AppraisalBest = "" Then
        amaxHP = amaxIV - 1
        amaxAtk = amaxIV - 1
        amaxDef = amaxIV - 1
    End If

However, if the best IV is "B", which could be 13 or 14, this will only prevent non-Best IVs from being 14 and not 13, if the Best IV(s) turn out to be 13. For example, an appraised Pokemon with a best HP IV of 13 should have Atk < 13 and Def < 13. But this is not currently kept track of in the check conditions.

collin-li commented 7 years ago

This has been fixed in this commit: https://github.com/collin-li/pokemon-go-iv-calculator/commit/5a3b158aa48cb91294a14ba12e9d205ee49e4ac8

collin-li commented 7 years ago

There was another logic flaw where it forgot to enforce same IV values if the Appraisal system said they were all best - this is fixed in this commit: https://github.com/collin-li/pokemon-go-iv-calculator/commit/0deebc2214bfa20257efcfab78a3c200493fd13e