Info on SMS Files and Speculation on SMS Params
May 22, 2016 19:20:08 GMT -6
lmfinishgamer likes this
Post by TechMario on May 22, 2016 19:20:08 GMT -6
Okay so I have been investigating a lot of the root of SMS lately and I have decided to make a thread on hacking this game since we hardly have any info here on SMS hacking:
NOTE: SOME OF THIS HAS ALREADY BEEN COVERED AT SOME OTHER WEBSITES (read some sections of yagcd). HOWEVER, I THOUGHT THERE NEEDED TO BE A DOCUMENTATION HERE.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
NINTENDO FILE TYPES USED IN SMS THAT I CAN EXPLAIN:
SZS - Instead of SZP (which is yay0 compressed) in LM, in this game we have SZS (which is yaz0 compressed). Which are both nintendo zip formats.
THP - nintendo compressed video format for cutscenes and stuff.
BMD - A compressed character model, enemy model, object model, an icon, or a level map. mdl files are not used in SMS.
BCK - model animation format.
BAS - stores some sort of audio data.
JPA - stores some sort of particle (effect) data.
COL - stores collision data for objects in level maps.
BTI - stores an icon or custom display font for a pause screen or a menu.
BLO - stores screen heads-up-display data.
BMG - files that store messages that display when you talk to NPCs, or messages that display when the game asks you "Yes or No".
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
WHERE ARE THESE FILES AND HOW TO OPEN/EXTRACT THEM?:
SZS - in "data" and used to compress various data in areas. you need programs called "yaz0dec.exe" and "rarcdump.exe" to extract from these files.
THP - again in "data". you need a program called "thpplay.exe" to watch them.
BMD - found in a lot of folders (especially in "scene" szs files). level bmds in "scene" szs files in "map". some can be found as icons in select_en.szs in "data". mario's model and fludd's models can be found in mario.szs. use a program called bmdview2 to view bmd files.
BCK - Most of the time found next to bmd files. You can as well open model animations in bmdview2, open the bmd model first then open the animation.
BAS - these files can be found where enemy models or character models are. Nothing much about these, there is nothing that really opens these files. You could try swapping them and see what happens when you test it.
JPA - found in some szs files that store a lot of bti files and some szs files in "data" that just store nothing but JPA files (bosshanachanJpa.szs and particle.szs). Again not much is known about these; you could try swapping these files and see what really happens in game.
COL - found in "map" and "mapobj" in "scene" szs files. I thought these files associated with gta collision file editor (totally different game), but it didn't read them at all. we'll have to see on col files. I believe there is an importer that was discussed at smsrealm but really have no idea on editing collision.
BTI - a lot of szs files in "data" store these files, mostly within them in "timg". here's some szs files that store a lot: common.szs, game_6_en.szs, guide_en.szs, and select_en.szs. view them in paint.net after converting them to tga with a program called "bticonvert.exe". however importing custom btis with a program called "tga2bti.exe" doesn't seem to work.
BLO - these files can be found within the same szs files I have listed above for btis, in a folder called "scrn". I'm not sure how to modify the screen data but if I try viewing them in a hex editor I can see a whole list of bti files.
BMG - these files can be found in a number of szs files again, such as cmn2d_en.szs which stores display messages and npc messages, also I believe subtitle_en.szs stores audio messages. If you try opening bmg files in a hex editor you can read the messages it stores. it's probably possible to edit them. EDIT: there's a program by arookas at SMSRealm called SunScript that has a lot more compatibility.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
WHERE ARE PRMS FOUND IN THIS GAME?:
Some can be found in "map" in "scene" szs files for enemies and/or bosses. A lot of prms for enemies, mario, fludd, objects, and npcs can be found in params.szs in "data". Some I had speculated below. A lot I weren't sure were editable. Also some prms determine screen fading and what not. Some are unused and have strange functions which have been discussed a bit at smsrealm.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
SOME SMS PARAM SPECULATIONS (found in some enemy prms):
mSLHitPointMax - Probably amount of times you must hit him before he dies/falls? EDIT: Tested, confirmed. If the value for this PRM is set higher, then it makes the enemy have more lives.
mSLInstanceNum - Something to do with when he's hit?
mSLActiveEnemyNum - Something to do with when he's not down?
mSLWaterMarkLimit - How much water he can take before he starts back up and tries to attack mario? EDIT: Mostly this would count toward the way Petey Piranha attacks when he opens his mouth.
---------------------------------------------------------------------------------------------------------------------------------------------------------
HOW ARE SCENE SZS FILES STRUCTURED IN THIS GAME?:
You can read info about that here at smsrealm: smsrealm.net/board/thread.php?id=10
---------------------------------------------------------------------------------------------------------------------------------------------------------
Well, that would be the end of my SMS hacking documentation. That's all the info I can post about. If anyone can give more info and correct me, I'd appreciate it. I hope I've helped!
NOTE: SOME OF THIS HAS ALREADY BEEN COVERED AT SOME OTHER WEBSITES (read some sections of yagcd). HOWEVER, I THOUGHT THERE NEEDED TO BE A DOCUMENTATION HERE.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
NINTENDO FILE TYPES USED IN SMS THAT I CAN EXPLAIN:
SZS - Instead of SZP (which is yay0 compressed) in LM, in this game we have SZS (which is yaz0 compressed). Which are both nintendo zip formats.
THP - nintendo compressed video format for cutscenes and stuff.
BMD - A compressed character model, enemy model, object model, an icon, or a level map. mdl files are not used in SMS.
BCK - model animation format.
BAS - stores some sort of audio data.
JPA - stores some sort of particle (effect) data.
COL - stores collision data for objects in level maps.
BTI - stores an icon or custom display font for a pause screen or a menu.
BLO - stores screen heads-up-display data.
BMG - files that store messages that display when you talk to NPCs, or messages that display when the game asks you "Yes or No".
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
WHERE ARE THESE FILES AND HOW TO OPEN/EXTRACT THEM?:
SZS - in "data" and used to compress various data in areas. you need programs called "yaz0dec.exe" and "rarcdump.exe" to extract from these files.
THP - again in "data". you need a program called "thpplay.exe" to watch them.
BMD - found in a lot of folders (especially in "scene" szs files). level bmds in "scene" szs files in "map". some can be found as icons in select_en.szs in "data". mario's model and fludd's models can be found in mario.szs. use a program called bmdview2 to view bmd files.
BCK - Most of the time found next to bmd files. You can as well open model animations in bmdview2, open the bmd model first then open the animation.
BAS - these files can be found where enemy models or character models are. Nothing much about these, there is nothing that really opens these files. You could try swapping them and see what happens when you test it.
JPA - found in some szs files that store a lot of bti files and some szs files in "data" that just store nothing but JPA files (bosshanachanJpa.szs and particle.szs). Again not much is known about these; you could try swapping these files and see what really happens in game.
COL - found in "map" and "mapobj" in "scene" szs files. I thought these files associated with gta collision file editor (totally different game), but it didn't read them at all. we'll have to see on col files. I believe there is an importer that was discussed at smsrealm but really have no idea on editing collision.
BTI - a lot of szs files in "data" store these files, mostly within them in "timg". here's some szs files that store a lot: common.szs, game_6_en.szs, guide_en.szs, and select_en.szs. view them in paint.net after converting them to tga with a program called "bticonvert.exe". however importing custom btis with a program called "tga2bti.exe" doesn't seem to work.
BLO - these files can be found within the same szs files I have listed above for btis, in a folder called "scrn". I'm not sure how to modify the screen data but if I try viewing them in a hex editor I can see a whole list of bti files.
BMG - these files can be found in a number of szs files again, such as cmn2d_en.szs which stores display messages and npc messages, also I believe subtitle_en.szs stores audio messages. If you try opening bmg files in a hex editor you can read the messages it stores. it's probably possible to edit them. EDIT: there's a program by arookas at SMSRealm called SunScript that has a lot more compatibility.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
WHERE ARE PRMS FOUND IN THIS GAME?:
Some can be found in "map" in "scene" szs files for enemies and/or bosses. A lot of prms for enemies, mario, fludd, objects, and npcs can be found in params.szs in "data". Some I had speculated below. A lot I weren't sure were editable. Also some prms determine screen fading and what not. Some are unused and have strange functions which have been discussed a bit at smsrealm.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
SOME SMS PARAM SPECULATIONS (found in some enemy prms):
mSLHitPointMax - Probably amount of times you must hit him before he dies/falls? EDIT: Tested, confirmed. If the value for this PRM is set higher, then it makes the enemy have more lives.
mSLInstanceNum - Something to do with when he's hit?
mSLActiveEnemyNum - Something to do with when he's not down?
mSLWaterMarkLimit - How much water he can take before he starts back up and tries to attack mario? EDIT: Mostly this would count toward the way Petey Piranha attacks when he opens his mouth.
---------------------------------------------------------------------------------------------------------------------------------------------------------
HOW ARE SCENE SZS FILES STRUCTURED IN THIS GAME?:
You can read info about that here at smsrealm: smsrealm.net/board/thread.php?id=10
---------------------------------------------------------------------------------------------------------------------------------------------------------
Well, that would be the end of my SMS hacking documentation. That's all the info I can post about. If anyone can give more info and correct me, I'd appreciate it. I hope I've helped!