PDA

View Full Version : [New Release] YAPE (Yet Another Pokemon Editor)


silver314
April 26th, 2008, 03:06 AM
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

dshayabusa
April 28th, 2008, 09:02 PM
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.

Wind~
April 28th, 2008, 09:10 PM
This is cool!
It's in English too!
Now I can edit pokemon understanding the tools on that tool!

Darthatron
April 28th, 2008, 11:06 PM
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

12345
April 29th, 2008, 12:05 AM
I can't open it.
"Application error"
(sorry, I know why I can't open it)
That tool is good.

pavanbharadwaj
April 29th, 2008, 03:00 AM
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.

Kaizer-X
April 29th, 2008, 04:16 AM
wow thks a lot, this is a really good tool

SerenadeDS
April 29th, 2008, 04:22 AM
Cool, I like the GUI of YAPE. (Catchy name, lol) It's lookin good so far, keep workin on it =)

simplynaruto
April 29th, 2008, 05:14 AM
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?

Team Poison
April 29th, 2008, 09:49 AM
Also is netframeworkfree?

You get it free from Bill Gates Homepage

cε׀׀
April 29th, 2008, 12:52 PM
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!

D-Trogh
April 29th, 2008, 01:26 PM
Woow.. Really nice GUI. Simple yet beautiful ;)
For the name, you know YACC, don't you? =P

cooley
April 29th, 2008, 02:11 PM
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!

Epsilon
April 29th, 2008, 03:44 PM
Fantastic program!

But does it also repoint dex locations for the ??? pokemon?
I can recall that Darthatron had some trouble with it..

Ahegil
April 29th, 2008, 05:14 PM
add a move editor and you'll have the best pokemon GBA editor out 0.-

BRTD
April 29th, 2008, 06:58 PM
Very nice! I wouldn't mind seeing one of these for D/P's pokemon.

knight
April 29th, 2008, 07:21 PM
Very good indeed, simple to use

makunouchi
April 29th, 2008, 10:58 PM
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.

silver314
April 30th, 2008, 12:25 AM
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

Derlo
April 30th, 2008, 11:34 AM
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!

Teh Baro
April 30th, 2008, 12:45 PM
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?

Epsilon
April 30th, 2008, 01:09 PM
@silver314

I'm referring to the 24 ???? pokemon that come after celebi,
or do they already have on?

silver314
April 30th, 2008, 11:14 PM
@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

Epsilon
May 1st, 2008, 04:20 AM
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)

liuyanghejerry
May 1st, 2008, 06:40 AM
I can't open it either...
It need .net 1.1 or 2.0?

itman1234
May 1st, 2008, 06:45 AM
Wow, i'm impressed, this program rocks!
It has everything you need to edit pokemon!

I have nothing else to say lol, but wow, its really useful!
Great job, I can't wait for the final release!

choatix
May 1st, 2008, 08:26 AM
Awesome program!
It does almost everything you'd ever want a tool like it to do!
Maybe in the next version, you could add the pokemon's egg moves, pokemon it breeds too, and a picture for them. (because PokePic doesn't work on FRLG, which this does, so I can actually add pokemon like Budew, Roserade and so can others too) And also, a way to change the amount of moves each pokemon can learn... it's annoying if you are replacing the ? pokemon with new pokemon as they can only learn 1 move.

As I said, it's totally awesome!

swampert22
May 1st, 2008, 10:46 AM
Awesome program!
It does almost everything you'd ever want a tool like it to do!
Maybe in the next version, you could add the pokemon's egg moves, pokemon it breeds too, and a picture for them. (because PokePic doesn't work on FRLG, which this does, so I can actually add pokemon like Budew, Roserade and so can others too) And also, a way to change the amount of moves each pokemon can learn... it's annoying if you are replacing the ? pokemon with new pokemon as they can only learn 1 move.

As I said, it's totally awesome!

If you want to add a whole moveset for a ? Pokémon, use PEP by Darthatron, you can add as many attacks as you want then. Maybe silver314 will add this into the next version...

Awesome tool by the way!!!

Teh Baro
May 1st, 2008, 10:53 AM
Awesome program!
It does almost everything you'd ever want a tool like it to do!
Maybe in the next version, you could add the pokemon's egg moves, pokemon it breeds too, and a picture for them. (because PokePic doesn't work on FRLG, which this does, so I can actually add pokemon like Budew, Roserade and so can others too) And also, a way to change the amount of moves each pokemon can learn... it's annoying if you are replacing the ? pokemon with new pokemon as they can only learn 1 move.

As I said, it's totally awesome!
----------
Instead of pokepic, use unlzgba and similars.
And for the ?? pokemon attacks, each attack list is a pointer to the data. YAPE would use some repointing for this.
----------
Just in case silver wants to do the egg thing, I have some info on that:

