Users browsing this thread: 1 Guest(s)
[TUTORIAL] Making BMS Scripts; Post and get help with your BMS scripts!
#16
Eh depends. You'd be better off doing it in Python or any other programming language though.
Reply
Thanked by: Lilothestitch
#17
(12-25-2015, 06:36 AM)TGE Wrote: Eh depends. You'd be better off doing it in Python or any other programming language though.
Okay. Thanks. Because I want to write a converter for Smash Wii U Animation .omo formats to Brawl .chr0 and one for light.bin LIGH formats into a .scn0.
[Image: 33426ca52b.png]
Reply
Thanked by:
#18
I think that this thread could also be used to post and list scripts that we create and use. I'll add them to the third post and they'll be listed there Smile
Reply
Thanked by: Lilothestitch
#19
(12-30-2015, 02:02 AM)ThatTrueStruggle Wrote: I think that this thread could also be used to post and list scripts that we create and use. I'll add them to the third post and they'll be listed there Smile

I agree with that. We could use 2 scripts for Super Smash Bros. for Wii U. One to convert .omo Animations to .chr0 and one to convert light.bin LIGH to .scn0.
[Image: 33426ca52b.png]
Reply
Thanked by:
#20
(12-30-2015, 02:46 AM)Lilothestitch Wrote:
(12-30-2015, 02:02 AM)ThatTrueStruggle Wrote: I think that this thread could also be used to post and list scripts that we create and use. I'll add them to the third post and they'll be listed there Smile

I agree with that. We could use 2 scripts for Super Smash Bros. for Wii U. One to convert .omo Animations to .chr0 and one to convert light.bin LIGH to .scn0.

you ARE aware that changing omo to CHR0 isnt gonna work, right? OMO contains multiple animation files in them, think of it like an archive. It contains bones, visability and vertex morph inside it, while the material_anime (aka .mta files - material animation) contains texture animation, and color animation data, so have fun trying to get each data separated Tongue

as for the light.bin data, ur gonna enjoy that, since SmashU uses dynamic and hemisphere lighting, which brawl is unable to replicate (smash3ds uses directional and point lighting, but also uses hemisphere lighting), so getting smashu lighting data into brawl is impossible (except for the ambient, lighting and specular color for the lights).
Reply
Thanked by: Lilothestitch
#21
And even so I must remind you that QuickBMS does not support floating points, so you're not going to get very far.
Reply
#22
(12-30-2015, 03:46 AM)Demonslayerx8 Wrote:
(12-30-2015, 02:46 AM)Lilothestitch Wrote:
(12-30-2015, 02:02 AM)ThatTrueStruggle Wrote: I think that this thread could also be used to post and list scripts that we create and use. I'll add them to the third post and they'll be listed there Smile

I agree with that. We could use 2 scripts for Super Smash Bros. for Wii U. One to convert .omo Animations to .chr0 and one to convert light.bin LIGH to .scn0.

you ARE aware that changing omo to CHR0 isnt gonna work, right? OMO contains multiple animation files in them, think of it like an archive. It contains bones, visability and vertex morph inside it, while the material_anime (aka .mta files - material animation) contains texture animation, and color animation data, so have fun trying to get each data separated Tongue

as for the light.bin data, ur gonna enjoy that, since SmashU uses dynamic and hemisphere lighting, which brawl is unable to replicate (smash3ds uses directional and point lighting, but also uses hemisphere lighting), so getting smashu lighting data into brawl is impossible (except for the ambient, lighting and specular color for the lights).
I totally forgot about that. I see. I'll do my best to make the script. I never made a quickbms script before so this is my first time.
[Image: 33426ca52b.png]
Reply
Thanked by:
#23
(12-30-2015, 01:09 PM)Lilothestitch Wrote: I totally forgot about that. I see. I'll do my best to make the script. I never made a quickbms script before so this is my first time.

Dude, he pretty much said that it isn't possible, due to the limitations of QuickBMS and the Wii hardware. Sorry Tongue
Reply
Thanked by: Lilothestitch
#24
(01-01-2016, 05:53 AM)ThatTrueStruggle Wrote:
(12-30-2015, 01:09 PM)Lilothestitch Wrote: I totally forgot about that. I see. I'll do my best to make the script. I never made a quickbms script before so this is my first time.

Dude, he pretty much said that it isn't possible, due to the limitations of QuickBMS and the Wii hardware. Sorry Tongue

