Author Topic: I want to change sprites?  (Read 3085 times)

Feeso

  • Earthbound (+15)
  • *
  • Posts: 18
    • View Profile
I want to change sprites?
« on: May 27, 2018, 02:42:31 am »
So I first played crimosn echoes like 9ish years ago now. (I somehow got the leaked version from 2011 early I think... not really sure cause I've only ever played the version I have from that time, which didn't have any chapter select at the start but then again I didn't have acess to New Game plus when the game was finished).

Ever since playing it/ watching the youtube playthrough I've always wanted to make a few tweaks to make the version I had more complete.

One of the things I really wanna do is add in the unique sprites for characters like Sorrin. But I have no clue how to go about doing that. I'm in Temproal Flux right now and all I can find is options to edit the text in menus or edit locations on the map. I can't find any menu that will allow me to alter sprites.

Can somone help me on this? 

Boo the Gentleman Caller

  • Guru of Life Emeritus
  • Hero of Time (+5000)
  • *
  • Posts: 5262
    • View Profile
Re: I want to change sprites?
« Reply #1 on: May 27, 2018, 10:53:04 pm »
@Feeso - if you do this, make sure you release it here as a new version! :)

TheMage

  • Artist of Termina
  • Time Traveler (+800)
  • *
  • Posts: 874
  • Dreaming through time.
    • View Profile
Re: I want to change sprites?
« Reply #2 on: May 28, 2018, 03:57:30 am »
Mage's NPC & Enemy Sprite Insertion Guide:

First, my friend, you need a copy of Sprite Graphics Offsets. That can be found here under the alphabetical topic list: https://www.chronocompendium.com/Term/Modification.html

Decompression:

For the purposes of this guide, we'll just replace Sorrin with Middle Ages Castle Guard (600 AD). You'll find this in the first tab.




What we are looking for is the GFX Pack Pointer, and for our castle guard, that number is 30. Then, we are going to go to GFX Packs tab on the bottom and look for 30 under collum A, GFX Pack Pointers Index (Dec).

Once there we are going to go to Column C, and we get 19B008.



So then we go to Temporal Flux. Then file; compression. Under the address, we type 19B008

then we hit that little square with the 3 dots, and you'll name your file.



We could name it Sorrin for example.  You'll hit open. It will take you back to the screen you were on before, and then you hit decompress and should see this: 



Then you'll want to open Tile Molester. If you don't have it, get it here: https://www.chronocompendium.com/Term/Utilities_(Chrono_Trigger).html

 as well as the java runtimes, it won't run without java (as far as I know.)

Open tile molester, (tm.jar) then hit file open. Change files of type to all files and go to the folder where you decompressed our guard. Sorrin.bin.



Click it and you should get this:



Doesn't look very pretty, but, this is a good sign, we can already tell it's the sprite we are looking to replace. Go to view, codec, and click 4bpp planar composite 2 by 2 bppp (towards the bottom).

Right it still looks like garbage, but it's better garbage! Next, we want to load up the palette. The easiest way to do that is to get it straight from the ROM.

Grab a savestate here: https://fantasyanime.com/squaresoft/ctsaves.htm. I take the ZST files from Jacki's saved files. Pick one around the middle ages (I chose the 2nd one, queen returns) and put the zst save file where you have a playable rom. Name the save file after the rom (example Chrono trigger.zst). Then load up the rom in ZSNES, run up to one of the castle guards in 600 AD and make a savestate with the guard on the screen like so:



then in tile molester, go to palette, import from; another file. Change Files of type to ZSNES savestates and open up the save state like so:



You should get this:



Gorgeous right? Mine might look a little different than yours because I had it in the wrong mode. Anyways, Now click the right arrow on the bottom until it looks like this:



Huzzah! Now comes (for me) the most frustrating part - replacing the actual sprites. go ahead and print screen that and paste it in MS paint (or whatever you use). I had to zoom out twice to get the right size before print screening.

Now we are going to manually place the sprites matching the garbled mess before us (because I do not know how to edit sprite assembly)

It is only now that I noticed Sorrin has a weapon and would probably be best to replace an enemy not an NPC... however the process is exactly the same so I'm going to keep going with what we have.

So, in MS paint we get something like this;



to avoid confusion that last image was in MS paint, not tile molester. Anyways, this looks nasty and its hard to figure out exactly how the sprites are supposed to be assembled and where to put what.

That's where ChronoCharView comes in. I don't remember where I picked that up, so I've attached it.

Install and open that up and open up your CT Rom. (Make sure the ROM is unheadered, remove it in Temporal Flux).

