Jump to content

Hidden Event Pokemon in Ruby/Sapphire


jojo12100

Recommended Posts

Hi,

as you know there's 3 hidden events pokemon in Ruby/Sapphire: a lv15 Unown (which can apparently be obtain thanks to the German Debug), a lv15 Luvdisc and a Pikachu egg.

Is there anyone to force-load these contents? I personnaly try to get the Unown but it doesn't work with my VbaLink version apparently.

Thanks in advance

 

Source:here and here

  • Like 3
Link to comment
Share on other sites

1 minute ago, jojo12100 said:

Thank you now let's try to get the Luvdisc ^^

Quote from glitchcity: None of the functions on the Mimic e-Card menu access this data. I guess nobody actually wants a Luvdisc—not even the developers…

how do we activate this?

  • Like 1
Link to comment
Share on other sites

7 minutes ago, theSLAYER said:

Quote from glitchcity: None of the functions on the Mimic e-Card menu access this data. I guess nobody actually wants a Luvdisc—not even the developers…

how do we activate this?

Don't know but if we succeed to get the debugger Pokemon in Pokemon Red/Blue why don't use a similar method (need help for that too ^^) ? Can we imagine a way to export the event data and then reinject it via the tool created for Aurora ticket ...?

 

Link to comment
Share on other sites

29 minutes ago, theSLAYER said:

Quote from glitchcity: None of the functions on the Mimic e-Card menu access this data. I guess nobody actually wants a Luvdisc—not even the developers…

how do we activate this?

I don't care how bad it is. I want the Luvdisk. I want all leftover/prototype/dev Pokemon hidden in the games. 

  • Like 1
Link to comment
Share on other sites

30 minutes ago, HaxAras said:

I don't care how bad it is. I want the Luvdisk. I want all leftover/prototype/dev Pokemon hidden in the games. 

Well I can get a connection running on No$gba, and I got an Unown (Icognito).

I think to get Luvdisc, some shenanigans needs to be done (like, maybe some code to force the different script to run).

I'll say it can't be done without jumping through some hoops, and I'll like to know what hoopa to use.
 

  • Like 1
Link to comment
Share on other sites

"The “egg” function tries to send a Pikachu egg. It leaves the checksum in the type $10 chunk blank, so it fails with a loading error. (This could also have a 1/65536 chance of working.)"

Sounds like we should try this over and over again until it succeeds. ;p

