>>98428820In Pokemon, whether it's a shiny or not is determined every by shiny frames, which happen every 1/8192 frames. If you fight a Pokemon on a shiny frame, it's shiny, but which frames are special is determined by the seed which is randomly generated at startup. Except in Emerald's case, the seed is always the same after a soft reset due to a bug. This isn't even a problem in Ruby or Sapphire, only Emerald has this glitch.