Unlucky-Life / ankimon

Ankimon is a Anki Addon to Gamify your learning experience
Other
38 stars 4 forks source link

Unbalanced Frequency of Pokemon Appearances #77

Closed sunrucong closed 2 months ago

sunrucong commented 2 months ago

Hey @Unlucky-Life!

Just wanted to make a mention about how there seems to be an uneven frequency of certain Pokemon appearing above others. I have every generation set to "true" to appear, but there are certain Pokemon several generations that seem to show up much, much more frequent than others, to the point where I can expect them to show up haha.

Some examples are Tyrogue, Riolu, Cleffa, and pretty much all of the Ultra Beasts besides Necrozma (especially Pheromosa and Buzzswole). I have also seen Legendaries show up more frequently than regular Pokemon - I have seen and caught 2 Rayquaza and Mewtwo already among other Legendaries before seeing a majority of the other Pokemon.

While some other Pokemon will show up from time to time, I was wondering if there might be a reason I am only being shown certain Pokemon? I do choose to defeat a lot of certain Pokemon without catching them with and without the battle UI window open, so I thought the add-on might be showing the same ones over and over to help me catch them, but even when I caught a Riolu it's still the most frequently appearing Pokemon.

I just wanted to make a mention of it, appreciating your help thus far!

Unlucky-Life commented 2 months ago

@sunrucong Hey thanks for the notice ! Have you reset (opened or closed your anki yet ?)

Here is an explanation of how the tier of pokemon are picked: Hm that sounds weird with the same 3 pokemons but this is due to multiple things: the pokemon you encounter are based off of how many cards you are doing in that review session. Meaning: at a card counter smaller than 80 => normal pokemon appear at a card counter between 80 - 100 => baby pokemon and normal pokemon appear (the chance of a baby pokemon appearing is 2 out of 7 ~ 26%; for the next update i think i will reduce this to 1 out of 7 ~ 13% at a card counter between 80 - 130 => Ultra, baby and normal pokemon can appear at a card count between 130 - 180 => legendary, ultra, baby and normal pokemon can appear at a card count of later than 180 => mythical, legendary, ultra, baby and normal pokemon can appear -- These randomly generated pokemon tiers are based chance => propably the error is in my code that the chance right now of baby pokemon appearing is a little to high to normal pokemon --- the amount of baby pokemon to normal pokemon is also an issue here. => aswell as the following: pokemon can only be generated if their evolution level is greater than their randomly generated level. Meaning => a metapod will only appear at level 7 or greater

The idea behind this is to keep the chance of getting strong pokemon / legendary etc. at a low, so you wont be able to receive them that fast. => This had been an issue in the first version of Ankimon

Unlucky-Life commented 2 months ago

@sunrucong i believe the issue could be that there are just way more regular pokemon than legendaries etc.

So basically the chances are like 1/8 at +130 cards seen that you will see a legendary (where there are based on generation only like 10 - 20)

But im open to rethink this logic, because its not quite the best just as of yet

sunrucong commented 2 months ago

Thanks for getting back to me on this!

When you say "card counter" and "number of cards done during a review session", is that total within a day across all decks? And if not and it's just within a single deck, does it keep track when I exit that review session like going to the deck overview page with the "D" key or just back to the study overview screen with the "S" key?

I also haven't been seeing any gen 9 Pokemon just fyi!

So basically the chances are like 1/8 at +130 cards seen that you will see a legendary (where there are based on generation only like 10 - 20)

Does this mean when the add-on chooses a Pokemon to show, it first chooses the generation, then the type of Pokemon (baby vs. regular vs legendary vs. ultra vs. mythical etc.), then a random Pokemon from within that subset? That would make sense with my experience I think, but yeah I'm also trying to think through the logic b/c of how many Legendaries/Mythicals/Ultras I'm seeing

Oh and fwiw yes I have closed and restarted my Anki!