Egg Moves
These moves are learned through breeding. They are listed as follows:
[Pokémon][Attack][Attack]...[Pokémon][Attack]...
All of this in 16-bit values. The Pokémon index is increased by 4E20 (20.00010) to distinguish them from attack indices. For example, Pikachu’s index is 19. That plus 4E20 equals 4E39, so Pikachu’s egg move data would start with that.

Example: Geodude
This is the data for an R/S Geodude, found at offset 209366 in Ruby and 25F096 in Fire Red:
[4E6A][0005][009D][014F]
4E6A – 4E20 = 4A, which is Geodude’s index. 0005 is “Mega Punch”, 009D is “Rock Slide” and 014F16 is “Block”. Feel free to check this with strawhat’s FR/LG Pokédex on GameFaqs.
- - - - - - - - - - Source: Kawa's collected pokemon documents


And, checking myself at 25F096, I see that lists end with next pokemon's list (values > 4E20). And that only base pokemon have egg moves (next to geodude's egg moves are... next to golem is tentacool right?), so a function to repoint the whole list (each list is not pointed, the whole list is loaded each time), would be useful because the amount of evolution chains may differ.

I hope this helps (I suppose so) and encourages silver to add this feature.

silver314
May 1st, 2008, 02:02 PM
@chaotix
[breeding]
You already can edit what a Pokémon breeds to. Sort of. The game determines this by looking up the evolution tree. There are some special cases like wobuffet and marill that do some checking beyond this, but the result is everything always breeds to the first Pokémon in the tree or the second if there is a special requirement (holding lax insence for example) to reach the first.

You have a surprising amount of control over this. If you wanted to add manaphy and phione to the game, it's pretty easy. There's a specific evolution type for this (for breeding only). You could add a "for breeding only" evolution for phione to manaphy. Now, if you breed manaphy, you will get phione, but phione will never evolve into manaphy.

[Attacks]
You can already use YAPE to add more moves to the ??? Pokémon right now. It does not place any restriction on the number of attacks learned per Pokémon. It does keep all of the learned attack data together and limits the total space used so you don't accidentally overwrite anything important. It updates all required pointers automatically.

Unfortunately, this means there's no simple way using YAPE to have these attacks spread all over the ROM with random pointers. The benefit is that by keeping all of the data in one location, YAPE automatically computes all of the necessary pointers for the attack data without you doing anything. So, for example, if you removed an attack from chimeco and added one to bulbasaur, YAPE would handle updating every single pointer between them. For the type of editing I was doing myself, this was much more convenient, but as you may be noticing, there are some drawbacks...

Perhaps some sort of hybrid model that allows both the ease of automatic pointer updating most of the time and overriding it for individual Pokémon would work.

@Teh Baro
Thanks for the info. I was wondering if anyone had found out how to edit this yet. You have a link or anything for those documents?

--Silver314

Teh Baro
May 1st, 2008, 03:21 PM
@Teh Baro
Thanks for the info. I was wondering if anyone had found out how to edit this yet. You have a link or anything for those documents?

--Silver314
Actually I don't even know if they exist online, he just sent them to me via msn. I can sent them to you if you want, just pm me your email address or something

Kronos1000
May 3rd, 2008, 02:04 AM
I checked out your editor, it's great! But isn't there a way to give the ?? Pokémon a Pokédex data?

silver314
May 3rd, 2008, 05:04 AM
I checked out your editor, it's great! But isn't there a way to give the ?? Pokémon a Pokédex data?

I spent a couple hours looking into this since I've had several requests for it and I'm going to have to say no for now. I expected some complications involved, but it turned out to be far more difficult than I had hoped.

Here's the issue:

The Pokédex data is stored in its own table and the Pokémon's national dex number serves as an index into this table. The table in the games only has room for 386 entries and the ?? Pokémon have national dex numbers higher than 386. In order to add more entries, the table needs to be relocated and all of the pointers in the game that refer to this table need to be updated.

I tried the relocation and pointer update, and that was pretty simple. It could even be done in an automated fashion via some sort of "Pokédex expansion" option in YAPE. Then I discovered the more difficult problems...

In addition to adding more data entries (which is possible after moving the table to make more room), the game also has a fair bit of code that accesses the dex data at various times. Most of this code has checks built in to it so that it will not work properly if the national dex number is higher than 386.

Some of the code that needs to be updated:


"Seen" code (adds partial data to dex when you encounter a Pokémon)
"Catch" code (adds full data when you catch a pokémon. This may or may not be combined with the code for when you hatch a new Pokémon or get one in a trade...)
"Dex rating" code (it would need to know that there are now more than 386 entries.)
Anything else that makes use of the dex data (I'm bound to be missing something...)


I don't know where most of the code is that needs to be updated. Even if I took the time to track it down for say, FR and LG, I would need to essentially start from scratch on R/S/E as there's no telling how different the code would be until I look into it.

I'm not saying this can't be done, it certainly could; I'm just saying that based on what I know now, I don't believe adding those extra 25 entries for all the advanced gen games is worth the effort required.

--Silver314

Epsilon
May 3rd, 2008, 05:12 AM
I spent a couple hours looking into this since I've had several requests for it and I'm going to have to say no for now. I expected some complications involved, but it turned out to be far more difficult than I had hoped.

Here's the issue:

The Pokédex data is stored in its own table and the Pokémon's national dex number serves as an index into this table. The table in the games only has room for 386 entries and the ?? Pokémon have national dex numbers higher than 386. In order to add more entries, the table needs to be relocated and all of the pointers in the game that refer to this table need to be updated.

I tried the relocation and pointer update, and that was pretty simple. It could even be done in an automated fashion via some sort of "Pokédex expansion" option in YAPE. Then I discovered the more difficult problems...

In addition to adding more data entries (which is possible after moving the table to make more room), the game also has a fair bit of code that accesses the dex data at various times. Most of this code has checks built in to it so that it will not work properly if the national dex number is higher than 386.

Some of the code that needs to be updated:


"Seen" code (adds partial data to dex when you encounter a Pokémon)
"Catch" code (adds full data when you catch a pokémon. This may or may not be combined with the code for when you hatch a new Pokémon or get one in a trade...)
"Dex rating" code (it would need to know that there are now more than 386 entries.)
Anything else that makes use of the dex data (I'm bound to be missing something...)


I don't know where most of the code is that needs to be updated. Even if I took the time to track it down for say, FR and LG, I would need to essentially start from scratch on R/S/E as there's no telling how different the code would be until I look into it.

I'm not saying this can't be done, it certainly could; I'm just saying that based on what I know now, I don't believe adding those extra 25 entries for all the advanced gen games is worth the effort required.

--Silver314

I agree,
It's just way too much effort.
But thanks for discovering all of this,
the information is very helpful!

For the hackers out here,
it can fit in to your storyline perfectly that you just can't record those
pokemon because they are from another region or something.

Darthatron
May 3rd, 2008, 06:06 AM
I spent a couple hours looking into this since I've had several requests for it and I'm going to have to say no for now. I expected some complications involved, but it turned out to be far more difficult than I had hoped.

Here's the issue:

The Pokédex data is stored in its own table and the Pokémon's national dex number serves as an index into this table. The table in the games only has room for 386 entries and the ?? Pokémon have national dex numbers higher than 386. In order to add more entries, the table needs to be relocated and all of the pointers in the game that refer to this table need to be updated.

I tried the relocation and pointer update, and that was pretty simple. It could even be done in an automated fashion via some sort of "Pokédex expansion" option in YAPE. Then I discovered the more difficult problems...

In addition to adding more data entries (which is possible after moving the table to make more room), the game also has a fair bit of code that accesses the dex data at various times. Most of this code has checks built in to it so that it will not work properly if the national dex number is higher than 386.

Some of the code that needs to be updated:


"Seen" code (adds partial data to dex when you encounter a Pokémon)
"Catch" code (adds full data when you catch a pokémon. This may or may not be combined with the code for when you hatch a new Pokémon or get one in a trade...)
"Dex rating" code (it would need to know that there are now more than 386 entries.)
Anything else that makes use of the dex data (I'm bound to be missing something...)


I don't know where most of the code is that needs to be updated. Even if I took the time to track it down for say, FR and LG, I would need to essentially start from scratch on R/S/E as there's no telling how different the code would be until I look into it.

I'm not saying this can't be done, it certainly could; I'm just saying that based on what I know now, I don't believe adding those extra 25 entries for all the advanced gen games is worth the effort required.

--Silver314

I could have told you it was difficult. :P People think it would be simple, but it clearly isn't. Good luck though. I hope you succeed where I failed. :)

silver314
May 4th, 2008, 03:29 AM
Just thought I'd throw out some screen shots of what I'm currently working on...

I've made it a goal to keep all of the pointer-management in YAPE as automatic as possible. This did lead to some downsides in that the total number of learned attacks and total pokédex text was limited. I had initially considered providing the ability to manually override the pointers (and lose all of the automatic update capabilites), but I think what I have now is a much better approach...

I'm adding a tool to YAPE that allows easily relocating this data. The benefits:


All pointer handling remains automatic, even if you need more space.
All of the text and learned moves stay together in the ROM. To me, this is much cleaner than scattering various pieces of the data everywhere with custom pointers.
It's much simpler and easier for average users who just want to add more text/moves. (At least I hope it is.)


The manual relocation is already working. Still some things to do on the automatic as well as other cleanup and safety checking... I'll be making another release once I have this and a few other minor things updated.

--Silver314

D-Trogh
May 4th, 2008, 03:40 AM
If this tool is complete (If it ever will be 100% finished, maybe you'll keep adding/fiing small things, I don't know ALL your plans ;)) this won't be 'Yet Another Pokémon Editor' :D
This will be 'YOPE' (Something like 'Your Only Pokémon Editor') ;) :D
Ok, what I mean with this.. Nice work! Really!
Oh, and I can translate if you want.. To Dutch. I just need a string 'table'

silver314
May 4th, 2008, 04:25 AM
If this tool is complete (If it ever will be 100% finished, maybe you'll keep adding/fiing small things, I don't know ALL your plans ;))

