Streets of rage Compression Utility log

Run log for Ryans SOR project(s).

I started working on making a ROM hack called “Sesame Streets of Rage” over 6 months ago. Since then my focus shifted to being able to modify the SOR2 ROM as much as possible.

I’ve conversed with Eskayelle on how he made the modifications that created his ROM hacks. He lead me to a thread where someone by the alias of Sharpnull, wrote a python script with a compression algorithm that mimicked the one used to decrypt various tiles in the ROM. I converted the script into an EXE and built a GUI for it. I also added information on the locations of the compressed tiles. My goal with the tool is to make it easier to modify/replace tiles such as the title and story screens.

SOR2 Compression Utility: https://www.romhacking.net/utilities/1706/

==============================================================

I have 2 videos on my YouTube channel if that helps. If you have any questions let me know.

https://youtu.be/VCDjbSWkVlQ

https://youtu.be/X4JbNzCFx2Y

==============================================================

Here’s a preview of a new tool I’m releasing soon. It’s basically the compression utility, but it inserts the tiles, palette and mapping for you. All you have to do is edit a 16 color BMP, and click the button that corresponds to the screen you want to modify.

https://youtu.be/BrcSX0fl1LU

==============================================================

Just as an update to my progress, I’ve redirected the routines to load mapping for End screens 2 – 6 to point to the mapping for End Screen 1. The mapping for End Screen 1 is more straight forward and will make it so no tiles need be repeated. Here’s a copy of my notes:

@22DF0 – MOVE.L routine moving end screen 2 mapping from 2F07C into RAM
change to 2EEC6, Mapping in End Screen 1 is more user friendly.
HEX : @22DF0 – 23 FC 00 02 EE C6

End Screen 2 Mapping To Change:
22DF3 – 02 EE C6

End Screen 3 Mapping To change:
22E1B – 02 EE C6

End Screen 4 Mapping To Change:
22E43 – 02 EE C6

End Screen 5 Mapping To Change:
22E6B – 02 EE C6

End Screen 6 Mapping To Change:
22E93 – 02 EE C6

For the first release of the new utility I’ll include templates for all screens except Story Screen 2. That one’s a bit more tricky, simply redirecting to another mapping routine may not be acceptable, the code there may have to be rewritten. Also if anyone wants me to add either version of Syndicate wars let me know and I’ll add them to either the first or second release. No need to worry about having to change any HEX values with this tool, it’ll do it for you.

=====================================================================
Version 1 of the screen replacer is in the Queue. The how to video is here: https://youtu.be/MC6PTUCEpek
=======================================================================
The new utility was rejected for containing copyrighted images. I understand not wanting copyright hits, but why then is this hosted here with copyrighted images? https://www.romhacking.net/utilities/972/
========================================================================

If anyone wants to use the screen replacer you can download it here: https://drive.google.com/file/d/1L9qSKN0Tmt6GWyM16UzQFIiJ_SCvXrbJ/view?usp=share_link

I’m going to continue to post updates to the compression utility here, but I’m also going to Host it and the screen replacer on retro-replay.com.

I bare no hard feelings about the utility being rejected I was just confused as to why there’s already a utility hosted here with copyrighted images but mine was rejected.

===========================================================================
Okay, so I’ve removed the copyrighted images. The template bitmap’s are still there to be modified and inserted into the loaded ROM, as they are of my own creation and not copyrighted. I’ve also updated it to add “guide” files much like the ones used in Pancake 2, they just store the offsets of the Tiles, palette and Mapping for the ROM. I chose to do this so other ROM types (Ex. Syndicate Wars) could be added without the need for a software update. I am however working on Implementing the face and hands for Mr. X in Story Screen 2 that will be added once I get the mapping figured out. The utility is currently in the submission queue so I’m crossing my fingers that nothing gets flagged. If anyone has any questions feel free to ask them here.
==============================================================================
If anyone wants to try it before it goes through submission: https://drive.google.com/file/d/1SVmI8sztYYsXtIZVZsF_Ku-n-qpBevXu/view?usp=share_link
=============================================================================

Just as an update, I’m currently writing a routine for reorganizing the tiles for the Face and Hands on Story Screen 2. I’m having it match the in game mapping. It’s easier than rewriting the mapping in the ROM, though it is a bit tedious.

Looking towards the future, I plan to place both the Compression Utility and the Screen Replacer into an MDI container, along with an in game text editor I’m planning on making. Along with hopefully a utility that replaces the stage music.

=============================================================================
The Face Mapping was a nightmare, I got it done though. I’m going to use the same method for the Hand sprite tiles that worked for the face. The version I have now has the ability to replace the Face in story screen 2, but not the hands yet. If anyone wants me to upload it before I finish the Hand mapping post a reply here. Either way, once the hand mapping is done I’ll upload a new version. After which I will also make a video demonstrating how to use it. (It’s pretty simple.)
=============================================================================

I have the next version complete. I’m going to make a video on how to use it before I upload it to RHDN. I will however link to my GDrive so anyone that wants to can use it. I’ll also link to a zip with palettes of rage with a guide to modify palettes for the screens the tool replaces. This is just in case you want to tweak the colors or change the shimmer palette on the title screen.