(I wonder if we could just automate this or something? Like they do for TAS? Make it so it repeatedly tries over and over again with the emulators on speed-up so it doesn't take as long, if it'd even be possible to do that. If their guess of there really being a 1/65535 chance was correct it's bound to eventually work.)

If someone has a good understanding of ram and AR codes it might be possible for them to make a code that makes it so every menu option accesses the Luvdisc event, since that glitchcity thread has the relevant address doesn't it? Not that I know that much about it, might not even be possible to make such a code.

Link to comment
Share on other sites

15 minutes ago, theSLAYER said:

Well I can get a connection running on No$gba, and I got an Unown (Icognito).

I think to get Luvdisc, some shenanigans needs to be done (like, maybe some code to force the different script to run).

I'll say it can't be done without jumping through some hoops, and I'll like to know what hoopa to use.
 

Any chance you'd share the Unown?

Edited by HaxAras
Link to comment
Share on other sites

Deoxyz shared the Unown already a few posts back :P

Also I noticed that Glitchcity says the Unown is in a Great Ball, this one is in a Pokéball though? I guess perhaps Glitchcity was mistaken, or it can be more than one ball type.

Link to comment
Share on other sites

Just now, Ammako said:

Deoxyz shared the Unown already a few posts back :P

I was assuming when he said "(Icognito)" it had a different OT or nickname. I scrolled up. I didn't think that was it's actual name. Why was it listed as Lv.15 in the original post? Does it have set stats?

Link to comment
Share on other sites

My Unown T: 201-19 - TOURNAMENT - 3B450751ED1F.pk3

Besides using cheat codes, there may be a way to grab the Luvdisc.

I read about how Gift Pokémon are defined using a type $0C chunk, which consists of a pointer to a 136-byte structure. The first 100 bytes of that are a complete Pokémon data structure.

So, I tried to copy and paste over what I thought to be the header at 0x45E306 to 0x45E443, no dice.

Good news is while the swap didn't give me a Luvdisc, it also stopped giving me a Unown, meaning at least the swap was done at the right location,
probably just didn't work out cause maybe format is different?
 

  • Like 1
Link to comment
Share on other sites

The two Unown have different natures, IV's, and stats all around as well as shapes. I wonder if it generates them all unique? Unless your OT is "Zeath" Luvdisk is generated like it's a person's Pokemon since it actually has a secret ID, unlike all the events I've seen and Unown. 

Edit: The Luvdisk says it was met at Petalburg city and the two Unown say they were met at Lilycove (L) and Petalburg (T) So I'm assuming their met location is based on your in game location at the time.

Too bad they didn't leave a Mew in there that we could get at the start of the game. I always thought it would be hilarious to have a Mew with the met location "Inside of Truck". 

Edited by HaxAras
Link to comment
Share on other sites

1 hour ago, HaxAras said:

The two Unown have different natures, IV's, and stats all around as well as shapes. I wonder if it generates them all unique? Unless your OT is "Zeath" Luvdisk is generated like it's a person's Pokemon since it actually has a secret ID, unlike all the events I've seen and Unown. 

Edit: The Luvdisk says it was met at Petalburg city and the two Unown say they were met at Lilycove (L) and Petalburg (T) So I'm assuming their met location is based on your in game location at the time.

Too bad they didn't leave a Mew in there that we could get at the start of the game. I always thought it would be hilarious to have a Mew with the met location "Inside of Truck". 

My that OT is Zeath (a super old save of mine).

Yup, I changed my locations, and it seems like it followed my location.
(had to go to Petalburg to enable Mystery Event. The Lilycove one wasn't done by me)

Well it isn't legal to get inside of the truck,
because we won't have Mystery Event active at that point (needed to get to Petalburg to set the codewords).

And with Luvdisc done, now this:

1 hour ago, Ammako said:

"The “egg” function tries to send a Pikachu egg. It leaves the checksum in the type $10 chunk blank, so it fails with a loading error. (This could also have a 1/65536 chance of working.)"

Sounds like we should try this over and over again until it succeeds. ;p

(I wonder if we could just automate this or something? Like they do for TAS? Make it so it repeatedly tries over and over again with the emulators on speed-up so it doesn't take as long, if it'd even be possible to do that. If their guess of there really being a 1/65535 chance was correct it's bound to eventually work.)

If someone has a good understanding of ram and AR codes it might be possible for them to make a code that makes it so every menu option accesses the Luvdisc event, since that glitchcity thread has the relevant address doesn't it? Not that I know that much about it, might not even be possible to make such a code.

The statement they used is: IVs are randomized, so there may be a 1/65536 chance that the checksum really would be $0000,
I'll say if one can figure out the IVs necessary to get checksum to be 0000,
I'll say we may be able to RNG this, as opposed to let it generate over 65535 bad eggs for the slim probability it'll be not bad.

With 90% Confidence, it'll take you 150,902 tries before you get the working Pikachu egg.

Math of Probability formula:

Spoiler

Non-reducing probability:
Capture.PNG
where:
x
refers to number of tries
n refers to total rolls
m refers to failed rolls
P refers to final Probability.

Application example:
If attempting to get Pikachu Egg in one try, success probability is:
Capture.PNG
Capture.PNG

Answer is 1 out of 65536 (of course it is)

So now, what if we try to get amount of tries, at a 90% success rate? (90% confidence, basically):
Capture.PNG
Link to steps: https://www.symbolab.com/solver/equation-calculator/\frac{65536^{x}-65535^{x}}{65536^{x}}%3D0.9



 

  • Like 1
Link to comment
Share on other sites

2 minutes ago, theSLAYER said:

My that OT is Zeath (a super old save of mine).

Yup, I changed my locations, and it seems like it followed my location.
(had to go to Petalburg to enable Mystery Event. The Lilycove one wasn't done by me)

Well it isn't legal to get inside of the truck,
because we won't have Mystery Event active at that point (needed to get to Petalburg to set the codewords).

And with Luvdisc done, now this:

The statement they used is: IVs are randomized, so there may be a 1/65536 chance that the checksum really would be $0000,
I'll say if one can figure out the IVs necessary to get checksum to be 0000,
I'll say we may be able to RNG this, as opposed to let it generate over 65535 bad eggs for the slim probability it'll be not bad.

With 90% Confidence, it'll take you 150,902 tries before you get the working Pikachu egg.
 

So did it glitch out the fist time? The second one still has a secret ID and different stats but otherwise looks the same.

Would that be 150,000 RNG attempts or would it be possible to automate it? 

Edited by HaxAras
Link to comment
Share on other sites

Just now, HaxAras said:

So did it glitch out the fist time? The second one still has a secret ID and different stats but otherwise looks the same. 

did what glitch out the first time, the unown?
The first Unown wasn't uploaded by me.
The Second Unown (mine) didn't glitch at all.

If referring to Luvdisc,
Once I did as @BlackShark said, it didn't glitch and I got the Luvdisc successfully on first try.
But I decided to go with a less personal OT/TID/SID generated by separate Ruby Save to acquire Luvdisc, which is now permanently up there.

If referring to Pikachu, I'm about to try now.

  • Like 1
Link to comment
Share on other sites

Just now, theSLAYER said:

did what glitch out the first time, the unown?
The first Unown wasn't uploaded by me.
The Second Unown (mine) didn't glitch at all.

If referring to Luvdisc,
Once I did as @BlackShark said, it didn't glitch and I got the Luvdisc successfully on first try.
But I decided to go with a less personal OT/TID/SID generated by separate Ruby Save to acquire Luvdisc, which is now permanently up there.

If referring to Pikachu, I'm about to try now.

Oh, I thought it was supposed to have the OT of Ruby. I still have the original one. I'll just go ahead and change it to match one of my own Ruby saves. Then the only thing that would be the same is the stats. I gotta admit, it will be pretty awesome to have an unreleased/prototype Pokemon with me as the OT. Also, sorry I was so vague about that.  

Link to comment
Share on other sites

1 minute ago, HaxAras said:

Oh, I thought it was supposed to have the OT of Ruby. I still have the original one. I'll just go ahead and change it to match one of my own Ruby saves. Then the only thing that would be the same is the stats. I gotta admit, it will be pretty awesome to have an unreleased/prototype Pokemon with me as the OT. Also, sorry I was so vague about that.  

Not a problem!
You quoted the entire thing and I wasn't sure which critter you were referring to.
This type of thing happens to all of us. Sometimes I fear we are only human.

1 minute ago, Ammako said:

If you edited the Debug rom to instead give out Luvdisc, could be worth it to make a .ips patch for it and upload here.

Well the steps BlackShark gave were really simple.
It literally was just search and replace, but that probably could be done.

This should be it: pokemon_ruby_german_final_d mod.ips
 

____________

I tried to get Pikachu egg twice on the unmodded debug, both them says completed,
Both times Party did not receive anything (my party isn't full)

  • Like 1
Link to comment
Share on other sites

2 minutes ago, theSLAYER said:

Well the steps BlackShark gave were really simple.
It literally was just search and replace, but that probably could be done.

This should be it: pokemon_ruby_german_final_d mod.ips

A lot easier and more convenient to have a patch around, than for everyone interested to manually do the hex editing. :P

Link to comment
Share on other sites

Just now, HaxAras said:

What is a(n) .ips patch?

Using a program called Lunar IPS, you can create or patch a file.

So for example, if we both had the same copy of the debug Rubin,
If you use my patch, it'll now send out Luvdisc instead of Unown.

So basically the .ips changes your file for you, so you don't have to go through Hex Editor yourself to do the changes.

(how patches are made is the program compares a modded and unmodded file)

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...