Jump to content

suloku

Innovator
  • Posts

    742
  • Joined

  • Last visited

  • Days Won

    26

Everything posted by suloku

  1. http://www.smogon.com/ingame/rng/pid_iv_creation
  2. So I was playing Stadium 1 for the gift pokémon and thought I missed the amnesia psyduck with normal box beacuse I filled the hall of fame in round 2, so instead of re-playing the game to get all 151 again into the hall of fame in round 1, I got a round 1 save I had and filled the hall of fame with copies of an alakazam hall of fame entry to get the amnesia psyduck with normal box. Turns out there's no amnesia psyduck with normal box (which makes sense), but this is what I got from the savefile and since there doesn't seem to be any information around I'll leave it here in case someone wants to mess with it, code an editor or something. I know this isn't much information, but I think any info is better than no info. Important note: Everything I say about the save takes as reference a project64 fla save file that has been byte swapped using saveswap by saturnu. Please keep this in mind. Get saveswap here: http://krikzz.com/forum/index.php?topic=2298.0 The savegame file actually holds a Main save and a Backup save, which starts at 0x10000. Unlike gen 3, Main save seems to be always at 0x00 and Backup save at 0x10000. The save has many different sections, they are really easy to spot since each section ends with a footer ("POKE"). I have only searched two of them, but with a little testing it should be easy to locate all of them. 0x8DC0-0x9D1F Hall of Fame Data - 2 byte Header (seems always 0x0010) - 26 byte * 151 pokemon data structure (seems to hold Level, OT ID, Nickname and OT Name, in this order. Level is stored like this level 100 = 0x6407) - 2 byte padding (0x0000) - 4 bytes footer ("POKE" or 0x504F4B45) - 2 byte checksum 0x9EA0-0x9EC7 Gift Pokémon Data - 2 byte Header (seems always 0x0010) - 0x1C species index by pokedex number - 0x20-0x21 2 byte padding (0x0000, Actually this is just an assumption due to analogy with other sections) - 0x22-0x25 4 bytes footer ("POKE" or 0x504F4B45) - 0x26-0x27 2 byte checksum There's more data in the section, round 1 gift pokemon and round 2 gitf pokemon seem different (round 2 have more data apparently). All sections seem to hold a similar structure, ending in padding, footer and checksum. There's probably a section for each kind of data (boxes, pc, cup data, registered pokemon...), and when a section is corrupted the game sets it back to default, but it won't actually tell the player that some data got corrupted. I'm probably not looking further into this save as there are not many uses to editing it. As a test, I got my amnesia psyduck save and changed species to #151: All these gift pokémon have DVs generated when transfered to the GB cartridge (which is the only way of retrieving them), and have fixed TID: 02000 and OT (OT depends on Stadium game language). I don't know why the Mew got tackle and growl, since the amnesia psyduck should know scratch and amnesia, I don't know how that became Tackle and Growl. Gift bulbasaur and squirtle come with those moves, so maybe it just defaults to those two? Who knows, I'm not gonna test the 150 remaining pokemon to see if they come out with tackle and growl. note: the post has been updated to reference a propper swapping tool.
  3. Or maybe they randomly spawn? In gen 5 mushrooms get regenerated, maybe that mechanic was already in gen 3 with hidden items?
  4. I've started playing Stadium, never played it and it's actually quite good. The commentary dub was really amazing. So, I've just checked that gift pokemon get generated when trasnfered to the gen 1 games, so I'm gonna get a savegame for each of the gift pokemon to be received, for round 1 and round 2 and the amnesia psyduck. I'm playing the spanish version, but the save is compatible with at least all EUR versions, and the UK should be the same as USA one so... With those savegames, one can receive a randomized (DV wise) pokemon from the stadium game without having to play trough elite 4, and also get it for the desired region. Amnesia psyduck will take time though, hall of fame gets time to complete... Unless you can provide a savegame with an almost complete hall of fame at round 2 that is (there's a complete save at zophar's domain, but that won't work for amnesia psyduck...) EDIT: I managed to get the 8 gifts from round 1. If you don't know, round 2 are the same, but will have a gold trophy when transfered to gen 2. EDIT 2: Well, I messed up a little. It seems that receiving a normal box or gorgeous box attached to the gift pokemon does not depend on wether you are playing roun 1 or round 2, but depends just on wether you have unlocked round 2 or not. Basically this means no amnesia psyduck with normal box unless I get all the pokemon in the hall of fame... AGAIN. That's not gonna happen, so no amnesia psyduck with normal box. Shouldn't really matte, but I wish I had known. I'll try to edit the hall of fame data in my savefile prior to round 2, should be enough for legit amnesia psyduck retrieval with normal box. EDIT 3: Erm... seems like amnesia psyduck can only carry gorgeous box, even at round 1, so basically I have the saves. Coupled with the complete one at zophar's (for teaching surf to pikachu) now all saves are available (when I upload mine). I'll probably finish my round 2 save with full hall of fame for a complete R2 with amnesia psyduck retrieval EDIT 4: Here are the fla savefiles, I'll update the file when I get the round 2 savefile. The one with "151" still has amnesia psyduck for retrieval from the hall of fame, the save before it only misses 2 hall of fame entries. http://www.mediafire.com/download/ghx1crmdrrcdj27/StadiumSavegames.rar EDIT 5: @N64 I finally made the Stadium 2 savegame for Farfetch'd and Gliscor, the attached file has the Stadium 1 and 2 savegames in it. Stadium1-2_savegames.zip
  5. So, I was cecking the data in the public gen 3 ones (there's 3 MYSTRY mews that I know of that are available to everybody, the savefile has 4, but two are the same mew) and noticed that the Nickname bytes have trash (?) data. For example, the nickname data for gen 3 pkm files: Mew #49: C7 BF D1 FF 16 00 00 00 48 7E Mew #53: C7 BF D1 FF 28 00 00 00 48 7E So, I wonder what is that data doing there and why is it different for each mew? (apparently) I don't know the innerworks of the algoryhtm, but I can't think why would that data be there... Unless the same memory regions is used to store different values while generating the pokemons and that trash data is a remnant from it.
  6. This was unexpected, I just realized that this project has made the Spanish Emerald Deoxys legit all of a sudden. For some reason I've been thinking all along that aurora ticket distributions were all made for both FRLG and Emerald, but most of them were made before emerald was released (in europe). The thing is, I was checking dates and Emerald wasn't out when the aurora ticket distribution was made in Spain. Of course, it should have been downloadable in any of the European distributions made when emerald was out, but what are the chances of someone with an spanish emerald cart going to the event and retrieving the wondercard? That could put the legitimacy of the event at question, but Nintendo of Italy has made it available so...there's nothing to discuss. According to bulbapedia, the same happens with French emerald, but while I know there was only one aurora ticket distribution in spain (which isn't listed at bulbapedia btw) I can't know if there was any other in France compatible with Emerald release date.
  7. Maybe they get generated in whatever in-game event? I'll check underground path this evening with my saves (no warp)
  8. Drastic works fine with sav files renamed to dsv. It's probably pokesav messing with dsv. Just properly convert to sav instead of renaming.
  9. Now, if someone with the rocks america FRLG mystic ticket popped up... Also, this project's annyversary is comming
  10. By the same logic, you may collect in-game, then fix subregion data with PKhex to a valid one for JAP region (or any other). I don't think there are any other differences. I personally prefer to get the pokemon without any external modification, that's why I went to the trouble of setting up a JAP emunand for japanesse events.
  11. I already tested the sub-region thing a while ago. Luma3ds spoofing doesn't affect sub-region for gathered pokemon, a japanese emunand does. The save game subregion data seems to be used elsewhere, when generating pokemon it's read from the 3DS, ans since with luma sub-region isn't spoofed, it will produce illegal pokemon. But still makes the job to get the wondercard.
  12. https://github.com/pret/pokecrystal/blob/d2a3e4a6a42b58e7b0005558a7dcb3907a76b7fd/home/random.asm Note: rDIV increases by 1 every 256 gba clock cycles. Don't really know how the carrier gets set/unset though.
  13. From what I've seen in the Crystal dissassembly, maybe the machine determined, with a 12/100 probblity (if we trust bulbapedia), if the pokemon would be shiny or not. Then it would use the normal algorythm (which may also output a shiny with the standard 1/8192 probability) or the shiny locked algorythm. If you want to replicate the distribution programatically, I would advise: - Use a different OT, for example PCNYz. I don't think anyone wants to have a fake running around. - Use only IDs starting at least at 60000. The machines never seem to have reached this number, actually maybe they didn't even reach the 2000 (well, probably the first celebi distribution did). If the machine used a PRNG tied to clock cycles like the gameboy versions did, every single pokemon distributed is unique. Using an ID on the 60000 means that the generated pokemon could actually have been legit. The only trully legit ones though, are the ones that got distributed, at least imho. It's a pitty we don't have more of the shiny versions, specially a shiny celebi. At lest the eggs (the vast majority of the distributions) can be replicated. In your program you could add a "legit mode" were you randomly distribute one of the legit shinies that are in the savegame. There are some repeats for celebi, the 3 shiny beasts ant the shiny johto starters, with different attack DVs. ps: I tested if the DVs were generated with the gen 3 or stadium algorythm, seems we aren't that lucky.
  14. Maybe I'm wrong, I haven't used it in a long time. I remember testing this though, but I should test again to confirm. Is there any online WC event running in japan right now?
  15. Hans doesn't actually change the region the 3DS reports. For that you need Luma3DS custom firmware, but it only changes Country, the sub-region geolocation (i.e. USA -> New York) remains the same, so it would output an illegal pokemon (JAP-> New York). You can still retrieve the wondercard though. The only reliable way that I know of is a full Jap Emunand.
  16. It's actually 14 (E) both in the dissassembly and my tests with the cheat code. I'm carrying some bad news. I've been trying to understand the asm code. The RNG function is apparently the same in gen 1 and gen 2, at least on the dissassemblies. It uses a value that increases by clock cycles, not a seed that gets advanced like in gen 3 games. If the distro machines used something similar, there's actually no ID-DV association, as that would depend on when the button was pressed to do the transfer, so every pokemon was really unique, not like the MYSTERY mews in gen 3, which were generated with an initial seed using a PID generation algorythm. This predictability is what allowed sabresite to re-make the missing ones. There's still hope: pokemon stadium does use a linear PRNG, maybe that's what was used for the distro machines... but I highly doubt that, since pokémon stadium was actually coded without any of the gameboy source code (yes, the coder just re-did all the mechanichs) Maybe that was only the Japanesse pokemon stadium 1, don't know about Stadium 2 or Stadium 3 (internationa Stadium and Stadium 2). Since the distro machines were based on SNES hardware, I doubt anything on a n64 game will be of some use... so basically I think there's no way we can re-create any legit celebi trough ID-DV association since, from my point of view at this moment, it was dependent also on the time the machine had been running and when the pokemon was actually generated. I wish nintendo still cared about these events in some way... in fact the recent mew distribution for japanese 3ds virtual console games has perfect DVs and fixed OT and ID. Lets see what happens when they release gen 2 to virtual console (there's no way they are not doing it, it's easy money). At least we have around 10 celebis from PCNY distribution, which is nice. Not so nice for the missing non-egg distros (birds, mew).
  17. Now that you mention that, I read somewhere that trading communities have ways to determine that the Wondercard comes from a distro rom and not the actual event. I wondered how was that possible, since you need to change the DS time so the distro rom works. Maybe they are referring to people who don't also change the time in the 2nd DS? I wonder how they claim to be able to tell, it should be the same as the official event...
  18. The concern would be about ID#-DV relationship. For egg distribution, that's no problem, since OT and ID are those of the hatched egg. Luckily in Gold Ursaring's savegame there's a shiny charmader that should have hatched from an egg. Its attack IV is 3. Odd egg's shiny attack value was fixed to 2 and fortunately there are other hatched shiny eggs in the save, with different attack DV values. Basically this means all these eggs can be reproduced, since there's no ID-DV relationship, they will be the same as the distributed ones when hatched. If you want to do such a device, you can use any algorythm to randomize the attack DV. Are you sure the red gyarados can be female though? In the dissassembly it would seem DVs are fixed to EAAA (14, 10, 10, 10), but maybe it's just that the attack DV gets randomized later in the function, which would be great. Also, the 12'5% would actually make more sense for me for the egg distributions, but maybe the same algorythm was applied to celebi distribution. Besides Mew and Celebi, every other distribution that wasn't an egg was shiny fixed The problem is essentially that any of the fixed PCNYa/b/c/d OT + ID + DV comination is unique. There are two options: - This ID-DV relationship is stationary: the distro machine will always generate those same DVs for a given ID. That would be the best case scenario. - The ID had no relationship to the DVs whatsoever, it was random, and constantly changed as long as the machine was powered up, meaning the same machine with same ID would provide a different pokemon. Here are ID-DV of the shiny pokemon in the savegame, Maybe there's an algoryhtm that can predict all combinations for the shiny DVs. The red gyarados algorythm might be the key here. I did a couple tests with a savegame, but it seemed to always output a 14,10,10,10 gyarados... In fact the Gyarados in my crystal savegame and gold savegame have 14,10,10,10 both... of course this might have been just coincidence, we should find out. Possible shiny attack DV: 2, 3, 6, 7, 10, 11, 14, 15 31 (B, typhlosion) - 3 32 (B, feraligtr) - 3 33 (B, lugia) - 3 129 (C, entei) - 15 135 (B, typhlosion) - 11 136 (B, typhlosion)- 10 137 (B, Meganium) - 14 138 (B, Meganium) - 15 252 (D, Typhlosion) - 15 509 (B, entei) - 2 510 (B, raikou) - 10 594 (B, entei) - 2 598 (B, Raikou) - 3 599 (B, suicune) - 2 612 (B, entei) - 3 629 (B, suicune) - 2 EDIT: bad news, the gyarados event is fixed to DVs 0xEAAA as I suspected. I used the following cheatcode on crystal: Fight Shiny Pokémon 010730D2 What this code does is keep the value at address 0x30D2 always 0x07. This is most likely the variable that holds the Battle Type and 0x07 corresponds to the shiny gyarados battle. This is also why you can't scape from battle when using this code. I've captured several pokémon with this code, and every single one of the had 14 attack. There's no pokemon gold/silver dissasembly, but I don't expect the forced shiny event to be any different. Fun fact: the caught data (only visible in crystal) states that all the pokemon were catched at level 5, even though they were clearly distributed ad different levels (except celebi). Maybe this was fixed in the machine. The location data seems correct, I don't think there are any fakes in the save, but I find it amusing that you received entei at level 40 and in crystal it would say it was received at level 5 because of this. Maybe this was set up for celebi and they forgot to change the setting back, the events in the save seem to be all from after the celebi distribution, since there are no legendary bird events in there, which came after the first beast distro and before the first celebi distro according to bulbapedia. The first distribution at toys are us was made trough direct trade. I have read that these had all the same ID, I'm in the process of getting more information regarding this. The Tour distributions already had the mew machines. Actually, I have firsthand information that in the very first stop the distributors were still testing out the machines, so they actually transfered to the first to arrive with direct trade: They used the machine on their cart, then traded with the people who went there. Probably they just did this for a short time until they saw that the machine was working fine.
  19. Seems some people have been doing quite a good dissassembly for the pokemon games, here's the PRNG in crystal: https://github.com/pret/pokecrystal/blob/d2a3e4a6a42b58e7b0005558a7dcb3907a76b7fd/home/random.asm But I don't really understand asm code. I'm still trying to find how this used for wild encounters. If the red gyarados could be female, then the code should be there too for the guyarados event. About the random eggs being shiny, a 12% rate is pretty high. This acually remembered me of the Odd egg event in crystal: http://upokecenter.dreamhosters.com/articles/pokemon-video-games/pokemon-crystal/pokemon-crystal-odd-egg/ The odd egg event is just hardcoded: a non-shiny egg and shiny egg are in the game, the probablity for each egg is also hardcoded. I doubt the PNYC had all its life events hardcoded, so either it wasn't a 12% chance or there was a different algorythm for eggs and another for pokemon... who knows, but 12% probablity of shiny celebi sounds fishi. Also, maybe the pncy Mew was shiny locked due to having the same fixed DVs as the other ones.
  20. Are you sure celebi wasn't shiny locked in generation 2? I just found this at gamefaqs regarding PNYC celebi: "The Pokémon Center in New York, way back when, distributed legit Celebi. You plugged your cart into the machine and it got downloaded into your game. I saw someone get a red one and I was like WOAH. Couple of minutes later I got one in my Crystal version." So it would seem it wasn't shiny locked. I wonder if the mew was DV locked... I have been wondering today about gen 2 DVs too... mainly because Gold Ursaring uploaded so many mews. Also, because some of those mews are sequential: OT: DV bytes --------------- 1044: 0B-0F 1045: 7F-8F 1052: BE-9B 1053: D4-34 421: 5F-79 422: 41-A5 423: E0-77 1011: A4-16 1012: F4-8D So I was wondering... what if the distribution machines used the same PRNG algorythm used in the Gen 2 cartridges? I was worried about how it would skip the shiny ones because I though it was shiny locked, but if it wasn't shiny locked and it uses the same PRNG as GSC... we could find the initial seed used and actually test if that was the seed generation method! How cool would it be to actually be able to generate every damn celebi from pnyc? Also, since I already managed to gather a celebi from the celebi tour (via in-game DV calculation after full EV training, but at some point I might get the save), we could even test if DVs were tied in some way to ID#. Maybe ID# IS the seed (depending on how the PRNG works...) Also, GSC have the red gyarados event. I have yet to test if this red gyarados always has the same attack DV, or that DV is also random. If the DV is also random (which would actually make sense), that means we could also get the shiny-fixed algorythm from the games, and test it against the PNYC shinies (gold ursaring also retrieved many of those). Unfortunately, I don't have any assembly or reverse engineering skills. I might bring this to Hacky's attention, he has recently broken Crystal's mobile system and even was able to trade with himself, so he has the skills to get the algorythm. Of course those machines were made with a SNES, so the algorythm might be totally different, who knows... I wonder were all those machines ended up (same for gen 3 distributions).
  21. I think bootleg carts used sram memory, which was 64 kB and a patched ROM. This is the same flashcarts did, so in order to load it with A-save, you'll have to use VBA to convert it to 128 kb save. You can also use VBA to convert it back to 64 kb for the bootleg cart again.
  22. I have very great news everyone: I have "obtained" one of the very first Mews distributed in Denmark. Only 30 were originally distributed, and the OT isn't even listed at bulbapedia. The most important thing is that the owener has been kind enough to make some tests to check it's DVs and ensure they are in fact the same fixed DVs we all know. I'll post OT and ID after the owner gives explicit permission (he has given implicit permission, but better ask). I feel like he's traded me the mew, since this is the only one I'm personally sure of its DVs, which makes me kinda happy for some reason (maybe personally getting an official Mew after more than 15 years has this effect). The bad news is that he also had a celebi, which is already lost (battery died) and even though he's got the certificate and thus the ID nº, we can't know its genes or OT Did you get to check your BENELLUX Mew OT? Also, might you have a copy of your Blue and Gold savegames in your meganmemory card? You can put a rom from GSC in your flashcart and trade the pokémon to the flascart, then extract the save to the computer, but I guess if you had to use pikasav you couldn't backup your savegames to the mega memory card...
  23. Talking about mew: http://i.imgur.com/l7t9B5w.jpg Source: http://imgur.com/gallery/KTad3 In the first USA Mew event (only 151) seems like there was a different Mew. The data seen on the image is the following: OT: NINTEN ID: 24145 At level 39: HP: 134 Atk: 90 Def: 96 Speed: 92 Special: 91 It's a pitty the screenshot features it at level 39 and not at level 100 or 5. From the stats we can know it's not a perfect DV mew or a candied Mew with no EV training (impossible defense stat without ev training). The stats shown can correspond to an EV trained fixed DV mew, but the fact that Speed stat is 92 means the speed stat should have less than 50 EV if the Speed DV was 12. Since the other stats would have needed EV training, the only possible conclusion is that the Mew shown in the picture has different DVs. MewtwoSama wrote at azureheights "Every official Mew I have, have the same max stats. I dont remember the stats exactly. Except for the "NINTEN" Mew i have. That one has some bugs in it. Its max GENES are 20 points off." I contacted him and there's a small chance he still has the mew, but it may be in his n64 cartridge and he doesn't have a n64 anymore. If these 151 NINTEN mew had fixed DVs or not will probably remain a mistery. ps: I've been checking some spanish magazines from the year 2000 (luckily people have scanned those and uploaded to the net) and I find it very surprising that even though there are many mentions to the pokemon champsionsips and the place they were held at (some kind of pokémon exposition they had running for 3 months), there's no mention to the mew distribution at all. I wonder were the bulbapedia article got that information from.
  24. You are right, I only posted the combinations I know of for sure. You might notice that the YOSHIRA and B are in the 55K numbers. I highly doubt 55K people went to the event, it's more likely that distribution started at 55000 or 55001. So, we can't really be sure some IDs even existed (even if they were a possibility). Since all the mews have the same dvs, I think having just a single legit one for each OT is enough. I also noticed one of the LUIGE mews has an extra ID number. This is not my typo, so I guess we can't know its real OD. Fortunately we have another LUIGE mew.
  25. Did you "Set" the pokemon after editing it? (right click)
×
×
  • Create New...