• 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?".
  • Forum moderator applications are now open! Click here for details.
  • 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: Pokémon Throwback v211001: Kanto, Your Way

RichterSnipes

Not even a nibble...
513
Posts
12
Years
  • Age 30
  • USA
  • Seen Dec 1, 2023
If would be great if the owner of this hack added the GB player item:

http://www.pokecommunity.com/showthread.php?p=7309759&posted=1

If you look at the hack, You can see why it would go together :D
If you use my Lite patch with that one, you can get both working in tandem and have an extreme nostalgia trip! I don't know if either of us will ever apply the other's hack onto theirs, but at least you can do it yourself easily as-is.

2016 UPDATE/DISCLAIMER:
Spoiler:
 
Last edited:

RichterSnipes

Not even a nibble...
513
Posts
12
Years
  • Age 30
  • USA
  • Seen Dec 1, 2023
Well, it's been awhile. Life's been getting in the way from me doing anything significant with my hack. However, I have been able to fix a couple of minor things with the music.

Along with making things a bit more accurate for a couple of tunes, this new update fully establishes a previously used voice table as the dedicated 8-bit voice table. This will help in case this hack ends up being better fit as a base for other hacks.

Get the update in the 1st post. As the changelog will show, this isn't really anything major, but it does help for possible future plans. Enjoy!

Changelog:

  • Fixed Link Battle music tune's inaccuracies.
  • Fixed an inaccuracy in the Route 1/2 8-bit music.
  • Adjusted the RSE battle music voice table to fully accommodate those tunes. Now the voice table at 0x8B8B8 has been fully repurposed for the 8-bit tracks.
 

Superjub

Pokémon Aureolin
2,288
Posts
16
Years
Wow. :D A GB player for Fire Red? Awesome! :D I've just started playing, and while I usually don't play any of the Sideshow Hacks, this seems really promising. I also like all the extra features too. :D
 

RichterSnipes

Not even a nibble...
513
Posts
12
Years
  • Age 30
  • USA
  • Seen Dec 1, 2023
Major Internal Update!

I'm happy to see all you guys enjoying this hack! Today I've got another update, and this one's a biggie for two reasons. The first is an internal overhaul, which is something that only I will notice...unless anyone bothers to actually look at the patched ROM in a hex editor.

The other is more important to everyone using the hack. I've redid how the two patches work, and now the GB Player and extra features are separated into two (mostly) independent patches. The GB Player patch contains the 8-bit music, while the extras gives you the features listed under Extras in the first post. This lets you enjoy them separately and use them to build different future hacks off of.

You can still use the two in tandem if you wish. If you do, however, MAKE SURE TO APPLY THE EXTRAS PATCH FIRST, THEN THE GB PLAYER PATCH (there's already a reminder on the first post). If you don't, the GB Player won't appear in your room, as both patches introduce changes in events on that map.

Of course, that would mean that doing it in this order has its own side effect, but it's normally unnoticeable. If you want to find it, here's a blatant hint: It's like the Ghost PC in the hotel in Celadon City in Red/Blue!

Changelog

  • Overhauled the implementation of all things in the hack, removing all leftover code, organizing everything, and simplifying everything in the process. Now you can use both the GB Player and extra features along with captnotatroll's Super-Extra-Nostalgic patch if you want (remember to apply the patches in proper order)!
  • Better spread out the locations of wild Pokémon in the game. See if you can notice any nods to locations of Pokémon in games besides the international Red and Blue!
  • Changed the GB Player item overworld sprite, overwriting an unused Deoxys overworld sprite. The way it was before, something else in the game also looked like a GameBoy. Did anyone find out what it was?
  • Returned two trees to the Berry Forest that disappeared due to the old, very sloppy Tree code. It's now really efficient and and allows for more to be added!
  • Made your rival's dialogue on Four Island more resemble the original encounter there. Along with that, I fixed an issue with a disappearing Doduo there...pesky thing.
From this point onwards, I'll let anyone use either patch (or both) for their own hacks. Just make sure to give credit to me if you do so.

I hope you guys keep enjoying this hack! For now, I'm going to take a break with it, but I'll return to it sometime with a new focus. :)
 
