Jump to content

Bond697

Innovator
  • Content Count

    1358
  • Joined

  • Last visited

Everything posted by Bond697

  1. Do you just want to change how many extra tries at a shiny the Shiny Charm gives you? Why can't you edit the ARM9 and put it back? You're not making it any bigger, right?
  2. Wild Pokémon and stationary legendaries without a shiny check have their PIDs created in the same way. It involves using the TID and SID to evaluate the seed being used for the PID and whether or not it should be OR-ed with 0x80000000 on creation. ---------------------------------------------------------------------------------------------------- standard 0x8 decision pid generation(btw, r6 is sidtid for basically this entire thing) 020056FC F096ECB6 blx #0209C06C //switch to ARM, to 0209C06C (umul64()) -return to 02005700 02005700 6922 ldr r2,[r4,#0x10] // load v
  3. ok, i think we have it down now. the code is copied and pasted straight from r/s where they had it optimized down to a series of shifts.
  4. there is no rng seeding code anywhere in there. if that's a guess based on the code from the original games, then fine, but i'm pretty sure it's not there.
  5. yeah i think we're out of luck here unless someone has the actual gba distro cart for the negaiboshi. to figure out how it works anyway. if someone does actually have it and is weary about giving it to anyone, remember, no one knew i had the 10anniv rom for more than 5 years, and even then it became known only because other people let it out. e: same goes for pcjp2003 and anything else we need info on.
  6. If you want to change what ROMs you can distribute to, you can just change the strings it checks against to use any rom: Note the AXVJ and AXPJ. Changing those to the game you want will fix it. Or changing the 2 "BEQ loc_201E410" to "B loc_201E410" will make it work no matter what game you use. To make those work, change "23 D0" @ 201E3C6 to 23 E0 and "1C D0" @201E3D4 to 1C E0. You really only need to change the first one, but might as well be thorough. I'm not sure why you would want to make the ROM run without a master. How would you get it to write to a GBA cart if
  7. I think you got confused. 10anniv otg is: (rand() >> 7) & 1 if 0, ot gender is 1, if 1, ot gender is 0 so take the highest bit of the lower byte of rand(). if it's 0, ot gender is 1, if 1, then otg is 0. 0x31 is the ot gender field in the pkm RAM:02013A66 FC F7 D9 FE BL rand RAM:02013A6A C0 11 ASRS R0, R0, #7 ; rand >> 7 & 1 RAM:02013A6C 38 40 ANDS R0, R7 ; gender decision RAM:02013A6E 00 28 CMP R0, #0 RAM:02013A70 0C D0
  8. i have no doubt they're exactly the same aside from the obvious changes to ot and whatever else.
  9. This might sound dumb, but the first thing to do might be to see if any of the trash is actually thumb code. If so, those are probably the first ones generated. Could the ones with none have been traded to a gamecube game and back? The trash bytes for the 10anniv pokes exist because GF does a copy of the pokemon's name from a global constant to a local buffer, then copies the local buffer to the .pkm "file" in memory. The problem is, the first copy is just a strcpyFF(local_buf, global_const) which ends at the 0xFF terminator, so if the name in the variable was 'LUGIA'\xFF FF FF FF, the
  10. This is the info for it: You can see the text is (poorly) translated and not localized. https://dl.dropboxusercontent.com/u/13004170/meteor_jirachi.zip
  11. I don't remember what I did anymore, actually, aside from pulling the roms out of the game cart. I think I decompressed it, but I'm not sure.
  12. Ohh, ok. I was told none of them had items. The one I was looking at was the lugia rom and that one has the light ball in it. I'll have to pull out the other ones.
  13. Fun fact since you brought this up: the 10ANNIV multiboot roms have unused code in them to give all 10ANNIV pokes a light ball. Must be a leftover from another event somewhere or something since the 10ANNIVs have no item.
  14. When I was given the 10ANNIV rom 3 1/2 years ago, the person who gave it to me asked me not to give it out or anything to preserve the cart's value. The same goes for a few others. Some of the stuff isn't even private, there just hasn't been anyone who has really cared, as far as I knew. Like this for example: It's an unreleased gen 3 event, METEOR Jirachi. I found its multiboot rom in.. some game. I've told people about it and given out archives, but nobody really seemed to care that much. I spent awhile gathering the multiboot roms and checking them out and to be honest,
  15. All rise for Judge Guested in the Project Pokemon People's Court. [ATTACH=CONFIG]13789[/ATTACH] What's the case today? [ATTACH=CONFIG]13790[/ATTACH] Two dummies, who may be the same person, having a slapfight on the internet, your honor. [ATTACH=CONFIG]13787[/ATTACH] And the verdict is... [ATTACH=CONFIG]13788[/ATTACH] Guilty! Of being stupid on the internet. I think we're done here. So help me if we have to do this again after the judge's ruling, I will start ending careers so fast. ( ͡° ͜ʖ ͡°)
  16. Bond697

    GameFreak Gen 6 Data

    HeapData Offset Description 0x0 Heap pointer 0x4 Bitflags for heap Heap Bitflags Offset Description 0 In use 1 Main heap Pokemon Accessor Offset Type Description 0x0 u32 vtable pointer 0x4 u32 is pkm in party 0x8 u32 pointer to pkm data 0xC bool is p
  17. pokemon data works differently in gen 6. in gen 3/4/5, pointers to specific pokes were passed directly into functions. in gen 6, a higher-level struct is passed in that contains different pokemon info. also, in gens 3/4/5, data was read from and written to pkms by only 2-4 functions. those 2-4 functions were switch statements that were up to a couple hundred cases. so for example. in gen 3/4/5, you had something like this: u8 PKM_getNature(void* pkm) { PKM_decryptPartyPoke(pkm); u8 nature = PKM_readPartyPkmStat(pkm, FIELD_ABILITY, NULL); PKM_encryptPartyPoke(pkm); ret
  18. http://projectpokemon.org/forums/showthread.php?44315
  19. We might be able sort of RNG by starting the game and finding the seed you started on and looking for good seeds from there.
  20. the type effectiveness table is in DllBattle.cro @ 0xDB428
  21. the type effectiveness table is in DllBattle.cro @ 0xD12A8
  22. either a. re-compress the overlay with blz.exe or b. don't bother re-compressing the overlay and edit the overlay table (y9.bin) to indicate the overlay you're editing isn't compressed.
×
×
  • Create New...