Software is one of those things that's never really finished. But I imagine I will eventually hit a point where adding anything new is more effort than its worth. At which point I'll move on to other projects of some sort.

Oh, and I can translate if you want.. To Dutch. I just need a string 'table'

That would be great!
And you should already have all the string table you could ever want. Brief instructions below. (Anyone else considering translations should look here too.)

To add a new language to YAPE, start by making a new folder under data (there should already be "common" and "en-us" folders here.) You'll want to name it appropriately for your language. I will use the example here of making a spanish (spain) translation. You might name the new folder "esp-espana" or whatever you want.

Under the new folder you will need a commonvals.ini file and a strings.ini file. See the examples in data\en-us. (I would just copy the English ones there and then edit the copies.)

Once you have these files in place, you can add an entry for the new language to the data\common\lang.ini file. Continuing with the example of Spanish, you might enter:

[ESP-ESPANA]
Name = Español
CommonVals = data\esp-espana\commonvals.ini
Strings = data\esp-espana\strings.ini
Help = data\esp-espana\yape-ayuda.chm

Once you have the new entry in data\common\lang.ini you can start testing it immediately. The new language should show up as an option in the Language selection on YAPE.

The only other thing you might want to translate is the help file. You would need HTML Help workshop to make this. (It's free from microsoft's website.) I do realize that this is much more work than just replacing the text in the *.ini files though...

--Silver314

P.S.
Don't forget to give yourself credit for the translation! Put something in for the "TranslationBy = " line in strings.ini. The recommended form is "xxx translation by yyy - (optional date/version/etc.)" Of course, you would write that in your language rather than English ;-)

Hiroshi Sotomura
May 4th, 2008, 08:20 AM
I'll admit that while a tool that acts as a jack of all trades would be very useful to me, I could never see myself using it. D:

But, I'll note that this is quite a star tool. I'll give you reputation for that.

Game_freak
May 4th, 2008, 02:10 PM
great work
for the graphics editor you talked about please!! could you add in a easy way to edit menu styles, battles styles, the title screen and maybe the suitcase with pokeballs you get ruby

silver314
May 4th, 2008, 05:12 PM
great work
for the graphics editor you talked about please!! could you add in a easy way to edit menu styles, battles styles, the title screen and maybe the suitcase with pokeballs you get ruby

Sorry, but I'm going to have to say no for that one.

A few reasons:


Any sort of graphics editing at all is a long way off (and I may not even add any such support)
If I do decide to add graphics editing, it would only be for the Pokémon sprites used in battle/pokédex and the icons they have in the menu. YAPE is not really intended to be a generic catch-all editor for everything in the game. It's just for editing the Pokémon's stats, evolutions, dex entries, learned moves, etc. I have already decided to split some previously planned features (attack editor, item editor, etc.) to separate tools since they don't really fall in the scope of YAPE.
Things like title screen, menu styles, etc. would best be edited by either a generic graphics editor (tile editor/unlz) or a specific tool just for that purpose, like a title screen changer.

--Silver314

Game_freak
May 6th, 2008, 03:05 PM
do you know of any such title screen editor

Neonix
May 11th, 2008, 02:30 AM
This really is an amazing tool. Very powerful and so many useful features in one fully English program. I'm really impressed and I look forward to future updates with much anticipation!

ThuGie
May 16th, 2008, 03:08 AM
silver314,
This might be a strange request but i hope you can do this,

But can you add a option to save all pokemon data to file like "txt, doc",
Or even posible to a sql database,

I was planning to write all data to a database but doing this by hand is quite well hard to do.

So if you can add a option that will store this into a file in a nice order.
I can probably write up a parser to parse the .txt file and place it into a sql database.

This would save me hours and hours of work.
Even if you can only do this by 1 file per pokemon that wouldnt matter for me.

So i hope you can respond to this and add a option like this.

Thanks.

