The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > ROM Hacking > Tools, Tutorials & Resources
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

Tools, Tutorials & Resources Various tools to help you develop your hacks can be found here.
New threads in this forum are to be approved by a moderator before they are displayed.


Advertise here

Reply
Click here to go to the first staff post in this thread.  
Thread Tools
  #1    
Old April 25th, 2008, 11:06 PM
silver314
Beginning Trainer
 
Join Date: Feb 2008

Advertise here
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
Attached Images
File Type: png yape-1.png‎ (34.0 KB, 4839 views) (Save to Dropbox)
File Type: png yape-3.png‎ (32.9 KB, 2311 views) (Save to Dropbox)
File Type: png yape-4.png‎ (34.9 KB, 1867 views) (Save to Dropbox)
File Type: png yape-5.png‎ (27.6 KB, 2027 views) (Save to Dropbox)
Attached Files
File Type: zip YAPE 0.9.zip‎ (419.4 KB, 30172 views) (Save to Dropbox)

Last edited by silver314; May 16th, 2008 at 08:19 PM. Reason: Added FAQ
Reply With Quote
  #2    
Old April 28th, 2008, 05:02 PM
Thrace's Avatar
Thrace
@tion
 
Join Date: Jun 2007
Age: 23
Gender: Male
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.
__________________
Reply With Quote
  #3    
Old April 28th, 2008, 05:10 PM
Tyrantrum's Avatar
Tyrantrum
none pizza with left beef
Community Supporter
 
Join Date: Oct 2007
Location: New Jersey
Age: 20
Gender: Male
Nature: Lonely
Send a message via Skype™ to Tyrantrum
This is cool!
It's in English too!
Now I can edit pokemon understanding the tools on that tool!
__________________




(x) Tumblr
(y) Gallery
Previously Eeveon
Reply With Quote
  #4    
Old April 28th, 2008, 07:06 PM
Darthatron's Avatar
Darthatron
巨大なトロール。
Community Supporter Tier 2
 
Join Date: Jan 2006
Location: Melbourne, Australia
Age: 22
Gender: Male
Nature: Modest
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
__________________
あなた は しきしゃ です
わたし は ばか です
Reply With Quote
  #5    
Old April 28th, 2008, 08:05 PM
12345's Avatar
12345
Sky
 
Join Date: Aug 2007
Gender: Male
Nature: Calm
Send a message via Windows Live Messenger to 12345
I can't open it.
"Application error"
(sorry, I know why I can't open it)
That tool is good.
Reply With Quote
  #6    
Old April 28th, 2008, 11:00 PM
pavanbharadwaj
Beginning Trainer
 
Join Date: Nov 2007
Location: India
Age: 23
Gender:
Nature: Quiet
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.
Reply With Quote
  #7    
Old April 29th, 2008, 12:16 AM
Kaizer-X's Avatar
Kaizer-X
RoM HaCkeR
 
Join Date: Mar 2008
Location: Look outside your window and you will see me there
Age: 23
Gender:
Nature: Bold
wow thks a lot, this is a really good tool
__________________








LINKS:
MY HACK:
Pokemon Twilight: Road to Dreams
MY TEAM:
Rom Tempest Crew
NEWLETTER:
Rom Hacking Newsletter
Credit to Rényui for theme
Reply With Quote
  #8    
Old April 29th, 2008, 12:22 AM
SerenadeDS's Avatar
SerenadeDS
Trainer
 
Join Date: Feb 2007
Cool, I like the GUI of YAPE. (Catchy name, lol) It's lookin good so far, keep workin on it =)
Reply With Quote
  #9    
Old April 29th, 2008, 01:14 AM
simplynaruto
Booted out - don't be like me!
 
Join Date: Apr 2008
Location: travelling to azengard
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 by simplynaruto; April 29th, 2008 at 01:17 AM. Reason: Your double post has been automatically merged.
Reply With Quote
  #10    
Old April 29th, 2008, 05:49 AM
Team Poison's Avatar
Team Poison
<-<=Arbok is a Kobra!
 
Join Date: Jun 2006
Location: Berkshire, England, UK
Age: 27
Gender: Male
Nature: Hardy
Quote:
Originally Posted by simplynaruto View Post
Also is netframeworkfree?
You get it free from Bill Gates Homepage
__________________
Reply With Quote
  #11    
Old April 29th, 2008, 08:52 AM
Binary's Avatar
Binary
え?
 
Join Date: Aug 2007
Age: 20
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!
__________________
Reply With Quote
  #12    
Old April 29th, 2008, 09:26 AM
D-Trogh's Avatar
D-Trogh
Dead
 
Join Date: Jul 2005
Location: Belgium
Age: 22
Gender: Male
Send a message via Windows Live Messenger to D-Trogh
Woow.. Really nice GUI. Simple yet beautiful ;)
For the name, you know YACC, don't you? =P
__________________
[NTME | WPEDS | HTPE | SGPE | TGPE | PDEDS]
Reply With Quote
  #13    
