New records are displayed in blue. This means that the shortest times (for the individual bosses and the total), as well as related data for each (game play mode, selected Kongs, and hits taken), are now saved to battery-backed memory! Adding this feature wasn't nearly as difficult as I expected it to be, either.

So with one more thing down, here's what remains:

A single-battle version of the Results screen: I won't be using the same one in this case, because a screen full of dashed times is just boring.

A records screen (which I've dubbed "Best Bouts"): This will appear after the Results screen when a record has been broken. It should also be accessible outside of game play by pressing a certain button or combo of buttons at either the Title or Options screen.

But I do have something else, pertaining to the Team Colors I posted earlier in this thread:

I can't make up my mind if I want to keep the orange Dixie (in color scheme 2) or Diddy (in color scheme 7) the same, though. Dixie's pink ponytail just doesn't complement her clothes well enough. Orange Diddy is fine to me, but his colors are supposed to mimic orange Dixie's, just as his pink palette makes him resemble normal Dixie.Should I go with 1 or 2? A or B? I'm leaning toward 2 and A.

Adding to this, the inside of orange Diddy's mouth is now purple. If I switched from A to B, it would be green, which looks even weirder. I guess it's better than it being bright orange like it was before I altered all of the sprites.

I use a debugging version of the bsnes emulator to figure out where the code I need to change is. I also use NotePad++ to write out hex, then paste it into the hack in a hex editor (XVI32). I use Paint Shop Pro and YY-CHR for to create/manipulate graphics.

I created them in Paint Shop Pro, used vSNES to convert them from JASC format to 15-bit SNES format, and pasted the data into an empty area at the end of bank $FD in the ROM. I then rewrote part of the subroutine which loads the Kongs' palettes ($BB:8B66 in an unaltered DKC2 (V1.0) (U) ROM). Normally, it checks to see if the game play mode is Two-Player Contest ($060D=#$02), and the second player is active ($060F=#$01). If both of these cases are true, adds a constant (#$003C) to a memory address ($60), which is then added to Diddy and Dixie's palette pointers, making them blue and purple (the same subroutine also makes the inactive kong darker by adding #$001E to the value in $60). Now, however, a different RAM address is loaded and used as an index into a table of eight values, one for each Team Color set. These are still added to the palette pointers, but result in a different color set depending on the value selected from the table. Of course, you still need a way to set that RAM address in order to get the palettes you want, and the Options menu serves that purpose.

I understood it too, but have no way to apply that information like you, Mattrizzle and SImion32 do. As for the palettes, I suppose you could follow Phyreburnz's advice, because both options look alright to me.

EDIT: Oh yeah, I created the Kiddy-colored Diddy palettes, but have decided not to use them.

kiddy_diddy.png (2.71 KiB) Viewed 34772 times

Don't get me wrong: I like the way they turned out, but they just don't fit in with any of the existing color schemes. Also, the second one looks very similar to the green palette already present in the hack.

Test (and fixing any bugs that arise): Before anyone asks, I am usually the sole bug tester for all of my hacks. While having people test the hack would be great, I don't want to risk this falling into the wrong hands.

Write the Readme file

Record a video: This isn't absolutely necessary, but I do like to give people a demonstration of the hack before they decide to download it.

Mattress is a nickname that a friend gave me about ten years ago, because I was rather stout, and my figure resembled a mattress (I am now much slimmer, but the name stuck). The same friend "-izzle"-fied it about a year later, resulting in Mattrizzle. Combine the original version of the nickname with the last two digits of my birth year, and you get Mattress87.

Thank you. Hopefully, everyone will have as much fun playing the hack as I'm having creating it.

Oh, and one other thing. It annoys me when people do stuff like this. This b00nt0nl0n person (or spambot?) copied my video and added some suspicious-looking link to the top of the description! It looks like all of the videos on this YouTube channel are stolen from others.

Most of my files are all hosted in one place: http://mattrizzle.caffie.net/, but I haven't built a proper web site at this domain yet. The closest thing you'll find to one is in the User bio section of my SMW Central profile.Oh, and there's one thing I've been wanting to ask you, B.B.Dixie: Are you the same person as B.B.Link(v1)? Your user name is similar.

I'd really like to get this thread back on topic, but there isn't really anything else to say about the hack that hasn't already been mentioned.

Mattrizzle wrote:Most of my files are all hosted in one place: http://mattrizzle.pac.am/, but I haven't built a proper web site at this domain yet. The closest thing you'll find to one is in the User bio section of my SMW Central profile.Oh, and there's one thing I've been wanting to ask you, B.B.Dixie: Are you the same person as B.B.Link(v1)? Your user name is similar.

I'd really like to get this thread back on topic, but there isn't really anything else to say about the hack that hasn't already been mentioned.

I'm not ready to release this just yet. Two more bugs reared their heads a few minutes ago in Kleever's Kiln. If you position yourself over the lava pit when throwing the last cannonball at Kleever, Diddy and/or Dixie will fall, but not die until Kleever falls into the lava. Additionally, if you grab onto a hook immediately after throwing the cannonball, the Kong(s) will fall off the screen in the hanging animation, but the hook will remain in place. These bugs exist in all of the revisions and localizations of DKC2 I've tried so far: U v1.0, U v1.1, and J v1.0.

Until then, look at these screenshots:Since there are now additional button commands that can be executed when the game is paused, text appears on the screen to show you what they are. The commands should be self-explanatory, but I'll tell you what they mean anyway. "Options" quits the game and takes you back to the Options menu. "Restart" starts a new game with the current settings--handy if you messed up somewhere. "Quit" is essentially the same as pressing the reset button on the console, taking you back to the Rareware logo.

A menu with similar commands now appears after you complete or lose a game:

By the way, I took a peek at the latest video, and I must say it's a bit odd hearing the target prize/boss beaten music when K. Rool is defeated... was it a conscious decision to include this?

That's what normally happens when you disable the code that skips the victory themes in the K. Rool levels. I did intend on leaving the music in both K. Rool Duel and Krocodile Kore, but you're right, it doesn't really make sense in the former. I got so used to hearing it there that it didn't really seem odd to me--it still is sort of cool to hear the music play when D.K. breaks loose and gives K. Rool the wallop he won't soon forget!

Now I'm torn. Do I remove it or not?

It's waaaaaaay past bedtime where I'm at, so I really just need to snooze for awhile...

I'm even more impressed now that I've had some hands-on time with it - everything's so well organised and presented, and the configuration options on offer are great. Stupendous work!

With regard to the victory music, I have to say it does feel out of place to me in the K. Rool fights - especially K. Rool Duel... although it might be cool to keep it for the single boss mode, as in that mode it wouldn't be interrupting the mood/flow from bout to bout. If there's any way to have it kick in a bit later, that might feel better, though - it kind of ruins the "OH MAH GAWD HE'S GETTING UP!" moment having that music playing. If you could somehow trigger the music change right as DK lands the uppercut, that would be awesome.

Just some thoughts... take 'em or leave 'em. Either way, you've got a stonkingly well-crafted hack on your hands.

Now I'd better play through Boss Blitz and give you some long-overdue feedback on what I'm sure is an equally brilliant hacking effort.

YES! I've been waiting for this! I'll be downloading this the second I get home later. It looks like the SNES hacking world is looking up.

I notice something when practicing fighting Krow 1 before the hack came out. On his second phase when he rams the nest, Its almost random that an egg that you can grab occurs. It'll be interesting to see who gets the best time there.....

Enough talk! Downloading.

EDIT: So I got home and tested it, The very first thing that happened when we fought Krow in 2p mode is when I got hit and the other person starts, the actual level (not the game) froze. We could pause and leave, but nothing else. That's what happened right off the bat, but so far the interface, colors and presentation is beautiful. I'll post with more feedback later......

EDIT 2: Ok it only occurs when you press any other button except Start when you get hit, so that's a relief. Back to playing...

I love these hacks so much, they add so much replayability to the game (not that that was ever an issue but more is always better) ! I can't believe this wasn't an available game type in the Game Boy Advance ports.

I wonder, would it be possible to add sort of a "survival" game type to the trilogy? Maybe an endless hoard of Kremlings is attacking and you have to see how long you can last in various survival-specific levels?

B.B.Dixie wrote:Ok it only occurs when you press any other button except Start when you get hit, so that's a relief.

I definitely need to fix that, though... Thanks for pointing it out.

EDIT: Patch updated. Get it from the same link as before.

Here's why this happened: When I was adding in some of the fixes from version 1.1 of the original game, I forgot to change the value of a JML instruction. If you want to fix it without downloading the new revision, open the game in a hex editor, go to address 38CB9B and change B9 to 98. The checksum will be bad, but that won't keep you from playing the game.

Wow, this is awesome! I'm impressed. I wish I could hack as well as you, but I've only done a little assembly hacking for the GB, and none at all for the SNES... so this is cool! (And do you really use hex strings to modify the code? I would think that assembly language exists... but maybe I'm wrong as far as the SNES goes. In any case, that would drive me crazy.) If anybody's curious, here are my records after a few attempts:

I also like the loads of color palettes (I've been alternating between the blue and green ones) and the inclusion of the unused K. Rool death/win music. Just one thing... what is with some of the weird sound effects? There's one when going into the Squawks barrel, and another when touching a DK Barrel.

Another thing... I noticed that when choosing to fight all the bosses, the Game Over screen only appears when losing to the first Krow battle. This doesn't seem intentional, as it doesn't make sense and the screen always appears when losing to individual battles.

Blaziken257 wrote:And do you really use hex strings to modify the code? I would think that assembly language exists... but maybe I'm wrong as far as the SNES goes.

You're correct on both counts. I do it that way because I'm used to writing things out in hex. While I have used assemblers (such as xkas) before, my experience with them hasn't been pleasant, as they tend to be picky about syntax (Why should it matter if I write dw as opposed to dcw? I just want to write out a 2-bit value!). Also, typing things in a hex editor requires fewer keystrokes than writing in the assembly language ("lda $2E, x;" can just be written as "B5 2E" in hex). I could write more reasons for why I do things the way I do, but I'll leave it at that.

Just one thing... what is with some of the weird sound effects? There's one when going into the Squawks barrel, and another when touching a DK Barrel.

Another thing... I noticed that when choosing to fight all the bosses, the Game Over screen only appears when losing to the first Krow battle. This doesn't seem intentional, as it doesn't make sense and the screen always appears when losing to individual battles.

For the first question, those are actually unused sound effects. The first one even attempts to play normally in the game, but after the barrel breaks instead of before. It also plays on the wrong channel, resulting in it being cut off by the barrel breaking sound almost immediately after it starts. The second one isn't referenced by the code at all--I thought it would fit when releasing a Kong from the DK barrel, as the first game had a sound for that action.

For the second one, that is an intentional feature as well. There's no point in showing the results screen when no times have been recorded, so I replaced it with the normal Game Over screen in those cases.

All I need is a few music hacks and I'd be able to rip the SFX as before. Specifically, disable music to 100% quite zone, and then be able to hack an object into playing a sound effect exactly once upon getting near the object (when it loads).

I was able to hijack the Mincer to do this in DKC1, but I never bothered with the other 2 games so far.

OK, so I just got finish with this last night, and I've got to say, like everyone else, that this is great. Great presentation, great calculating of time, ASM and everything. I just love the unused K.Rool lose music, sound effects, and Kong colors. Here's my best pathetic attempt alone at all of them:

King Zing Sting is probably the trickiest to beat with speed. All others is just how fast you could hit them after their attack phases. Anyways you've outdone yourself as usual. I would love to use some of these ASM's in the original game, like color select, the K.Rool lose theme, and the unused Dk barrel sound in particular. Maybe you can share with us how one day

Thanks again, and here's hoping you can update DKC Boss blitz to save best times as well

Excuse my inattentiveness if this has been answered, but how did you go about creating the red menu text? Is that actually stored as a font in the game? Same question regarding the 'PAUSED' text, which looks more like the banana counter's font than standard DKC2 title text (more golden, nicer shading, etc.).

Beyond just the fonts, I'd be really interested to know exactly what you've custom-designed, and what is unused/unseen, but stored in the ROM.

Qyzbud wrote:Excuse my inattentiveness if this has been answered, but how did you go about creating the red menu text? Is that actually stored as a font in the game? Same question regarding the 'PAUSED' text, which looks more like the banana counter's font than standard DKC2 title text (more golden, nicer shading, etc.).

The red menu font exists in the Game Boy Advance version of the game. If you apply a different palette, it becomes virtually identical to the font used by the "Ye Scurvy Kong Krew" and "The End" text in the SNES version's credits.

For the "PAUSED text," I just reshaded the yellow text used in the menus, using the banana counter numerals as a reference. I only did those letters, though.

Beyond just the fonts, I'd be really interested to know exactly what you've custom-designed, and what is unused/unseen, but stored in the ROM.

This is long, so I stuck it in spoiler tags.

Spoiler!

Here's where each part of the title screen comes from:

The bosses are drawn on the screen using their actual in-game sprites. They just barely fit within the Super Nintendo's 128-tile OAM limit.

The "Donkey Kong" part of the logo comes from Super Donkey Kong's title screen.

The "Country" text comes from the GBA version of DKC, except it is recolored to use the SNES version's colors.

The DKC2 version of the yellow font has no colon or question mark characters. I ripped those from the DKC3 font, then edited them to be consistent with the other characters.

The map icon for Dixie, seen in the Best Bouts screen, was modified to include her ponytail. I also made a slightly more colorful, non-animated version to go with the Diddy life counter icon, as seen in the Options and Results screens.

In both Boss Blitz and Brigand Barrage, I made the boss icons from pieces of their sprites. Well, mostly. There are two exceptions: In Boss Blitz, the Queen B. icon was taken from the Zingers in the Crocodile Isle map, and King K. Rool's icon is a scaled-down version of his mug from the Battle Arena Pads in Donkey Kong 64!

The patch/bandage icon is from DKC3. The 1P/2P icons are edits of the Hero coin icon in the map screen; the letters and numbers are from the yellow font, reduced to a height of 11 pixels.

All of the sprites unique to the single-boss Results screen that aren't a Kong's head (those are from the Dixie/Diddy barrels in the normal game) or a numeral are custom made or edited by me. The big bandage was scaled up from the small one and cleaned up. The ring around the 1P/2P icon and the big white dots were made by me.

There is more to Titular Tableau (the alternate version of Swanky Swing that plays when you are given the objective of a bonus area) than what is heard in the game. No changes were made to it for this hack.

Additional stuff:

The copyright screen was remade from scratch. The palette is the only thing unchanged.

The pained sound that Krow produces when he is laying on the ground after his defeat (Bank #$15, Sound #$63) normally exists in the game. However, it usually cannot be heard, as the switch to the victory music cuts off all sound effects that are playing prior to it. You can sometimes hear it in the All Bosses mode.

The cutscene at the end of Krocodile Kore was edited by me to add in the victory animation.

As mentioned before, death and victory music for both Dixie and Diddy exist in the Crocodile Cacophony music bank (#$1F). They aren't heard because the game is programmed to skip playing these tracks if this bank is loaded.

Brigand Barrage has been updated yet again. The most notable thing is the change I've made to the cutscene at the end of K. Rool Duel, as suggested by Qyzbud. It now differs depending on whether you're playing K. Rool Duel as a single battle, or as part of the All Bosses mode. For the former, I've restored the cutscene to the way it was in the original game--the awkwardly-placed victory music cue is gone.

The latter is more interesting:

The active Kong's victory music and animation start just before Donkey Kong punches K. Rool. A few moments later, Donkey Kong turns to face his companions, using sprites and animations ported from DKC1. Finally, the camera's focus returns to Dixie and/or Diddy, allowing you to see the end of the victory animation.

Just played through K. Rool to witness the change, it's really great and definitely smooth! It feels a lot more of something that could've been implemented in the original game. Why waste time on DK sprites, I guess, huh rare?

Fixed another bug in Brigand Barrage. Beating the game with 99:59.99 on the timer would cause it to freeze at a black screen, because I forgot to update the pointers of a couple of jump commands. You can grab the updated patch from the link in the first post, below the "Donkey Kong Country 2: Brigand Barrage" heading.

Also, Boss Blitz will be receiving an update to bring its features up to par with Brigand Barrage's. This will also give me the opportunity to make some cosmetic improvements, one of which has already been implemented:

The "Boss Blitz" text is rendered in Neale Davidson's Jumpman font. In order to make it resemble the "Donkey Kong text," I applied layer styles and other stuff to it using Photoshop.

Alright, now the options menu has been altered:Yes, that's a new team color scheme. If you don't remember, Diddy used his standard palette in two color schemes in the original release. To remedy this, I paired Red D.K. with pink Diddy, and gave Pink D.K. a Kiddy-colored Diddy.