Edit:
Before i forget could you also add,
Like locations where the pokemon can be found + rate to be found at the location + level to level,
If posible thanks again and keep up the great work :).

Teh Baro
May 16th, 2008, 05:29 AM
silver314,
This might be a strange request but i hope you can do this,

But can you add a option to save all pokemon data to file like "txt, doc",
Or even posible to a sql database,

I was planning to write all data to a database but doing this by hand is quite well hard to do.

So if you can add a option that will store this into a file in a nice order.
I can probably write up a parser to parse the .txt file and place it into a sql database.

This would save me hours and hours of work.
Even if you can only do this by 1 file per pokemon that wouldnt matter for me.

So i hope you can respond to this and add a option like this.

Thanks.

Edit:
Before i forget could you also add,
Like locations where the pokemon can be found + rate to be found at the location + level to level,
If posible thanks again and keep up the great work :).

If not YAPE, someone should make a program that autodocs all the data of a POKéMON, for release purposes: i.e. making an online pokedex of the hack

ThuGie
May 16th, 2008, 05:42 AM
Well currently its here 11:39 am in holland,
Still havent slept yet.

Currently learning a bit about api calls,
Going to try and create a application that has the ability to read information from YAPE,
And store all the information into a file/database.

But since i never really worked with api's like thats its quite some learning/testing/taking alot of time :D.
But i seem to have the basics if i ever finish it since i'm quite tired atm.
I will ofcourse if the application is at least normal useable release the application/
Or if its quite uhm well half working with testing and messing :p.
I will release the result of it so a db/file with all the information.
I probably if i finish this will store it into a sql file.

edit:
No progress its no 20:29 still havent slept so no wonder right :p.
But uhm i was checking on what YAPE changes but it seems even if i only change the hp of 1 pokemon whole chuncks of code gets altert :/,
Whats up with that is i may ask ?
Ah and i'm checking using hex compare. a function inside Hex Workshop.

silver314
May 17th, 2008, 12:09 AM
Sorry for the lack of activity here. Been really busy with other things lately. I'll probably have a bit more time in another week or two, so I should be able to make some more progress on YAPE.

Text export is a reasonable request and one I had considered anyway. I'll add it to my list...

Well currently its here 11:39 am in holland,
Still havent slept yet.

Currently learning a bit about api calls,
Going to try and create a application that has the ability to read information from YAPE,
And store all the information into a file/database.

But since i never really worked with api's like thats its quite some learning/testing/taking alot of time :D.
But i seem to have the basics if i ever finish it since i'm quite tired atm.
I will ofcourse if the application is at least normal useable release the application/
Or if its quite uhm well half working with testing and messing :p.
I will release the result of it so a db/file with all the information.
I probably if i finish this will store it into a sql file.


I'm not sure how you're reading info from YAPE, but I should warn you that some of the UI may change. Also, if you're using reflection to pull data from it, I could change the internal code and you might have some breaks then. The safest way to handle this would be for us to have a well-defined text format for exporting data from YAPE and then you can write a tool to pull that into whatever DB you want. If you're interested in defining the format, then that's fine. Otherwise I will probably make one up when I get the chance.



No progress its no 20:29 still havent slept so no wonder right :p.
But uhm i was checking on what YAPE changes but it seems even if i only change the hp of 1 pokemon whole chuncks of code gets altert :/,
Whats up with that is i may ask ?
Ah and i'm checking using hex compare. a function inside Hex Workshop.


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. (Evolution data is sorted internally in YAPE. When it writes the data back, it puts it in the sorted order rather than original order.)

There should not be any functional change aside from what you modify. If you find any, let me know and I will look into it.

--Silver314

ThuGie
May 17th, 2008, 04:43 AM
If you are really intrested into adding a feature to make it posible to save all information to a file format,
That would probably be best,
Since the way i would be reading things from YAPE,

Would break down every new version probably,
As for the format of the text itself,
Everything should do as long as its clear,

I would actually recommend a ini format,
[BASIC]
count=4 < actually amount of diffrent pokemon stored,
[INFO1]
name=BULBASUAR
more=?
more=?

Along of these lines would probably be best since about everybody knows how to read ini information,
And its pretty easy to write a parser for it,
If its made in ini format i probably write the parser in php.

As for the hex info thank you then now i know why so much data was changed,
I was actually trying to lookup where everything is stored so i could create my own tool and add it directly into a database.
I already checked the forum but only minimal information is public.

And as i'm quite new to gba editing/reading. i'm not quite sure on how to figure out where its stored at.

But i hope you add the new feature of saving it to a file that would be great!
Ofcourse i hope you not only add a posibilty to save 1 pokemon at a time but also to loop and save all pokemon information to 1 ini.

The ???? pokemon well i guess a option to save those or not would be best.

