english09 Posted August 26, 2010 Posted August 26, 2010 (edited) Yesterday I did some research on the differences between a UT Save file and .pkm file and a Pokesav touched one. It appears that when using Pokesav, if you simply load a Save file into pokesav and save it without making any changes, the coding does change to leave possible traces. Though it seems that for .pkm files there is no difference in a normal game generated pokemon and a pokesav/pokegen generated one. I have checked this by looking at the hex information and comparing it to edited information, for example: I used a game generated legit starly and copied it. The copy was then loaded into Pokesav and saved (it is identical LOOKING in everyway to the original), then I took the two and compared them in hXd and they were identical. I did the same with loading it into Pokegen and then saving, it was still identical to the legit one in everyway possible. I then took a legit save file and copied it 3 times, and loaded each one into either Pokesav, Pokegen, or PPSE and saved. However, when comparing them to the original one this time there were differences (small differences for Pokesav(easily fixable), larger for Pokegen, and VERY large hex difference with PPSE). I have not tested ARDS yet but plan to soon. Edited August 26, 2010 by english09
Bond697 Posted August 26, 2010 Posted August 26, 2010 what version of pokegen are you using? e: i bet one of the 3.0 betas. i did a file compare between my heart gold save and another copy that i opened and saved in pokegen 2.312, and they were exactly identical.
Codr Posted August 26, 2010 Posted August 26, 2010 I then took a legit save file and copied it 3 times, and loaded each one into either Pokesav, Pokegen, or PPSE and saved. However, when comparing them to the original one this time there were differences (small differences for Pokesav(easily fixable), larger for Pokegen, and VERY large hex difference with PPSE). I'd like to see what you're talking about. I periodically go through and make sure nothing is being changed inappropriately, but it's possible that I may have missed something.
english09 Posted August 26, 2010 Author Posted August 26, 2010 I am using a non-beta version (2.312). Though to my surprise today i loaded a legit .sav file into pokesav, saved, and compared it to a UT one and they were identical. @Codr: To answer your question of what I was talking about, and btw I am using version 2.231 of Pokegen, I give you a save file. Copy it and load and save one of them into pokegen and compare the two through hXd. You will see around 20-30 differences. Legit(HEX CHECK)Pokemon Platinum.sav
Bond697 Posted August 26, 2010 Posted August 26, 2010 pokegen's differences are at 0x141-0x173, 0xcf2a-0xcf2b - mostly one spot, right in the middle of the first poke in the party. pokesav's are at 0x1f10e-0x1f10f weird, i wonder why mine came out exactly the same before from pokegen.
Codr Posted August 26, 2010 Posted August 26, 2010 @Codr: To answer your question of what I was talking about, and btw I am using version 2.231 of Pokegen, I give you a save file. Copy it and load and save one of them into pokegen and compare the two through hXd. You will see around 20-30 differences. There was no 2.231. I'll see what happens with the current public non-beta version though. Edit: I see what you're referring to. It's PokeGen modifying the first party Pokemon's party data. I can't say for sure, but I'm fairly certian it does it in a way that the game does. It may erase status information (poison/burned/etc) and seal data. I think this was changed in the beta (maybe not the latest, but in the current code I have)... if not, I'll make sure it only modifies the stats. Edit2: It is in fact erasing all the party-specific data when it writes the current stats. This really isn't a huge deal, considering the same thing happens when you put a Pokemon into the PC (Unless the game saves it elsewhere and restores it, but I doubt it.). If you're really that paranoid, you could always just generate only PC Pokemon or deposit a party Pokemon and withdraw it. Edit3: Btw, the isolated 2 bytes that change are the save file checksum... that should be obvious.
english09 Posted August 27, 2010 Author Posted August 27, 2010 About edit3, are you talking about pokegen or pokesav? BTW, what is exactly the point of the checksum changing/fixing, I am not very knowledgable about this
Codr Posted August 27, 2010 Posted August 27, 2010 About edit3, are you talking about pokegen or pokesav? Both. BTW, what is exactly the point of the checksum changing/fixing, I am not very knowledgable about this A checksum is a number representing all of the data in a block of the save file. It's an inaccurate, but effective enough, way of verifying that the data is what it was when the checksum was calculated.
english09 Posted August 27, 2010 Author Posted August 27, 2010 (edited) So when these programs recalculate the checksum, is it to make it so that it seems untouched and legit, or in a sense, correct and how the game would do it? Edited August 27, 2010 by english09
Codr Posted August 27, 2010 Posted August 27, 2010 So when these programs recalculate the checksum, is it to make it so that it seems untouched and legit, or in a sense, correct and how the game would do it? The game verifies that the data matches the checksum. If it doesn't, the save file is considered corrupted. It's that simple.
english09 Posted August 27, 2010 Author Posted August 27, 2010 I thought I read that but I wasn't sure. So in the end there is nothing that these programs do that could flag your save file for hacking, unless of course the pokemon you hack are obviously hacked
Bond697 Posted August 27, 2010 Posted August 27, 2010 there are. example: in pokesav, edit a pokemon from no nickname to nicknamed. pick something random for the nick, then save the save file in pokesav. open the sav in pokegen. look at the trainer's nickname and the nicknamed poke's name. pokesav does funny things to them. you'll see bits of that nickname sometimes show up in both sets, not to mention that the nicknamed poke will have weird trash bytes beyond just bits of the name showing up in them. you don't always have to nickname it, either. sometimes, bits of the name will just show up. pokegen doesn't do that, and if you delete it with pokegen, it will fix the problem. that doesn't mean that anything major has been changed in pokesav, but it's enough to start questioning where the poke actually came from, etc.
english09 Posted August 27, 2010 Author Posted August 27, 2010 in pokesav, edit a pokemon from no nickname to nicknamed. pick something random for the nick, then save the save file in pokesav. open the sav in pokegen. look at the trainer's nickname and the nicknamed poke's name. pokesav does funny things to them. you'll see bits of that nickname sometimes show up in both sets, not to mention that the nicknamed poke will have weird trash bytes beyond just bits of the name showing up in them. you don't always have to nickname it, either. sometimes, bits of the name will just show up. pokegen doesn't do that, and if you delete it with pokegen, it will fix the problem. what do you mean by both sets?
Bond697 Posted August 27, 2010 Posted August 27, 2010 i had called the rest of the bytes in the trainer's nickname and poke's nickname trrashbytes before i edited. both sets of trashbytes often have bits of that nicknamed poke's name in them.
english09 Posted August 27, 2010 Author Posted August 27, 2010 Wait I just loaded a starly into pokesav and nicknamed it and saved. then I looked at it in pokegen and it was fine
Bond697 Posted August 27, 2010 Posted August 27, 2010 really, because i just saved one in pokesav and i got... with the "y" from starly.
codemonkey85 Posted August 28, 2010 Posted August 28, 2010 I just want to clear something up. If the software you are using is accurate enough, and you know what you are doing for sure, there is no difference between a Pokémon created by a program and one encountered in the retail carts. There seems to be this notion that there are PHANTOM SPY BYTES or something in the data that give away that the Pokémon in question was hacked, and that honestly just doesn't exist. As Codr mentioned, there is a checksum for every Pokémon, and there are obvious (and some less obvious) things that just don't jive in the data structure (incorrect trash bytes, invalid PID / IV combinations, invalid shininess, etc). But like I said, if the software is good and you know what you're doing, you won't have a problem.
Codr Posted August 28, 2010 Posted August 28, 2010 If the software you are using is accurate enough, and you know what you are doing for sure, there is no difference between a Pokémon created by a program and one encountered in the retail carts. There seems to be this notion that there are PHANTOM SPY BYTES or something in the data that give away that the Pokémon in question was hacked, and that honestly just doesn't exist. This is exactly why the whole notion of "legality" being different from "legitimacy" is absolutely ridiculous. However, people won't change. Also, I was referring to the save file checksum, but it's applicable to Pokemon too, so oh well.
codemonkey85 Posted August 28, 2010 Posted August 28, 2010 Ah, well, in the case of the save file... unfortunately we don't have a complete map of the save file structure(s), so it is technically possible that any save editing program does something (or doesn't do something) that isn't kosher. I believe Pokégen helps cover itself by allowing you to, for example, set the Pokédex to update for all of the Pokémon you currently own, thus fixing any continuity errors as far as having "caught" the Pokémon you hack into the game. Other than that, though, if you're only editing Pokémon in the save file, there probably won't be any problems.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now