Palettes of rage: https://drive.google.com/file/d/1DcJCXLZptvn-Q01nDpMZtr1YlFKc-8u9/view?usp=share_link
SOR2 Screen Replacer 2.46: https://drive.google.com/file/d/1uIbdEzNBW0PGtvzweuToQ6rA8jpf_9SJ/view?usp=share_link

I’ve combined the template for Mr. X face and hands on story screen 2. Reason being they use the same palette, so if you replace both individually the colors would be off. I’ve labeled each section (Face + Hand) in the template image. The black areas must stay as is, just draw in the parts specified in the image.

=============================================================================
New version utility (V 2.46) is in the queue, here is a link to the video how to: https://youtu.be/5Xc7EdwyiOg
If you have any question feel free to post them here or on my YouTube Channel.
============================================================================
Version 2.46 has been approved! Time to go work on replacing music in the ROM.
========================================================================

Be careful with modifying the images, If you use more than 16 colors the palette generated will only use the colors most common in the image in order to get it down to 16 colors.

Though this one came out better than I intended.

==========================================================================

An update on music in the SOR2 ROM:

I’ve been using Mucom 88 to create music for the ROM (It was designed by Yuzo Koshiro and is an updated version of the tool he used to make the in game music.) He also released some of the source files for the Music which I’ve been using/studying (I was able to Rick Roll my son with it.  :laugh: ) I found where the game points to the offsets for the music at 0x0429CE, It appears to be a table of values, which when the values are added to 429CE, equal the address of the music. Ex. the first value is 0x0200, so 200 + 429CE = 042BCE which is the address where BGM 00 is located.
(429CE – Table of values used to load tracks in ROM (429CE + Table Value = Track Offset))

The only issue I see is making it easier to create the music, it’s coded in MML, and you have to use the Voices.dat file that Yuzo created for the ROM.

Mucom88 – https://onitama.tv/mucom88/index_en.html
SOR2(And others) music source – https://drive.google.com/file/d/1TFuuvyzlTIaeUMQUmn2tK0mUOET-0e7a/view?usp=share_link

Must begin with 00 C2 XX XX

==================================================================================

While I try to find a way to make it at least a little easier to replace the music in the ROM, I’m working on an update for the screen replacer that adds the ability to replace multiple screens at once. I’m also adding a guide for Syndicate wars version 0.9.
=========================================================================
Version 3.32 of the Screen Replacer is in the Queue, it includes a guide file for Syndicate Wars 0.9. I also changed the UI so instead of buttons used to replace screens one at a time, there are check boxes for each screen allowing you to replace multiple or all screens at once. I haven’t created a way to replace the portraits for Syndicate Wars yet so if you try to it won’t work correctly. I plan to add this to a future release.
=========================================================================
Progress update: I’ve combined the Screen Replacer with the Text Replacer I’m currently working on, and I’m planning on adding a music replacer after the text editor is completed. Most of the text can be expanded upon up to between 32 and 34 characters long, depending on the screen.
=========================================================================
I’m currently working on an all in one ROM editor. It has the Screen Replacer (with a few bug fixes), a text editor and a checksum fixer. I’m also planning on implementing a music replacer.
=========================================================================
Okay, So I’ve turned the Screen replacer into a ROM editor that includes Screen Replacer (Obviously), various text editors for each text field throughout the ROM (You can now use every letter of the alphabet for the large character fields on the character select screen. You can also fill up the entire screen with text in between each ending image.) There’s also a Checksum fixer so you don’t need an outside program for that. There is a menu option for music replacement, but it just shows a message saying I’m still working on it. For the music editor portion I’m still working on a midi to mml converter and compiler/inserter. The music editor/replacer will be added in the next release.
I also made a few quality of life fixes like I added a routine to fix the shimmer effect on the Title Screen and Story Screen 2.I’ll have it uploaded once I finish the guide for Syndicate Wars V 0.9.
=========================================================================
ROM Editor is in the queue. Here’s a link to the how to video:https://youtu.be/KMU-FE03O7w
If you want to download it now, there’s a link in the video description that also includes a few extras.
=========================================================================

So the way I modify the Music in the ROM, is I start with a Midi and use ConvFMML to convert it to a Mucom88 .Muc File. I then use Mucom88 in conjunction with the files Yuzo Koshiro shared (bare2voice.dat & bare2pcm.bin) to first edit the .muc if necessary and compile it to a .Mub (Mucom Binary.)

I’ve added a file converter to the ROM Editor which takes the .mub and converts it to a format the ROM can read. The two types are very similar but just copying the raw .mub into the ROM will not work. I’ve also added to the ROM Editor, a means to place the properly formatted music binary into the ROM over which ever BGM you want.

I’m going to make a video showing both how to use ConvFMML and Mucom88 to make music for your ROM hacks. I’m also going to show how to use the Music Replacer/Inserter in the ROM Editor. Once the video is uploaded, I will update the blog with links and the new version ROM Editor will be placed in the queue.

About dmb062082_

I love retro gaming!! 😍 😍 

Leave a Reply