Essential Base. So this is partly understanding how present calculation operates alongside with 'what's the minimum we can do to achieve the goal'
I'm unsure of 'what all needs to be changed', these are the location of importance. e.g. will the game allow IV stat of 36 if we don't change IV STAT LIMIT beyond 31? probably? If no, then also change IV_STAT_LIMIT, but also need to change regular default " @iv
= rand(IV_STAT_LIMIT+1) " to @iv = rand(IV_STAT_LIMIT-4)" and assign default to the .shiny pkmn.
There are two lines of shiny? one within wild encounter, one within egg hatching.
You're looking to implement this 'logic', but not this line specifically.
@iv = rand(IV_STAT_LIMIT+6)
Code:
if shinyretries>0
shinyretries.times do
break if egg.shiny?
egg.personalID = rand(65536)|(rand(65536)<<16)
end
if egg.shiny? #c.edit add in two lines of new codes here
pkmn.iv[s] = rand(IV_STAT_LIMIT+6) #something like this.
end
# Give Pokérus
if rand(65536)<POKERUS_CHANCE
genwildpoke.givePokerus
end
belows are essentials code as they are, use these to search for place of edits.
Code:
IV_STAT_LIMIT = 31 # Max total IVs
Code:
PBStats.eachStat do |s|
@iv[s] = rand(IV_STAT_LIMIT+1)
@ev[s] = 0
I think you got it from here. Try some stuff. Probably easiest way to check if it's working is giving yourself PKMN and see if it's still limit at IV 31
Then put "always shiny = on" then try again, if some stats > 31 . ya done good.
After that, then you'd do the same code to eggs, and then check eggs real quick.