Modding Tool: SkullMod

Discussion in 'Skullmod' started by 0xFAIL, Dec 24, 2013.

  1. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    SkullMod
    What can SkullMod do?
    Read/write .gfs files, the main resource files of the game
    Can be found in the data01 directory

    Convert the images throughout the game to .png (normal images)
    .dds ==> Used for textures / cutscenes / story art / character select ...
    .spr + .dds ==> Animations for character select / hitsparks ...
    .pcx ==> Character portrait during battle

    Read this thread for a how-to:
    http://skullgirls.com/forums/index.php?threads/skullmod-guide.6080/

    _______________
    Attachements
    convert_background_music.zip
    Additional files needed to change the background music
     

    Attached Files:

    Last edited: Nov 22, 2014
    Elcheer, 6-Let, SkullMan and 10 others like this.
  2. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    (Reserved)
     
    Last edited: Nov 22, 2014
  3. Flotilla

    Flotilla trumpets News Writer

    Big Band
    Big Band
    Big Band
    I heard about your mod a few weeks ago when it was the go-to tool for opening GFS files, I'm really happy to see you're planning on expanding its utility.
     
  4. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    Want to see gfsEdit in action (and a slightly changed texture ingame)?

    (Don't forget to enable captions on the video)

    Youtube video
     
    Last edited: Dec 27, 2013
    Flotilla likes this.
  5. WaterMystic277

    WaterMystic277 Anime Fucker

    Location:
    No Man's Land
    Squigly
    Cerebella
    Does this mean we can remove NPCS we don't like?
     
    Last edited: Dec 27, 2013
  6. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    Yes, but it will be way easier to remove them using lvlEdit, I'm currently working on that.
     
  7. Verdant Brave

    Verdant Brave Anti-social

    Peacock
    Unknown
    Does this mean I can now replace the game's music with the Anarchy Reigns soundtrack?
     
  8. Zidiane

    Zidiane Doing my best

    Location:
    Rhode Island
    Steam:
    Zidiane
    PSN:
    zidiane5
    XBL:
    Zidiane
    Cerebella
    So, this tools can do what exactly (have never been knowledgeable about modding games)? What're we going to be able to do with this?
     
  9. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    Yes, you can. Gonna make a video for that (tomorrow)

    Modding the following parts of the game: Maps (edit and probably make new ones), Changing music/some sound effects using gfsEdit and lvlEdit
     
    Last edited: Dec 28, 2013
  10. Vladislav_Paizis

    Vladislav_Paizis On hiatus from SG

    Location:
    Tallinn, Estonia
    Steam:
    Vladislav_Paizis
    PSN:
    Vlad7779311
    Ms. Fortune
    Eliza
    Unknown
    Is it just me or am I the only one who thinks that someone will make nude mods or other hilariously obscene things with it?
     
  11. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    The (game) characters and their palettes are protected by the game itself and won't work if edited in any way.
     
  12. WaterMystic277

    WaterMystic277 Anime Fucker

    Location:
    No Man's Land
    Squigly
    Cerebella
    sounds like this is something Lab 0 wants to prevent.
     
    Candra Software likes this.
  13. Kai

    Kai Go Home And Be A Family Man! Beowulf

    Location:
    Chicago, IL
    Steam:
    Kai
    PSN:
    Night_Phyre
    Parasoul
    Cerebella
    Big Band
    I'm glad this is the case. I'd hate to see it, if for no other reason than it would likely look like complete ass compared to the quality of the normal frames.

    Now that I'm thinking about it, though, that doesn't stop anybody from harem-ing out the backgrounds :/
     
  14. Chrono_Tata

    Chrono_Tata Plug Lyfe

    Location:
    Where the sky's been tainted red
    Steam:
    Chrono_Tata
    PSN:
    Chrono_Tata
    Painwheel
    Cerebella
    So how will creating new stages work? I assume that you will have to replace an existing stage with your custom stage, and that only you can see it? Otherwise I am imagining that it's gonna cause some nasty things online if you try to select a stage that your opponent doesn't have.
     
  15. Verdant Brave

    Verdant Brave Anti-social

    Peacock
    Unknown
    Awesome, now I just need to locate music tracks that are repeat safe.
     
  16. DDB

    DDB Annie Train into Callie Station!

    Location:
    Oh god help me
    Steam:
    DDB of the Stars
    PSN:
    DiddyBound
    Ms. Fortune
    Beowulf
    Filia
    Goodbye Minette, HELLO ANNIE.
     
  17. DARKNESSxEAGLE

    DARKNESSxEAGLE Master of Disguise

    Location:
    Europe (UK)
    Steam:
    DixiE
    PSN:
    DARKNESSxEAGLE
    Filia
    Cerebella
    Ms. Fortune
    This is pretty damn cool

    I know exactly what I'm using this for
     
  18. destruction_adv

    destruction_adv Yare Yare Daze

    Valentine
    Filia
    Double
    Pretty cool...I kinda doubt I'll use it because I like everything as it is, but I know some stuff I could use it for that seem awesome in my head. Thanks for making this.
     
  19. DARKNESSxEAGLE

    DARKNESSxEAGLE Master of Disguise

    Location:
    Europe (UK)
    Steam:
    DixiE
    PSN:
    DARKNESSxEAGLE
    Filia
    Cerebella
    Ms. Fortune
    Ok I've completed my task, behold:
    [​IMG]
    [​IMG]
    If you look closely you'll see that this is the only texture mod that matters. I should say that those aren't the only characters who've been changed (there's at least one per randomised set of characters!).

    Anyway, I've uploaded just the altered texture folder files, this does mean you'll need to unpack and repack by yourself but it stays out of trouble (see posts below for why I shouldn't have had it up in the first place =_=").
    https://drive.google.com/folderview?id=0B0VnH6Cbcl7xMGpkSGhDeV8xS2M&usp=sharing

    Installation Instructions
    Show Spoiler
    Show Spoiler

    If you haven't done so already, download GFS Edit (see OPs post)
    Go to the Skullgirls data folder (C:/Program Files (x86)/Steam/SteamApps/common/Skullgirls)
    Make a backup of the folder "data01"
    Go into data01 (not the backup)
    Open GFS Edit
    Drag levels.gfs into the window and hit Unpack
    Download and extract my file into the textures folder (common/Skullgirls/levels/temp/levels/textures), if it asks you to overwrite stuff just say yes
    Switch to the "Pack" tab in GFS Edit
    Hit select directory and select the levels folder (common/Skullgirls/levels)
    Click pack
    Open up Skullgirls
    Pick River King Casino
    Feel the love.
     
    Last edited: Dec 25, 2013
  20. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    You should remove that .gfs file, it is a substantial part of the game, posting that will get you into trouble almost guaranteed.
    For modified game files (the individual .dds files) I guess the forum mods/admins will decide that. Just a fair warning.
     
  21. Mike_Z

    Mike_Z Defender of the Night Lab Zero

    Location:
    Los Angeles, CA
    Steam:
    labzero_mike
    PSN:
    MikeZWasTaken
    Cerebella
    Big Band
    Peacock
    @DARKNESSxEAGLE
    Yeah, you probably don't want to be posting gfs files containing actual unmodified game data, duder.
    (Also, eww...why...)

    @0xFAIL
    FWIW, if you wrote a tool that could unpack a character, edit frames, and repack them...I would be in awe, considering I don't have the faintest clue how you'd even do that, since the data is in crazy proprietary formats with no equivalent elsewhere and is spread across multiple files. Actually even if you got to the "editing level geometry" state, I'd be pretty impressed. Unpacking a gfs, changing a standard-file-format texture, and repacking isn't nearly as intense from a technical standpoint.
     
  22. DARKNESSxEAGLE

    DARKNESSxEAGLE Master of Disguise

    Location:
    Europe (UK)
    Steam:
    DixiE
    PSN:
    DARKNESSxEAGLE
    Filia
    Cerebella
    Ms. Fortune
    Oh silly me, it's gone now
     
  23. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    A level editor for .sgi and .sgm files should be finished in one week, .sga and .sgs files need work.
    Level geometry is done but has to be verified.

    Extraction of the sound effects is en route as well.

    For the character stuff: The shaders told me what data has to be in the different parts so it's a simple (well not that simple) mix and match.
    PS_SpritesPalette in renderer.fx and the pcx files that were used for the character portraits explained the structure that had to be used for the characters:
    A base palettized color image + greyscale diffuse for detail + black outlines.
    But after seeing that some files are protected against modification I changed focus to the bigger files. (maps and music)
     
    Candra Software likes this.
  24. Baiko

    Baiko So much to learn all at once

    Steam:
    KonKossKang (Swim killer?)
    PSN:
    Kashground (2009-2012)
    Unknown
    Unknown
    Painwheel
    hell yes.that is all.
     
  25. Duckator

    Duckator Well-Known Member Evo Champ '12 & '13

    Steam:
    steamcommunity.com/id/byab/
    PSN:
    Duckator
    Finally. Can't wait for the non-Java version
     
  26. Mike_Z

    Mike_Z Defender of the Night Lab Zero

    Location:
    Los Angeles, CA
    Steam:
    labzero_mike
    PSN:
    MikeZWasTaken
    Cerebella
    Big Band
    Peacock
    If you'd watched any Lab Zero cleanup streams or heard me talking about the game you'd know there was a color/shading/line layer, that's our excellent patented HD sprite tech, and is no secret. :: bows ::
    However, that has nothing to do with how the data is stored, and the format the shaders receive it in is likewise unrelated to the file structure. :^)

    It's less of a "hahah bet you can't" and more of a sincerely-wondering-if-it-can-be-done-in-a-reasonable-way. Although THAT bit I can't guarantee you wouldn't get a C&D for...

    I'll reiterate my standing offer: monetary reward to anyone who can significantly improve the shader performance or allow more lights with the same performance. Heh.
     
  27. Mr. X

    Mr. X Groovy Gameplay Mod Lead

    Bring back random ass custom MvC2 mixes.
     
  28. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    Updated gfsEdit to 1.2
    Windows version does not need Java to be installed (but is a lot bigger as a consequence of that)

    See CHANGELOG in the second post of this thread.

    Please give feedback if any problems arise.
     
  29. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    Postponed audio related things until I can sort out what tool to use for encoding the wav files.
    ffmpeg, sox, audacity, xact don't work for encoding and the results just hurt my ears.
     
  30. Kai

    Kai Go Home And Be A Family Man! Beowulf

    Location:
    Chicago, IL
    Steam:
    Kai
    PSN:
    Night_Phyre
    Parasoul
    Cerebella
    Big Band
    Already tried Reaper? It has some expansive WAV options, though I use it for music production, ao I'm not sure if it has what you're looking for. Can't hurt to look.
     
  31. Mike_Z

    Mike_Z Defender of the Night Lab Zero

    Location:
    Los Angeles, CA
    Steam:
    labzero_mike
    PSN:
    MikeZWasTaken
    Cerebella
    Big Band
    Peacock
    I use Cool Edit 96, hehehhehehe.

    The info you probably need, though, is 44100/16bit/mono.

    [edit] Find another commercial game not designed for modding where the developer helps modders. :^P
     
  32. Kasumi

    Kasumi Better known as NEScoder

    I got things working (for music) with
    adpcmencode.exe -B 128 in.wav out.wav
    (adpcmencode from the Xaudio2 pack.)
    I can say that worked after the music was changed to be smaller. But for all I know, that doesn't work anymore. I've been out of this game since early august, and now stuff is hashed and I can't even load my super old version (before those checks were added) anymore. :D Good to know what's actually used, though.
     
    0xFAIL likes this.
  33. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    I did not find a download for XAudio 2, or is adpcm.exe in the Direct X SDK?
    Edit: ok, seems to be in the current Win 8 SDK, let's have a look...
    Edit2: Yeah it's in the Win 8.1 SDK as well. ~ let's have some fun
    Edit3: It still works (at least for music)
    adpcm.exe -b 128 uncompressedPCM.wav compressedADPCM.wav
    Thanks for pointing me into the right direction.

    Ok, research post incoming: (no info for the average user here, just for future reference)

    For the music found in music and character sounds:
    The target format for SkullGirls is the codec "XAUDIO2 ADPCM" in the container WAV with a fixed bitrate of 385 kb/s (for music) / 192 kb/s (for character sounds) and slightly varying sample rate (around 44,1 k) and a fixed block size of 140 samples (music) / 70 samples (sound).
    The required FACT chunk is missing (according to Microsoft docs it is required in any non-uncompressed-PCM file to be true to the standard, but not for XAUDIO2 ADPCM) but it doesn't matter if it's streamed.
    Additionally loop information is (probably) given by the SMPL chunk (or it's just a leftover from production)

    I'm guessing but I think a low block size is needed because a loop can only occur on the end of each block: see here for a technical overview
    Sadly the encoder adds silence (something that is not desired when looping) if the music data has ended before the last block is filled.
    (if there is no loop it doesn't matter if there is silence at the end)

    A block with 140 samples is ~3,2 ms long
    A block with 70 samples is ~1,6 ms long
    Those seem reasonable.

    A block with 2048 samples (ffmpeg, old) is ~46 ms long
    Way too long. Speeding up the source material will distort the music, this was a problem in one of the updates if I remember correctly.
    (at least the extracted files were ever so slightly distorted when playing with VLC, now they aren't anymore, maybe it was just my imagination)

    The sample rate was probably slightly changed to fit the samples into the last sample block without changing the play speed.



    @Mike_Z:
    Thank you for your tip, I really appreciate not being C&D'd.
    The problem is that I found no way to get the block alignment to 140 or 70 (with or without CoolEdit) using any encoder (see above)
    Using a normal MS ADPCM file (block size 2048) only gives me static with a faint noise of the actual music.
    ffmpeg has the value 2048 (older versions) or 1024 (newer versions) hardcoded in the source, I don't really want to recompile it, there should be another way.
    So how did you work around that? Pleast don't let it be Soundforge or Audition...

    Edit2: adpcm.exe seems nice, let me have a look at that...
    Edit3: Look up at the other edit

    Other things I stumbled upon:
    During the beta Wavosaur was used when the music was uncompressed (2013-07-19 or better known as the day of the "DAFUQ 700 MB patch")
    My guess is that XACT or the XAudio SDK was used for the XBox release (xma files in the Xbox Version) and another encoder for PS3 (mp3, lame, if I remember correctly)
     
    Last edited: Dec 27, 2013
  34. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    It is done. (editing background music for stages) @Kasumi helped, thanks.

    Btw. this is trickier to do than the last one.

    Go to the Youtube video and enable video captions

    ==> Youtube
    Edit: (Annotations work now)

    I also forgot to change the download for gfsEdit, corrected.
     
    Last edited: Dec 27, 2013
  35. Kasumi

    Kasumi Better known as NEScoder

    Alright, so now I'm gonna be "that guy". I emailed you with some stuff I discovered about this game including the adpcm thing a few months ago. If you happen to not check there, it may be worth a read. (Maybe I just failed the human test though, heh.) At the end of the day, I didn't discover anything I wanted to, but I figured out all sorts of other easier stuff. I guess I never noticed adpcmencode added silence, but I only ever did one mod to check it. I only looked into it at all because someone asked me to. Same for voice acting stuff.

    Edit: Removed link, apparently old.

    Hahaha. Memories of frustration... yeah, that's how I found adpcmencode in the first place. I looked for other examples of things that didn't have it, and what created them.

    At this point, I'm somewhat happy I can't launch that old build I have. This thread would have renewed my interest in the thing, but the time I would spend could definitely be put to other things.

    Does this mean you tried it for Voice Acting and it DOESN'T work, or just that you didn't try it for voice acting yet? I recall getting voice acting edited with no frustration (didn't require hunting down some random tool, I'm pretty sure I just used Audacity), but things may have changed since I did it. I can maybe look into that, if you can't find a way.
     
    Last edited: Dec 28, 2013
  36. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    That should have bounced, strange that it didn't. Care to resend it as a PM on this forum?
    The website should be empty by now anyway. If it wasn't it is now.

    I assumed it does not work because I couldn't find a preset that has a block lenght of exactly 70.
    Will try to make it work.
     
  37. dekillsage

    dekillsage Gloomy EVO Champ 2014

    Beowulf
    Cerebella
    Big Band
  38. 0xFAIL

    0xFAIL Active Member

    Unknown
    Unknown
    Unknown
    You have all known file extensions hidden (for example the name of "convert" is actually "convert.bat" etc.) this is the default setting in Windows.

    You named your file "input.mp3" but because the extension is hidden its name is actually "input.mp3.mp3"

    Solution: remove the .mp3 that you can see (rename input.mp3 to input) and it works.

    ...gonna add that as an annotation
     
    Last edited: Jan 1, 2014
  39. dekillsage

    dekillsage Gloomy EVO Champ 2014

    Beowulf
    Cerebella
    Big Band
    Ahhh okay that makes sense. Thank you it worked :)
     
  40. Woofly

    Woofly Sekh em boys!

    Steam:
    Woofly
    PSN:
    Wooflyples
    Thank you, I have been wanting to switch the music out for awhile now.
     

Share This Page

Facebook:

Users Viewing Thread (Users: 0, Guests: 0)