READ THE RULES: Click here

Follow us on Facebook: https://www.facebook.com/xentax/ :)

My quickBMS scripts

Coders and would-be coders alike, this is the place to talk about programming.
Murdiaries
n00b
Posts: 11
Joined: Thu Mar 03, 2011 2:40 pm

Re: My quickBMS scripts

Post by Murdiaries » Fri Mar 04, 2011 1:00 pm

Hi,
I've used your at3_to_aa3+smpl.bms script on Hokuto Musou at3 files, and it works like a charm!

As I'd like to add original anime BGM music back to the game, upon I've saved those in .aa3, how can I go convert them to at3 to be played into PS3?

Thanks! :)

manstopper
ultra-n00b
Posts: 2
Joined: Mon Feb 28, 2011 11:09 pm
Has thanked: 4 times

Re: My quickBMS scripts

Post by manstopper » Wed May 18, 2011 2:10 pm

AlphaTwentyThree wrote: WAVE format scanner
I already posted this inside some other topic but I'll include it here, too. Simple wave scanner. Doesn't search for the "RIFF" string as I once accidentially found it inside some other data structures where it wasn't a wave file. Instead it searches for the WAVEfmt part and extracts the file.

Code: Select all

for i = 1
   FindLoc OFFSET STRING "WAVEfmt" 0 ""
   if OFFSET != ""
      math OFFSET -= 8
      goto OFFSET
      FindLoc DATA STRING "data" 0 ""
      math DATA += 4
      goto DATA
      get SSIZE long
      savepos HEADER
      math HEADER -= OFFSET
      set SIZE HEADER
      math SIZE += SSIZE
      get NAME basename
      string NAME += "_"
      string NAME += i
      string NAME += ".wav"
      log NAME OFFSET SIZE
   else
      cleanexit
   endif
next i
Thank you!
Sorry for my English... It is not my native language.
Can you make a script for flashing these wav files back to the original file? It would be great for mods.

AlphaTwentyThree
double-veteran
double-veteran
Posts: 984
Joined: Mon Aug 24, 2009 10:55 pm
Has thanked: 75 times
Been thanked: 622 times

Re: My quickBMS scripts

Post by AlphaTwentyThree » Mon May 23, 2011 12:39 pm

Sorry, my QuickBMS skills aren't that good to perform such a task... :(
If you like what you see, why not click the little Thank You button? ;) It will definitely motivate me! :)
And here's Mr.Mouse's Facebook link: http://www.facebook.com/permalink.php?s ... 8469022795 - thanks ;)

divStar
ultra-n00b
Posts: 8
Joined: Tue Sep 21, 2010 11:46 pm
Been thanked: 1 time

Re: My quickBMS scripts

Post by divStar » Fri Jun 24, 2011 4:01 pm

The contents of this post was deleted because of possible forum rules violation.

User avatar
Dinoguy1000
Site Admin
Posts: 722
Joined: Mon Sep 13, 2004 1:55 am
Has thanked: 106 times
Been thanked: 130 times

Re: My quickBMS scripts

Post by Dinoguy1000 » Fri Jun 24, 2011 6:39 pm

The contents of this post was deleted because of possible forum rules violation.
Welcome to Xentax!

Rules | Requests | Wiki

If you run across a post that breaks the rules, please report the post - a mod or admin will handle it from there.

AlphaTwentyThree
double-veteran
double-veteran
Posts: 984
Joined: Mon Aug 24, 2009 10:55 pm
Has thanked: 75 times
Been thanked: 622 times

Re: My quickBMS scripts

Post by AlphaTwentyThree » Thu Jun 30, 2011 6:34 pm

These are just PS2 ADPCM streams with a fake AT3 header. Just use this simple script below on them and play them with the vgmstream plugin (Winamp).
As you can see, the script only an altered version of the SS2 header adder script with some "get" commands to retrieve the fitting parameters. Anyone can adjust my scripts like that - I use that method all the time because it's so easy. :keke:

Code: Select all

idstring "RIFF"
goto 0x16
get CH short
get FREQ long
set INTERLEAVE 0x10
set OFFSET 0x4c

get NAME basename
string NAME += ".ss2"
callfunction SS2 1
get SIZE asize MEMORY_FILE
log NAME 0 SIZE MEMORY_FILE

startfunction SS2
	get SIZE asize
	math SIZE -= OFFSET
	set MEMORY_FILE binary "\x53\x53\x68\x64\x18\x00\x00\x00\x10\x00\x00\x00\xb0\x36\x00\x00\x02\x00\x00\x00\xc0\x2f\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\x53\x53\x62\x64\x00\xe8\x11\x00"
	append
	log MEMORY_FILE OFFSET SIZE
	append
	putVarChr MEMORY_FILE 0xc FREQ long
	putVarChr MEMORY_FILE 0x10 CH byte
	putVarChr MEMORY_FILE 0x14 INTERLEAVE long
	putVarChr MEMORY_FILE 0x24 SIZE long
endfunction
If you like what you see, why not click the little Thank You button? ;) It will definitely motivate me! :)
And here's Mr.Mouse's Facebook link: http://www.facebook.com/permalink.php?s ... 8469022795 - thanks ;)

OrangeC
double-veteran
double-veteran
Posts: 860
Joined: Sun Apr 20, 2008 2:58 am
Has thanked: 5 times
Been thanked: 33 times

Re: My quickBMS scripts

Post by OrangeC » Thu Jun 30, 2011 7:36 pm

Hello Alpha is it possible to make like a file cutter script based by on the filesize and not in any search string?

AlphaTwentyThree
double-veteran
double-veteran
Posts: 984
Joined: Mon Aug 24, 2009 10:55 pm
Has thanked: 75 times
Been thanked: 622 times