Thanks since this will save me alot of learning + messing things up.

Dukey
May 17th, 2008, 06:28 PM
this is a great pokemon editor and its simple as well god job

XIIIth Legio
May 17th, 2008, 10:01 PM
FRICKEN SHWEET!

Seriously, I find this easy yet powerful.

Jayster23
May 18th, 2008, 05:47 AM
does this have Intro Pokemon editor and a good scripting thing

D-Trogh
May 18th, 2008, 06:04 AM
does this have Intro Pokemon editor and a good scripting thing
WTF.. Turn back and never come back.. - -'
Why do you think YAPE (Yet Another Pokémon Editor) would have this function.. (It doesn't - to be clear)

Teh Baro
May 18th, 2008, 06:15 AM
does this have Intro Pokemon editor and a good scripting thing

Yeah, and it also haves a shiny POKéMON auto ASMer, and a implemented patch that turns your kanto/hoenn maps into sinnoh
duuuhhh

xeladude
May 22nd, 2008, 06:32 PM
I downloaded this from WAH yesterday, its the best! Hope you continue, i gave my charizard a Sacred Fire with this! Keep truckin!

Pie
May 26th, 2008, 05:58 PM
Whenever I try to load a ROM it says it's not configured. What's up?

attacaine
May 28th, 2008, 08:36 PM
Great program.
However, I do have one question. Is there any way to allow other items to be used to evolve Pokemon (e.g., allow Dragon Scale to just evolve Seadra in a manner similar to a Water Stone, rather than only being able to evolve by trading with it?), because I'd like to keep the evolutions as close as possible to the real games, rather than having to settle for a Water Stone or something.

Pie
May 29th, 2008, 01:01 AM
@attacaine:

If you mean you want to evolve it by stone, then use "Item" as an evolution type, then choose the stone.

I don't think you can evolve a pokemon by holding an item and leveling up, if you want that.

The only other way to evolve a Pokemon with a hold item is w/ trading with yourself, which is hard to do on a ROM.

~link smash~
May 29th, 2008, 07:55 AM
Wow this is nice! Can I ask though: Are you thinkin bout adding the pokemon battle sprite and menu animations to this? Its a feature that would make this the ultimate well semi ultimate pokemon tool

Wind~
May 30th, 2008, 11:45 PM
Hey, I downloaded it and checked the help section...
To add new moves, do u have to clear all the other moves, u can't add another level?

Haowakeorden
May 30th, 2008, 11:51 PM
Hey, I downloaded it and checked the help section...
To add new moves, do u have to clear all the other moves, u can't add another level?If you want to add one new move, you must remove (at least) one other existing move.

Teh Baro
May 31st, 2008, 01:11 PM
If you want to add one new move, you must remove (at least) one other existing move.
Yape should work with pointers, because it's weird to have -180 attacks left (I have a pokemon that learns an attack every level.

Also, found a bug, when loading a certain pokemon and its evolutions. I haven't edited that pokemon's data since I have yape so it's nothing I messed up (at least in yape) and the rest of programs run fine.
It gives me this error:

Index was out of range, must be non-negative and less than the size of the collection
Parameter name: index
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.ThrowHelper.ThrowArgumentOutOfRangeExceptio n(ExceptionArgument argument, ExceptionResource resource)
at System.ThrowHelper.ThrowArgumentOutOfRangeExceptio n()
at YAPE.MainForm.AddEvolutionsToTree(Int32 pkmn, TreeNode node, List`1 history)
at YAPE.MainForm.AddEvolutionsToTree(Int32 pkmn, TreeNode node, List`1 history)
at YAPE.MainForm.AddEvolutionsToTree(Int32 pkmn, TreeNode node, List`1 history)
at YAPE.MainForm.BuildEvolutionTree()
at YAPE.MainForm.LoadEvolutions(Int32 index)
at YAPE.MainForm.LoadPokemonData(Int32 index)
at YAPE.MainForm.ChangeSelectedPkmn(Int32 index)
at YAPE.MainForm.PkmnSelectVal_SelectedIndexChanged(O bject sender, EventArgs e)
at System.Windows.Forms.ComboBox.OnSelectedIndexChang ed(EventArgs e)
at System.Windows.Forms.ComboBox.WmReflectCommand(Mes sage& m)
at System.Windows.Forms.ComboBox.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.O nMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.W ndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
YAPE
Assembly Version: 0.9.0.0
Win32 Version: 0.9.0.0
CodeBase: file:///D:/Baro/hack/YAPE%200.9/YAPE.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
MappedComboBox
Assembly Version: 1.0.3031.39633
Win32 Version: 1.0.0.0
CodeBase: file:///D:/Baro/hack/YAPE%200.9/MappedComboBox.DLL
----------------------------------------
ComboListBox
Assembly Version: 1.0.3031.39599
Win32 Version: 1.0.0.0
CodeBase: file:///D:/Baro/hack/YAPE%200.9/ComboListBox.DLL
----------------------------------------
NumericTextBox
Assembly Version: 1.0.3031.39676
Win32 Version: 1.0.3031.39676
CodeBase: file:///D:/Baro/hack/YAPE%200.9/NumericTextBox.DLL
----------------------------------------
Accessibility
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.



After this error, the rest of the pokemon don't load properly



EDIT: looking at some of the identifiers in the error thing, I believe it can have something to do with the evolution data (because of the evolution.trees thing)... If I knew the offset of the evolution data, I could check it myself in my rom

Dukey
June 1st, 2008, 01:44 AM
it keeps saying ERROR loading Rom. ERROR Reading base stats

is it my ruby rom?

joshable
June 1st, 2008, 06:19 AM
Just awesome
_____________
Got it memorized?

Gundam-Fighter
June 1st, 2008, 09:35 AM
This is the best I've needed something like this for ages as I had no idea how to edit Pokedex entries Thank you so much!

IceCharizard
June 1st, 2008, 12:36 PM
This is the best I've needed something like this for ages as I had no idea how to edit Pokedex entries Thank you so much!
Why don't you use A-Text?
Because there's YAPE on this planet!

Teh Baro
June 1st, 2008, 12:47 PM
Why don't you use A-Text?
Because there's YAPE on this planet!
I still prefer good-old hex editors, though.

X-aveon
June 1st, 2008, 02:45 PM
wow, this is sooo helpful. you cant edit texts on elite map's dexter.

NeoS
June 1st, 2008, 03:27 PM
Hello! i think. This Tool is much better than the Pokemon Amplifier. Congratulations!

thegamenerd
June 1st, 2008, 03:33 PM
Someone should make a program like YAPE but for Diamond and Pearl.

Darkrai_Killer
June 2nd, 2008, 02:10 PM
****, doesn't work.

Pleaser fix !!!

Neslug
June 3rd, 2008, 08:01 AM
YAPE is the best Pokémon ROM hacking program I have ever used and I only found it about three days ago. Yes, it's that good.

I'm really looking forward to any and all tools you might make in the future.

Teh Baro
June 6th, 2008, 12:12 PM
The other day I was bored and made a Spanish translation.
Files should be in a folder named es-es in the data folder.
[ES-ES]
Name = Español (España)
CommonVals = data\es-es\commonvals.ini
Strings = data\es-es\strings.ini
Help = data\en-us\yape-help.chm

I also started a help file in txt but it's not finished, anyways I'm including it.
The help contains the same text as the english one but with some notes like "english help has pictures" and "where I say rubí, zafiro ..I actually mean ruby, sapphire... i.e. the english versions".
I started it in txt because I don't know how to make *.chm files.


By the way, the program doesn't pic the Misc. Data title from the strings.ini? It stays the same even If I put Miscelánea.

Lord Skall
June 10th, 2008, 04:25 AM
This is a great tool, but would it be possible to add a search feature to search for which Pokèmon could learn a certain move?

Superjub
June 10th, 2008, 02:18 PM
It doesn't work with my rom :(
Anyway, apart from that it looks really good! ;)
Keep up the good work. :D

tyflosion
June 11th, 2008, 06:48 PM
You get it free from Bill Gates Homepage
My computer is sucking right now. Link please.

Cynn
June 30th, 2008, 08:01 AM
I try to run it but it said i need the right version of the NET Framework so where do i get it?

*Me*
June 30th, 2008, 09:42 AM
Wow this is good i've try it out~♥~

StuckOnExile
June 30th, 2008, 10:40 AM
I really like this program. I used a few other evolution editors to make my Fire Red hack to change Clamperl's evolutions. The other programs wouldn't accept my changes. But this program worked perfectly! I really like it! Thank you for making this program.

Chonlel48
July 2nd, 2008, 05:10 PM
When I opened the editor for the first time, I got this message:

http://i101.photobucket.com/albums/m70/whodannydey/whatstheproblem.png

why do i need it, and where do I download it

tharding6
July 3rd, 2008, 04:38 PM
thank you for this tool.. this thing is amazing.. it is not just yet another pokemon editor, its the best pokemon editor

MYSTERIOUS MISSINGNO
July 22nd, 2008, 01:31 PM
Wow. Best 3rd Gen Pokemon Editor EVER!

I can't wait till it has a Pokedex order changer though, neither of Sebbe's ones works. (It makes the pokemon #000)

BlahISuck
July 22nd, 2008, 09:00 PM
lol. Downloaded it, tried it. It is awesome. Turned squirtle into piplup (everything, including the pokedex). I need to learn how to index images, cuz i deleted my piplup hack in fustration after not being able transfer Empoleon sprites.

Xenomorph
July 28th, 2008, 07:00 PM
I would appreciate the help if someone could help me.

When I add a custom sprite and replace a pokemon with it, then say make a pokemon like Charizard evolve at a certain level. He ends up trying to evolve but stops and doesn't evolve and at the end the message goes

...?

any clue as to what's up with that? Thanks for any help I can get.

EDIT: I'm using Fire Red btw.

ZazzyMango
July 30th, 2008, 10:39 PM
I absolutely love YAPE.
props to you!
it outdoes pokemon editor pro by a long shot.
good luck on 2.0. I can't wait!

Coyote
August 7th, 2008, 04:50 PM
I can't open it.
"Application error"
(sorry, I know why I can't open it)
That tool is good.

Umm... I have the same error...

Why i can't open it?

(Sorry for all the bothers...)

Lilbittygoat
August 10th, 2008, 03:07 PM
This really is great. Only once it wouldn't open.
But I just redownloaded it and it worked again. :)

score_under
August 10th, 2008, 04:52 PM
When I opened the editor for the first time, I got this message:

http://i101.photobucket.com/albums/m70/whodannydey/whatstheproblem.png

why do i need it, and where do I download it
This, and most other errors (especially before the GUI appears) are not the programmer's fault - rather the fault of Microsoft and their VB "compilers".

itman1234
August 10th, 2008, 05:24 PM
Well, after many times of using this tool, it has never failed me once. It is great, I especially love the editing of the pokedex. Its so simple, easy to use, and changes everything! GO YAPE!!!

Sir Spanky
August 11th, 2008, 10:29 AM
This program is amazing thanks! The previous Pokemon editors don't work in Emerald, so this is a godsend for the hack we are working on :)

hotdogturtle
August 11th, 2008, 06:21 PM
I agree with Sir Spanky (we're actually working on the same project)

I've never make a full serious game, though I've played around with some other programs just for fun, and I can easily say that this is the absolute best one for editing Pokemon.

KageX
August 12th, 2008, 09:05 PM
hey everytime i load a rom it keeps saying
"Error loading ROM. Unrecognized ROM."
im using a firered rom and i would really like some help here

Trask3000
August 13th, 2008, 03:46 PM
YAPE doesn't work for me, it say someting or the other

score_under
August 14th, 2008, 08:16 AM
YAPE doesn't work for me, it say someting or the other
Take a screenshot (alt+print screen) of the error, paste it into Paint, save it and upload it. Then it can have a higher chance of being resolved.

Seth the ROM master
August 17th, 2008, 03:28 AM
Why won't it open my FireRed ROM?
All I did was just map some stuff, add some scripts, and nothing more.
What did I do wrong?

Lilbittygoat
August 18th, 2008, 12:53 AM
Well, it used to say my ROM didn't exist.
Now it says, "ROM configuration not initialized."
I assume that means I need an .ini file of some sort?
Can someone help me? I'm using an Emerald ROM.

hoyboy
August 22nd, 2008, 01:19 AM
Very great and amazing tool I've only been using it for a week or so but I really like it. Is there any chance you could incorporate into it a preview of what the new pokedex will look like after someone edits it with your program.

brokencandle
August 25th, 2008, 12:36 PM
Wow, this tool is a very good tool indeed. Like lots of needed files all put into one! It's really helped me! :)

Michael Allison Is Not I
August 25th, 2008, 12:53 PM
This, and most other errors (especially before the GUI appears) are not the programmer's fault - rather the fault of Microsoft and their VB "compilers".

No...It's not Microsoft's fault. If you have Service Pack 2, you ought to have this version of the .NET framework. The problem is, people don't know how to sufficiently update their computers, or even how to search the internet for the framework.

In essence, the only person other than the user who the fault can fall to would be the programmer; it's technically a bug, really! Just code something into your program that detects whether you have the up-to-date framework installed, and if not, install it, or point them in the right direction.

Awakening
August 25th, 2008, 05:38 PM
http://img530.imageshack.us/img530/3657/problemmv9.png


help plszes. :( I Don't think I have service pack 2 either since I got a virus and had to redo windows. so yeah. Is there any way? I tried downloading framework and it said it needed something else to run, and that something else had to be paid for.

Kataphraktoi
August 27th, 2008, 11:03 PM
[New Release] YAPE (Yet Another Pokemon Editor)

...

Fantastic....quite simply you have saved my LIFE here

hoyboy
August 28th, 2008, 06:43 PM
I just figured out that YAPE can't run when Advance map is running I don't know if this is a glitch or what but its kinda irritating.