Number 58 has the same sprite assembly of the middle ages guard, and honestly, I just found it first and was too lazy to look for our actual guard.



You can see how the sprites are assembled by hitting the arrows for the animations to the left or right. It changes the red squares which make up the sprite's assembly.

That sentence hurt my head.

Basically, this is to help get a visual on how to place the pieces of Sorrin over the guard.

 It appears as if each red square is 8 by 8. So by looking at this program, you can start to manually construct where the pieces of Sorin should go to assemble properly in MS paint.

Sprite assembly would probably make our lives easier here, but, that is something I have little understanding in. :(

BUT once you divide all the sprites up 8 by 8 it's less tedious - if you can follow my madness here (from left to right) I hope it makes some sort of sense:



if you save it and open it up in MS paint it might make things a little clearer.

Keep editing the sprites until satisfied, and save it, make sure the size is the same as it was in tile molester, like so:



Now save it, let's say we call it Sorrintest.png.


Palette:

Now before we insert our new NPC, we need to fix the palette, or Sorrin will have the guard's palette. So to find our little guard's palette we go back to our ChronoTriggerUnheaderedSpriteInfo doc that we got earlier. (Sprite Graphics Offsets).

Now on the first page, we find Middle Ages Castle Guard (600 AD), 1st tab, and we go to sprite palette index. (Column D) For Middle Ages Castle guard, that number is 133. Then we go over to the Palettes tab. We find number 133 in Column A, and we get 240C78 as our starting Palette address (Column C).

Now NPC's are 12 colors and the first of the 12 is the transparency color (I believe?) Now if you follow this (https://www.chronocompendium.com/Term/Changing_the_status_menu_portraits.html) guide it will explain so much better then I can how to work SNESpal and Ifranview and edit palettes.

You can pick up both these tools on the Modification page I linked earlier.

Sorrin comes already with only 12 colors so we don't have to do that first part with lowering colors in Ifranview, just the SNESpal part. 

But our number to insert into SNESpal is 240C78 :) and its 12 colors long, not 15 otherwise, the guide sums up what we need to do for our 12 colors.

Compression:

 Go back into tile molester, and open up the file we decompressed earlier; (Sorrin.bin) make sure it's in 4Bpp planar composite 2 x 2 bpp and for visual purposes import the palette from that save file again. 

Now go to edit, paste from, and choose sorintest.png. Now for some dang reason that I can't figure out for the life of me, it cuts off a portion when you paste it. If anyone can tell me what i'm doing wrong, let me know, here's a picture of it:



You gotta play with it and eventually, you'll get it. (even if you have to paste from two separate files) and make sure you don't accidentally make it bigger or it will write over something once we compress and put it into the rom and we will get garbled messes and glitches. (ALWAYS BACK UP YOUR ORIGINAL ROM.)

 Now save as Sorrin.bin. Or something else if you prefer in case your afraid you messed up and you don't want to have to re-decompress that file.

Now we go back to Temporal Flux. Go to file, compression Under the address, we type 19B008

then we hit that little square with the 3 dots, and you'll click Sorrin.bin (or whatever you named the edited file) and compress!

Load up your save file, walk out of the map and back in and our guard should be Sorrin. Here's mine, only when the guard stands still is he Sorrin, for I am lazy. :) He's also ugly because I didn't change the palette.



Any questions let me know and happy sprite inserting!



« Last Edit: May 28, 2018, 05:45:07 am by TheMage »

Mauron

  • Guru of Reason Emeritus
  • Errare Explorer (+1500)
  • *
  • Posts: 1763
  • Nu-chan
    • View Profile
    • Maurtopia
Re: I want to change sprites?
« Reply #3 on: May 28, 2018, 04:22:50 am »
That is an excellent tutorial, and I'll have to put it into the Encyclopedia tomorrow.

Quote
Now we are going to manually place the sprites matching the garbled mess before us (because I do not know how to edit sprite assembly)

ChronoCharView can help with that. You can click on tiles in the leftmost box, and place them in the center box. Box positioning can be modified by typing in the Tile Info box, and saved by pressing "Ed". You can then save by going to Edit -> Write Tile Info, and clicking yes on the confirm.

Quote
as well as the java runtimes, it won't run without java (as far as I know.)
Java is definitely necessary to run Tile Molester.

TheMage

  • Artist of Termina
  • Time Traveler (+800)
  • *
  • Posts: 874
  • Dreaming through time.
    • View Profile
Re: I want to change sprites?
« Reply #4 on: May 28, 2018, 04:30:55 am »
That is an excellent tutorial, and I'll have to put it into the Encyclopedia tomorrow.