Okay. Then what do you think I should do? Any other ideas?
[Image: 33426ca52b.png]
Reply
Thanked by:
#25
Hello all, I'm VERY close to getting this archive extracting all of the files. I've determined the endiness, and I know that there's an error in my loop, could anyone help me figure this out? Here's what I've got so far:
Code:
endian big
idstring "VAGp\x00"
get archiveSize long
get unkownValue long
get null long
for i = 0 < fileCount
   get pointer long
   get length long
   getdstring name 0x4
   log name pointer long
next i

Here's a file sample:
http://www.filedropper.com/sfx

These are all probably supposed to be audio files, but I could seriously use some help re-writing a new script. (Sorry first timeSmile) Thank you!
~Anex
Reply
Thanked by:
#26
(01-04-2016, 05:19 PM)Anexenaumoon Wrote: Hello all, I'm VERY close to getting this archive extracting all of the files. I've determined the endiness, and I know that there's an error in my loop, could anyone help me figure this out? Here's what I've got so far:
Code:
endian big
idstring "VAGp\x00"
get archiveSize long
get unkownValue long
get null long
for i = 0 < fileCount
   get pointer long
   get length long
   getdstring name 0x4
   log name pointer long
next i

Here's a file sample:
http://www.filedropper.com/sfx

These are all probably supposed to be audio files, but I could seriously use some help re-writing a new script. (Sorry first timeSmile) Thank you!
~Anex

I'll take a look real quick Smile

Code:
endian big
for FILES = 0
    FindLoc VAGOffset string "VAGp"
    goto VAGOffset
    idstring "VAGp"
    get twenty long
    get null long
    get fileSize long
    get unk long
    get null longlong
    get null long
    get filename string
    do
        get single byte
    while single == 0
    savepos dataStart
    math dataStart - 1
    log filename dataStart fileSize
next FILES

Since there isn't a defined file count, I did it this way. Gets file names and extracts the file. If you need help understanding the script, you can ask for help. Also there are files in the archive with the same file name, so select the option to rename the same named ones Smile

ADDED TO 3RD POST
Reply
Thanked by: Pingus!
#27
(01-04-2016, 06:42 PM)ThatTrueStruggle Wrote:
(01-04-2016, 05:19 PM)Anexenaumoon Wrote: Hello all, I'm VERY close to getting this archive extracting all of the files. I've determined the endiness, and I know that there's an error in my loop, could anyone help me figure this out? Here's what I've got so far:
Code:
endian big
idstring "VAGp\x00"
get archiveSize long
get unkownValue long
get null long
for i = 0 < fileCount
  get pointer long
  get length long
  getdstring name 0x4
  log name pointer long
next i

Here's a file sample:
http://www.filedropper.com/sfx

These are all probably supposed to be audio files, but I could seriously use some help re-writing a new script. (Sorry first timeSmile) Thank you!
~Anex

I'll take a look real quick Smile

Code:
endian big
for FILES = 0
FindLoc VAGOffset string "VAGp"
goto VAGOffset
idstring "VAGp"
get twenty long
get null long
get fileSize long
get unk long
get null longlong
get null long
get filename string
do
get single byte
while single == 0
savepos dataStart
math dataStart - 1
log filename dataStart fileSize
next FILES

Since there isn't a defined file count, I did it this way. Gets file names and extracts the file. If you need help understanding the script, you can ask for help. Also there are files in the archive with the same file name, so select the option to rename the same named ones Smile

ADDED TO 3RD POST

Thank you very much for all of that Smile.Thanks man! Now one more question, how would these be opened into sound files? EDIT: I think I get what you did with the script Smile. This is a new learning process for me heheTongue
Reply
Thanked by:
#28
You can open the audio using PSound, which is a handy little app that reads different types of audio and allows you to create wav files from it Smile http://www.zophar.net/utilities/psxutil/...aver2.html
Reply
Thanked by:
#29
Related to the audio extracted from the .wad file.
I think the game is Guitar Hero 3, due to internal file names and how .wad was a format used for other Guitar Hero games.

Reply
Thanked by:
#30
This is really awesome, thank you bothSmile. My issue says it's an unsupported format, and I can't play it zzz.. Sorry to trouble haha, It scans the file and finds the bytes, it says close and it won't let me play it lol

@OS-PRIME Good guess, it is lol
Reply
Thanked by:


Forum Jump: