Pokemon Ruby [0.5] – Generation III Save Editor

In my last post about Pokemon Ruby, I made a plan I’ll be following during this part of the challenge, so after that, I’ve spent some time figuring out how exactly I can follow this plan. The issue is, while the DS games have an excellent set of save editors, even one that’s completely online and can create ready for use and completely legitimate Pokemon out of nothing, this isn’t the case with the GameBoy Advance games. Heck, even the GameBoy generation has a large selection of tools.

It took me a while, but eventually, I found the tool for me.

Enciclopedia Pokemon – A Generation III Save Editor

I tried a couple of different editors, most of which are Japanese in origin, clearly not made for the western region and very poorly translated. The Pokemon Encyclopedia, however, is perfect. It has a nice and simple interface with a bunch of extra features as well, it works, and it does what I need it to do.

Pokemon Ruby - Treecko

The choice of starters was much easier this time – there was no choice.

I did what I did with Pokemon Crystal. First, I started a fresh game in Ruby and picked Treecko as my starter, according to the plan. Then, I played through all the way to the point where I was able to freely roam between Littleroot and Oldale town. Then, I googled and found some Pokemon Ruby Gameshark cheats. Most importantly, the one for infinite pokeballs in the first PC slot, and the one which causes Pikachu to be the only Pokemon that appears in the wild.

The code for 99 Pokeballs in PC Slot 1:

[code]BCDEC2FB 74886C64[/code]

The code for making Pikachu appear in the wild:

[code]39E924C4 4136A9DD
9D4A1BFF 05120D39[/code]

With that, I had a brand new level 2 Pikachu in my party.

Pokemon - Pikasav

My Pikachu’s stats in Pokemon Crystal.

Next up, I opened up Pikasav and loaded my Pokemon Crystal save. I took note of Pikachu’s stats in there. The mechanics change a lot between Generations 2 and 3, so I had to do some calculations.

IV – Inherent Value

Believe me when I say I’m no expert and this might be completely wrong, but the way I understand it, Individual, or inherent value, the way I call it, means the potential a Pokemon has. In the first two games, the IV’s ranged from 0 to 15 for each stat, and the higher an IV was for a single stat, the higher that stat would be as the Pokemon gets stronger. In generation III, the IV range increases to 0-31, and the formula changes to, but instead of stressing about it to much, I just doubled all of the IV values for my “reincarnated Pikachu.

Thus, I ended up with 14 for his HP, 30 Attack, 22 Defense, 4 in both Special Attack and Defense and finally, 28 for speed. My Pikachu will end up being physically tough and extremely fast. All of this is translated from back

in Pokemon Yellow, where I assume Pikachu’s stats where the way the developers imagined them in the anime.

EV – Effort Value

Effort value, unlike inherent value, can be trained. Each wild Pokemon my Pokemon manages to defeat increases his effort value in some stat by a few points. Each Pokemon can collect a total of 510 effort value points combined, so hardcore Pokemon fans actually do EV training to maximize the strengths of their Pokemon. To maximize a single stat, you need to invest 252 points into it, so the option is to maximize two selected attributes of a Pokemon, or to spread the 510 points in some other way between the attributes.

Now, this mechanic was introduced only in generation 3 and before that, it was completely different, so I couldn’t really transfer what I had to the new game. Well, technically, I could have, but this would mean I would just end up evenly distributing all of my EVs between my Pikachu’s stats. Instead, I figured out how far along my  Pikachu was in Crystal and figured out this would translate to about 427 EV points earned up to that point. I then distributed those points between my attributes based on the already existing inherent values. Basically, the more inherent value a stat had, the more effort value it would get.

Enciclopedia Pokemon - Gen III Save Editor

The final stats of my “converted” Pikachu.

This got me 58 in HP, 126 in Attack, 92 defense, 18 in Special Attack, 16 in Special Defense and finally, 117 in Speed. I had some rounding errors, so I added the final two points to Special Attack, which is why it ended up being different from Special Defense. Now at this point, I have my doubts, since Pikachu is supposed to rock with Thunder attacks, but I have my math and I’m sticking to it. I can always grind some more if Pikachu ends up to weak.

How to Edit the Pokemon Ruby Save?

Well, as I said, I opened the Pokemon Crystal save in Pikasave, saw the stats and did the math. Then I opened the Pokemon Ruby save with Enciclopedia Pokemon and edited Pikachu’s values there. It really is as simple as that. I had one minor issue after I did this, though. Loading the game with Visual Boy Advance gave me a message about my save file being corrupted and reverting to the last save, but the game loaded up fine anyway and I didn’t find any issues.

Like? Share!Flattr the authorShare on Google+0Pin on Pinterest1Share on Facebook0Share on Reddit2Share on Tumblr0Tweet about this on TwitterShare on StumbleUpon1Share on LinkedIn0
  • rekotc

    hi! pretty interesting article 🙂 im wondering, since im planning to create a small conversion program to transfer gen II pokemons to gen III, what’s the big deal with the EVs values? As far as i know, the difference is in the cap values, the highest value in gen 2 is 65536 for each stat and in gen 3-4-5 is 252 (510 in total). Am i wrong? what’s the problem if i make a proportion among those values?

    • Hey! Thanks for commenting.

      I’m not really familiar with the math behind it, but if it’s all linear, a proportional conversion should be more than fine.

      The thing is, with initial values the Pokemon begin with, it didn’t make sense for me to just evenly distribute Pikachu’s EVs. In reality, he would probably end up in a different place than “all EVs equal”. For simple conversion, though, I really don’t see any other option that what you suggest.

      • rekotc

        mmm i realized that the problem is a little more complicated than that. There is another condition that has to be considered in newer pokemon games, The condition tells that all the EVs values must globally sum up to 510. So i cant simply convert every 2nd gen value to a 3rd gen value, because it can easily happen that these values sum up to a number higher than 510. Im trying to find a viable way to make this conversion. I’d love to have my old pokemon back in newer games.!!!

        • You could still do a proportional conversion.

          Sum up all your values from Gen 2.

          For each of your value, get a proportion:

          X = VALUE/VALUESUM

          Calcalate new value based on that percentage:

          NEWVALUE = 510 * X

          This should give it all a proportioned amount, but the thing is, if the old pokemon has a max value in everything, it doesn’t really make sense for it to have an equally “low” value in everything once converted.

          This is the reason why I didn’t do it that way with pikachu. Instead, I gave it a ratio based on the initial stats pikachu has.

  • Dwsdfds Qwdsxz

    Hello, sir

    I have a problem I really want to use a save file editor but I don’t know which emulator I should use, because VBA makes a .sgm file and BA makes .co files.
    My question is: What emulator should I use to create .sav files.


    • I always used VBA and I can tell you for sure that it worked. I don’t know about BA.