@Wichu, from when I did my
headbutt RNG the shroomish always appeared with the same encounter slot set.
Last night
musicmeister and I tested shaking patches and the encounter slots for them to get a
shiny Emonga. Slots are not like fishing, surfing, or wilds. Probably like headbutts :)
==
5th Gen Breeding Compendium
Code:
Frame 0 n-1 Initial Seed [Start]
Frame 1 n IVs From MTRNG Grabbed
--- if Nidoran/Illumise/Volbeat, a frame is skipped (taking n+1 and shifting everything else +1)
Frame 2 n+1 Species (r[n+1] * 2) >>32
Frame 3 n+2 Nature (r[n+2]*0x19) >>32, nature value
--- if Everstone, becomes Frame 4 (r[n+3] * 2) >>32 0 or 1; and all calls are shifted +1
Frame 4 n+3 DW (r[n+3] * 5) >>32 > 1, inherit DW
--- if Ditto parent, becomes Frame 5 [n+4] and all calls are shifted +1. Not sure what is done here.
Frame 5 n+4 m IV1-Place r[m]*6>>64, return 0-5 for what IV (HABCDS)
Frame 6 n+5 m+1 IV1-Parent r[m+1]>>63, return 0/1 for what parent (A=1, B=0)
Frame 7 n+6+2r m+2 IV2-Place r[m+2]*6>>64, return 0-5 for what IV (HABCDS) ...r=rejected frames for 2nd iteration, each rejection is +1 to r value
Frame 8 n+7+2r m+3 IV2-Parent r[m+3]>>64, return 0/1 for what parent (A=1, B=0)
Frame 9 n+8+2r+2s m+4 IV3-Place r[m+4]*6>>63, return 0-5 for what IV (HABCDS) ...s=rejected frames for 3rd iteration, each rejection is +1 to s value
Frame 10 n+9+2r+2s m+5 IV3-Parent r[m+5]>>64, return 0/1 for what parent (A=1, B=0)
Frame 11 n+10+2r+2s PID Generated r[n+10+2r+2s] *FFFFFFFF >>32 = PID
Frame 12 n+11+2r+2s International PID Sequence (if PID = notshiny; PID=seed*FFFFFFFF) 5 times [End]
*** Run 5 times if international, else it is a fake calc that has no influence.
For >>32, assume using upper32
For >>6*, assume using full seed
"Rejected": 0-5 value calculated matches one from a previous iteration.
Discard and repeat calc until it does not match a previous 0-5, thus advancing 2 frames.
lol normal breeding done, with(out) everstone. Working in PIDRNG
No everstone, not international. Everstone has yet to be tested.
Code:
--
Nature calculated
DW passing calculated right after
--
Then IVs: Calculates IV, then Parent
Repeat until 3 different IVs are inherited, same IV results are discarded
Then the PID
Inheritance: 0-5 for positioning, [0/1/2/3/4/5]=[HP/At/De/SA/SD/Sp]
Parent M = 0
Parent F = 1
Code:
Nature: same way as every other method
r[DW] = SEED>>32 *0x64 >>32; if > 40, pass DW
frame skipping: dependent on the IV calculations
r[i] = SEED>>32 *6 >> 32
Determines what IV inherited (0-5)
r[i+1] = SEED>>32 >> 31
Determines what parent passes IV (0 or 1)
If IV = a previous iteration result, repeat step.
Loop back to r[i] until 3 different IVs are inherited.
PID is still SEED >>32 *FFFFFFFF >>32
Illustration test, carried out by xElite and translated from code by Kaphotics and Bond697

For the last test pic, the first (3,1) is the one used, not the last one.
Also, the first one saying >2 for the Hidden Ability calc should be >1