Erreur
Erreur
Derniers sujets discutés:


Dernières news :
Derniers articles :
Dernières vidéos :
Pages: [1]
[Tuto] Compressed Art Editing
[Tuto] Compressed Art Editing
« le: Juin 29, 2005, 02:00:08 pm »
  • Chaos Control Ruler
  • Hors ligne Hors ligne
  • Messages: 1813
  • WWW
En fouillant un peu sur la manière de modifier les graphismes d'un Sonic MD pour compléter le hack de ZEblue, je suis d'abord tombé sur une première possibilité, l'utilisation de SonED. Ce programme permet effectivement de modifier quelques tiles, mais il faut y aller en blocs de 8x8 pixels et bien que l'outil soit puissant, il peut être lourd à utiliser. De plus, il ne gère pas tous les graphismes des jeux Sonic - par exemple, modifier le design d'un ennemi est infaisable avec cette méthode.

Je suis tombé sur un "petit" tuto très pertinent expliquant comment modifier les graphismes des roms un peu plus en détail. Un peu complexe mais réalisable. Je le reposte donc ici :P

À noter que :
- GraphicsGale peut se révéler très utile pour redessiner des tiles (le tuto indique comment importer des tiles d'un jeu Sonic à un autre)
- Dans TSDC, on peut simplement double-cliquer sur la location à décompresser, plutôt que de recopier le code Hexa.
- Les programmes cités dans le tuto peuvent être trouvés sur Sonicology.
- L'étape décisive est la n° 14. Se servir de TLP ou de TSDC est pas franchement complexe, le problème de la modification des pointers l'est bien plus.

---------------

A TOTAL BEGINNER'S GUIDE TO ROM GRAPHICS EDITING

by Elusive

YOU WILL NEED:
  • A ROM to hack, obviously. For this example, I will use Sonic 1.
  • The Sega Data Compressor. I use version 2.2, as I think it's the latest version. Check the 'KNOW YOUR HACKING TOOLS' topic in the E&RE archive.
  • Tile Layer Pro. Get the version that has been .bin fixed if at all possible. Also, to go with Tile Layer Pro:
  • Sonicology TPL files. For these, check out http://sonicology.fateback.com/downloads/tpl/index.html. These come in INCREDIBLY useful.
  • A hex editor - I use Hex Workshop, but really you can use any. There's not much difference between them.
BEFORE YOU BEGIN:
First, make sure your ROM is in .bin format - to do this, right-click on it and choose 'Properties'. A screen will appear, telling you its filetype.
   ^ Also, turn off 'Hide file extension for known filetypes' in Explorer by selecting 'Folder Options...' from the 'Tools' menu - Quick Man
If it is NOT .bin, then you'll need to convert it TO .bin format before you can hack it. To do this, check the 'KNOW YOUR HACKING TOOLS' topic again, as there are too many .smd to .bin converters out there to list here. (NdMiles : Un composant de Esrael Sonic Editor peut s'en charger.)
Next, install all the stuff listed above. I recommend putting Tile Layer Pro and the Sega Data Compressor into seperate folders within one parent folder, probably called something like 'Hacking Tools', or something similar. Then, create a folder in 'My Documents' called 'My ROM Hacks'. This is all just to keep things tidy.
Oh, and put the Sonicology TPL files (they should have come in a ZIP file) into the TLP folder.
NOTE: From now on, I will refer to Tile Layer Pro and the Sega Data Compressor as TLP and TSDC respectively.

Right, now you should be ready to begin! For this tutorial, I will change the end-of-level signpost in Sonic 1 to resemble that of Sonic 2.

STEP ONE
Fire up TSDC. It will look like this:


STEP TWO
This part is tricky to explain. Different parts of the ROM are compressed in different ways. For example, most level mappings are compressed in Kosinski format, music is compressed in Saxman format, and so on. (As a side note, these were named after the people who cracked the compression format, allowing people to modify them today.) You cannot modify compressed art with TLP - that is why we need to decompress it with TSDC. With Sonic 1, the format we will need is Nemesis compression, as the signpost is compressed in that format. So, click the 'Nemesis' button in the 'Decompress' frame. This will appear:


STEP THREE
If you don't know what format the piece of art is compressed in, then you'll have to search for it in all the formats. However, we are looking for the signpost, so scroll through the list looking for it (under Sonic 1, of course), then select it:


STEP FOUR
At the top of the N-Decompressor screen, there is a textbox labelled 'Source File'. Click the button next to it. An Open dialog box will appear:

As you can see, I've broken my own guidelines. ;)
It helps if you select a 'clean' (that is, unmodified) ROM - as I have, in this case. Click the 'Open' button, and the location of the unmodified ROM will appear in the top textbox.

