Programming Possible error in Emerald RNG article?

Hi all,

I've been playing through pokemon emerald (the Trashman version on an emulator) and have been using the RNG Method 1 (see link below)
to try to get a latias with good IVs. The csv file which lists the outcome for each frame contains the following data:

Frame Time Nature IVs
3424 0:57.06 Timid 25 30 23 3 23 29
3425 0:57.08 Mild 29 3 23 15 7 21

Article link:
https://www.smogon.com/ingame/rng/emerald_rng_part2

The Latias I ended up getting had a timid nature and its IVs were 25/30/23/15/7/21. Notice that the first half comes from frame 3424 and the second half from 3425.
Other times, however, I seem to get exactly the spread specified on a given frame so I'm not exactly sure what the situation is.

Is this 'frame combining' a weird consequence of the Emerald RNG or perhaps the version of emerald I am using? Or does the spreadsheet for the csv file need shifting down a row?

Sadly I lack the technical expertise to understand exactly how the RNG works, but it would be great if someone who does would take a look at this. I'm happy to help any way I can.

Many thanks,
Luke

PS: In general, the Smogon RNG articles are very clearly written and helpful, so big thanks to the authors!
 

shiny finder

forever searching
is a Community Leaderis a Programmeris a Smogon Discord Contributoris a Site Content Manager Alumnusis a Top Social Media Contributor Alumnusis a Senior Staff Member Alumnusis a Community Contributor Alumnusis a Contributor Alumnus
Chatot Wrangler
Welcome to Smogon! We have a thread already for 4th gen RNG questions here, so you'd probably have better luck posting there instead.

To answer your question though, you hit a Method 4 spread instead of Method 1, which as you determined is a combination of IVs. The RNG tends to do that sometimes, so it's a factor of the game itself. I'm a bit rusty on the details, but it's probably best to try again with the same settings and see if it changes (should iirc). Otherwise saving in a different location (bit hard for the roamer) or different frame may help.
 

Nix_Hex

Uangaana kasuttortunga!
is a Site Content Manager Alumnusis a Forum Moderator Alumnusis a Researcher Alumnusis a Top Contributor Alumnusis a Battle Simulator Moderator Alumnus
There are some "issues" with VBlank on emulator, which iirc is what causes alternate spreads in breeding and method 4 shenanigans. Although you shouldn't be getting Method 4 anyway since roamer Lati@s is Method 1.
Otherwise saving in a different location (bit hard for the roamer) or different frame may help.
Just to clarify, the spread is chosen when you answer the red/blue question, like a stationary but without the cry, and you can immediately see the IVs/PID with Kaphotics's Lua script. Once the roamer is chosen, it's set in stone, unless of course you reset without saving. Anyway, I've done a ton of Emerald / FRLG emulator RNGing this year and have never encountered a Method 4 spread on a stationary or roamer.
LegoFigure11 any ideas?
 

Lego

Formally LegoFigure11
is a Top Social Media Contributor Alumnusis a Community Contributor Alumnus
I've never encountered an m4 spread for a m1 pokemon before, but emulators are funny things and I guess anything is possible...

Luke Warm there's a few things I need to know in order to properly help you out:
1) What OS is your computer?
2) Which emulator (and which version of it) are you using? I'm not allowed to link directly here, but I would recommend VBA-RR v23.6 svn480 or one of the Bizhawk emulators (I don't use these but apparently they're reliable with VBlank).
3) Which language/region is your rom?
4) Is your rom patched at all? If it's just the standard "1986 - Pokemon Emerald (U)(TrashMan)" or whatever then it's not the rom that's at fault, that one runs fine. If it's not, have you tried applying Bond697's VBlank patch? Backup the rom before you try editing it though. (If you need a hex editor then HxD is a good free one)
 
Hi shiny finder/NixHex/LegoFigure11

Thanks for replying! I wasn't sure anybody cared about gen III nowadays, so it's good to see a fast response. To answer your questions:

(1) I am running Microsoft Windows 7 Professional, version 6.1.
(2) Visual Boy Advance 1.8.0 beta
(3) I presume English? Not sure if British English or US English. At least that's what all the game text is written in by default.
(4) No, it's the standard "1986 - Pokemon Emerald (U)(TrashMan)"

I haven't tried downloading the patch, and would prefer to simply use an emulator that has the 'correct' RNG. Specifically, I want the RNG to mirror as closely as possible what would happen on a proper cartridge (British English version if that matters (Edit: Actually US Version would be fine here as well, but not Japanese ideally as I cannot read it.)), on an actual game boy advance. If VBA-RR v23.6 svn480 does this then I'm happy to use it!

For this emulator, do the 'cheat codes' you find online for modifying which pokemon appear in the grass work? This can potentially save some tedium :).
 
Last edited:

Lego

Formally LegoFigure11
is a Top Social Media Contributor Alumnusis a Community Contributor Alumnus
Hi shiny finder/NixHex/LegoFigure11

Thanks for replying! I wasn't sure anybody cared about gen III nowadays, so it's good to see a fast response. To answer your questions:

(1) I am running Microsoft Windows 7 Professional, version 6.1.
(2) Visual Boy Advance 1.8.0 beta
(3) I presume English? Not sure if British English or US English. At least that's what all the game text is written in by default.
(4) No, it's the standard "1986 - Pokemon Emerald (U)(TrashMan)"

I haven't tried downloading the patch, and would prefer to simply use an emulator that has the 'correct' RNG. Specifically, I want the RNG to mirror as closely as possible what would happen on a proper cartridge (British English version if that matters (Edit: Actually US Version would be fine here as well, but not Japanese ideally as I cannot read it.)), on an actual game boy advance. If VBA-RR v23.6 svn480 does this then I'm happy to use it!

For this emulator, do the 'cheat codes' you find online for modifying which pokemon appear in the grass work? This can potentially save some tedium :).
Cool, the (U) in the filename denotes that it's a US rom (which for these games was also the one released in Britain/Australia). With the answers you've given, I'm willing to bet that it's a problem with the emulator you're using. Nothing can completely replicate the actual system, but more recent versions of the emulator will, well, emulate more accurately. Upgrading to VBA-RR v23.6 svn480 or BizHawk (both should be easily googleable) should help to rectify this (if one doesn't work the try the other).
The reason i enquired about the patch is because in some cases it can actual make the game behave closer to the actual cartridge, but cutting out all unnecessary VBlank calls, rather than "Altering" the RNG.

I can't comment on cheat codes - some are reliable, some aren't, but if you use them the Pokemon you get with them will be considered Hacked by most communities.
 

Lego

Formally LegoFigure11
is a Top Social Media Contributor Alumnusis a Community Contributor Alumnus
Hey Luke Warm
Here's something I noticed when I was browsing discord last night -
[7:24 AM] Wyrx: I've had a starter in regular emerald (no v-blank fix) appear as method 4 as well, same thing happened to a friend recently with kecleon outside foretree city. I was wondering if anyone else has gotten a method 4 pokemon from a non-Pokemon Box encounter?
I know that Wyrx knows what he's doing when it comes to RNG, which reassures me that it's not an error in your method. I inquired as to what emu he was using and (somewhat ironically) it was VBA-RR v23.6 svn480 - the one i recommended that you use. So, the only conclusion that I can come to is that you should try using the BizHawk emu instead and see if you have any more luck with that.
 

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

Top