Re: My quickBMS scripts

Post by AlphaTwentyThree » Thu Jun 30, 2011 8:15 pm

OrangeC wrote:Hello Alpha is it possible to make like a file cutter script based by on the filesize and not in any search string?
7zip can already do that - QuickBMS would be much slower.
If you like what you see, why not click the little Thank You button? ;) It will definitely motivate me! :)
And here's Mr.Mouse's Facebook link: http://www.facebook.com/permalink.php?s ... 8469022795 - thanks ;)

OrangeC
double-veteran
double-veteran
Posts: 860
Joined: Sun Apr 20, 2008 2:58 am
Has thanked: 5 times
Been thanked: 33 times

Re: My quickBMS scripts

Post by OrangeC » Thu Jun 30, 2011 8:19 pm

Thanks, Will try that.

Also does your file deinterleave script work for blocked files?

EDIT: NVM it worked great on that interleaved atrac3 file from full auto 2 i posted here, 0x6000 itnelreaved with 8 streams, end of the track screwes up a bit though.

AlphaTwentyThree
double-veteran
double-veteran
Posts: 984
Joined: Mon Aug 24, 2009 10:55 pm
Has thanked: 75 times
Been thanked: 622 times

Re: My quickBMS scripts

Post by AlphaTwentyThree » Fri Sep 02, 2011 1:22 am

Updated my deinterleave script - there was something really wrong with it... ;)
It's now able to write working last blocks! :)
If you like what you see, why not click the little Thank You button? ;) It will definitely motivate me! :)
And here's Mr.Mouse's Facebook link: http://www.facebook.com/permalink.php?s ... 8469022795 - thanks ;)

OrangeC
double-veteran
double-veteran
Posts: 860
Joined: Sun Apr 20, 2008 2:58 am
Has thanked: 5 times
Been thanked: 33 times

Re: My quickBMS scripts

Post by OrangeC » Fri Sep 02, 2011 2:38 am

Wow now i can rework my full auto 2 rip, Thanks!

EDIT: Nope it still messing up on this file. :(

http://sharebee.com/5f4b495d

EDIT: After taking another look it is not your script, it works correctly. It is the file that something is wrong, i Manually splitted the segments and it seems the ending segments are messed up.

AlphaTwentyThree
double-veteran
double-veteran
Posts: 984
Joined: Mon Aug 24, 2009 10:55 pm
Has thanked: 75 times
Been thanked: 622 times

Re: My quickBMS scripts

Post by AlphaTwentyThree » Tue Sep 20, 2011 6:42 pm

OrangeC wrote:Wow now i can rework my full auto 2 rip, Thanks!

EDIT: Nope it still messing up on this file. :(

http://sharebee.com/5f4b495d

EDIT: After taking another look it is not your script, it works correctly. It is the file that something is wrong, i Manually splitted the segments and it seems the ending segments are messed up.
How many channels does this file have? I tried different aa3 headers but found no working one...
If you like what you see, why not click the little Thank You button? ;) It will definitely motivate me! :)
And here's Mr.Mouse's Facebook link: http://www.facebook.com/permalink.php?s ... 8469022795 - thanks ;)

AlphaTwentyThree
double-veteran
double-veteran
Posts: 984
Joined: Mon Aug 24, 2009 10:55 pm
Has thanked: 75 times
Been thanked: 622 times

Re: My quickBMS scripts

Post by AlphaTwentyThree » Tue Oct 11, 2011 4:43 pm

SoundNodeWave_to_uxma
Converts UT3-engine sounds from Xbox 360 games to unparsed XMA streams. Automatically adds the frequency to the filename for later use with my updated script for XMA RIFF headers.

Code: Select all

FindLoc OFFSET string \x1\x66 0 ""
if OFFSET == ""
	print "Error: No XMA file. Please send this file to AlphaTwentyThree at XeNTaX!"
        cleanexit
endif
endian big
goto OFFSET
get CODE short
get CH short
get FREQ long
math OFFSET += 0x34
get SIZE asize
math SIZE -= OFFSET
math SIZE -= 0x10
get NAME basename
string NAME += "@"
string NAME += FREQ
if CH == 1
	string NAME += "m"
elif CH == 2
	string NAME += "s"
endif
string NAME += ".uxma"
log NAME OFFSET SIZE
Last edited by AlphaTwentyThree on Tue Oct 18, 2011 7:04 pm, edited 3 times in total.
If you like what you see, why not click the little Thank You button? ;) It will definitely motivate me! :)
And here's Mr.Mouse's Facebook link: http://www.facebook.com/permalink.php?s ... 8469022795 - thanks ;)

User avatar
Mr.Mouse
Site Admin
Posts: 4040
Joined: Wed Jan 15, 2003 6:45 pm
Location: Dungeons of Doom
Has thanked: 412 times
Been thanked: 558 times
Contact:

Re: My quickBMS scripts

Post by Mr.Mouse » Tue Oct 11, 2011 6:14 pm

Nice!!

AlphaTwentyThree
double-veteran
double-veteran
Posts: 984
Joined: Mon Aug 24, 2009 10:55 pm
Has thanked: 75 times
Been thanked: 622 times

Re: My quickBMS scripts

Post by AlphaTwentyThree » Tue Oct 18, 2011 6:38 pm

The above script didn't work right in some cases so I changed it. Also added the mono/stereo option to the script AND to the addXMAheader.bms! :)
Also, when any script here doesn't work, please help me improve the scripts and upload the according file here.
If you like what you see, why not click the little Thank You button? ;) It will definitely motivate me! :)
And here's Mr.Mouse's Facebook link: http://www.facebook.com/permalink.php?s ... 8469022795 - thanks ;)

Post Reply