St. GIGA Posted February 3, 2017 Posted February 3, 2017 Hello to all trainers! My IGN is always Jonah, maybe in katakana on JP copies, unless I play on my used HG copy (which has a name of CHRIS, and I usually go by stgiga, St. GIGA, or St. GIGA Movement online. Other details, are classified, except that I am male. Frankly, I am usually a common power player, who uses legit Pokemon that were not imported via bank due to A9lh breaking Pokemon Bank. I used to be naive enough to be horrible at gts editing on a gen 5 cart, but I soon learned what must be done to fix that, and against all odds, 5 years later, successfully installed A9lh on a system that 9 times out of 10, when doing the mod on a similar launch ambassador system, would soft brick the console. Back in 2011, I hacked my first Wii and a Gen 1 iPod touch and soft-bricked them 4 months later (making official software fail to load), and became interested in Pokemon. 3 years later, I correctly hacked a Wii and iPad 3/iPhone 5s, broke Mac OS X's gatekeeper, and much more. When I do unofficial things, they are for honest reasons, and are done legally, fairly, and in the spirit of the originals, and for theoretical and personal use, with the source material given so that RNG can be done to make the legal Pokemon valid. I also have old save files for personal use, and a small gen 3 shiny collection of 3gpkm files. In gen 5, within a month, I caught 2 shinies on one gen 5 game. My PGL info is buried, but I will add it to my profile. My screen name is Pok-fan
St. GIGA Posted February 3, 2017 Author Posted February 3, 2017 Later on, I plan to detail my currently failing efforts to land on a frame that I know works in emurng of Pokemon Emerald to get a TID that works with a number that also appears in the TID timer, (but earlier) as a secret ID used to make the only gen iii flawless docile spread shiny. tldr: I finally managed to almost successfully RNG the TID of Emerald. I did this on an emulated JP copy, and the only reason I have not hit the frame is due to input timing beyond my control, even frame by frame (see FireRed RNG if you want to help me. I will make an additional post containing the data I found on my quest, as I am on my iOS device.
theSLAYER Posted February 3, 2017 Posted February 3, 2017 3 minutes ago, St. GIGA said: Later on, I plan to detail my currently failing efforts to land on a frame that I know works in emurng of Pokemon Emerald to get a TID that works with a number that also appears in the TID timer, (but earlier) as a secret ID used to make the only gen iii flawless docile spread shiny. tldr: I finally managed to almost successfully RNG the TID of Emerald. I did this on an emulated JP copy, and the only reason I have not hit the frame is due to input timing beyond my control, even frame by frame (see FireRed RNG if you want to help me. I will make an additional post containing the data I found on my quest, as I am on my iOS device. If I'm not mistaken, TID cannot be RNG'd? (Well, at least not on FRLG)
ReignOfComputer Posted February 3, 2017 Posted February 3, 2017 7 minutes ago, theSLAYER said: If I'm not mistaken, TID cannot be RNG'd? (Well, at least not on FRLG) Looks like it can: http://www.smogon.com/forums/threads/rng-manipulation-in-firered-leafgreen-wild-pokémon-supported-in-rng-reporter-9-93.62357/
theSLAYER Posted February 3, 2017 Posted February 3, 2017 Just now, ReignOfComputer said: Looks like it can: http://www.smogon.com/forums/threads/rng-manipulation-in-firered-leafgreen-wild-pokémon-supported-in-rng-reporter-9-93.62357/ Ya able to help me zoom in on the portion you're relying on? To my understanding, TID is from the initial seed gets copied from 0x04000104 to its final position in memory (0x02020000). That address is the counter of the GBA timer 2/4, which is running @ 256Hz; 65536clks. Hence, even frame by frame on emulator, it's too fast to hit the specific TID.
ReignOfComputer Posted February 3, 2017 Posted February 3, 2017 Ah, didn't know that. Thanks for explaining, never done RNG on FRLG before
St. GIGA Posted February 3, 2017 Author Posted February 3, 2017 9 minutes ago, theSLAYER said: Ya able to help me zoom in on the portion you're relying on? To my understanding, TID is from the initial seed gets copied from 0x04000104 to its final position in memory (0x02020000). That address is the counter of the GBA timer 2/4, which is running @ 256Hz; 65536clks. Hence, even frame by frame on emulator, it's too fast to hit the specific TID. As it turns out after 2 days of testing, that EXACT same address, used to set the TID, WILL give a TID compatible with a docile 6iv flawless shiny PID (specifically "15575" for the TID, and 2000ish frames earlier, the compatible SID of "17710", IF, and only if, that EXACT address stops on that TID number on the exact frame "4435". This took trial and error in VBA frame by frame with LUA, but It Is possible, but difficult to make the timer stop on the needed value at THAT moment, due to my input lag on my Mac. I recommend trying this experiment at low speed on VBArr with JP Emerald, with the name I chose of Iwata.) Anyways, here is the data I had, plus an old post from before I got your reply. I am very very sorry for the triple post, but I found the file in Dropbox, so here it is, all one needs to RNG themselves a flawless, balanced, shiny Mew, on one emulated JP Emerald, with the usual tools. I already did most of the research, but let me know if I goofed, and if so, tell me how to fix it. This is all correct, valid, and legal to my knowledge, but if not, please let me know what I messed up on in the math. No infringement is intended, and any similarities whether needed or not, To anything else is purely coincidental and unintentional. If you feel that I did not credit you, let me know who I should credit, plus the usual users. For inspiring me to take on this, I credit HaxAras's project of events. I also credit trigger_death for his wonderful shinies, and Iwata-San for his wonderful invention of shiny Pokemon in GS. With that out of the way, enjoy. (As a side note, if somebody RNG's it using my data, If possible and allowed, I may want the original Mew in 3gpkm form after Emerald cloning so as not to be in fear of having my save banned. If possible, ensure that the 3gpkm is holding a Lum Berry, which does NOT have to be the one it holds when battled. I am making this as easy as I can, all I have not done is actually manage to hit the TID frame. This means that I have not even obtained the prerequisites for mew. The TID abuse I did is probably the first case of Emerald ID abuse for both ID fields, if you count using existing SID abuse as part of this to create the first ever set of Emerald ID numbers consistently on demand, with intent to make and document the methods used for making Method 1 Pokemon the First Documented Balanced Flawless Perfect Shinies that are public to the world. Here it is:) Origin Game: Japanese Emerald OT Name: Iwata Species: 151: Mew Pokemon Seed: BF0B02AA PID: E85091A9 Initial Game Seed: 0 VBA-M-RR TID Generation Frame (plus BIOS intro): 4435 Clock Battery: Dead TID Seed: 835EFA48 (according to VBA-M-RR when using the RNG Script Suite for JP Emerald) RNG'able TID: 15575 Desired Compatible SID: 17710 Nature: Docile Caught location: 201: Faraway Island Met Level: 30 Level: 30: HP: 109: 31IV/0EV Attack: 74: 31IV/0EV Defense: 74: 31IV/0EV Special Attack: 74: 31IV/0EV Special Defense: 74: 31IV/0EV Speed: 74: 31IV/0EV Hidden Power Type: Dark Hidden Power Level: 70 Ability Slot: 1 Pokemon PID Generation Frame: 3886 Time: 1:04.76 Ball: Dive Ball
theSLAYER Posted February 3, 2017 Posted February 3, 2017 2 minutes ago, St. GIGA said: As it turns out after 2 days of testing, that EXACT same address, used to set the TID, WILL give a TID compatible with a docile 6iv flawless shiny PID (specifically "15575" for the TID, and 2000ish frames earlier, the compatible SID of "17710", IF, and only if, that EXACT address stops on that TID number on the exact frame "4435". This took trial and error in VBA frame by frame with LUA, but It Is possible, but difficult to make the timer stop on the needed value at THAT moment, due to my input lag on my Mac. I recommend trying this experiment at low speed on VBArr with JP Emerald, with the name I chose of Iwata.) I've been doing it as frame by frame, in pause, When unpaused, "A" will already be held down. It seems that it may be possible to document which frame gives which TID, but it'll probably drive that person insane.(as this is done by trial and error, not by using a program that will generate the required frame based on TID wanted)
St. GIGA Posted February 3, 2017 Author Posted February 3, 2017 Maybe a derivative of the FRLG and RS RNG calculation algorithms could crack the mystery, as Emerald's RNG as a whole appears to be a mix of RS and FRLG's RNG code due to some of the code and graphics being a bit more than shared libraries to my knowledge. I may be wrong on this, but maybe both of those RNG's which use that timer value control the DMA's effects on data, which might be part of a clue about the Pomeg Berry glitch predictability. Maybe RNG should be tested on RS copies with the berry glitch still active.
St. GIGA Posted February 3, 2017 Author Posted February 3, 2017 Just now, St. GIGA said: Maybe a derivative of the FRLG and RS RNG calculation algorithms could crack the mystery, as Emerald's RNG as a whole appears to be a mix of RS and FRLG's RNG code due to some of the code and graphics being a bit more than shared libraries to my knowledge. I may be wrong on this, but maybe both of those RNG's which use that timer value control the DMA's effects on data, which might be part of a clue about the Pomeg Berry glitch predictability. Maybe RNG should be tested on RS copies with the berry glitch still active. I think I may have been naively stupid when posting the above, but I was just pondering the RNG issues in Pokemon, as I always get instantly karma'd by the AI in battles, despite my decent strategy.
St. GIGA Posted February 3, 2017 Author Posted February 3, 2017 23 minutes ago, theSLAYER said: I've been doing it as frame by frame, in pause, When unpaused, "A" will already be held down. It seems that it may be possible to document which frame gives which TID, but it'll probably drive that person insane.(as this is done by trial and error, not by using a program that will generate the required frame based on TID wanted) One thing I forgot, is that input can influence the results of the timer value occasionally when I hit the frame, possibly due to input lag and lack of feedback/reaction time errors, causing me to hit the button too much or not at all, killing that round. It may also add or subtract a button value/garbage bit to the end result, corrupting it. If I overshoot the button delay, I can estimate roughly how many frames I missed via guessing if it is not corrupted. This may be useful for compensation in timing. If I undershoot it, the frame usually will not show, and if it does, it is usually corrupted, and unusable for my ID abuse needs, unless I luck out. This info may be useful for a mixture of RNG manipulation and TAS for creating TAS movies that allow Pokemon to be made flawless after countless hours of work. For details on the input manipulation, see acmlm's YouTube video "A bored God plays Tetris". Thanks, and make use of this info as you please.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now