Ah, thank you! I spent like 6 (ish) hours on it XD

Quote
Now we are going to manually place the sprites matching the garbled mess before us (because I do not know how to edit sprite assembly)

Quote
ChronoCharView can help with that. You can click on tiles in the leftmost box, and place them in the center box. Box positioning can be modified by typing in the Tile Info box, and saved by pressing "Ed". You can then save by going to Edit -> Write Tile Info, and clicking yes on the confirm.

AH-HA! I will most definitely have to play with ChronoCharView tomorrow.


Quote

Java is definitely necessary to run Tile Molester.

Ahh I thought so :D

Boo the Gentleman Caller

  • Guru of Life Emeritus
  • Hero of Time (+5000)
  • *
  • Posts: 5262
    • View Profile
Re: I want to change sprites?
« Reply #5 on: May 28, 2018, 04:43:15 pm »
Yeah, that sprite insertion guide made me a little hot in the britches. Very, very nicely done.

Mauron

  • Guru of Reason Emeritus
  • Errare Explorer (+1500)
  • *
  • Posts: 1763
  • Nu-chan
    • View Profile
    • Maurtopia
Re: I want to change sprites?
« Reply #6 on: May 29, 2018, 10:33:14 pm »
I put the guide in the Encyclopedia.

I made two small changes (excluding formatting). I removed the question in parenthesis about Java, and corrected the palette note, as transparency is not a part of the 12 color palette.

TheMage

  • Artist of Termina
  • Time Traveler (+800)
  • *
  • Posts: 874
  • Dreaming through time.
    • View Profile
Re: I want to change sprites?
« Reply #7 on: May 30, 2018, 03:02:12 pm »
Thanks Boo!

Thank you Mauron! I am honored to have my little tutorial up on the encyclopedia!

I got a quick question while I have you Mauron :D A lot of the sprites in the game use the same core sprites and just swap the palettes around to make multiple NPCs. So, in the case of the middle ages guard, and in the tutorial above sprite 58 in Chrono Charviewer, if I change one sprite it changes the other.

So if I only wanted to change the guard, and not the other, would I use your NPCustom to say...instead of replacing a guard replacing an unused sprite then assign it the same sprite assembly as the middle aged guard/other guard?

Mauron

  • Guru of Reason Emeritus
  • Errare Explorer (+1500)
  • *
  • Posts: 1763
  • Nu-chan
    • View Profile
    • Maurtopia
Re: I want to change sprites?
« Reply #8 on: May 30, 2018, 03:16:56 pm »
If you have any updates to the tutorial, let me know.

That would do it. Unfortunately there aren't many unused graphics packets. These are the unused ones: 47 4A CC E5.

If whatever project your working on has graphics you won't be using, feel free to replace those.

TheMage

  • Artist of Termina
  • Time Traveler (+800)
  • *
  • Posts: 874
  • Dreaming through time.
    • View Profile
Re: I want to change sprites?
« Reply #9 on: May 31, 2018, 03:13:10 pm »
Ahhh, thank you!

I'm just cooking up a little something for dream splash. >:D

As far as updates to the tutorial, I don't think so!

Mauron

  • Guru of Reason Emeritus
  • Errare Explorer (+1500)
  • *
  • Posts: 1763
  • Nu-chan
    • View Profile
    • Maurtopia
Re: I want to change sprites?
« Reply #10 on: May 31, 2018, 03:22:39 pm »
I noticed! Something involving Queen Zeal. :P

Feeso

  • Earthbound (+15)
  • *
  • Posts: 18
    • View Profile
Re: I want to change sprites?
« Reply #11 on: June 01, 2018, 04:01:26 am »
Sorry I've been so busy the last few days, I didn't see this amazing tutorial!

I'm gonna try it for myself ASAP.

Thanks so much Mage!

TheMage

  • Artist of Termina
  • Time Traveler (+800)
  • *
  • Posts: 874
  • Dreaming through time.
    • View Profile
Re: I want to change sprites?
« Reply #12 on: June 13, 2018, 05:27:44 am »
No problem!

Also, I've been messing around with inserting sprites some more and my issue earlier with it cutting out a portion of what I was trying to paste into Tilemolester was because the size I was pasting was too large. (by one pixel *eye twitch*) So in order to paste it perfectly into place it needs to be the exact same size and if its not working its probably off by just a bit -.- I'll probably try to word that more eloquently and edit the tutorial later. ;) 
« Last Edit: June 13, 2018, 05:29:28 am by TheMage »