• Welcome to Smashboards, the world's largest Super Smash Brothers community! Over 250,000 Smash Bros. fans from around the world have come to discuss these great games in over 19 million posts!

    You are currently viewing our boards as a visitor. Click here to sign up right now and start on your path in the Smash community!

Official Melee Texture Hack Thread

ChillisMySkill

Smash Cadet
Joined
Apr 1, 2016
Messages
68
Location
Canada
Sorry to do this to everybody, but after receiving multiple requests for custom costumes and basically never fulfilling any of those requests I have decided to remove my name from the request section. Sorry for the all the false hope I gave everyone :)
Is it alright if I'm put on it? I'd love to do it.
 
Last edited:

Minerali

Smash Apprentice
Joined
Feb 13, 2016
Messages
82
Minerali Minerali If I remember I didn't add additional textures as such, but there are some unused textures in Jigglypuff's file which I used for other things. Specifically, Jiggs has two 128x128 eye textures which I'm certain she doesn't use, and instead uses a third slightly different eye texture which is placed twice for her two eyes. So these two textures are free to do whatever you like with. I used one of the 128x128 eye textures on her body instead of her 4x4 pink texture so I could make the beard, and the second eye texture I used to to make the second half of hb's face (it had to mirror and not repeat).

If you click on a texture in DTW and click properties it shows you a list of where that texture is being used in a file which looks like:
At 0x5db8: 00011b60000400040000000e
At 0x5e78: 00011b60000400040000000e
etc

The long number refers to the texture, and the short number is where it's placed, eg left side of face. It takes some trial and error to work out which part of the model each short number refers to.

If you want to rearrange which textures go where you can just highlight and copy the long number and paste it into another short number's long box, hit enter then save. DTW as always makes it really easy.

Sorry if you knew all of that :p But it might be helpful for other people.

The short answer is that I didn't add additional textures, there are just spare ones in Jigglypuff's file and I moved them around a bit.
I definitely did not know that, that's extremely useful!

Do you remember which exact textures are unused? I can't tell

Thanks a lot!!
 

Yakult

Smash Cadet
Joined
Jan 11, 2016
Messages
64
I definitely did not know that, that's extremely useful!

Do you remember which exact textures are unused? I can't tell

Thanks a lot!!
0x25ea and 0x29ea0 are free.

Jigglypuff uses 0x13ba0 instead. If you click on the properties tab for 0x13ba0, At 0x199b0 and At 0x19a88 are the left and right face textures (I forget which is which). 0x32580 or 0x1dea0 is also somewhat spare (depending on what youre trying to make) as the two textures are identical in the original .dat, so you could use one for both and the spare for something else. Be careful in DTW though because if you replace all the long numbers for a texture it'll disappear from DTW's ui (although I think you can get it back with manual placement or maybe even if you just write down the long number before replacing it and then copy it into another texture's box).

Another warning for doing this on Jigglypuff is the pallets. For some reason when you use 0x25ea or 0x29ea0 instead of 0x199b0 or 0x199a88 it still uses the pallets from the old eye texture 0x13ba0 so you have to use photoshop or something to make sure the pallet is the same when you save the .pngs. Alternatively you can switch them to _14 textures so there are no pallets. I've been trying to figure out a better fix for this and will let you know if I ever work it out.

Oh and 0x11b80 -> At 0x66b8 is the placement that covers most of the body:)

These are all for Jigg's green skin btw! I'm sure it works exactly the same for her other skins but the numbers will be slightly different.
 
Last edited:

Minerali

Smash Apprentice
Joined
Feb 13, 2016
Messages
82
Yakult Yakult Thanks man, this opens so much possibilities for Jigglypuff texture hacks. One more thing, I tried using one of the unused textures for the body and the other for one side of the face just like your hbox puff, but when I start a game it freezes before the characters load.

I think it may be because I didn't change the palette for the unused eye texture that I'm using on the body. How does one change it from _9 to _14? I tried searching here on the forums but found nothing.
 

Yakult

