Jump to content

Poke J

Helpful Member
  • Posts

    532
  • Joined

  • Last visited

  • Days Won

    57

Everything posted by Poke J

  1. Everything you’re asking for isn’t possible. There is no legit way to have Mewtwo at the moment so all Mrwteo will be flagged as illegal. Also Tyranitar and Komomo can’t Giantdymax do you’ll never find one with that check.
  2. The Met Location does not change when a Pokémon is traded. The only time trading effects the location is if the Pokémon was traded while it was still an egg and that only changes how the egg was obtained. Also You can not make legit Pokémon at best you can make a legal Pokémon. A legit Pokémon is a Pokémon obtained during normal game play and has not been modified by any means with software or hardware that isn’t licensed by Nintendo, Game Freak, or the Pokémon Company.
  3. Pokémon Structure in RAM Due to a lack of documentation regarding how Pokémon are stored in RAM during battle of the generation 4 games I have taken it upon myself to document how they are structured and how to extract them. I've found that the Pokémon data is stored around the addresses 002C0BC2 to 002D5780 when a RAM dump is viewed in a hex editor. The length of the data is of 128 bytes (decimal value) or 80 bytes (hexadecimal value) per Pokémon. With that the following is the structure of Pokémon data in the RAM of generation 4 main line games if the relevant 128 bytes were extracted from the RAM; therefore, I'll be starting at address 0x00. Please note that for all values that use 2 or more bytes the values are stored in little-endian format. Offset Content 0x00-0x01 National Pokédex identification number. 0x02-0x0B 0x02-0x03 = Attack stat 0x04-0x05 = Defense stat 0x06-0x07 = Speed stat 0x08-0x09 = Special attack stat 0x0A-0x0B = Special defense stat 0x0C-0x13 The moves known by the Pokémon with every two bytes corresponding to the move index. 0x0C-0x0D = Move 1 0x0E-0x0F = Move 2 0x10-0x11 = Move 3 0x12-0x13 = Move 4 0x14-0x17 IVs, IsEgg Flag, IsNicknamed Flag. Same as in Block B of PKM Structure for Gen 4 found in the tech documents. 0x18-0x1F This set of bytes start at 06 and keeps track of the how the stats of the Pokémon have increased or decreased during the battle. Example 00 = a decrease in a stat by -6 stages and 0C = an increase in a stat by +6 stages. 0x20-0x21 These bytes are linked to the species of the Pokémon in some way. As such a byte combination of 70 0B will be set there if the opposing Pokémon is a Lugia. 0x22-0x23 Unused, in all tests. All bytes have been 00 and after many tests these bytes did not change. 0x24-0x25 These bytes are linked to the species of the Pokémon in some way. As such a byte combination of 0E 02 will be set there if the opposing Pokémon is a Lugia. 0x26 Pokémon form index. If the Pokémon does not have more than one form or the Pokémon is in its base form this value will be 00. Note form and evolution stage are different concepts. 0x27 Ability index 0x28 Unused, in all tests. All bytes have been 00 and after many tests these bytes did not change. 0x29 Appears to change if the Pokémon has a blanket ability activated. 00 = no blanket ability and 04 = the Pressure ability. It is unclear if this byte can have a value other than 00 or 04 depending on the ability. 0x2A-0x2B Unused, in all tests. All bytes have been 00 and after many tests these bytes did not change. 0x2C-0x2F Current Power Points of moves. 0x2C = Power Points Remaining for move 1 0x2D = Power Points Remaining for move 2 0x2E = Power Points Remaining for move 3 0x2F = Power Points Remaining for move 4 0x30-0x33 Number of PP UPs used for each move. 0x30 = Number of PP Ups used on move 1 0x31 = Number of PP Ups used on move 2 0x32 = Number of PP Ups used on move 3 0x33 = Number of PP Ups used on move 4 Values cannot exceed hexadecimal value 03. 0x34 Current level of Pokémon. Value cannot exceed hexadecimal value 64. 0x35 Happiness of Pokémon. 0x36-0x4B Pokémon nickname. If no nickname is set the Pokémon species name will be stored here with a terminating FF value. Note this is a character array; therefore, little-endian formatting does not apply here. 0x4C-0x4D The current Hit Point value of the Pokémon. 0x4E-0x4F Unused, in all tests. All bytes have been 00 and after many tests these bytes did not change. 0x50 The max Hit Point value of the Pokémon. 0x51-0x53 Unused, in all tests. All bytes have been 00 and after many tests these bytes did not change. 0x54-0x63 Original trainer (OT) name. If the Pokémon belongs to a non-playable character (NPC) all bytes will be 00 with a terminating FF. Note this is a character array; therefore, little-endian formatting does not apply here. 0x64-0x67 Current EXP. If the Pokémon belongs to a NPC all bytes will be 00. 0x68-0x6B Pokémon personality identification number (PID). 0x6C This byte gets set if the Pokémon is affected with a status condition that is not temporary such as burn or poison. 0x6D-0x73 Each byte correlates with a temporary status condition. For example the byte set for confusion is the counter for how many turns is remaining before the confusion status effect wears off. 0x74-0x75 Trainer identification number (ID). 0x76-0x77 Trainer secret identification number (SID). 0x78-0x79 The index of the item that the Pokémon is holding. 0x7A-0x7D Each byte correlates with a status condition that is not temporary. The byte set for sleep is the counter for how many turns is remaining before the wakes up. 0x7E This byte is the gender of the Pokémon. 00 = male, 01 = female, 02 = genderless. 0x7F This byte is the type of Poke Ball that the Pokémon is in. If it is in a special ball from Pokémon Heart Gold or Pokémon Soul Silver this byte will be 04 which is the same as the Poke Ball. --footer-- Pokémon Extraction In order to easily extract a Pokémon from RAM I recommend dumping the RAM as soon as the Pokémon that you want to extract is sent into battle. This is done so when viewing the RAM in a hex editor you can find a string of bytes that is both unique enough that it will not appear multiple times in the RAM and consistent with any Pokémon currently in the RAM. With that said the string of bytes that meets both of these conditions in most cases is the stat increase/decrease values with would be 06 06 06 06 06 06 06 06. Please note if an ability such as Intimidate or Download actives before dumping the RAM you will have to adjust the string of bytes accordingly. In a standard 1 vs 1 battle the first Pokémon that will appear in the RAM will be yours and the second one will be your opponents. From there follow how a Pokémon is stored in the save file in order to rearrange the data to create a valid PK4 file. Update: I have developed an application that can find and extract Pokémon from a generation 4 RAM dump file. Application can be downloaded from here Additional Reading
  4. That Landerous is shiny locked therefore can’t legally be shiny.
  5. When you fuse Necrozma it will use the data from Necrozma. So if your case your Dusk Mane will use the nature, IVs, and EVs from Necrozma. It works exactly the same with Kyrem.
  6. Did you check Serebii? I just checked the Heart Gold and Soul Silver section and the Game Corner info is there, as well as, the available Pokémon are listed with the level you get them at. There isn’t anything special with regards to moves or stats of these Pokémon. The moves should be the last four moves that the Pokémon would know up to that level.
  7. Your save will be fine because the game has no in game legality check. So the game does not care what Pokémon you edit onto your save just as long as the Pokémon is a valid Pokémon in that game. Ex 1) Hack a Darkrai into a gen 4+ game at the beginning is fine. Ex 2) Hack a Darkrai into Let’s GO Eevee or Pikachu is bad.
  8. You'll want to use this download from the link that @theSLAYER provided you with.
  9. A spinner is a Pokémon that uses Rapid Spin and a defogger is a Pokémon that uses Defog. Rapid Spin removes entry hazards on your side of the field while Defog removes entry hazards on both sides of the field. Defog is considered the superior choice since it is harder to block Defog over Rapid Spin.
  10. Just looking at your team I’d say you need either a spinner or a defogger on your team. Also, it might be a better idea to ask this question on Smogon since that is a competitive battle community verses asking it here.
  11. I think some of those flags have already been found in this thread.
  12. The picture of the Charmander isn't only in the European FireRed manual and is also in the North American manual. My scanner is really bad so this is the information of the Charmander is as followed: Nature: Serious Met Location: Viridian City Met Level: 5 OT: RED ID: 40060 Current Level: 13 In the LeafGreen manual the picture is replaced with a legal looking Bulbasaur. I've also took the liberty to check all of the instruction manuals for gens 3, 4, and 5 and this is the only potential debug Pokemon that I could find.
  13. Since you're trying to learn how to find specific values in a save file and you're using HxD you 100% know that nothing is labelled in the file. So to find a particular thing in the save you will have to compare before and after saves to find the differences between them. In your case you are you're looking for where money is stored in the save so I'll run through an example how to find that value. 1) Go to the Poke Mart and save the game in front of the store clerk. 2) Make a backup of the save. 3) Purchase an item from the clerk and save the game. 4) Make a backup of the save. (Now you'll have two save files with one before buying an item and one after buying an item.) 5) I recommend copying either one of the save files to make a third save file to do the edits on. 6) Now compare the first two saves and the only differences that should be between them is play time, item quantities, and money. 7) Since you should know what money you started with and what money you ended with you should be able to identify which values correspond with your money total. 8 ) On the third save file try and edit those values to something else and then save the the save file in HxD. 9) Open the third save file in PKHeX and then save it with PKHeX. (This will update the checksum of the save so that when you load the save you won't get the "Save file is corrupt" error message.) 10) If the money amount did not change go back to step 5 and try a different value that is different between the two saves. Note 1: When ever you do any editing always make backups of your save in case you mess up. More save backups the better. Note 2: If I remember correctly any money value greater than 255 or FF in hex is stored in the save in the reverse order. For example the 256 would be saved as 00 01 and not 01 00. If you follow these steps you should be able to find any value or flag in any save as long as you make a before and after save.
  14. You might want to try Trigger’s PC. However, it only supports gen 3 games.
  15. The badge flag is on the trainer card. By selecting that you have the badge on the trainer card you set the flag that you’ve obtained the badge. Also what game is this for? Because “unlock everything” differs between games. Also I suggest to not try and unlock certain flags such as all fly locations because you can end up skipping story elements and be left unable to trigger them. As well, the flags that are available in PKHeX are the ones that have been researched to determine what they actually do. It would be awesome to figure out what every flag does, but that would be very time consuming and not practical. I suggest if you’re wanting to skip elements of the game or story copy the flags from a completed save using a hex editor.
  16. Since no body has responded to this thread yet I can only assume that what you are requesting has not been researched before. However, these are the steps you can take to find the data yourself. 1) Backup your save in front of the attendant for the Battle Line that you want the win streak for. 2) Do one round on that battle line so that you get your BP and have a win streak of 7. 3) Make another save backup in front of the attendant that you saved in front of for the first save. 4) I recommend editing the play time and the BP total of the second save in PKHeX so that it matches the the play time and BP of the first save. This way there will be less differences between the two saves. 5) Make a copy of the second save so that you can make edits without permanently messing up the save. 6) In a hex editor (I recommend HxD) compare the first save to the third save. If you started at a streak of 0 you'll mostly likely be looking for an offset who's value changed from 00 in the first save to 07 in the third save. 7) On the third save change the value to 2A and save the change. 8 ) Load the third save into PKHeX and save it again with PKHeX in order to ensure the checksum is correct. 9) Load the save up in your game and check the streak for that battle line and it should now be at 42. 10) If the save is corrupt or the change didn't happen go back to step 5 and try a different offset. Note - Make backups of everything so that you don't mess up your good save and if you do mess up you have a restore point. This part is super important!!
  17. From my experience with using Pokebox with Nintendont playing the game on the TV doesn’t work, but you should still be able to store your Pokémon just fine. Are you unable to store Pokémon as well?
  18. I can confirm that this is an existing problem since I’ve never been able to get Pokebox running on Nintendont to load legitament cartridges in order to play RS on the TV. However, I no longer see the point in playing RS on Pokebox since you need to use the GBA as the controller (or that’s what I’ve been led to believe). Also I know it’s a different theard, but had it been confirmed that Pokebox has the potential to generate different spreads due to it using emulation?
  19. It’s a little tedious, but totally do able. I did that before the Bank can out in XY. However, I believe if Ditto isn’t available that would encourage players to hack Pokémon.
  20. @drago856 This is the info That needs to be the same.
  21. From what I can tell without seeing anything is that you made a Pokemon that the game is considering was obtained in a trade and you haven't progressed far enough in the story for that Pokemon to obey you. Make sure that the trainer data of the Pokemon matches the trainer data of the save file.
  22. Considering that there are games coming out for the 3DS over the next few months I think it’s safe to say there is same time left before the servers are sit down. Also, in past investor meetings Nintendo has talked about continuing support for the 3DS.
  23. @zakhUse RNGreporter to find a valid PID and use method 1 since it is a stationary Pokemon. Also with gen 4 games it usually isn't possible to get a 6 IV shiny Pokemon with the correct nature if you didn't RNG abuse your TID and SID at the start of the game. This is due to how PID, nature, and IVs are all related to one another in gen 4. Therefore, you'll need to find a TID and SID that corresponds with a PID that has the correct nature and IVs.
  24. You can not open Powersave files in PKHeX since they are encrypted and there is no known way to get the files decrypt and then re encrypt them.
×
×
  • Create New...