::======================================== ::Teenage Mutant Ninja Turtles... of Rage ::(Summary of Patches to Original SoR2 ROM ::and to the Original TMNT Edition Hack) ::By eskayelle ::August/September 2019 ::======================================== :: ::**CONTENTS** :: ::*****INTRODUCTION***** ::*****VERSION HISTORY***** ::*****TOOLS USED***** ::*****CREDITS***** ::*****MOVE LIST***** ::*****ADDITIONAL NOTES***** ::*****BATCH FILE ASSEMBLY***** :: :: ::*****INTRODUCTION***** :: ::Cowabunga! For years, I've been wanting to play a new Ninja Turtles game, ::akin to the old arcade ones, or the ones on the 16-bit consoles. ::A year or so back, I discovered a great TMNT hack of Streets of Rage 2 by Carzj. :: ::Recently, I found on RHDN a portrait editor for the game, as written by Dha Lau Hoo. ::While deep into my NBA Jam TE hacks, I remembered that there were a few changes I'd ::have made to that great TMNT Edition hack if I could... like portraits and names on the player select screen... ::maybe add a few shadows where the turtles seemed to float during gameplay... :: ::So I decided to give an update to the hack a go. :: ::And the result is this... Reaganomics! :: :: ::The Teenage Mutant Ninja Turtles... of Rage vx.xx.xx [U] [h].bin file is a modified Genesis ROM of Streets of Rage 2; ::it's also an addendum to Carzj's TMNT Edition hack, adding various improvements cited in this document. ::The romhack is distributed as an IPS patch, which should be patched to an original USA Streets of Rage 2 ROM. ::After patching the IPS file to the original Streets of Rage 2 ROM, ::the checksum may not need to be fixed using an application such as FixCheckSum.exe on romhacking.net (RHDN). ::But... if you receive the red screen of death at startup, use a checksum fixing app. :: ::The ROM can be opened and played via several emulators, including in Windows, Linux, and Android environments. :: ::The following is a list of known Windows or Android emulators within which this ROM works; ::note that it also works with Raspberry Pi/RetroArch. :: ::Windows-- ::1) Fusion v3.64 ::2) Gens v11c r57shell mod r665 ::3) RetroArch build date Feb 3 2019 :: ::Android-- ::1) MD.emu v1.5.37 :: :: ::*****TOOLS USED***** ::Pancake 2 v1.5 and v1.6 ::Gens v11c r57shell mod r665 debugger and trace logs ::TileMolester ::FixCheckSum ::SonMapEd ::HivePal ::xvi32 ::HxD :: :: ::*****VERSION HISTORY***** ::This is a batch file serving two purposes-- ::1) To compile all the .ips files to be associated with the ::Streets of Rage 2 Genesis ROM and create the TMNT of Rage ROM. ::2) To operate as a readme file, documenting the hack revisions and ::corresponding changes to the original ROM. :: ::AUGUST 2019: ::Applied Carzj's TMNT Edition hack patch. ::Used Dha Lau Hoo's SOR2Portraits.txt tutorial to create player select portraits. ::Modified via hex editor the story in attract mode. ::Modified via hex editor the start screen text. ::Modified via hex editor the following (source: gamehacking.org)... ::::Changed $FDE0 to #$6600 ::::Changed $F8EE to #$6700 (activate level select in options) ::::Changed $F9BC to #$6604 (activate 9 lives in options) ::::Changed $F974 to #$6700 ::::Changed $F99C to #$6700 (activate very easy and mania in options) ::::Changed $7844 to #$6016 ::::Changed $787A to #$6016 (display number of KOs above score when paused) ::::::Fun Fact: Pressing A on The Best Ten Players Screen will display K.O.s in the original game. ::Note: It appears the options level items may already be in the ROM. ::Note also that the TMNT Edition hack appears to allow the same characters to be used in a 2P game. ::But... at times, when two players continue, perhaps around the same time, if they select the same character, ::both players will be able to use the same character, but one player will have the wrong name above their lifebar. ::It's a bug whose effect cannot be readily generated. ::Fixed names for Garcia, Garuda, and Mosquito via hex editor. ::Using RHDN forum thread info by SCD, modifed via hex editor $1E70F (now #$00 versus #$A1); ::Mr. X has his cigar restored once again. ::Modified via hex editor high score table to recognize modders and assets providers. ::Modified via hex editor credits to recognize modders and assets providers. ::Modified via hex editor the post-credits with the special message on HARDEST setting. ::Portrait edits ("sepia" style, based on original palette). ::::Note that the palettes for the flashing portraits appear to be located at $7540 and $7560. ::Portrait edits (color and blank for blink effect). ::With Dha Lau Hoo's guidance, located the offsets for the name tiles (player select screen); ::revised the bytes via hex editor to point to tiles that will assemble the TMNT names. ::Modified via hex editor address $7CC9 to set the Round 3 Pirate Ship BGM to #$09 (Little Money Avenue). ::Via Pancake 2, dumped sprite sheets for the TMNT Edition hack and added shadows to the standing and walking sprites. ::Imported those sprites back into the ROM. ::Fixed glitch in Mike's attack (30 - frames 2 and 3) that were present in the original TMNT Ediiton hack. ::Fixed missing color in new Mike standing animation. ::Fixed Raph shock animation glitch from original TMNT Edition hack. ::Added shadows to Raph's run animation. ::Modified via hex editor address $F9B6 (now #$0062) and $F9BC (now #$6604) to allow 99 lives option. ::Using the air combo guide (English).txt by Dha Lau Hoo and the Streets of Rage 2 Character Physics.txt guide by Metal64, ::set up physics to allow for limited air/juggle combos. ::Via Pancake 2, revised Mike's throw animation. ::Increased forward walk speed to accommodate for more air combos. ::(This ends 1.25 - Turtle Power...) :: ::Added title screen for Turtles of Rage...! ::Adjusted title screen palette at $5D94 and animation palette at $5BB0 ::to better match the new title screen palette. ::Added shadows to pick-up animations. ::Added shadows to Mike's grab animations. ::Added shadows to flip (get up) animations. ::Added shadows to Raph's grab animations. ::Added shadows to Leo's grab amimations. ::Added shadows to Don's grab animations. ::Added shadows to Mike's taunt animation. ::Added shadows to Don's taunt animation. ::Added shadows to Raph's taunt animation. ::Added shadows to Leo's taunt animation. ::Added shadows to being grabbed animations. ::Added shadows and blood to being hit animations. ::Added shadows to Mike's weapon use animations. ::Added shadows to Raph's knife and pipe animations. ::Added shadows to Don's weapon use animations. ::Added shadows to Leo's weapon use animations. ::Added shadows to Raph's normal attack and other weapon animations. ::Added shadows to Mike's normal attack animation. ::Added shadows to Don's normal attack animation. ::Added shadows to Leo's normal attack animation. :: ::SEPTEMBER 2019: ::Added shadows to Mike's middle attack animation. ::Added shadows to Leo's middle attack animation. ::Added shadows to Raph's middle attack animation. ::Added shadows to Don's middle attack animation. ::Added shadows to Mike's back attack animation. ::Added shadows to Leo's back attack animation. ::Added shadows to Don's back attack animation. ::Added additional blood animations and revised top 10 screen. ::(This ends Teenage Mutant Ninja Turtles... of Rage v1.25.29...) :: :: ::*****CREDITS***** ::Big thanks to the following folks for their previous work on SoR 2 and in turn the available assets and documentation. ::1) Carzj for the original TMNT Edition hack. ::2) SCD for the restoration hack. ::3) Dha Lau Hoo the portraits tutorial and guidance on editing name titles at the player select screen. ::4) Metal64 for the character physics guide. ::5) Wake for help with formatting the color schemes for the new portraits. ::6) J-Vizzle for playtesting. :: ::Special thanks to MarkeyJester, Reaper Man, and RadioShadow for guidance on hacking the SoR2 title screen! :: :: ::*****MOVE LIST***** ::Regular Attack = B ::Flurry of Attacks = B repeatedly ::Charge Attack / Taunt = Hold an release B ::Blitz Attack = (L+L or R+R) + B ::Rear Attack = B + C ::Jump Kick = (L or R) + C + B ::Drop Kick = C + D + B ::(Grab) Power Hit = Wait one second, then B ::(Grab) Flurry Attack 1 = B repeatedly ::(Grab) Flurry Attack 2 = (L or R) toward enemy + B ::(Grab) Body Throw = (L or R) away from enemy + B ::(Grab) Slam = C + B ::Defensive Special = A ::Offensive Special = B + A ::(While Being Thrown) Counter = Hold U and tap C ::Throw Weapon = Pick up weapon, then hold C and tap B :: :: ::*****ADDITIONAL NOTES***** :: ::The following Game Genie or PAR codes will not work in this game: ::::Infinite continues (AL7T-AA62, or #$6002 at addres $BB98) ::::99 lives on option screen ::::Various Infinite Energy / Health codes ::But then... do you REALLY need them anyway??? :: ::The charge moves are really just taunts in this game, ::similar to Carzj's TMNT Edition. They'll do no damage, ::and they need not, given that the new air combos will make the game easier. :: ::FYI to the reader... this hack is inefficiently coded. ::Sprites in Pancake 2 sometimes look fine in the utility but glitch in game. ::There were at least 2-3 sprites in the original TMNT Edition with this problem, ::which are fixed in this game by replacing that sprite on the sprite map with a ::new one in expanded ROM. Sometimes sprites I added had the same issue, ::so I simply added another instance of the problematic sprite and mapped to that one instead. ::The end result fixed glitches but at the cost of more space. ::Since my ultimate goal was to be able to play the game on real hardware, ::and I'd need to pad the game to 4MB to accomplish this anyway, ::I didn't try to improve the efficiency in the sprite table. :: ::Raph's knife use does not register a hit. Pancake 2 disallows it. ::This is also an issue in the TMNT Edition hack. :: ::Note that this hack was built on a USA SoR2 ROM. ::If you use a Game Genie master code and region unlock code, ::this will allow you to play the ROM on a Japanese console, ::but the Japanese text and Bare Knuckle title screen will generate. ::Best results for viewing the TMNT of Rage Remix title screen ::are to use an American console or an emulator with American region detected. :: :: ::*****BATCH FILE ASSEMBLY***** :: copy "Streets of Rage 2.gen" a.bin ::flips "SoR 2 Tmnt.ips" a.bin flips "Streets of Rage 2 - Turtles and Shadows (Walk, Hit).ips" a.bin flips "Streets of Rage 2 - TMNT Portraits, Palettes.ips" a.bin flips "Streets of Rage 2 - Fix Mikey Attack.ips" a.bin flips "Streets of Rage 2 - Fix Mikey Standing Frame.ips" a.bin flips "Streets of Rage 2 - Fix Raph Shock.ips" a.bin flips "Streets of Rage 2 - Raph Run.ips" a.bin flips "Streets of Rage 2 - Revised Story.ips" a.bin ::flips "Streets of Rage 2 - Press Start.ips" a.bin flips "Streets of Rage 2 - DBLZ.ips" a.bin ::flips "Streets of Rage 2 (TMNT Hack) - Turtles Shadows (Walk, Hit).ips" a.bin flips "Streets of Rage 2 - KO.ips" a.bin flips "Streets of Rage 2 - Garcia,Garuda,Mosquito.ips" a.bin flips "Streets of Rage 2 - Cigar Restored.ips" a.bin flips "Streets of Rage 2 - Hi Scores.ips" a.bin flips "Streets of Rage 2 - Credits.ips" a.bin flips "Streets of Rage 2 - Post Credits.ips" a.bin flips "Streets of Rage 2 - Names.ips" a.bin flips "Streets of Rage 2 - Stage 3 Pirate.ips" a.bin flips "Streets of Rage 2 - New 99 Lives Option.ips" a.bin flips "Streets of Rage 2 - Air Combos, Less Gravity, Walk Jump Physics.ips" a.bin flips "Streets of Rage 2 (TMNT Hack) - Mikey Throw.ips" a.bin flips "Streets of Rage 2 - Fwd Jump Speed.ips" a.bin ::flips "Streets of Rage 2 (TMNT Hack) - Sepia Portraits.ips" a.bin ::flips "Streets of Rage 2 (TMNT Hack) - Color Portraits.ips" a.bin ::ren a.bin "Streets of Rage 2 - Turtle Power v1.25 [U] [h].bin" flips "Streets of Rage 2 - ToR Title Screen.ips" a.bin flips "TMNT of Rage - 5D74 Palette 5BB0 Animation.ips" a.bin flips "TMNT of Rage - Pick Up Shadows.ips" a.bin flips "TMNT of Rage - Mike Grab.ips" a.bin flips "TMNT of Rage - Flips.ips" a.bin flips "TMNT of Rage - Raph Grab.ips" a.bin flips "TMNT of Rage - Leo Grab.ips" a.bin flips "TMNT of Rage - Don Grab.ips" a.bin flips "TMNT of Rage - Mike Taunt.ips" a.bin flips "TMNT of Rage - Don Taunt.ips" a.bin flips "TMNT of Rage - Raph Taunt.ips" a.bin flips "TMNT of Rage - Leo Taunt.ips" a.bin flips "TMNT of Rage - Grabs.ips" a.bin flips "TMNT of Rage - Being Hit.ips" a.bin flips "TMNT of Rage - Mike Use.ips" a.bin flips "TMNT of Rage - Raph Use Knife & Pipe.ips" a.bin flips "TMNT of Rage - Don Use.ips" a.bin flips "TMNT of Rage - Leo Use.ips" a.bin flips "TMNT of Rage - Raph Attack & Weapon.ips" a.bin flips "TMNT of Rage - Mike Attack.ips" a.bin flips "TMNT of Rage - Don Attack.ips" a.bin flips "TMNT of Rage - Leo Attack.ips" a.bin flips "TMNT of Rage - Mike 31 Attack.ips" a.bin flips "TMNT of Rage - Leo 31 Attack.ips" a.bin flips "TMNT of Rage - Raph 31 Attack.ips" a.bin flips "TMNT of Rage - Raph 31 Attack Frame.ips" a.bin flips "TMNT of Rage - Don 31 Attack.ips" a.bin flips "TMNT of Rage - Mike Back.ips" a.bin flips "TMNT of Rage - Leo Back.ips" a.bin flips "TMNT of Rage - Don Back.ips" a.bin flips "TMNT of Rage - Blood & Turtles.ips" a.bin ren a.bin "Teenage Mutant Ninja Turtles... of Rage v1.25.29 [U] [h].bin" @pause