suloku

Member
  • Content count

    537
  • Joined

  • Last visited

  • Days Won

    3

suloku last won the day on February 16

suloku had the most liked content!

Community Reputation

66 Excellent

5 Followers

Game Network IDs

  • Friend Code (3DS)
    2681-2109-3457
  1. Yes, it's not exactly 60hz (which is also why the gameboy player on NGC repeats a frame every so often (to sync) and feels so sloppy, something that homebrew is able to do better, check out Game Boy Interface by extrems). Currently on frame 86 million, so almost halfway trough, should have the save state ready for the end of the week. Also, I've been keeping savestates around every 8 hours, which may come useful for other crazy frames like this one. ps: do you have any frame for RNG a flawless ditto? I'm really interested on this one. BTW, I'll use this oportunity to get them from gen 3 up to gen 7, then compare with pkhex conversion 3->7, si if the same file outputs (since it's a pain, I'd prefer to get as many as possible to gen 7 at once).
  2. I've coded a program to dump pk2 files out of the registered teams in the Stadium 2 savefile:
  3. Excuse me sir, but the first Toys R Us distributions (the YOSHIRA/YOSHIBA OTs) did use trading based distribution, I personally contacted two former employees that confirmed this (each by his own), and the Mew from the "Mew machine" is nicknamed, while the cart based ones aren't. You may check yourself here: The distribution in spain also was a direct trade (although there's obscure data about that one...) Also, nobody really knows how those "send nintendo your cartridge" distributions worked for gen 1. They might have had just a cart full of mews and they traded over manually... who knows. ps: Also, at the very first Mew machine distribution in the US, the very first day, since the machines were still under testing, the employees got the mew transfered to their cart, then they traded it via link cable to the attendants (I guess this didn't last much, but as a curiosity even mew machine mews were officially distribute via trade). ps2: yes, I still need to write my document about everything I've learnt about the mew distributions (it's not much more than what I've already posted here and there, but I want it compiled and for anyone interested to check). ps3: do you know if japanese Mew Machine mews also had the "fixed DVs" ?
  4. Mewtwo is a static encounter, so it can have any DVs in gen 1 (theoretically).
  5. I've looked into the Stadium 2 savefile to locate registered teams and also coded a dumper that exports the registered pokémon as pk2 files ready to use with pkhex. This may help some people get their original pokémon back, if they ever registered them on Stadium 2. As a bonus, this can be used to dump the rental pokémon if you register them. Note about the dumps: registered pokémon lose the extra 0x50 terminators in the nickname (when a pokémon is never nicknamed, all extra bytes are set as 0x50, when nicknamed they are set to 0x00). This has no real impact, but it's a pitty they aren't 1:1 copies. (The status condition is also lost, but that isn't important either so...). Registered teams start at 0x4000 in the savefile, here's the structure: Registered parties are 0x180 each: 0x10 header + six 0x3C pokemon structures + 2 bytes padding, 4 byte footer and 2 byte checksum 0x00 Header: 0x0 1 True if team is present (0x00 if no team) 0x1 1 Padding 0x00 0x2 2 trainer ID (default 0x0000) 0x4 12 Trainer name (GB encoding, 0x50 terminated + 1 byte padding 0x00) (default 0x5000) 0x10 Start of party pkmn, 0x3C each; uses a similar GB storage format: 0x00 1 species 0x01 1 held item 0x02 1 move 1 0x03 1 move 2 0x04 1 move 3 0x05 1 move 4 0x06 2 OT ID *0x08 4 EXP (1 byte extra padding) 0x0C 2 HP exp 0x0E 2 Atk exp 0x10 2 Def exp 0x12 2 Spd exp 0x14 2 Spc exp 0x16 2 DVs 0x18 1 PP 1 0x19 1 PP 2 0x1A 1 PP 3 0x1B 1 PP 4 0x1C 1 friendship 0x1D 1 level 0x1E 1 status condition? (status is set to 0 when the pokémon is registered) (might be padding) 0x20 2 Caught data 0x22 1 Padding? (might be status condition) *0x24 12 nickname (GB encoding, 0x50 terminated) (1 extra padding byte) *0x30 12 OT name? (GB encoding, 0x50 terminated; 0 if rental) (1 extra padding byte) 0x178 2 Padding? always 0x0000 0x17A 4 Footer 'P3v0' (0x50337630) 0x17E 2 Checksum (UByte 8 bit) Computes Header + party data + footer stadium2dumper.zip
  6. I see. I did test it a little and the patch seems to do frame advancing a 12% faster. I'm not really sure how the frame-seed relationship works, for what I've read it shouldn't impact method 1 pokémon generation, but for the sake of legality (as long as running on an emulator is concerned) i'll keep using the unmodifyied rom, since it seems it the vblank patch would only yield a ~10h for what I've tested. ps: I was including the terminator when counting OT name characters, and nicknames are allowed more characters than OT, at least in international versions.
  7. Been searching at smogon and seems someone already researched how pokéwalker generation works... http://www.smogon.com/forums/members/romsstar.33244/ With the propper tools, coding a generator would be possible. What I'm seeing right now is a program that loads your save (to read things like OT name, TID/SID, game of origin, language... then you can select course and pokémon, which gets generated randomly (or not, depending on user's will) from a set of the possible frames. I guess I should start a new thread for this. EDIT: this is more complete, seems the japanese did research it thoroughly, a generator should be possible. http://www.smogon.com/forums/threads/past-gen-rng-research.61090/page-10#post-2634864
  8. Are you asking about the file? It only has the ENG pokémon. I've found the thread, apparently the uploader also got one of each for the unrelesaed courses. Thinking more about it, maybe the best solution would be a romhack that triggers the game into generating pokéwalker pokémon when selecting a course, without actually needing a pokéwalker... If I just knew how to RE (not that it means I could do it, but it would help), and I don't think there's lots of interest in gen 4 to RE how the pokewalker works.
  9. There's a file in the forums with one of each ENG pokéwalker pkm file. I wanted to produce the spanish set at some point. It would be great if the generation method could be REd, then implement it in some android app that tracks steps (or just a pc app that produces them at random).
  10. My computer got to 14million in about 8 hours, how do I enable that vblank patch? It's not like I'm in a hurry or anything, but it seems at my current state it will take 100 h to get to the frame (edit: it may just be my computer being slow, it's the last quad core model intel made so...) I'll upload the savestate when I reach a reasonable close frame for RNG with the offset for trainer name editing (I'm using my own savefile on which I put a japanese valid name for it, wiht only 6 chars etc). I'll test your script assap.
  11. That would need to know beforehand the generation method that pokémon used right? Also, it doesn't make it technically illegal, it would just mean it was generated with help of some tools to know when to press A, it would still be theoretically posible to get on real hardware (at least if we stick to reasonable amounts of time, and leaving a gba running for a month seems like the edge of reasonable) Well, that's actually a lot better. Gonna start running the emulator and using savestates, I'll get to the frame at some point. 35 days is on the borderline of what I would call legit, but could be done on real hardware with lots of patience so.... (but imagine if you fail, lol). BTW, the ditto frame (should work for any slot 2 pokémon in emerald, of course I haven't tested it, ~157 days): Frame: 816994389 Occidentary: 816994416 Time: 226942:53.15 Encounter Slot: 2 PID: E85091A9 Nature: Docile Ability: 1 IV: 6x31 50% F: M 12.5%F: M 25% F: M 75% F: F TID: 12336 SID: 07657
  12. Wait, isn't the RNG reporter time expressed in "hours:minutes,seconds"? That would be almost 6 years, not 5 weeks. If I'm wrong I'll try to get the emu running this week, most likely won't be done in just a day, but with savestates+a couple days I'll hit the seed. ps: I wonder how you reached that combo? Probably backtracking the pid generation formula to get the frame right? I'd like to do the same to get a flawless (shiny) IV ditto in gen 3, so I can use it on all generations (I did find a valid frame and tid/sid combo, but would take 25 years so...)
  13. There are some photos and stadium 2 uses the same eeprom chip as stadium 1, so there's no reason for the neoflash program to not work (I want a neo myth now... why is it so expensive!?) Also, I don't know what ragecandy does, but from what I've seen registered pokémon are almost an exact copy of the GB version (most likely in gen 2 format though). I have yet to check stadium 2 savefile. About editing the py script: an easier way to edit would be to make this change party_slot = 0 start = 0x00028210 + (party_slot*60) Then you just need to change the party slot (0-5) for each pokémon. If teams are secuentially stored you may also want: party_slot = 0 current_team = 0 start = 0x00028210 + (party_slot*60) + (current_team*384) note: 384 (0x180) is supposedly the registered party size, or so I've been told. This way you can edit the pokemon and team. I'm not sure it outputs a pk2 format though, so you can't use them in pkhex. Modifying the script to dump all pokemon as pk2 files would be easy, but my python is rusty (I only played with it a couple times), or I could just go and make somehting similar in C. EDIT: in any case I'll probably make my own exporter for stadium 1 and 2 eventually...
  14. Yes, I asked for an exampe of an AR code. I guess the most convenient code type would be the one that changes the slot 1 pokémon? For what I see they are just command-value-adress, but I don't quite get what those "end code" are used for in the OT/nickname, unless they are just to make sure the code inputs a terminator character and they typed it that way so people don't forget it. If that's all there is to it, the program is really trivial, I've wrapped this up real quick: just drag and drop a pk2 file (make it with pkhex) onto the exe and an ar.txt file will be generated. Please tell me if the code worked, currently it generates an AR code for pokémon crystal to change the pokémon in the first party slot with the pk2 file. If it works fine I'll make some executables for the other games. poke2ar.zip
  15. You may be referring to pikasav: I know there were some more save editors back in the day, but this seems to be the only that survived, probably because it was the one with more features? Maybe it is the one with AR code generation. In any case, it should be easy to write a program that converts pk1/pk2 files to an AR code, as it's just a bunch of addresses + the pk file bytes. Do you have any example for gen 1 and gen 2? The only problem I see is that the boxes have a byte to know how many pokémon are stored, but maybe what the codes did was simply to replace the first pokémon in the current box with the one in the AR code (which frankly, seems the easiest).