• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Staff applications for our PokéCommunity Daily and Social Media team are now open! Interested in joining staff? Then click here for more info!
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Tool: YAPE (Yet Another Pokemon Editor)

  • 11
    Posts
    16
    Years
    • Seen May 18, 2008
    Hello, everyone. I'm announcing the release of YAPE (Yet Another Pokemon Editor) version 0.9. This is, essentially, a pre-release of the coming version 1.0 (due out when it's out). I figured the community could use the new tool, and since all of the main features are complete and at least lightly tested, I'm releasing 0.9 now.

    Main Features
    YAPE works on the 3rd generation games (R/S/FR/LG/E) and edits the following:

    • All of the base stats, EVs, etc. This includes a few I have not seen editable in any other editors (such as the level-up rate).
    • Evolutions
    • Usable TMs/HMs
    • Learned attacks. (it even handles updating all the pointers automatically; adding/removing these for a pokemon is now extremely easy.)
    • Pokedex entries (including the height, weight, size, and text)

    Some possibly less-obvious features:

    • Everything in the "Pokémon Selection" group can be used to select the active Pokémon. That means you can click on an entry in the evolution tree, enter one of the dex numbers, or select by name, etc.
    • You CAN change the number of learned attacks for a Pokémon. YAPE keeps all learned attacks for all Pokémon in the same space and only places a restriciton on the total across all Pokémon (to avoid overwriting important data by accident.) If you wish to add more learned attacks to say, bulbasaur, you would need to remove one from another Pokémon. You can add more moves to the "?" Pokémon this way. In future versions I plan to have the ability to specify a custom pointer for these for more advanced users, but beware that there will be no checking/automatic pointer updating on any such custom pointer values.
    • The text for the Pokédex entries is like the learned attacks. YAPE only tracks the total space for all text. If you want to make one entry longer, you would need to shorten another one.
    • It is possible to change what a Pokémon breeds to, but this must be done by editing evolutions. The game just backtracks through the evolution tree to determine what the result of breeding is. (There are a few special cases where it will stop before the beginning, such as breeding wobuffet without having it hold a lax insence, but everything else uses the beginning of the tree.) See the help file for more detailed info on how to do some more advanced things with this.
    FAQ

    • Is it possible to add/edit dex entries for the "?" Pokémon (the ones between Celebi and Treecko)?
      • No. At least not in any useful manner. There is a limit of 386 dex entries. Technically, you could have an entry for them by changing the national dex numbers of these Pokémon to something between 1 and 386. However, this provides no real benefit over simply editing the stats/graphics of another existing Pokémon that already has a national dex number in the required range. See post #33 of this thread for all the gory details. If you want to make a hack with more than 386 Pokémon, it is strongly suggested that you wait for D/P tools and use those games as a base instead.
    • I opened a ROM in YAPE, just changed one thing (or nothing at all), hit save, and lots of bytes changed in the ROM. What gives?
      • The additional change you are seeing is probably normal. YAPE doesn't specifically track what was edited, it just saves all data every time you do a save. The things that are likely to change are:
        • the pokedex text/pointers (mainly in leaf green, as YAPE compacts all the entries and lg has some empty space in its dex text area)
        • The order of evolution data. For example, Eevee has 5 evolutions. It is possible that YAPE may change the order that these 5 evolutions appear in. (Evolution data is compacted/sorted internally in YAPE. When it writes the data back, it puts it in the sorted order rather than original order.)


    Feature Requests
    I'm listing the feature requests that I'm considering here.
    I have no current timelines for any of these features, so please do not ask when any of them will be done. In fact, I make no guarantees that any of these will be finished at all. They will only be added if I have the time and can do so in a sane, stable, and user-friendly fashion.

    Considered for v 2.0 or sooner. I have at least a general idea of how to handle all of these, but in many cases the implementation is non-trivial:

    • Egg move editing. (Thanks to Teh Baro for info on this)
    • Pokédex order editing.
    • Simple method for expanding the space available for dex text and learned attacks. This will allow the addition of many more learned attacks and larger text entries without losing the safety and convenience of YAPE's automatic pointer updates.
    • Various other polish and niceties in the UI.
    • Importing/Exporting data as text.
    Considered for post-v2 (Probably a long way off, if I ever get to it.):

    • Graphics editing for Pokémon (sprite, pallete, position on battlefield, presence of shadow, etc.). General graphics editing should be done with a tile editor or unlz etc.
    Considered for separate companion tools to YAPE:

    • Type strength/weakness editor.
    • Attack editor (i.e. something that edits attack name, power, accuracy, etc.)
    • Item editor


    If you would like to see a feature that's NOT listed above, feel free to let me know. Be aware, though, that I've got a pretty large list already, so the odds of any new requests (aside from very minor ones) being added in the near future is small.


    If you're having issues with YAPE:

    • If the program will not start due to some error, you probably have one of the following issues:
      • You do not have the .Net framework 2.0 or higher installed. You can get this through windows update or from microsoft.com. It is free.
      • You're missing some of the dlls required by YAPE. These are included in the distribution; make sure you keep them in the same folder as the main program.
    • If anything in the UI is confusing, check the help files first. They contain much more detailed descriptions about what some of the options and stats mean.
    • Currently this only edits the English versions of the games. If someone can track down the necessary offsets for other versions, I will add support for those as well.
    • If you have a problem not covered above, either PM me or post in this thread and I will do my best to help you.

    Translators Wanted

    I would love to be able to release 1.0 in a few more languages. If anyone is interested in translating it, let me know. I'm using ini files for all of the program's text, so you would not need to do any actual programming. Take a look in data\en-us\*.ini for an idea of what would be involved in the translation. (Translating the help file would be nice as well, but I realize that is more work...)

    Translation Update:

    • See post #38 for some more detailed instructions on making a translation.


    Constructive feedback is, of course, welcome.

    Enjoy!
    --Silver314
     
    Last edited:
    Wow, I am very impressed, this really has it all! I can't beleive no one has replied for 3 days...

    Anyway I just tried it out and it's awesome! This is definitely the best Pokemon Editor yet. There is really nothing to improve on. I hope you continue making more programs, because if this is any indication I'm sure they will be great.
     
    This is cool!
    It's in English too!
    Now I can edit pokemon understanding the tools on that tool!
     
    Wow... It's beautiful... :o I didn't expect to see a C# Programmer in PC either. You have shocked me. This program is fantastic. I hope, and I'm sure the rest of PC, to see more programs by you in the near future. :)

    EDIT: Just thought I'd add that your layout is great. Really easy to understand. This could well be the Ultimate Advance Gen Editor. :D
     
    I can't open it.
    "Application error"
    (sorry, I know why I can't open it)
    That tool is good.
     
    I am cursing myself that I did not find this thread earlier and I login daily.Its really a very good and useful tool.Nice job.Expecting more tools.
     
    Cool, I like the GUI of YAPE. (Catchy name, lol) It's lookin good so far, keep workin on it =)
     
    Nice now the hacking of pokemon can really start.Also just wondering since its a pre-release are you going to add more features like being able to import/export the pokemon sprites and everything that has to do with sprites.

    Also is netframeworkfree?
     
    Last edited:
    The name sounds catchy and the tool looks great. I might use this since I don't really have a good pokemon editor. Nice work!
     
    Wow! This even edits the Pokedex entry of the Pokemon!
    Awesome program, you're an Awesome programmer! How long did it take for you to finish this Program?

    Anyways, this has it all, everything that a POKéMON needs to be edited.
    Maybe you should add the Offset for the Picture and the Palette into this program too, so repointing can be easier. Thanks for this program, it's amazing!
     
    Fantastic program!

    But does it also repoint dex locations for the ??? pokemon?
    I can recall that Darthatron had some trouble with it..
     
    add a move editor and you'll have the best pokemon GBA editor out 0.-
     
    this by far seems like the best program because of these replies.
    you are a great programmer.
    and it looks like you have some trouble darthatron.
    now off to microsoft to get .NET.
     
    Thanks for the kind words, everyone.

    I'm glad the UI is appreciated. I spent a lot of time trying various layouts for the program before settling on what I have.

    As I said in the first post, this is a pre-release and the current version number is only 0.9. I do, in fact, have plans for YAPE 1.0+. I kept thinking of new features during development, but decided that YAPE had reached a point where I needed to stop, polish it up, and release it so that the community had something to use while I worked on the other features.

    Just so everyone knows, I don't currently have any plans to add D/P support to YAPE or anything else. From what I've seen on the board it looks like PokeSpam Inc has good plans to cover these games and I look forward to seeing what they put together. Personally, I want to focus on putting together the best advance gen tools I can for now.


    As for some of the other questions/comments...

    @12345 - I'm guessing you either didn't keep all the dlls with the main program or didn't have the .net framework installed. I'll update the main post to give a more obvious warning about that.

    @D-Trogh - I wasn't thinking about YACC at the time I named my program, but some of my friends have used it before (I've managed to avoid building any compilers myself...).

    @cooley - Total time was maybe a month and a half worth of my spare time. A lot of fiddling with the UI (this is my first time writing anything with a meaningful GUI, I usually just write command line programs and libraries.) On the topic of sprite and pallette offsets, well, I considered something like that, but I have... more interesting graphics plans if I ever get around to it.

    @Epsilon - I'm not sure what issue you're referring to. The dex data is stored by national dex number in the games; it's not directly tied to the Pokémon. There's only room for 386 entries unless you completely move the dex data to a new location.

    The ???? Pokémon (if you're referring to the ones that appear between celebi and treecko in the game) have national dex numbers > 368. I list the number of dex entries in the INI files and YAPE just disables editing of the dex data for any Pokémon with a national dex number higher than that. If you you have gone to the trouble to relocate the dex data so that you have room for more, all you would need to do is update the INI files and YAPE would then let you edit the dex entries.

    I have no intentions of adding support for automatically tracking down free space and relocating all the dex data or anything, but if you've already done it, YAPE will support that with a simple INI update.

    @Ahegil - Looks like you managed to guess one of the features for upcoming versions ;-)


    --Silver314
     
    Beautiful work man!!
    Anger to help me a lot in the production of my hack!

    I have a question and a suggestion!!
    Do you know as to put or to remove the shadows below of the sprites of the pokemons?
    If yes... put that function in the next version!!

    Thank you!
    Good Luck!
     
    Back
    Top