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!
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.
I've been looking into level softcaps for each gym leader/elite 4 like in Clover, but I haven't been able to find any documentation on this for Fire Red, only the Emerald decomp. I know it's possible in Fire Red because I've heard Radical Red has it, so if anyone can point me in the right direction on that I would greatly appreciate it! Thanks!
I've been looking into level softcaps for each gym leader/elite 4 like in Clover, but I haven't been able to find any documentation on this for Fire Red, only the Emerald decomp. I know it's possible in Fire Red because I've heard Radical Red has it, so if anyone can point me in the right direction on that I would greatly appreciate it! Thanks!
Well with anything in rom hacking the limits are pretty much only your imagination and your ability, there are many different ways to come to the same effect. So first what exactly do you mean by a soft cap, what exactly do you want it to do?
I'm not very learned myself in these subjects, but it would still help to better define what you're asking about.
Both for you, and anyone else that may try to help.
But at the least I think what you're trying to do will require either asm, or disassembly.
Alright, got the EXP disable working. Thank you very much.
I did try to locate it with a map file, but I couldn't find an offset that was even close to 0x8021A68. Perhaps I was looking at a wrong file or something. All I found for that location is this in my map file:
HOW TO DISABLE EXP ON "COMPLETE FIRE RED UPGRADE" HACKS (that changed the EXP formula from original Fire Red):
First, you need to find the pointer that corresponds for the EXP gaining formula (atk23_getexp) in the ROM hack that uses "Complete Fire Red Upgrade".
This spoiler showcases how you can locate the pointer in hacks other than Radical Red. If you just want to disable EXP for Radical Red 2.1, you can just skip this.
Spoiler:
Here is the structure of the pointer table of "battle_script_commands" for "Complete Fire Red Upgrade", since it's also where the pointer for EXP gaining formula is. By using the "Find..." function or just some basic digging, you can find where "atk23_getexp" (the EXP formula pointer) is located in the table, relative to other pointers.
In the case of "Radical Red version 2.1", the pointer for the EXP formula is located at 1436ED8 (according to HxD). Note that location of the table can vary from ROM hack to ROM hack, so this location many ONLY apply to Radical Red 2.1. So a way to find the table or at least this specific offset is required, if you want to edit this in other ROM hacks.
Notice the other pointers surrounding it. Using the pointer table (linked earlier), you can see the pointers that should be surrounding the "atk23_getexp", like 0x80223f9 after it, for ending wild battles. Well, turns out, very few ROM hacks edit this pointer, since fleeing from wild battles rarely varies from ROM hack to ROM hack. Therefore, if you look for this pointer in most other "Complete Fire Red Upgrade" hacks, you can always locate the "atk23_getexp" pointer right behind it.
So, if you search for this in most "Complete Fire Red Upgrade" hacks: F9 23 02 08, you should also find the "atk23_getexp"
In the case that you cannot find this pointer, use the previously linked table to locate any other pointer that is close to "atk23_getexp", like "movevaluescleanup" or "storeloopingcounter"
Anyway the pointer you will find for "atk23_getexp" in Radical Red 2.1 would be: 29 3A 47 09, located at 1436ED8
Now that you found the pointer to edit, fix it to the one that should correspond to the original Fire Red one : 69 1A 02 08
Only one thing left to edit. Changing the original Fire Red EXP formula to not give any EXP. Go to 21CFC and insert C0 46. That's it.
If everything was done correctly, your pokemon should simply skip the EXP gaining at the end of every opponent pokemon KO.
Big thanks to Anon822 for helping me figure it out.