Old April 29th, 2008, 10:11 AM
cooley's Avatar
cooley
///Keepin' it simple
 
Join Date: Feb 2007
Location: United States
Age: 19
Gender: Male
Nature: Impish
Send a message via Windows Live Messenger to cooley Send a message via Skype™ to cooley
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!
__________________

Reply With Quote
  #14    
Old April 29th, 2008, 11:44 AM
Epsilon's Avatar
Epsilon
Shiny Scizor
 
Join Date: Jun 2006
Location: The netherlands
Gender:
Nature: Adamant
Fantastic program!

But does it also repoint dex locations for the ??? pokemon?
I can recall that Darthatron had some trouble with it..
__________________
Reply With Quote
  #15    
Old April 29th, 2008, 01:14 PM
Ahegil's Avatar
Ahegil
The Breeder Chick
 
Join Date: Nov 2006
Gender:
Nature: Naughty
add a move editor and you'll have the best pokemon GBA editor out 0.-
__________________


PokeSpam Inc.
Reply With Quote
  #16    
Old April 29th, 2008, 02:58 PM
Stalin Malone's Avatar
Stalin Malone
Order. Stability. Progress.
 
Join Date: Feb 2008
Location: Is that the future you were expecting?
Age: 27
Gender:
Nature: Sassy
Very nice! I wouldn't mind seeing one of these for D/P's pokemon.
Reply With Quote
  #17    
Old April 29th, 2008, 03:21 PM
Vegeta™'s Avatar
Vegeta™
 
Join Date: Jul 2007
Location: London, UK
Age: 23
Gender: Male
Nature: Modest
Very good indeed, simple to use
Reply With Quote
  #18    
Old April 29th, 2008, 06:58 PM
Yoshimi's Avatar
Yoshimi
☆「GANG-STAR」☆
 
Join Date: Nov 2007
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.
Reply With Quote
  #19    
Old April 29th, 2008, 08:25 PM
silver314
Beginning Trainer
 
Join Date: Feb 2008
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
Reply With Quote
  #20    
Old April 30th, 2008, 07:34 AM
Derlo's Avatar
Derlo
Braziliam Hacker!! De Mossoró
 
Join Date: Aug 2007
Send a message via Windows Live Messenger to Derlo
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!
Reply With Quote
  #21    
Old April 30th, 2008, 08:45 AM
Teh Baro's Avatar
Teh Baro
In my times...!
 
Join Date: Mar 2006
Location: Spain
Gender: Male
Nature: Quiet
Quote:
Originally Posted by Derlo View Post
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!
That and height where the pokemon is placed in battle, and this will be even perfect.

BTW, about that breeding thing below... does it just track back evolutions? Does the game do that or there's breeding data somewhere in the rom?
__________________
what the fudge
Reply With Quote
  #22    
Old April 30th, 2008, 09:09 AM
Epsilon's Avatar
Epsilon
Shiny Scizor
 
Join Date: Jun 2006
Location: The netherlands
Gender:
Nature: Adamant
@silver314