Smash Cadet
Joined
Jan 11, 2016
Messages
64
Ah yeah it's freezing because the At 0x66b8 texture doesn't have a pallet, but it needs one now that we're using a _9 texture for it. You can choose a pallet in DTW if you click the green tree to the right of the long number and scroll down until you see Palette Header Pointer. Pasting a pallet header pointer that's used somewhere else in the file will stop the game from freezing but for some reason the pallet comes out completely wrong. I also don't know how to find the pallet header pointer for the two unused textures because for them clicking on the tree just says 'No parent structures found!' - I think because they're not attached to an object structure.

Maybe someone can help us out with this?

As for swapping the _14 textures for _9, I asked DRGN about it here. I haven't really had much luck with manually placing them (although I'm sure it's possible). I actually have no idea how I managed to do it for the hungrybox texture, but to be honest if you're trying to get a 128x128 _14 texture for the body, and a 128x128 _14 for each side of the face, you might as well just use my hungrybox texture as a base instead of default jiggly.
 

Uchihadark7

Smash Journeyman
Joined
Nov 22, 2015
Messages
243
Location
Idaho
Can someone make a Neo-themed Fox and Falco (Fox has the shades, Falco doesn't) over their green costumes?
 
Last edited:

DRGN

Technowizard
Moderator
Joined
Aug 20, 2005
Messages
2,178
Location
Sacramento, CA
Any chance you can make this costume for red Falcon, too? I can't seem to get it to work using the Character Color Converter. The textures for the clothes work as intended but the shoulder pad and gun are still there... :(
Yeah, I had made this already actually, but just didn't get it uploaded. Here you go. For future reference, you can follow the guide for this (found here). It's pretty quick and easy.

Careful about using the Metroid Fusion Model Hack Samus. It removes a hurtbox!

Fixed:
Fixed Hurtboxes.png

Also, I change the costume to the Lavender slot, which I think makes more sense. And that costume was already mistakenly listed under that anyway in the OP.
Download Link: http://www.mediafire.com/download/zbchtvz6n5fue8g/Fusion_Suit_(La)_(Model_Hacked).zip

Good catch, UnclePunch.

So a year ago or so I was working on a few texture edits. One for Dreamland and one for Fox. Anyway, a problem I was never able to solve was the leaves that blow with the wind on Dreamland do not display properly. They always ended up as dark greenish squares. Does anyone know what might cause that? If not is there an easy way for me to just outright remove them from the stage so there are no leaves?
You could post the textures, and I can try to look into it if I have some spare time.

Ah yeah it's freezing because the At 0x66b8 texture doesn't have a pallet, but it needs one now that we're using a _9 texture for it. You can choose a pallet in DTW if you click the green tree to the right of the long number and scroll down until you see Palette Header Pointer. Pasting a pallet header pointer that's used somewhere else in the file will stop the game from freezing but for some reason the pallet comes out completely wrong. I also don't know how to find the pallet header pointer for the two unused textures because for them clicking on the tree just says 'No parent structures found!' - I think because they're not attached to an object structure.

Maybe someone can help us out with this?

As for swapping the _14 textures for _9, I asked DRGN about it here. I haven't really had much luck with manually placing them (although I'm sure it's possible). I actually have no idea how I managed to do it for the hungrybox texture, but to be honest if you're trying to get a 128x128 _14 texture for the body, and a 128x128 _14 for each side of the face, you might as well just use my hungrybox texture as a base instead of default jiggly.
& Minerali Minerali

You can find out where a palette is located in a file by the "Palette" tab in the DAT Texture Tree tab. It will show you where the actual palette data starts, as well as where the header for the palette is. As you mentioned, if you want a texture to use a different palette, the easiest way is to change the "Palette Header Pointer" in the Texture Structure (which could be done in the Structural Analysis tab, or by using the tree icons you mentioned on DAT Texture Tree's Properties tab), so that it points to the new palette header structure. Keep in mind that the game doesn't account for the file header though (because the game doesn't load that into RAM), so any pointer that you see or put into a pointer field should be 0x20 less than wherever the location is in the file. So for example, if the palette header is located in the file at 0x17ce0, then the value you'd use to update the Texture Structure would be 00017cc0. Of course, if you're just copy/pasting this value from another texture structure, you don't need to worry about that, because that difference is already accounted for. This is important to keep in mind though because you might need to type this in from some reference, like the Palette tab, which shows actual absolute file offsets rather than relative RAM offsets.

Another way would be to change the Palette Data Pointer in the Palette Structure/header instead, so that it points to different palette data. But this isn't as easy as the first method, because then you'd also have to make sure that the palette type and color count values are correct for the palette that you're pointing to.

Oh and if a texture is changed to no longer use a palette (like going from _9 to _14, you need to zero out the palette header pointer.

As for the issue of palette coming out "completely wrong", I'm not sure what you're doing, but do you know if the properties in the palette header, particularly Palette Type and Color Count were correct for the palette data that it was pointing to?
 
Last edited:

Achilles1515

Smash Master
Joined
Jun 18, 2007
Messages
3,211
Location
Cincinnati / Columbus OH
Minerali Minerali If I remember I didn't add additional textures as such, but there are some unused textures in Jigglypuff's file which I used for other things. Specifically, Jiggs has two 128x128 eye textures which I'm certain she doesn't use, and instead uses a third slightly different eye texture which is placed twice for her two eyes. So these two textures are free to do whatever you like with. I used one of the 128x128 eye textures on her body instead of her 4x4 pink texture so I could make the beard, and the second eye texture I used to to make the second half of hb's face (it had to mirror and not repeat).

If you click on a texture in DTW and click properties it shows you a list of where that texture is being used in a file which looks like:
At 0x5db8: 00011b60000400040000000e
At 0x5e78: 00011b60000400040000000e
etc

The long number refers to the texture, and the short number is where it's placed, eg left side of face. It takes some trial and error to work out which part of the model each short number refers to.

If you want to rearrange which textures go where you can just highlight and copy the long number and paste it into another short number's long box, hit enter then save. DTW as always makes it really easy.

Sorry if you knew all of that :p But it might be helpful for other people.

The short answer is that I didn't add additional textures, there are just spare ones in Jigglypuff's file and I moved them around a bit.
You might know this already.

"At 0x5db8: 00011b60000400040000000e" - comment from above regarding the 4x4 pink skin texture (CMPR), data shown from DTW

0x00011b60 = location of texture data in DAT file
0x0004 = (the first one) X-pixel texture dimension
0x0004 = (the second) Y-pixel texture dimension
0x0000000e = texture type (0xe = dec. 14 = CMPR texture)

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

Although I don't know the full code behind DTW, I'm pretty sure this is why you can't replace an _14 with an _9 (like, a complete swap with a brand new palette and no shared data with previous textures):

An _14 has a file pointer to the texture data, and no file pointer to a palette. An _9 texture has a file pointer to texture data, AND a file pointer to a palette. If you wanted to change an _14 to an _9, you would have to add the pointer to a palette. While their exists a place in the texture structure data where you could technically place a "palette header pointer", the game still ignores this "palette header pointer" because it was never re-told that this address now contains a pointer. In order to "re-tell" it that address is a valid pointer, you would have to extend/modify the relocation table at the end of the DAT file, that contains the address of all the valid pointers in the file.

tldr; You can't simply change a pointer header address from 00000000 to something else and expect it to work. If it wasn't a valid pointer address to begin with, then the only way you can make it one is to modify the relocation table to tell the game that address is now a valid pointer.

Search this forum for "relocation table" for more info.

DRGN DRGN correct me if I am wrong.
 

Minerali

Smash Apprentice
Joined
Feb 13, 2016
Messages
82

Name: Ken (Replaces Red)
Made by: Minerali
Download: http://www.mediafire.com/download/f992r5feawarh1m/Marth+-+Ken.zip


Name: Alienpuff (Replaces Red)
Made by: Minerali
Download: http://www.mediafire.com/download/fqw26443j6l1xu5/Jigglypuff+-+Alienpuff.zip
(Includes flowerless version and antenna version)


Name: Jigglypuff (Replaces Green)
Made by: Minerali
Download: http://www.mediafire.com/download/i7j7gxpztuza9zl/Jigglypuff+-+.zip


Name: Pusheen (Replaces neutral)
Made by: Minerali
Download: http://www.mediafire.com/download/aby34a0i81bmppg/Jigglypuff+-+Pusheen.zip
 
Last edited:

RushSSBM

Smash Cadet
Joined
Jan 8, 2014
Messages
46
Location
Germantown, Maryland
Minerali Minerali those are so cool! If you have time could you make the Alienpuff a green skin with the flower removed, and the Biblethump a neutral one? Just suggestions, I would do it myself but the costume textures are different for Puff
 

Minerali

Smash Apprentice
Joined
Feb 13, 2016
Messages
82
RushSSBM RushSSBM All the talk above about palettes started because I've been having trouble making the skin on neutral Puff!
I ended up doing it over Yakults HBOX puff... However I'm gonna try doing it on neutral Puff with this information achilles and DRGN just shared

As for flowerless alienpuff...



I don't know how to get rid of this yellow thing! I don't even think it's a texture as it doesn't appear on DTW
 
Last edited:

DRGN

Technowizard
Moderator
Joined
Aug 20, 2005
Messages
2,178
Location
Sacramento, CA
You might know this already.

"At 0x5db8: 00011b60000400040000000e" - comment from above regarding the 4x4 pink skin texture (CMPR), data shown from DTW

0x00011b60 = location of texture data in DAT file
0x0004 = (the first one) X-pixel texture dimension
0x0004 = (the second) Y-pixel texture dimension
0x0000000e = texture type (0xe = dec. 14 = CMPR texture)

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

Although I don't know the full code behind DTW, I'm pretty sure this is why you can't replace an _14 with an _9 (like, a complete swap with a brand new palette and no shared data with previous textures):

An _14 has a file pointer to the texture data, and no file pointer to a palette. An _9 texture has a file pointer to texture data, AND a file pointer to a palette. If you wanted to change an _14 to an _9, you would have to add the pointer to a palette. While their exists a place in the texture structure data where you could technically place a "palette header pointer", the game still ignores this "palette header pointer" because it was never re-told that this address now contains a pointer. In order to "re-tell" it that address is a valid pointer, you would have to extend/modify the relocation table at the end of the DAT file, that contains the address of all the valid pointers in the file.

tldr; You can't simply change a pointer header address from 00000000 to something else and expect it to work. If it wasn't a valid pointer address to begin with, then the only way you can make it one is to modify the relocation table to tell the game that address is now a valid pointer.

Search this forum for "relocation table" for more info.

DRGN DRGN correct me if I am wrong.
Yeah, the texture data header breakdown is correct (it also has 3 more properties, but they're for mipmaps and aren't important here).

DTW will update a texture's width, height, and type in the texture data header during an import. But it doesn't change the pointer to the texture data. So copy/pasting a header from one place to another may or may not do what you want, depending on the order of operations, or what exactly is being done. In any case, the properties in the header need to match the texture data that it's pointing to, or else the texture will not render properly, or the game will crash. Importing something with different properties than the original can be tricky if you want to get the most out of the space available by being exact or close (see the first section here for more).

And yeah, you're right about the relocation table; pointers with a value of 0 aren't included in it when it's built (meaning of course it's not actually a pointer anymore). But you can zero-out an existing pointer so the game doesn't access the structure that's normally there, or you can change the pointer to point to something else, assuming it's a valid structure of the same kind.

So replacing a paletted texture with a non-paletted one is possible (without rebuilding the relocation table, which is possible, but not a fast process, even programmatically). I could even add the step for the program to zero out the palette header pointer. But if one did that kind of replacement, they would not be able to then change it back, since there's no decent way for the program to know where the previously used palette is. The palette (the pointer to the palette header that is), would have to be known and re-associated manually.


Name: Ken (Replaces Red)
Made by: Minerali
Download: http://www.mediafire.com/download/f992r5feawarh1m/Marth+-+Ken.zip


Name: Alienpuff (Replaces Red)
Made by: Minerali
Download: http://www.mediafire.com/download/q1wnzj7rvd3eaua/Jigglypuff+-+Alienpuff.zip


Name: BibleThump Jigglypuff (Replaces Green)
Made by: Minerali
Download: http://www.mediafire.com/download/i7j7gxpztuza9zl/Jigglypuff+-+BibleThump.zip


Name: Pusheen (Replaces neutral)
Made by: Minerali
Download: http://www.mediafire.com/download/364ymc04b91vdnx/Jigglypuff+-+Pusheen.zip
These are great!
For the Pusheen one, could the whiskers be rotated a little? I notice that the lower ones are cut off a little bit.

RushSSBM RushSSBM All the talk above about palettes started because I've been having trouble making the skin on neutral Puff!
I ended up doing it over Yakults HBOX puff... However I'm gonna try doing it on neutral Puff with this information achilles and DRGN just shared

As for flowerless alienpuff...



I don't know how to get rid of this yellow thing! I don't even think it's a texture as it doesn't appear on DTW
You're right that it's not a texture. You can find things like this by a little pattern recognition trick. Open the file and go to the Structural Analysis tab. Right-click anywhere, select 'Expand -> All to Texture Structs', and the right-click again and enable highlighting of the Material and Texture structs, which will now show the structures like this:
upload_2016-6-6_22-8-42.png


Now you should be able to scroll down and easily see which objects and materials don't have an associated texture. There are only two in this file of Puff's, objects 1 and 3 of the Hat_TopN_Joint. I'm sure one of those has got to be the yellow thing in question. From here you can just test disabling the mesh as usual to figure out which object it is.

Although I realize leaving it was unintentional, it does kind of add to the alien-like appearance. haha
 
Last edited:

Minerali

Smash Apprentice
Joined
Feb 13, 2016
Messages
82
Although I realize leaving it was unintentional, it does kind of add to the alien-like appearance. haha
Yeah, I actually kind of like it, looks like an antenna

As always thank you, DRGN



Here's flowerless Alienpuff RushSSBM RushSSBM

http://www.mediafire.com/download/fqw26443j6l1xu5/Jigglypuff+-+Alienpuff.zip

Includes the flower version and the antenna version

These are great!
For the Pusheen one, could the whiskers be rotated a little? I notice that the lower ones are cut off a little bit.


Fixed, updated the download link in the original post
 
Last edited:

NordicWonder

Smash Rookie
Joined
Jun 19, 2015
Messages
4
Sadly no matter what I do in gcr or melee toolkit I can't get any of these textures to actually show up in game. They look sweet though. Keep up the great work guys.
 

Proverbs

Smash Lord
Joined
Feb 21, 2008
Messages
1,698
Location
Seattle, WA
Ever get anywhere with this?

Proverbs Proverbs
I have a fully completed Freddie texture hack.
The guy who requested it is doing an audio hack to pair up with my hack, but he's gone on a trip for a while.
I just got back yesterday! Was in Lithuania and Norway for about two weeks visiting family and exploring. Was a baller time. Anyway, I'm back now and I officially have Windows 7 installed on my Mac, so there shouldn't be any more trouble with the audio fixin's. I have selected and trimmed most of the audio that I want to use, last part is just the conversion into a usable file. Just have to figure the last bit out.

The preview looks great! I'm pumped that we're making this happen! I'll get right on the audio and do my part!
 

PrinceJohn

Smash Apprentice
Joined
Nov 1, 2014
Messages
192
Slippi.gg
PRJN#560
Sadly no matter what I do in gcr or melee toolkit I can't get any of these textures to actually show up in game. They look sweet though. Keep up the great work guys.
Use DAT Texture Wizard. Are you using a 4.0 20XX iso?
 

Yakult

Smash Cadet
Joined
Jan 11, 2016
Messages
64
Thanks a lot for the help guys!

As for the issue of palette coming out "completely wrong", I'm not sure what you're doing, but do you know if the properties in the palette header, particularly Palette Type and Color Count were correct for the palette data that it was pointing to?
Yeah unfortunately it all looks correct. :/ If I take an untouched red jiggly and the only changes I make are updating the image data header's properties for the one that covers the body (At 0x66b8) to be the same as the eye texture (0x13ba0), and copying the pallet header pointer over (which is 0x17cc0), the result is this:

The top right texture is both the two eyes, and the body, but the pallet is not right on the body, despite being it having the same palette header pointer (and same pallet type and colour count) as where it is used for the eyes. It looks like all of the other info in DTW is the same too. Even if I make it use the same colour structure and -

Hold the phone!!



Copying the texture structure pointer works! It's strange because I could swear that changing all of the individual values under the texture structure to match didn't work but oh well!

So for anyone reading this, you don't even need to change the image data header (because this is included in the texture structure) so click on the tree next to the image data deader you want to use (in this case At 0x63b8 or At 0x6538 from the eye texture at 0x13ba0), the click Show in Structual Analysis tab. Texture Struct should be highlighted, so click on Material Struct above the highlighted line, and copy the Texture Struct Pointer (in this case it reads 00006550). Now navigate in the same way to the Texture Struct Pointer of the texture you want to replace and paste it over. Hit enter and save.

Minerali Minerali :)
 

PrinceJohn

Smash Apprentice
Joined
Nov 1, 2014
Messages
192
Slippi.gg
PRJN#560
When I try to get this on my 20XX file it (Melee Toolkit) says, "Error: New file is not the same size!"
Can anyone help with this?
A. Use DAT Texture Wizard, it is amazing. And Superior. And Amazing.
B. The MnSlChr file has 4.0 20XX stuff in it, so either extract the individual pictures of that css into a 4.0 20XX MnSlChr, or use a MnSlChr file that was build for 4.0 20XX, like itaru's sweet css.
 

NS23

Smash Journeyman
Joined
Jan 4, 2015
Messages
238
Location
USA
Slippi.gg
SLOK#533
Thanks! Is there anyway to change the colors of the "Blue, Green, and Red" that have to do with teams using DTW?
EDIT: Nevermind... lol. Ignore this post.
 
Last edited:

Thomas Johnson

Smash Cadet
Joined
Apr 6, 2014
Messages
27
I was looking at the Falco textures today and I noticed that my Red/Black Falco got listed under the Red Falco category. First of all, thanks! But the link is for the older version that doesn't have any of the creases or stitches in the pants/jacket. Would one of the mods be able to update it with this link http://www.mediafire.com/download/i8ype381d3dw3p1/PlFcRe(Black_and_Red_Falco).lat

when you get the chance, of course.
 

ChillisMySkill

Smash Cadet
Joined
Apr 1, 2016
Messages
68
Location
Canada
I just got back yesterday! Was in Lithuania and Norway for about two weeks visiting family and exploring. Was a baller time. Anyway, I'm back now and I officially have Windows 7 installed on my Mac, so there shouldn't be any more trouble with the audio fixin's. I have selected and trimmed most of the audio that I want to use, last part is just the conversion into a usable file. Just have to figure the last bit out.

The preview looks great! I'm pumped that we're making this happen! I'll get right on the audio and do my part!
I have a newer version that I'll show you in a pm.
 

Minerali

Smash Apprentice
Joined
Feb 13, 2016
Messages
82
Copying the texture structure pointer works! It's strange because I could swear that changing all of the individual values under the texture structure to match didn't work but oh well!

So for anyone reading this, you don't even need to change the image data header (because this is included in the texture structure) so click on the tree next to the image data deader you want to use (in this case At 0x63b8 or At 0x6538 from the eye texture at 0x13ba0), the click Show in Structual Analysis tab. Texture Struct should be highlighted, so click on Material Struct above the highlighted line, and copy the Texture Struct Pointer (in this case it reads 00006550). Now navigate in the same way to the Texture Struct Pointer of the texture you want to replace and paste it over. Hit enter and save.

Minerali Minerali :)
It worked but now the textures for the body and the eyes are the same :(
 

Iceballz

Smash Journeyman
Joined
Sep 20, 2015
Messages
223
Location
"The Universe I'm Helpless In"
I'll be uploading about 23 textures in the next little bit.All for Pokemon Stadium, planning on making much more but I'm limited because when I'm home I can't access certain textures on the mac.
 
Top Bottom