• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • 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.

FireRed hack: [COMPLETE][pokefirered] Pokémon FireRed and LeafGreen+

Deokishisu

Mr. Magius
990
Posts
18
Years
  • Hello everyone. I've been traveling around Europe these past few weeks, so watching this thread understandably wasn't a huge priority. I'm back home now, though. Thanks for the continued interest in this hack while I was gone!

    Theres a bug in island four. Theres a rock buged. When u left The boat, right side.

    I Found a critical bug... went to cerulean cave to capture mewtwo before e4 rematch, then i used master ball, after caught, he spawned again lol... you can have infinite mew2's LOL

    Thank you for these reports. I can't believe I screwed up the Mewtwo in the other Cerulean Cave versions. Enjoy your infinite Mewtwo while you can, because these will be fixed in the next release.

    First of all, hack looks great! I was interested in the tech side of the hack since you were able to implement a built-in nuzlocke mode. What files in the github do you suggest I look at if I wanted to do something similar? Also do you have any resources you referenced when you were implementing it? Thanks for the hard work!

    My commits are generally very descriptively labeled. Go back through the commit list in the master branch and you won't be able to miss the main Nuzlocke-related ones.


    I cannot view the image in your link. darthbr is incorrect that it is required to catch 60 Pokemon to progress to the Sevii Islands postgame, as that has been changed. If you could include a description of what is halting your advance, I'd be happy to tell you what you may be missing.

    Maybe I'm confused but isn't perfect IV supposed to let you gain actual stats? My Charmander gained nothing except 1 Sp.Atk and zero of everything else after defeating a Squirtle. Is that a glitch or a problem with my rom?

    Edit: Using the mentioned Squirrels rom.

    I'm not entirely sure what you are describing. You beat the Rival's Squirtle in the first battle with Perfect IVs on and when you leveled up only got +1 to its Sp. Attack stat? IVs have a much less noticeable effect on stats at low levels. I'm not ruling out the possibility of a bug here, as this option wasn't thoroughly tested, I just want to be sure I understand the situation that you're reporting. I'll do some snooping as well to see if there's anything going on with the implementation.

    Do you plan to make a version of this for Pokemon Emerald Version?

    Please see this post for the answer to your question.

    My confusion is complete. I need help.
    This is a BPRE hack, not BPEE? How do you implement such features? Is this what the promise of decompilation gives us?
    I never thought things like dynamic reassigning wild pokemon was even possible...
    What do you decomp folks use to code this?

    Thanks for giving me the briefest overview.
    I'm out here struggling to understand the fuss about CRPE, and now hacks like this breaking all rules... ;)

    Yes, this is a FireRed hack. With the decompilations, literally anything that the GBA hardware (and its supported peripherals) is capable of is possible. Coding can be done all in a text editor if you are so inclined, but you will likely want an IDE like VSCode (which is essentially just a fancy text editor) when working on a project like this. I'm not sure what CRPE is, but it sounds like binary hack shenanigans. My advice to hackers would be to embrace the decomps and completely eschew binary hacking because you will have a much easier time and quicker development in the long run for all but the most simple of hacks.

    -----

    As for updates, before I left for my vacation I was tinkering with the joyboot that the Colosseum Bonus Disc sends to the GBA games to distribute Jirachi. I was actually very unsatisfied with my reply to darthbr regarding the availability of Jirachi and Celebi here, so I wanted to see if I could do something about it. Essentially, the GameCube itself doesn't do the actual distribution of Jirachi, it just sends the joyboot file to the GBA and does a few handshakes and then the joyboot writes the Jirachi to the save and sets its external events flag. Long story short, I was able to get Emerald to overwrite the joyboot that the bonus disc sends with a modified one to allow Emerald to receive the Jirachi from an unmodified bonus disc. This is normally impossible as Emerald is incompatible, the bonus disc will spit out an error, and the joyboot will refuse to distribute.

    In the near future, I will be applying the same method to get pokefirered compatible with the bonus disc, which will allow the bonus disc to distribute Jirachi directly to this hack. When this is finished, I'll release a new version. As one of the goals of this hack is to maintain link compatibility with all Gen 3 games and peripherals, I feel that expanding compatibility with Gen 3 external events also falls within this scope. For those in the know, there is stubbed out functionality to detect FRLG in the bonus disc's joyboot file, but the implementation is actually incomplete. It will check and write to the save at the offsets corresponding to the R/S saves if the check to disallow FRLG is nopped out, which is obviously not something that is desirable.

    I know that the next question will be, "Well, what about Celebi from the JP Colosseum Bonus Disc?" The answer to that is I will tinker with that as well when I feel like it. The JP Bonus Disc has a more complicated distribution scheme that likely involves several separate joyboot files, so that will take some time to figure out. It is on the to do list now, just with no ETA as I have to be in the mood to deal with it.

    There are other distributions that FRLG are incompatible with that it could be made compatible with using a similar method (Shiny Extremespeed Zigzagoon from one of the GameCube demo kiosk ISOs is one example), though doing this is not easy as I have to essentially partially decompile each joyboot that is sent and then repack it into the ROM of the hack so that it can overwrite what the GCN is sending. Those are a maybe, but are very low priority compared to Celebi. The other thing I would like to investigate is the joyboot that Pokemon Box: Ruby & Sapphire sends to the game, as I would like to make it so that it unlocks all of its functionality for FRLG immediately (in line with the lack of trade restrictions that are already present), instead of having to wait for the vanilla postgame to be finished and having 100 Pokemon caught. Modifying the checks in the joyboot it sends should be enough to allow that, but I haven't investigated Pokemon Box specifically yet.
     
    Last edited:
    30
    Posts
    4
    Years
    • Seen May 4, 2024
    Thank you for the great mod, been playing it for weeks and it's a fantastic effort. If you're going to dive back into the code, can I request two QoL additions? They're both inventory-related ones that I've seen in other hacks. 1st one is being able to bind multiple items to select, so it's easier to swap between fishing rod/item finder/bike/etc. 2nd is the ability to sort items by name/amount/anything else. I spend a fair bit of time menuing and am planning a speedrun, so these would both be extremely helpful. Either way, again, thanks for your hard work and looking forward to the other changes and additions you mentioned above!
     

    Deokishisu

    Mr. Magius
    990
    Posts
    18
    Years
  • Thank you for the great mod, been playing it for weeks and it's a fantastic effort. If you're going to dive back into the code, can I request two QoL additions? They're both inventory-related ones that I've seen in other hacks. 1st one is being able to bind multiple items to select, so it's easier to swap between fishing rod/item finder/bike/etc. 2nd is the ability to sort items by name/amount/anything else. I spend a fair bit of time menuing and am planning a speedrun, so these would both be extremely helpful. Either way, again, thanks for your hard work and looking forward to the other changes and additions you mentioned above!

    Thanks for playing!

    Those seem like reasonable additions. I'll see what I can do. Thank you for your feedback!
     

    darthbr

    Banned
    237
    Posts
    8
    Years
    • Seen Dec 8, 2023
    Some MASTER TRAINERS are boring, they have the same moveset, many like ''hidden power''... like Raichu one, the battle is just hidden power lol

    Maybe could mix the moveset, its just a suggestion.
     

    Deokishisu

    Mr. Magius
    990
    Posts
    18
    Years
  • Some MASTER TRAINERS are boring, they have the same moveset, many like ''hidden power''... like Raichu one, the battle is just hidden power lol

    Maybe could mix the moveset, its just a suggestion.

    The AI has been changed so that they know what type and power their Hidden Power is. The Pokemon that have Hidden Power in their movesets have it specifically for coverage, as Gen 3 movesets are very limited. For example, that Raichu's IVs have been manipulated specifically to give it a max power Ground-type Hidden Power. It's the only reliable way to give some of the Master Trainers an edge over your own Pokemon by giving them a decent super-effective move, as I'm not expecting players to breed perfect Hidden Powers for coverage for these trainers. Many of the Master Trainers can be cheesed as it is, which I am okay with if the player wants to go through that. The alternative to Hidden Power Ground on this Raichu, for example, is Dig which it will spam just as much against your Raichu and is more abusable by the player due to it taking two turns to fire.

    All of the Master Trainers have movesets that I have done by hand and are unique (save stuff like Caterpie and Metapod who literally have no moves that I can give them save their standard ones). The movesets are definitely not the same, but the AI will favor Hidden Power on Pokemon that have it because every time it's present on a set it will be the best damage option against your Pokemon.

    Now, if that Raichu's Hidden Power wasn't super effective against your Raichu, then that is absolutely a bug.
     
    Last edited:

    BaronT

    Banned
    7
    Posts
    2
    Years
    • Seen Dec 9, 2021
    This justification of "it breaks compatibility with real games" that you keep using as an excuse to not include things makes no sense. You literally added fake maps and included pokemon in them. That right there makes them not legal.
     
    Last edited:

    Deokishisu

    Mr. Magius
    990
    Posts
    18
    Years
  • This justification of "it breaks compatibility with real games" that you keep using as an excuse to not include things makes no sense. You literally added fake maps and included pokemon in them. That right there makes them not legal.

    If you catch the Pokemon in those maps and inspect them in something like PKHeX, you'll see that I've painstakingly made them legal behind the scenes. For example, the Safari Zone's extra areas include only Pokemon that were present in Emerald's Safari Zone at the appropriate levels, and write Emerald as the met game and Emerald's Safari Zone as the met location. For all intents and purposes, they're legal and from Emerald. All Pokemon additions were made with similar behind-the-scenes modifications to make them both make sense in the context of FRLG+ (going back to the Safari Zone example, the player will never notice that the new Pokemon there are technically set as being from Emerald's Safari Zone and not FRLG's through ingame means) and be legal in Gen 3. The fact that you didn't notice the changes that were made and assumed your Pokemon would be illegal means my backend modifications to those Pokemon are working unobtrusively, as intended.

    The only possible exception that I made to this is Faraway Island Mew. It is still set as an Emerald met game, but since English Faraway Island Mew was never released, its legality is debatable. It will make it through Bank, so I made the call to include it.

    You're welcome to make your own hack if you disagree with my design philosophies. Thanks for your comments.
     
    Last edited:

    darthbr

    Banned
    237
    Posts
    8
    Years
    • Seen Dec 8, 2023
    The AI has been changed so that they know what type and power their Hidden Power is. The Pokemon that have Hidden Power in their movesets have it specifically for coverage, as Gen 3 movesets are very limited. For example, that Raichu's IVs have been manipulated specifically to give it a max power Ground-type Hidden Power. It's the only reliable way to give some of the Master Trainers an edge over your own Pokemon by giving them a decent super-effective move, as I'm not expecting players to breed perfect Hidden Powers for coverage for these trainers. Many of the Master Trainers can be cheesed as it is, which I am okay with if the player wants to go through that. The alternative to Hidden Power Ground on this Raichu, for example, is Dig which it will spam just as much against your Raichu and is more abusable by the player due to it taking two turns to fire.

    All of the Master Trainers have movesets that I have done by hand and are unique (save stuff like Caterpie and Metapod who literally have no moves that I can give them save their standard ones). The movesets are definitely not the same, but the AI will favor Hidden Power on Pokemon that have it because every time it's present on a set it will be the best damage option against your Pokemon.

    Now, if that Raichu's Hidden Power wasn't super effective against your Raichu, then that is absolutely a bug.

    my english isnt the best, im sorry, theres no bug, i just said, every time i battle this Raichu, i lost, because he uses hidden power, then k.o my Raichu, theres no way to beat him with other move.. suggestion? that why i suggested to change moves
     

    BaronT

    Banned
    7
    Posts
    2
    Years
    • Seen Dec 9, 2021
    If you catch the Pokemon in those maps and inspect them in something like PKHeX, you'll see that I've painstakingly made them legal behind the scenes. For example, the Safari Zone's extra areas include only Pokemon that were present in Emerald's Safari Zone at the appropriate levels, and write Emerald as the met game and Emerald's Safari Zone as the met location. For all intents and purposes, they're legal and from Emerald. All Pokemon additions were made with similar behind-the-scenes modifications to make them both make sense in the context of FRLG+ (going back to the Safari Zone example, the player will never notice that the new Pokemon there are technically set as being from Emerald's Safari Zone and not FRLG's through ingame means) and be legal in Gen 3. The fact that you didn't notice the changes that were made and assumed your Pokemon would be illegal means my backend modifications to those Pokemon are working unobtrusively, as intended.

    The only possible exception that I made to this is Faraway Island Mew. It is still set as an Emerald met game, but since English Faraway Island Mew was never released, its legality is debatable. It will make it through Bank, so I made the call to include it.

    You're welcome to make your own hack if you disagree with my design philosophies. Thanks for your comments.

    So because you forged their info to something completely untrue, that makes it OK? LOL, you act like you're the moral authority when it comes to the sanctity of pokemon games but give ridiculous justifications like that.

    By your logic, you can just make everything say it was caught in Emerald, so no matter what you do theyre still legit.
     

    Deokishisu

    Mr. Magius
    990
    Posts
    18
    Years
  • my english isnt the best, im sorry, theres no bug, i just said, every time i battle this Raichu, i lost, because he uses hidden power, then k.o my Raichu, theres no way to beat him with other move.. suggestion? that why i suggested to change moves

    Could you post your Raichu's moveset? I'm curious to know what kind of strategies players are going in with for some of the Master Trainers.

    For some of the Master Trainers, the best option is to attempt to stall them out with status moves. I think I beat this trainer while testing with a Toxic/Protect/Rest/Quick Attack set holding a Chesto Berry. I wanted to try to get the player to think outside the box for some of them, instead of just overpowering them with better moves. Another hint is that some of the trainers are easier when you go in with lower-level Pokemon, since they scale down to you and their contributions from IVs and EVs will be less impactful, and Leftovers will be less useful if the Master Trainer has it on their Pokemon. Let me know if this Master Trainer still seems ridiculous after you try a few different movesets and I'll see if it really needs a nerf.

    So because you forged their info to something completely untrue, that makes it OK? LOL, you act like you're the moral authority when it comes to the sanctity of pokemon games but give ridiculous justifications like that.

    By your logic, you can just make everything say it was caught in Emerald, so no matter what you do theyre still legit.

    You are clearly uninformed about how legality is determined for Pokemon in this generation. If everything in the game was set to an Emerald met game, the vast majority of Pokemon available in FRLG+ would be illegal. After all, you can't catch a Route 1 Pidgey in Emerald. There is no difference between, for example, a Girafarig caught in FRLG+ and a Girafarig caught in Emerald's Safari Zone. I have made sure that they would be indistinguishable and therefore the FRLG+ Girafarig is legal. All of the extra obtainable Pokemon are done the same way.

    I can't give Hoenn Pokemon out in a way that makes sense (outside of Eggs, which is something I did for Corsola because there was no other way to make it legal and make sense in FRLG+) because I can't fake, say, a Volbeat due to the fact that the only place Volbeat is found in Gen 3 is Route 117. Locations that are (or appear to be in-game, like the Safari Zone) the same are much easier to handle in this way. Again, if you don't agree with this design philosophy, you are welcome to make your own hack. I look forward to playing it.
     

    darthbr

    Banned
    237
    Posts
    8
    Years
    • Seen Dec 8, 2023
    Could you post your Raichu's moveset? I'm curious to know what kind of strategies players are going in with for some of the Master Trainers.

    For some of the Master Trainers, the best option is to attempt to stall them out with status moves. I think I beat this trainer while testing with a Toxic/Protect/Rest/Quick Attack set holding a Chesto Berry. I wanted to try to get the player to think outside the box for some of them, instead of just overpowering them with better moves. Another hint is that some of the trainers are easier when you go in with lower-level Pokemon, since they scale down to you and their contributions from IVs and EVs will be less impactful, and Leftovers will be less useful if the Master Trainer has it on their Pokemon. Let me know if this Master Trainer still seems ridiculous after you try a few different movesets and I'll see if it really needs a nerf.



    You are clearly uninformed about how legality is determined for Pokemon in this generation. If everything in the game was set to an Emerald met game, the vast majority of Pokemon available in FRLG+ would be illegal. After all, you can't catch a Route 1 Pidgey in Emerald. There is no difference between, for example, a Girafarig caught in FRLG+ and a Girafarig caught in Emerald's Safari Zone. I have made sure that they would be indistinguishable and therefore the FRLG+ Girafarig is legal. All of the extra obtainable Pokemon are done the same way.

    I can't give Hoenn Pokemon out in a way that makes sense (outside of Eggs, which is something I did for Corsola because there was no other way to make it legal and make sense in FRLG+) because I can't fake, say, a Volbeat due to the fact that the only place Volbeat is found in Gen 3 is Route 117. Locations that are (or appear to be in-game, like the Safari Zone) the same are much easier to handle in this way. Again, if you don't agree with this design philosophy, you are welcome to make your own hack. I look forward to playing it.

    My Raichu moveset is:

    Brick Break, thunderbolt, thunder wave, quick attack (i think, dont remember)
    The fact is, if i try protect with toxic, i cant kill him in 2 hits, if he use Hidden power, its K.O... that very hard
     
    Last edited:

    BaronT

    Banned
    7
    Posts
    2
    Years
    • Seen Dec 9, 2021
    You are clearly uninformed about how legality is determined for Pokemon in this generation. If everything in the game was set to an Emerald met game, the vast majority of Pokemon available in FRLG+ would be illegal. After all, you can't catch a Route 1 Pidgey in Emerald. There is no difference between, for example, a Girafarig caught in FRLG+ and a Girafarig caught in Emerald's Safari Zone. I have made sure that they would be indistinguishable and therefore the FRLG+ Girafarig is legal. All of the extra obtainable Pokemon are done the same way.

    I can't give Hoenn Pokemon out in a way that makes sense (outside of Eggs, which is something I did for Corsola because there was no other way to make it legal and make sense in FRLG+) because I can't fake, say, a Volbeat due to the fact that the only place Volbeat is found in Gen 3 is Route 117. Locations that are (or appear to be in-game, like the Safari Zone) the same are much easier to handle in this way. Again, if you don't agree with this design philosophy, you are welcome to make your own hack. I look forward to playing it.

    True, who can forget about that unforgettable Emerald location: "under Bond Bridge."
     

    Deokishisu

    Mr. Magius
    990
    Posts
    18
    Years
  • My Raichu moveset is:

    Brick Break, thunderbolt, thunder wave, quick attack (i think, dont remember)
    The fact is, if i try protect with toxic, i cant kill him in 2 hits, if he use Hidden power, its K.O... that very hard

    I'll look into this Master Trainer and nerf them after doing more tests of my own. It seems like this one actually is overtuned. Thank you for bringing it to my attention.

    True, who can forget about that unforgettable Emerald location: "under Bond Bridge."

    Which is actually classed as Underwater Route 124 internally and Chinchou caught there are set to have Emerald as their met game. In-game, Chinchou caught there will report "UNDERWATER" as their met location so there is nothing to indicate to the player that anything is amiss, and the Chinchou are legal. I understand that you're just trolling at this point, but please do a better job when you bring up these examples. The code is all open source so you can look through and find actual issues or oversights to try to hit me with. Here's the link to the repo to save you a click through the thread to find it. Thanks.
     
    1
    Posts
    2
    Years
    • Seen Dec 5, 2021
    This is incredible! I had to register to comment. A FRLG patch that maintains parity/trade-ability with retail carts is a literal dream come true. Gen 3 is my favourite, with FR being my all-time favourite game. A few questions before I dive in though, if you're able to take the time to answer. Apologies if they're found earlier in the thread, I found no mention in the feature list.

    1. Are out of battle ability effects like Flame Body enabled?
    2. Is the shiny charm or similar added?
    3. Is there RTC support/features added, or can I fire this on a non-RTC cart just fine?


    Edit: I just finished reading the thread and the documentation and I think managed to answer all my questions. Can't wait to flash this to a cart and get started.
     
    Last edited:

    darthbr

    Banned
    237
    Posts
    8
    Years
    • Seen Dec 8, 2023
    Is there Any easy way into The code to ignore Hoen pokemons? I mean. I want complete full dex without Hoen mons. I tried to find some decomp tutorial. But nothing.


    Stay only Johto and Kanto
     

    Deokishisu

    Mr. Magius
    990
    Posts
    18
    Years
  • Is there Any easy way into The code to ignore Hoen pokemons? I mean. I want complete full dex without Hoen mons. I tried to find some decomp tutorial. But nothing.


    Stay only Johto and Kanto

    I'm not exactly sure what you're asking. Could you try to rephrase so I can better understand? The National Dex is completely unobtainable without trading. You should be able to complete the newly-created Extended Dex in one file. The Extended Dex is my intended solution to the, "There are blanks in my Pokedex," problem, as there will be no slots in your Pokedex that you can't fill without trading to obtain the National Dex. I'm okay with having the player trade with the vanilla games if they want the 140 missing mons that will never appear in their Extended Dex. Additionally, there are no rewards gated behind Extended or National Dex completion.
     

    Deokishisu

    Mr. Magius
    990
    Posts
    18
    Years
  • Will the safari zone ever be improved for nuzlocke mode? I was under the assumption that each area of the safari zone was ACTUALLY its own zone.

    Each area should already count as separate locations for the purposes of catching Pokemon in Nuzlocke mode. Remember that there are only four areas (six with the extra in postgame). If they're all counting as one location then that is definitely a bug and I'll fix it in the next release.
     
    38
    Posts
    2
    Years
    • Seen May 11, 2024
    Do we decide on if we want to join team rocket or not? Or does our character just refuse to?
     
    Back
    Top