I'm referring to the 24 ???? pokemon that come after celebi,
or do they already have on?
__________________
Reply With Quote
  #23    
Old April 30th, 2008, 07:14 PM
silver314
Beginning Trainer
 
Join Date: Feb 2008
@Derlo and Teh Baro
I don't currently know how to change shadows, or position of the battle sprites, but I agree that this would be a nice feature. I will add these to my list of things to consider for future versions.

@Teh Baro
The game itself just traces back up the evolution tree to determine what a Pokémon breeds to. It does have some special code to make it so that wobuffet must be holding lax insence to produce the first evolution in the tree, but aside from this there is no other table or anything for the breeding info. It's simple backtracking through the evolutions. I did a fair amount of experimentation to ensure that YAPE followed the same basic process to determine this as the game does. I don't have any special notifications for the exceptions like wobuffet though.

@Epsilon
I'll make an attempt at explaining how all of the dex information works and hopefully that will help.

There are 2 main locations for dex data. One offset has 386 fixed-size entries with height, weight, etc. and pointers to the text data. The text data is stored seperately.
YAPE does handle updating all of the pointers in these dex entry structures as needed when you modify any text.

The way that a dex entry is tied to a Pokémon is not through a normal pointer; rather, the dex entries constitute an array with 387 elements and the national dex number of the Pokémon is used as an index into that array.

The ??? Pokémon you refer to all have national dex numbers > 386, so the game has issues if you catch one as it attempts mark a dex entry as caught that is beyond the size of the array. It is certainly possible to change the national dex numbers of these ??? Pokémon (future versions of YAPE will allow changing of the dex order), but you still have the limitation that all of the dex entries need to be together. Unless you relocate the entire array of dex data, you are still limited to 387 dex entries.

When you edit a dex entry in YAPE, all that happens is that I look up the national dex number for the selected Pokémon and modify the dex data at that index. Unlike the game, YAPE does do bounds checking and will not allow editing of any data beyond the end of the dex data array.

If you go to the Pokédex tab for one of the ???? Pokémon in YAPE, you will see that all editing is disabled because there is no corresponding dex entry for that Pokémon.

Summary: No. You can't just repoint these to some random location in the game because these are not accessed through normal pointers; they are accessed as an array where the national dex number is the index. Future versions of YAPE will let you modify the dex number (array index) used, but if you want more than 387 dex entries, you have to relocate the entire dex data.


Also, I'm putting together some technical documentation on the side which will have answers to these sorts of questions. I'll be releasing it when I get it finished for anyone who's interested.

--Silver314
Reply With Quote
  #24    
Old May 1st, 2008, 12:20 AM
Epsilon's Avatar
Epsilon
Shiny Scizor
 
Join Date: Jun 2006
Location: The netherlands
Gender:
Nature: Adamant
Ok, thanks for explaining!

Maybe with this info,
people (maybe me) are going to be able to add pokemon after the last hoenn pokemon.
A complete dp generation in FRLG!

(I know that dex information isn't everything,
but still, it's a start)
__________________
Reply With Quote
  #25    
Old May 1st, 2008, 02:40 AM
liuyanghejerry's Avatar
liuyanghejerry
Trainer
 
Join Date: Jan 2008
Location: China,Xi'an
Nature: Calm
Send a message via ICQ to liuyanghejerry Send a message via Windows Live Messenger to liuyanghejerry Send a message via Yahoo to liuyanghejerry
I can't open it either...
It need .net 1.1 or 2.0?
__________________
Zel,thethethethe,LU-HO,Darthatron,HackMew,ZodiacDaGreat,Juan,score_under,JPAN,Tamah-chan,I really appreciate your kindness and your help!:D


I did something that really bad.But made all Chinese can hack Pokemon, too.If you guys hate me, I totally understand,but cannot do anything but force to keep everything.
If there must be someone to undertake all spit and curse, it must be me.
Reply With Quote
Reply
Quick Reply

Sponsored Links


Advertise here
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Minimum Characters Per Post: 25



All times are UTC -8. The time now is 03:23 AM.


Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2014 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.