Glitch City Laboratories Archives

Glitch City Laboratories closed on 1 September 2020 (announcement). This is an archived copy of a thread from Glitch City Laboratories Forums.

You can join Glitch City Research Institute to ask questions or discuss current developments.

You may also download the archive of this forum in .tar.gz, .sql.gz, or .sqlite.gz formats.

Generation II Glitch Discussion

RNG Manipulation for TID on Virtual Console - Page 1

RNG Manipulation for TID on Virtual Console

Posted by: Link_enfant
Date: 2017-10-01 14:58:47
Hello everyone from the Glitch City Labs!

Just to be sure, am I posting this topic in the right place? I wasn't sure if RNG manipulation can actually be considered as glitch related.

I've recently bought Gold & Silver on 3DS and for various reasons, I want to get a specific trainer ID number in Silver : 23592
From what I've found after some research, it looks like RNG manipulation for a certain ID in Gold versions has been used a lot by speedrunners of the game.
There are guides and videos for this, the problem is that they don't apply well in my case: I'm playing on VC and not the original cartridge which seemingly makes things different, I'm on French Silver version instead of English Gold, and of course I'm looking for a completely different ID.

From what I've seen, that manipulation is not the hardest at all and only EonTimer is needed.
My problem is that I lack the necessary informations regarding the target frame, and the possible timing changes due to the game being played on VC.

By any chance, does anyone have some knowledge on Gen II RNG mechanisms and could be of any help to get what I'm looking for? :)

Re: RNG Manipulation for TID on Virtual Console

Posted by: luckytyphlosion
Date: 2017-10-01 15:07:21
Unfortunately, creating manipulations are not a linear process. It usually requires running a bot to test permutations of inputs until the correct ID is produced. There isn't a mathematical formula to determine what inputs to press because of how the RNG is based on a hardware divider, causing RNG to differ vastly with each code branch.

As we don't know the exact differences that cause different RNG for 3DSVC, we cannot create any manipulations easily. Any manipulations you want will have to be done by hand.

Re: RNG Manipulation for TID on Virtual Console

Posted by: Link_enfant
Date: 2017-10-02 07:04:32
Thanks for the quick reply.
I'll see if I can get some results by doing some tests on both VC and VBA or other emulators.
If RNG manipulation isn't a viable solution in my case, I'll eventually use ACE to modify my TID later in the game.

Re: RNG Manipulation for TID on Virtual Console

Posted by: Torchickens
Date: 2017-10-02 07:35:05

Thanks for the quick reply.
I'll see if I can get some results by doing some tests on both VC and VBA or other emulators.
If RNG manipulation isn't a viable solution in my case, I'll eventually use ACE to modify my TID later in the game.


I'm unexperienced with this but if I remember rightly VBA isn't an accurate emulator for RNG manipulation in the Game Boy games, and BGB only recently updated to fix it after the speedrunning community addressed it.

So for RNG manipulation tests you should use BGB (maybe a few others emulate it correctly but I don't know of any that do so it's safest to use the latest version of BGB). You'll also need the CGB Bootstrap ROM or it won't work correctly.

When you have it right click, select Options>System and make sure the settings are like this:

(I don't know if you need both bootroms, probably not, but it may be safe to make sure)
[img]https://i.imgur.com/Rpe60i6.png[/img]

From the videos I've seen it has you holding down specific buttons/resetting (to get the Game Boy screen to appear, potentially having input there as well which can change the palette) at certain times after resetting the game with a cleared save file and depending on what you press at specific times you can manipulate the right ID.

This is an example of a manip for Blue that gives you the Trainer ID 32862:
https://www.youtube.com/watch?v=XgycGIg0VHw

It looks like the process could be really tedious though, so I don't know if I'd recommend it through trial and error alone. There are 65535 possible Trainer ID values (although I don't know if all are used; some DVs are actually unused for certain wild Generation I battles for instance) and finding the right manip could take a very long time.

For that reason maybe luckytyphlosion or another knowledgeable person in the speedrunning community like Dabomstew could help you in relation to bots and successfully finding a manip.

However I don't know how doing it on 3DS Virtual Console would go and luckytyphlosion hinted that a manipulation on Game Boy Color may not work on 3DS Virtual Console, so if you find a manip on emulator it may not be enough sadly. Unless you want to settle for BGB/Game Boy Color it may not be a good idea as luckytyphlosion said they don't know what causes the different RNG in Virtual Console.

Best of luck! and hope someone else with more insight into this can help you in putting together the manip. :)