VC SRing Observations

I wasn't aware of this but from my testing it appears resetting through the touch screen is a hard reset and resetting with A B START SELECT is a soft reset. Is this common knowledge? It was killing me that I kept getting duplicate TIDs, and I knew the seed only gets reset on cart and emulator versions with a full hard reset. So I switched over to the button reset and voila, no dupes after 100 input-buffered attempts.

So what could this mean for people SRing for shinies with the touch screen? It depends. If the Pokemon is a stationary where the DV spread is generated with minimal margin for entropy, you may unknowingly be hitting a few duplicate spreads, especially if you're buffering A through the intro screens. But even mashing can cause duplicate code branching. This applies to Gen 2. If you're on Gen 1 there is too much margin for entropy to affect the average player who isn't using multiple input buffering techniques.

The upside is this could mean Gen 2 time-based single entry frame RNG is a little more convenient to pull off, assuming you match your hardware to a generated list of TIDs or DV spreads.

Update: Just got a dupe after 121 resets. Could be coincidence. At the very least the button reset somehow causes tons of RNG branching. Would welcome any additional testing!

Update 2: Another dupe at 201 resets (different value).

Update 3: 300 resets, 2 dupes. Big improvement over 20 resets 17 dupes from touch screen resetting. Will test this with DV spreads next time I have the chance. For now I would encourage anyone still SRing on the VC to use the button method, no matter how ridiculously uncomfortable it is....

Update 4: 500 more buffered resets, 2 dupes. So a total of 4 different duplicates in 800 resets, which is consistent with normal SR odds. This concludes my testing as far as TIDs go.
 
Last edited:
The game's code means it couldn't be any other way. There's code in the original game that's along the lines of "if A+B+Start+Select are all pressed, take the game back to the start-up screen (and nothing more, which means internal state like the RNG isn't touched)". This is the effect of a soft reset. Then there's an external hardware switch (the original power button) that has almost nothing to do with the game code, that physically halts the game which forces everything like internal state to reset. When making an emulator like VC, it's way easier to add code to the emulator that says the touch screen behaves like a hard reset (code for the emulator can be written in whatever modern language the developer desires), than it is to hook up the touch screen to the ancient code of the original game, and try to say "when the touch screen is pressed, somehow this ancient code that's never heard of a touch screen has to understand this, then it can do its thing and take the game back to the start-up screen".

Edit: Hooking up a "never-before-seen interface (the touch screen)" to the ancient game code is certainly possible, it's just pointlessly difficult. This is how 'faking' the original link cable works.
 
Last edited:
Yes, I agree with your reasoning. However, no one else seems to have taken into account how this could affect RNG exploits, so in my estimation it is very worth pointing out.
 

Users Who Are Viewing This Thread (Users: 1, Guests: 0)

Top