STEP FIVE
Second to top of the N-Decompressor screen is a 'Destination File' textbox. This is the file to which TSDC will save your uncompressed data to. Click the 'Set' button next to this textbox, and a Save dialog box will appear. Type in an appropriate name:

You MUST save it as a .DAT file. Otherwise, TSDC throws a wobbly, and won't let you save.
   ^You CAN save as anything other than a .dat / .bin file - Quick Man
Click the 'Save' button. Like before, the location of the file will appear in the textbox:


STEP SIX
Still got the 'End of level signpost' thingy selected? If not, select it. You'll see a string of numbers and letters in front of the text:

These numbers and letters are hex locations. They tell the game and TSDC where the art for that particular thing is located in the ROM. We need to tell the program this location, so enter the numbers and letters into the textbox marked 'Offset [hex]:' In this case, it is 03A53E.
Now all you need to do is click 'Decompress'. TSDC will decompress the art from the location you entered into the Destination File you chose!

Now you are done with TSDC, you can close it down fully. Now the really meaty work begins.

STEP SEVEN
Fire up TLP. I won't provide a screenshot, as it's big. :)

STEP EIGHT
Go to the 'File' menu, and choose 'Open...'
In the 'Open' box that appears, MAKE SURE YOU CHOOSE 'All files (*.*)' IN THE 'Files of type:' BOX.
Locate your destination file, and click OK:


STEP NINE

What you will see is a loat of garbled junk. To clear it up, go to the 'View -> Format' menu, and choose 'Genesis'. This should clear it up a bit:

There, that's a little better. If you get an error message, close and restart TLP until it works. It's harmless, only something to do with the way TSDC decompresses stuff. I think.

STEP TEN
To finally clear it up, go to 'Palette -> Load'. Then, find the TPLs I asked you to get. Find the one called 'sonic1.tpl', and open it:

This should be the result:


STEP ELEVEN
Now I'm going to replace the Sonic 1 signpost with that of Sonic 2. To do this, you'll have to go through the whole process again, up to step nine, with Sonic 2. *dodges flung tomatoes* To save you the time of doing this, I did it. To cut a long story short (and avoid more images), here's the Sonic 2 signpost in TLP:

You'll notice I loaded the Sonic 1 palette, instead of the Sonic 2 palette. I did this as I'm transferring the Sonic 2 signpost to the Sonic 1 signpost.

STEP TWELVE
You'll notice that the first two lines in both boxes line up perfectly:

All you need to do is drag the tiles across from the Sonic 2 window to the Sonic 1 window.

There's the top two lines done. Now, it's just a case of moving relevant parts onto their partners - for example, left-top corner onto left-top corner, left-edge-high onto left-edge-high, and so on. This rearranging is tedious, but it's got to be done. Here's the result:


STEP THIRTEEN
That's the artwork done, now we need to recompress it, so the game can read it again. Close down TLP, MAKING SURE TO SAVE YOUR CHANGES.
Now, fire up TSDC again, only this time click the 'Nemesis' button under the 'Compression' frame.
Click the button next to the textbox marked 'Source File'. In the 'Open' dialog box that appears, select the file you edited - 'Sonic 1 endoflevelsignpost' in this example.
Then, click the buton next to the textbox marked 'Destination File'. In the 'Save' box, type a new filename to compress the data to - I've called mine 'S1 signpost'. IT MUST BE SAVED AS A .BIN FILE.
Finally, click 'Compress':


STEP FOURTEEN
Close down TSDC. Open up the compressed art file in your hex editor. In a seperate window, open Sonic 1.
Now, the game uses things called 'pointers'. As the name suggests, these 'point' to a specific location where the data can be found. As we are modifying the Sonic 1 signpost, this new data will be of a different size to the original - you can't risk overwriting the raw data as a simple cut 'n' paste. Rather, you can stick the new data at the end of the ROM, and simply tell the pointer for the signpost to look at the new location. This will safely insert your new data.
The pointer for the signpost is located at 0001D978. Go to this location in your hex editor - in a clean Sonic 1 ROM, it should read 0003A53E. (I'm using the JUE version, the J version will be different.) Now, go to the very end of the ROM - if you look, the ROM ends at 00080000.
This will sound confusing - go back to the signpost pointer at 0001D978, and put 00080000 instead of 0003A53E.

STEP FIFTEEN
Still got the compressed art file open in your hex editor? Select it all, and press CONTROL and C (to copy the data). Now go back to your Sonic 1, and paste this data at 00080000. Save, and close the editor down.

Finally, open the new Sonic 1 ROM in your emulator of choice. Finish a level, and there you have it:


I've tried to be as thorough as possible, whilst still keeping it simple. I hope this proves useful. If there's any errors, tell me and I'll fix it.

-EDIT- Thanks Quick Man, fixed some information.
Journalisée
 
 
Pages: [1]