52
Posts
14
Years
  • Seen Dec 23, 2019
MIND = BLOWN

Every time I read something more about this, I was more impressed by it.
This is so good that you've earned the honor of having my first post on PC in ages.

By the way, if I were to apply your music patch, your extras patch, and captnotatroll's Super-Extra-Nostalgia patch all on one ROM, what order would the patches be applied in?
 

RichterSnipes

Not even a nibble...
513
Posts
12
Years
  • Age 30
  • USA
  • Seen Dec 1, 2023
MIND = BLOWN

Every time I read something more about this, I was more impressed by it.
This is so good that you've earned the honor of having my first post on PC in ages.

By the way, if I were to apply your music patch, your extras patch, and captnotatroll's Super-Extra-Nostalgia patch all on one ROM, what order would the patches be applied in?

Thanks for the support! And I'll be happy to have that honor :). All I really want with this hack (or hacks) is to create something that others will be able to include for any future hacks that might come. Obviously my main focus as of now has been on the GB Player end and making the classic tracks as authentic as possible with GB Synth instruments, but I'm happy to provide other sound patches as necessary.

As for patching, it shouldn't matter when you apply captnotatroll's normal patch. All that matters is that you apply the Extras patch before the GB Player patch.

***

Well guys, I lied when I said I was taking a break. I actually have made a lot of progress with the patches since my last post, including a few small-yet-significant touches to a few tunes. However, I've ran into a problem.

In trying to *SOUNDLY* put in all 251 of the GB(C) era Pokémon, I've created new scripted battles for a few legendaries. The problem? They play the R/S/E trainer battle music when battled, which completely breaks immersion in the game.

Now here's the issue. I found out that I could use the ASM routine first used in Shiny Gold to switch out the tracks used in any instance, including scripted battles. The issue? It would break compatibility with the GB Player entirely. I'm contemplating on what to do next, as this is a serious issue for everyone's interests.

I'm going to make a poll concerning this issue concerning how I should approach this, as there are several paths I can take. I hope I get enough of an opinion from everyone for me to make an ultimate decision on this, because I am in need of input here! The stress of this predicament is honestly making me want to stop hacking Pokémon games altogether. I hope that won't happen for a little while!
 

Jambo51

Glory To Arstotzka
736
Posts
14
Years
  • Seen Jan 28, 2018
