Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
Our weekly protagonist poll is now up! Vote for your favorite Conquest protagonist in the poll by clicking here.
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.
Well since you've inserted Mega Evolutions and the animation doesn't have the correct particles that obviously means that the process did not insert the particles.
So yes, expand your particle table, insert the images and change the particle indices to match your new table.
Also, I don't know what link on GitHub you're talking about. The only images on the GitHub are for the button and indicator icons. The particle images you need are in this thread somewhere.
Hello.... I just want to ask if it is possible to mega evolve two pokémon in 2v2 battle and if so how to do it? It is okay if the player can mega evolve 2 Pokemon but it will be great if the player can mega evolve one of his Pokémon only. Another, is it possible to mega evolve wild Pokémon(using wild battlle command only) and how?
Well since you've inserted Mega Evolutions and the animation doesn't have the correct particles that obviously means that the process did not insert the particles.
So yes, expand your particle table, insert the images and change the particle indices to match your new table.
Also, I don't know what link on GitHub you're talking about. The only images on the GitHub are for the button and indicator icons. The particle images you need are in this thread somewhere.
Well thanks for the reply....
I actually searched from the beginning and found the particle image....
About the github link i was talking about the image (the one just like the particle in you github..)
Hello.... I just want to ask if it is possible to mega evolve two pokémon in 2v2 battle and if so how to do it? It is okay if the player can mega evolve 2 Pokemon but it will be great if the player can mega evolve one of his Pokémon only. Another, is it possible to mega evolve wild Pokémon(using wild battlle command only) and how?
But my thing is mega evolution occours with bond between pokemon and trainer...
So wild mega evolution sounds off to me...
But if touched can help you with this its upto him and you :)
Hello.... I just want to ask if it is possible to mega evolve two pokémon in 2v2 battle and if so how to do it? It is okay if the player can mega evolve 2 Pokemon but it will be great if the player can mega evolve one of his Pokémon only. Another, is it possible to mega evolve wild Pokémon(using wild battlle command only) and how?
You can't Mega Evolve more than one Pokemon per battle, you'd have to change the code if you wanted this feature.
Wild Pokemon can't Mega Evolve because they need a keystone. You could try giving a wild Pokemon a Mega stone to hold and seeing what happens but the message displayed would be incorrect if that worked. You'd have to change the code to get this functionality.
You can't Mega Evolve more than one Pokemon per battle, you'd have to change the code if you wanted this feature.
Wild Pokemon can't Mega Evolve because they need a keystone. You could try giving a wild Pokemon a Mega stone to hold and seeing what happens but the message displayed would be incorrect if that worked. You'd have to change the code to get this functionality.
Now I have a new problem...
It never shows the mega symbol when my Pokemon is holding the right item, and I have the Gold teeth. But if I put in the revert evolution table, it goes back to that Pokemon.
Does someone know a solution to this problem?
Now I have a new problem...
It never shows the mega symbol when my Pokemon is holding the right item, and I have the Gold teeth. But if I put in the revert evolution table, it goes back to that Pokemon.
Does someone know a solution to this problem?
Do I make a new script or insert it into an existing one? (I'm a noob at scripting stuff, I tend to follow step-by-step instructions and guides, sorry)
Do I make a new script or insert it into an existing one? (I'm a noob at scripting stuff, I tend to follow step-by-step instructions and guides, sorry)
It's your choice, some people places a new script at the first sign on route 1, but I've decided to place it on an existing script like the national pokédex unlock.
It's your choice, some people places a new script at the first sign on route 1, but I've decided to place it on an existing script like the national pokédex unlock.
A while back, some hacker posted a thread here on the same topic - however they refused to release the source and instead used the thread to advertise their hack/brag. This isn't that. As far as I'm concerned Mega Evolution should function exactly like Gen 6 or it shouldn't be implemented at all. Despite this, Mega Evolution remains a popular "feature" in many hacks - hackers resort to using true evolutions instead of implementing them properly.
So before this becomes tl;dr, here is a video sample. Thanks to SphericalIce for letting me use the video from his hack, Pokémon Gaia.
This code works by hacking the existing evolution table. I added a custom evolution type (0xFE) that allows you to do Mega Evolutions. The variants (Wishing, standard Mega Evolution and Primals) are controlled by a unused halfword at the end of each evolution entry. The level argument is either an item (Mega Stone/Orb) or a move depending on this variant. Because I'm using the evolution table, it should be really easy to modify existing tools to edit these Megas.
I've also made it possible to use any item index as the Mega Accessory (it displays the Standard Mega evolution message) for aesthetic purposes.
This code is open source and available on my GitHub. I will port to Emerald when it's completed.
Right now, Mega Evolution is triggered by pressing Start when selecting an attack, which is reflected in the button. The button image is pretty simple to change, however the alternate palettes (for enabled and unusable) are determined by the code.
There are still a few bugs, and it doesn't work with link battles, so stay tuned for updates.
Documentation:
Configuration:
See the file src/config.h when doing the insertion step. There are a number of variable indices and item indices you can change there.
Code:
#define KEYSTONE_PLAYER_VAR 0x4001 /* Variable that holds item index for player keystone */
#define KEYSTONE_OPPONENT_VAR 0x4002 /* Same as above but for partner */
#define KEYSTONE_DEFAULT 0x161 /* Default Key Stone item index */
Where it says "#define XXX 0xSOMEHEXNUMBER" Change ONLY 0xSOMEHEXNUMBER and leave the rest the same so that the code can find your changes. KEYSTONE_PLAYER_VAR is the variable used to store the item index for the player's keystone and KEYSTONE_OPPONENT_VAR is the same, but for the opponent (see Usage below). If, for some reason, you set the variable for KEYSTONE_OPPONENT_VAR to 0, then the message for mega evolution will default to using whatever item index whatever you have in KEYSTONE_DEFAULT. By default this is configured to "Gold Teeth" so you'll probably want to change it (despite their awesome power). These variables help you with tiny story-telling details that are probably insignificant, but I judged them to be important in my perfectionism.
The remaining configuration options are for controlling the colours that are changed in the Mega Evolution healthbox addition in it's various states. You can change the sprite just by replacing the file in the "assets" folder. You then will probably need to change the colours here (and the number of colours you ignore) in these options. The code changes parts of the palette to a lighter variant or desaturates them entirely, so you need to set these correctly lest your sprite look funny. If you have changed your HP box at all, this might be necessary to change. I will add options for changing the relative X and Y position of this sprite if it becomes an issue.
Mega evolutions are made using the evolution table data. It is preferable to hex edit these until tool support is adequate (see this guide for how to do this with G3T). Megas have evolution type 0xFE, so that they remain separate from regular evolution types. The unknown hword in this structure should stay 0 for Mega Evolution. Types 1 and 2 are reserved for Primal Reversion and Rayquaza's (move based) Mega Evolution. The target species is the species you want to Mega Evolve into. This Pokemon should have the same Dex number as the original. Try not to change much. You should keep the gender ratio, name, base HP, level curve and learnset the same to prevent strange things from happening. The argument for the mega evolution is the item index of your Mega Stone or Primal Orb. In type 2's case it is the move index.
Next, you need to make the species revert back to their original state. You need to add another evolution table entry, this time to the Pokemon's Mega Form. This should be identical to the one above, except the target species is the non-mega form, and the item index/argument is 0. I did it this way for speed reasons at the cost of making the configuration more complicated - searching through all the evolution data takes too long and makes the game lag.
Lastly, you'll need the item. In config.h, you should have put two free variables you'll use for this hack. The first is for the keystone item index for the player, the second is for the enemy trainer. For the player, simply set this to the index of your mega bracelet/anklet/whatever. You can do this via a script when you award the player their keystone. The code will then check whether you have this item and disabled Mega Evolution if you do not. The enemy trainer is the same, except this won't perform checks. It only changes the item used in the message (like certain characters in ORAS and XY). If you wish to disable Mega Evolution for the player at whatever time, either remove their bracelet item, or set the variable to 0.
Closing notes:
Please submit any issues, bugs and feature requests (or rather, improvements; I don't want large feature requests. Keep it to new configuration settings and such) on GitHub. You'll need an account there, but it helps me track these bugs and mark them as solved. It also allows me to follow up on them better than in this thread. It also is easier for other people to look up issues there.