Modding rundown: Sound

Started by Noelemahc, December 05, 2006, 11:53PM

Previous topic - Next topic
November 16, 2007, 06:58PM #240 Last Edit: November 16, 2007, 07:18PM by winstrol
Quote from: BliZZ on November 16, 2007, 07:44AM
I think that those sounds are a little more complicated, though. For instance, an_nightcrawler and break_nightcrawler will ONLY play when the character's name is "nightcrawler", not "nightcrawlerdlc". On the other hand, an_sabretooth and break_sabretooth will ONLY play when the hero's name is "sabretooth_hero", not when it is "sabretooth".

Unless you are suggesting entering in something like:
COMMON/MENUS/CHARACTER/AN_NIGHTCRAWLERDLC

will make the sounds play for "nightcrawlerdlc".

Yep,
COMMON/MENUS/CHARACTER/AN_NIGHTCRAWLERDLC
hash: 217532403 (decimal value)
worked just fine for nightcrawler.

and COMMON/MENUS/CHARACTER/BREAK_NIGHTCRAWLERDLC
hash: 98009251 (decimal value)
worked fine as well.

however, it turns out that for the hash to work it needs to be in the right place(at least for x_voice.zss,  dunno 'bout other files). I mean, in my first attempt i replaced the first hash in x_voice.zss with 217532403 giving ID 51 (anouncer of mr. marvel) and.. it didn't work.
so, i jumped to the hash 207913237 (closest number to nightcrawler hash i created) and replaced with 217532403 giving ID 51 and.. it worked. The same for the break sound.

Another thing, maybe i'm wrong but seems like the hash only works for sounds that don't have a alternative sound. Like, CHAR/NAME_M/JUMP works fine, but CHAR/NAME_JUMP2 don't. BUT, CHAR/NAME_M/JUMP works fine only if the character have no alternative jump sounds (jump2, jump3..)

eg:
Sound              have alternative sound(jump2)?   created hash matches?
CHAR/MOON_M/JUMP         yes                         no
CHAR/GHOST_M/JUMP        yes                         no
CHAR/ELEKRA_M/JUMP       no                          yes
CHAR/DRSTR_M/JUMP         no                          yes

so maybe that's why the created hash don't match any of _v sounds.. since most of them have alternative sounds. It matches for Xtreme which for some have alternative, but i don't think that counts since mua never uses the alternative xtreme sound.

Compiled code idrinkdrpepper posted just in case someone needs:
http://www.sendspace.com/file/xpj2uf
just made a small change to show the right hex code.


Teancum,
for colossus try editing the conf file and increase/decrease the 5th number eg: 7 colossus 496 594 2 c\o\coloss_v

November 16, 2007, 08:26PM #241 Last Edit: November 17, 2007, 12:15AM by idrinkdrpepper
When you're generating new hashes, you need to keep in mind that the hashes are placed in increasing order.  If it's out of order, the new hash or the one after it will not play.  Also, there are 2 other sections of hash, but as far as I know, they don't matter.

For the sounds that have alternatives, the game needs to randomly choose one of them.  Maybe try CHAR/[char]_M/JUMP/JUMP2 or CHAR/[char]_M/JUMP_2

EDIT1: For the alternative sounds, I wasn't able to guess the filename, but I can tell you that the indexing number is at the end of the filename and it starts from 0.

EDIT2: One option is to try and take a character with multiple RESPAFFIRM sounds and rename one of the hashes to CHAR/[char]_V/RESPAFFIRM and see whether the game plays that sound.  If we don't know how to generate the filename hash for the alternative sounds, maybe we can force the game to play a single respaffirm.  The logic behind this is that some characters have a single jump sound and some characters have more than one jump sound.  Since we know the filename for single sounds, we can still give custom characters every type of sound if we leave out the alternative sounds.

Quote from: BliZZ on November 15, 2007, 05:47PM
I can confirm the following from the newest upload:

Rogue's sounds now work
Professor X's still don't (Or maybe it is just his xtreme that doesn't work? I am not sure)
Toad's still don't (Or maybe it is just his xtreme that doesn't work? I am not sure)
X-Man's cmdattack sounds still don't play

I haven't tested Sabretooth2/Pyro2, but with the knowledge that it might be possible to set up the PSP characters' sounds in their own files they might not even be necessary

Let me know if Sabretooth2/Pyro2 work.  It'd be nice to build a few quick customs for characters like Angel while we're building official sounds from scratch.

Quote from: winstrol on November 16, 2007, 06:58PM
however, it turns out that for the hash to work it needs to be in the right place(at least for x_voice.zss,  dunno 'bout other files). I mean, in my first attempt i replaced the first hash in x_voice.zss with 217532403 giving ID 51 (anouncer of mr. marvel) and.. it didn't work.
so, i jumped to the hash 207913237 (closest number to nightcrawler hash i created) and replaced with 217532403 giving ID 51 and.. it worked. The same for the break sound.

Wow, so I guess editing x_voice will be the biggest pain in the ass of all. I suggest we gather all the sounds we can before we even try to recompile that one (DLC [custom, since we can't use the XMA stuff], XML2, XMl1, custom characters [Vision, She-Hulk, Punisher, Namor, etc]). If we can add more sounds to it, that is.


Also, I am assuming Marv's break sounds don't play since they are at the beginning of the file, meaning the hashids aren't where they should be (unless that is where they should be)


Teancum:

QuoteAlright, in case anyone cares, Sabretooth2 works with the newest version.

Haven't tested Pyro2 yet. Since he has an xtreme sound, you could just change any character's voice file in your herostat and type in "pyro_m", and see if that character yells out "WILFDIRE" on execution of the xtreme.

I don't read all but I've got a question. The sounds of Cyclops and for Nightcrawler are realesed ?

November 17, 2007, 01:52AM #245 Last Edit: November 17, 2007, 03:10AM by winstrol
second hash's file name: CHARS3/7R/[CHARACTER]_M/[SOUND_NAME]
third hash's file name: FILE/[CHARACTER]_M/[SOUND_NAME]

the first above don't make sense, but seems to work.

Quote from: Onua on November 17, 2007, 01:43AM
I don't read all but I've got a question. The sounds of Cyclops and for Nightcrawler are realesed ?

No, the will be released when the Official Characters mod is updated.


Quote from: winstrol on November 15, 2007, 05:28PMas for the hash, that's great dude. Too bad i finished the program prior to see the post. But now i could make a new program to completely compile and decompile the zss file (which would allow us to change sounds, change hashs or whaterer) what you guys think? Or is anyone else already working on something like that?

How hard would it be to create a program to build ZSM/ZSS files?  If it's possible then it would make life lots easier for both PC and Xbox mods.

Quote from: winstrol on November 15, 2007, 05:28PMAlso i tried using the xbox sounds in the pc version's zss and it worked but it sounds crappy in game. The closest i got was using Vox studio 3 and converting the file to bicom adpcm 22050 and put back in the zss (without changing the 106 to 1). That gave a better quality very close to the game sounds. I was just wondering how noel managed to get better quality, i even tried uncompressed wave file and still sounded bad.

What do you mean by 106 to 1?  I've placed VOX files in-game, but they sound terrible.

November 18, 2007, 05:09PM #249 Last Edit: November 18, 2007, 05:33PM by idrinkdrpepper
In the zsm and zss files, each filename is preceded by 6A (or 106 in decimal). See page 2:

Quote from: Noelemahc on January 16, 2007, 09:18AM
I'm an idiot. I changed the sound type from [6a] (VOX) to [01] (Microsoft WAV) and inserted a pure unmodified sound dump from the X-Box.
And? Right-o. It not only WORKS, it sounds a heckuva lot cleaner than the native stuff.

For creating our own zss and zsm files, we first need to know what the input filename is for sounds that have alternatives like JUMP, RESPAFFIRM or ICANSEEYOU, otherwise compiling a text document with an incorrect filename will result in a hash that the game won't understand.  I think we've already figured out pretty much all of the filenames except these ones for the alternative sounds.  Maybe winstrol will have better luck guessing the filename.

Ah, hadn't thought about what the value was in decimal.  Thanks.

November 18, 2007, 10:17PM #251 Last Edit: November 18, 2007, 10:47PM by winstrol
Quote from: Teancum on November 18, 2007, 04:31PM
How hard would it be to create a program to build ZSM/ZSS files?  If it's possible then it would make life lots easier for both PC and Xbox mods.

i'm woking on it.
But as idrinkdrpepper said above it won't work for alternative sounds, unless we figure the hash filename.

I tried everything but no luck. So if there's someone willing to try guessing this might help a bit:
http://www.sendspace.com/file/cqo9um
use: bruteforce 142983137 5 CHAR/GHOST_M/JUMP2*
try changing the CHAR/GHOST_M/JUMP2* like: */GHOST_M/JUMP2 or whatever. (btw that's how i found the filename for the second and third hash). 142983137 is the ghost rider's hash for jump2 which the correct filename is unknown so far.

Quote from: Teancum on November 18, 2007, 04:31PM
What do you mean by 106 to 1?  I've placed VOX files in-game, but they sound terrible.
Nope i meant the oposite.. i didn't do what noel said about changing 106 to 1 (leaving its default value) and put the vox file into the zss. At least here it didn't sound that bad, i'd say slightly worse than game's sounds (maybe due to some codec i installed?) some samples below.

that one is just for testing new file name, /t/e/test_m.zsm edit herostat, start a game and jump. It's only 40kb, i only put 1 sound for jump and its hashes (doom's voice actually, just 'cause i like him :))
http://www.sendspace.com/file/5fouql

that's like the above, but the sound was replaced with a normal wav converted to vox:
http://www.sendspace.com/file/oljcu2

November 20, 2007, 10:23PM #252 Last Edit: November 27, 2007, 06:01AM by Teancum
I created a "Raven Knights" team for the Xbox, complete with sounds.  Here's what I did:

1-Added the following team (pay attention to the sound section)
Quotebonus {
   descbonus = +6 Body, Strike, Focus ;
   descname1 = Raven ;
   descname2 = Knights ;
   powerup = shared_team_increase_traits ;
   sound = common/menus/character/an_namor ;
      hero {
      name = ironman ;
      }

      hero {
      name = humantorch ;
      }

      hero {
      name = iceman ;
      }

      hero {
      name = captainmarvel ;
      }

      hero {
      name = deadpool ;
      }

      hero {
      name = hawkeye ;
      }

      hero {
      name = ronin ;
      }

   }

2-Next I copied the raw sound data for "Raven Knights" (team_bonus_rk.wav) from XML2
3-I pasted it in place of an_namor in MUA x_voice, filling in the gaps with 00 bytes

So basically if you want to add any team bonus callouts from XML2 you can use an_namor, so long as it's smaller than Namor's sound.

Just FYI, the following team bonuses aren't in MUA, but are present in XML2

Age of Apocalypse
Brotherhood of Evil
Bruiser Brigade (though "Bruisers" is a team bonus in MUA)
Energy Corps
Family Affair
Forces of Nature (though "Natrual Forces" is a team bonus in MUA)
Heavy Metal
New X-Men
Old School (though "Flashback" is a team bonus in MUA)
Raven Knights
Special Ops

MUA Gold for the 360 has the following new teams:
Arch Rivals
FREAKS
Friendly Rivalry
Met His Maker
Rogues Gallery
Secret Defenders
Shaba Ultimates
West Coast Avengers

I'm not sure how many team_bonuses you can add to the game, but if it's more than one you can try replacing stuff like menu_ps3 with announcer VO

QuoteI'm not sure how many team_bonuses you can add to the game


The official ones +3.

New hash find:

MENU/MENU_PS3

will give you the has for Menu Ps3.wav in x_voice.  Useful to put in yet another team bonus callout.

Also, any spaces in a filename are considered an underscore ( _ ) when finding a hash.  So Menu Ps3 becomes MENU_PS3