How are you implementing the legendary battles? If you're using special 0x137 (or whatever it is), I may be able to help. You see, this special has its own set aside music loader, which I have a hack created for. I can't access the code right now (I'm on my phone), but I assure you it works, and it would not interfere with the GBP insert locations. I can't help if you're using wildbattle, as opposed to set wildbattle + special 0x137.
 

RichterSnipes

Not even a nibble...
513
Posts
12
Years
  • Age 30
  • USA
  • Seen Dec 1, 2023
How are you implementing the legendary battles? If you're using special 0x137 (or whatever it is), I may be able to help. You see, this special has its own set aside music loader, which I have a hack created for. I can't access the code right now (I'm on my phone), but I assure you it works, and it would not interfere with the GBP insert locations. I can't help if you're using wildbattle, as opposed to set wildbattle + special 0x137.
I bet my tirade of questions sound a bit like begging now, don't they? :P

The legendary special is typically special 0x138, but special 0x137 serves the same purpose, just for icy areas. I did try looking for something to hack which music loads for what Pokémon, but all posts I found were either questions that never got answered or questions with answers that never had more of a response than "it would require ASM hacking." Hence me posting the poll with the decided opinion that there just wasn't a solution right now.

Just through my various searches alone I would have never found out that a hack for it does exist, or if it had ever been posted, so this is great news!
Spoiler:
 

Jambo51

Glory To Arstotzka
736
Posts
14
Years
  • Seen Jan 28, 2018
Just through my various searches alone I would have never found out that a hack for it does exist, or if it had ever been posted, so this is great news!

I never released it, that's why.

Code:
.text
.align 2
.thumb
.thumb_func
.global battlemusichackleg

main:	push {r2,r3}
	ldr r0, tableloc
there:	ldrh r2, [r0, #0x0]
	cmp r1, r2
	beq loadmusic
	ldr r3, end
	cmp r2, r3
	beq loadnormal
	add r0, #0x4
	b there
loadnormal:	mov r1, #0xAA
	lsl r1, r1, #0x1
	add r1, #0x1
return:	pop {r2,r3}
	ldr r0, goback
	bx r0
loadmusic:	ldrh r1, [r0, #0x2]
	b return
.align
end:	.word 0x0000FEFE
goback:	.word 0x0807FA3F
tableloc:	.word 0x08FFFFFF

Change the code at 0x7F9F4 to:
Code:
01 1C 00 00 00 48 00 47 XX XX XX 08

Where, once again, your insert location + 1 replaces the XX's. Easy stuff. Now, using it means you have to create a new table in your ROM, the format for said table is:

Code:
[Pokémon Species - Half-Word][Song ID to Play - Half-Word]

With an FE FE 00 00 at the end of it to signify to the routine that the table is finished.

Then, point the tableloc to this new table, and you should be good to go. Remember, of course, to keep everything correctly aligned. Major note: I only tested this with special 0x138. It does NOT work with wildbattle or special 0x137.
 
Last edited:

RichterSnipes

Not even a nibble...
513
Posts
12
Years
  • Age 30
  • USA
  • Seen Dec 1, 2023
I never released it, that's why.

(Insert code here)

Change the code at 0x7F9F4 to:
Code:
01 1C 00 00 00 48 00 47 XX XX XX 08
Where, once again, your insert location + 1 replaces the XX's. Easy stuff. Now, using it means you have to create a new table in your ROM, the format for said table is:

Code:
[Pokémon Species - Half-Word][Song ID to Play - Half-Word]
With an FE FE 00 00 at the end of it to signify to the routine that the table is finished.

Then, point the tableloc to this new table, and you should be good to go. Remember, of course, to keep everything correctly aligned. Major note: I only tested this with special 0x138, but in theory it should also work for 0x137. It does NOT work with wildbattle!

:shocked:

Is there any limits to what you're able to do with FireRed? It is amazing to see you create so many barrier-crushing ASM routines for the game!

The code works perfectly, by the way. I assigned proper tunes to all the legendary Pokémon in the ROM, and the code works without a hitch. Theories seem to fall flat, though; the code doesn't work for special 0x137. That's OK, though; the use of the special in FireRed makes the ice chunks in the background some off-seeming colors, including black and white. I'm fine with just using special 0x138 anyways.

I guess that makes the poll null now. Like I said before, this is great news for everyone! Thanks so much again, Jambo51.

With this great news, hopefully I can get my next release out relatively soon. It'll be a drastic change compared to last time!

Maybe next time I'll control my frustration better on the forums...:embarrass
 
Last edited:

RichterSnipes

Not even a nibble...
513
Posts
12
Years
  • Age 30
  • USA
  • Seen Dec 1, 2023
VERSION 3.0 is now available in the first post!

As you might have guessed by my new avatar, I've put my focus into somewhere else this time around. Yep, there's now a patch to change the main character's clothes to what they were in the old days. Don't worry, the female player's sprites have also been changed accordingly, despite not appearing in R/G/B/Y.

I've also separated the Extras patch into two separate Entei-ties (sorry, bad pun). Now there is an Extras patch, and a new Catch 'em All patch. More details can be found in both the changelog and the first post, but I'll just say that I think you'll all like some of the new custom events.:)

And hey, that strange Super Nerd in Fuchisa City now has a purpose thanks to that patch.

The new poll is asking how I should make Mew and Celebi accessible in the game, as I honestly don't know what to do about them. Be honest and thoughtful with your response!

What are you waiting for? Go check out the update now!

Changelog:
Spoiler:
 
Last edited:
52
Posts
14
Years
  • Seen Dec 23, 2019
Wow. Just wow.
I hate to admit that I had been getting impatient... But I hadn't realized how much you were changing!

Out of curiosity, can all of these patches be used with captnotatroll's (normal) music patch at once? Also, I'm indecisive enough that I need to ask this: Is there a recommended order for applying the patches?

Thanks!
 

RichterSnipes

Not even a nibble...
513
Posts
12
Years
  • Age 30
  • USA
  • Seen Dec 1, 2023
Wow. Just wow.
I hate to admit that I had been getting impatient... But I hadn't realized how much you were changing!

Out of curiosity, can all of these patches be used with captnotatroll's (normal) music patch at once? Also, I'm indecisive enough that I need to ask this: Is there a recommended order for applying the patches?

Thanks!
Sorry if I kept you waiting! I actually kind of didn't want to release this until all 251 of the older Pokémon could be caught, but it just felt like the right time.

captnotatroll's patch has nothing to do with the music. It changes all the Pokémon sprites into their Red/Blue iterations. And yes, you can apply his normal patch alongside all of my own. My patches do not have interfering data with his at all, as his custom sprites occur from 0x710000 to somewhere around 0x752000, whereas all my custom data starts after 0x760000. In other words, they play together just fine!

(BTW, his Deluxe patch is not compatible with my Extras patch, as both change trainer data.)

And, with my newest release, you should be able to apply all the patches in any order you choose. If you run into any issues, just tell me and I'll get to fixing it.
 
52
Posts
14
Years
  • Seen Dec 23, 2019
...

captnotatroll's patch has nothing to do with the music. It changes all the Pokémon sprites into their Red/Blue iterations. And yes, you can apply his normal patch alongside all of my own. My patches do not have interfering data with his at all, as his custom sprites occur from 0x710000 to somewhere around 0x752000, whereas all my custom data starts after 0x760000. In other words, they play together just fine!

...

And, with my newest release, you should be able to apply all the patches in any order you choose. If you run into any issues, just tell me and I'll get to fixing it.

Thanks! I did understand that they can be applied in any order... I'm just paranoid about messing something up, that's all. (^_^)

Also, what feature does this screenshot in the "Catch 'em All" section show?

emall2.png


I just don't see a connection to anything on the features list except maybe the Giovanni event...
 

RichterSnipes

Not even a nibble...
513
Posts
12
Years
  • Age 30
  • USA
  • Seen Dec 1, 2023
Also, what feature does this screenshot in the "Catch 'em All" section show?

emall2.png


I just don't see a connection to anything on the features list except maybe the Giovanni event...
I kind of wanted you guys to find these things out yourselves, because telling you everything about them would spoil the fun!

If you go back to Lavender Town after getting the Earth Badge from Giovanni (AND subsequently talking to him again, causing him to disappear), you'll be greeted by this scenario. It's your job to find the "evil man" and restore justice! Entirely optional, of course, but anyone who does it should like the aftermath.

The spoiler below is another hint, but I figured that it might give away too much!
Spoiler:
 
93
Posts
12
Years
  • Seen Jul 7, 2019
wow, a new release, but does this mean that i have to start over again?, and if possible, how do i apply all of the new changes?, there is a patch that covers all?, i mean, the general, gb player, wardrobe, catch 'em all and extras in one patch?
 

RichterSnipes

Not even a nibble...
513
Posts
12
Years
  • Age 30
  • USA
  • Seen Dec 1, 2023
wow, a new release, but does this mean that i have to start over again?, and if possible, how do i apply all of the new changes?, there is a patch that covers all?, i mean, the general, gb player, wardrobe, catch 'em all and extras in one patch?
I don't think this will cause any conflicts. My previous releases had flag conflicts (they were actually using trainer flags before), but I fixed that for this one. If anything, this would make the new release more compatible all around! I sure didn't run into any issues with past saves, so you shouldn't either. If you, or anyone else, notices something strange, please let me know!

As for the patches themselves, just apply them in any order you want. I keep them separate so people can pick and choose what they want in their own version of the game. Some people might want a clean ROM experience with just the GB Player, or maybe they want everything except the "forced" Pokémon locations from the Catch 'em All patch. If there's enough demand for an all-in-one patch, though, I guess I can make one.
 
Back
Top