SkillAgentSearch skills...

CombinedAudioTool

A Tool for CombinedAudio.bin (in-game audio/sounds) for Minecraft for New Nintendo 3DS Edition (MC3DS) with a plethora of Features.

Install / Use

/learn @Cracko298/CombinedAudioTool
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

CombinedAudioTool

  • A Tool for CombinedAudio.bin for Minecraft for New Nintendo 3DS Edition (MC3DS) with a plethora of Features.
  • Only support Windows Platforms Officially, due to being built and made using some Windows API functions.

Feature Set:

  • Extract All FSB Soundbank Files in the Archive.
  • Extract a FSB Soundbank File by Name/Sound-ID.
  • Get File name(s) from Soundbank Files for easier recognition.
  • Rename Extracted files to original filename(s).
  • Rebuild CombinedAudio.bin with new Custom Audio Files.
  • Extract Header from CombinedAudio.bin.
  • Add padding to files automatically (Requires Original Extracted File).
  • Collect all Sound Names/ID's.
  • Rename all Segments to Original Filenames.
  • Grab Segment File Sizes individually, or altogether.
  • Updating your Script as new features become avaliable.
  • Extract Audio from FSB Files (now including GCADPCM FSB Soundbank Files).
  • Convert *.wav back into GCADPCM/DSADPCM.
  • Restore CATool File Integrity.
  • Encode Minecraft 3DS Music Files from Wave Files.
  • Convert any Audio Filetype to Wave (requires FFMPEG).
  • Install FFMPEG via Command Line.
  • Add your own Custom Audio/Ambience/SFX to Minecraft 3DS.
  • Get MetaData from CombinedAudio.bin Archive.
  • Change between Interleaved/Flat/Weaved for SegmentFile.

Download(s):

  • Download Here.
  • Requires Python 3.8+ and Python STD (Installed alongside Python).

Usage:


THIS IS A COMMAND LINE TOOL! YOU MUST USE POWERSHELL (or) CMD PROMPT TO USE. 

    python CATool.py
       --eca,  extract-ca     [CombinedAudioPATH]                            > Extracts All FSB Soundbank Files from the CombinedAudio.bin Archive.
       --fn,   find-sn        [SegmentFilePATH]                              > Find the Segment Name from an Extracted FSB Soundbank File via --eca Flag.
       --rs,   rename-s       [SegmentFilePATH]                              > Rename a Segment File FSB Soundbank File back to it's Original Filename.
       --gh,   get-header     [CombinedAudioPATH]                            > Extracts the Header from the CombinedAudio.bin Archive.
       --rca,  rebuild-ca     [SegmentOutFolderPATH]                         > Rebuilds the CombinedAudio.bin Archive via Segment Files.
       --ap,   add-padding    [OriginalFilePATH]       [ModifiedFilePATH]    > Adds padding to set the Modified File Equal to the Original File Size.
       --ne,   name-extract   [CombinedAudioPATH]      [Sound Name/ID]       > Extracts a FSB Soundbank File from the CombinedAudio.bin Archive via Name/SoundID.
       --ra,   rename-all     [SegmentFolderPATH]                            > Renames all Segment Files back to their original FSB Soundbank Filename(s).
       --gsid, get-soundid    [CombinedAudioPATH]                            > Gets all Sound Names/ID's and Dumps them to a *.txt File.
       --gssg, get-size-seg   [SegmentFilePATH]                              > Gets the size of a specific Segment Soundbank FSB File.
       --gs,   get-size       [SegmentOutFolderPATH]                         > Gets the size of all Segment Soundbank FSB Files.
       --exa,  extract-seg    [SegmentFilePATH]                              > Attempts to extract Audio from Segment Soundbank FSB Files.
       --cwav, convert-wave   [SegmentFilePATH]        [FileToConvertPATH]   > Convert Custom Audio to Nintendo 'GCADPCM'/'DSADPCM' Format (*.dsp).
       --pa,   play-audio     [WaveFilePATH]                                 > Play Audio from a Wave-File.
       --gmsc, generate-music [WaveFilePATH]                                 > Generates a Valid Music FSB Soundbank File for Minecraft 3DS Edition from a Wave File.
       --atw,  to-wave        [AudioFileToConvertToWavPATH]                  > Convert basically any Audio format like *.fsb, *.dsp or Formats like *.mp3 to Wave Format.
       --impg, inst-ffmpeg                                                   > Install FFMPEG to '.\extrcd\mpg\bin'.
       --efrw, ext-fsb-raw    [SegmentFilePATH]                              > Extracts the raw GCADPCM/DSPADPCM Audio from an *.fsb Soundbank File.
       --edrw, ext-dsp-raw    [GeneratedDspFilePATH]                         > Extracts the raw GCADPCM/DSPADPCM Audio from a Nintendo *.dsp Audio File.
       --rsnd, replace-snd    [SegmentFilePATH]        [DspFilePATH]         > Convert Nintendo *.dsp Audio File to *.fsb Soundbank File.
       --gmtd, get-metadata   [CombinedAudioPATH]                            > Get info such as Header-Size, Number of Audio Files, and if the CombinedAudio.bin Archive has been Modified.
       --chmd, change-mode    [SegmentFilePATH]        [Integer (0-2)]       > Change the Mode the File is Played (interleaved, flat, and weaved). *May Enhance or Denhance the SFX.
       --upd,  update                                                        > Updates From Current Version to the Latest Version of 'CATool.py'.
       --rstr, restore                                                       > Basically an Emergancy Version of '--upd' that Wipes all Files from CATool and Reinstalls them.
       --h,    help                                                          > Displays this Message.

Help Message:

python CATool.py --h

image

Sound ID's

thunder1 - segment_0.fsb
thunder2 - segment_1.fsb
explode1 - segment_2.fsb
explode2 - segment_3.fsb
rain1 - segment_4.fsb
rain2 - segment_5.fsb
shimmerblock - segment_6.fsb
fire_crackle2 - segment_7.fsb
add_item1 - segment_8.fsb
add_item2 - segment_9.fsb
add_item3 - segment_10.fsb
break1 - segment_11.fsb
break2 - segment_12.fsb
place1 - segment_13.fsb
place2 - segment_14.fsb
remove_item1 - segment_15.fsb
remove_item2 - segment_16.fsb
rotate_item1 - segment_17.fsb
rotate_item2 - segment_18.fsb
death1 - segment_19.fsb
death3 - segment_20.fsb
grow1 - segment_21.fsb
grow4 - segment_22.fsb
empty_lava1 - segment_23.fsb
empty_lava2 - segment_24.fsb
empty1 - segment_25.fsb
empty2 - segment_26.fsb
fill_lava1 - segment_27.fsb
fill_lava2 - segment_28.fsb
fill1 - segment_29.fsb
fill2 - segment_30.fsb
splash - segment_31.fsb
fallbig - segment_32.fsb
fallsmall - segment_33.fsb
weak1 - segment_34.fsb
weak2 - segment_35.fsb
weak3 - segment_36.fsb
hit1 - segment_37.fsb
hit2 - segment_38.fsb
hit3 - segment_39.fsb
cloth1 - segment_40.fsb
cloth2 - segment_41.fsb
cloth3 - segment_42.fsb
grass1 - segment_43.fsb
grass2 - segment_44.fsb
grass3 - segment_45.fsb
gravel1 - segment_46.fsb
gravel2 - segment_47.fsb
gravel3 - segment_48.fsb
sand1 - segment_49.fsb
sand2 - segment_50.fsb
sand3 - segment_51.fsb
snow1 - segment_52.fsb
snow2 - segment_53.fsb
snow3 - segment_54.fsb
stone1 - segment_55.fsb
stone2 - segment_56.fsb
stone3 - segment_57.fsb
wood1 - segment_58.fsb
wood2 - segment_59.fsb
wood3 - segment_60.fsb
in - segment_61.fsb
out - segment_62.fsb
fire - segment_63.fsb
ignite - segment_64.fsb
lava - segment_65.fsb
lavapop - segment_66.fsb
water - segment_67.fsb
base - segment_68.fsb
death - segment_69.fsb
hurt1 - segment_70.fsb
hurt2 - segment_71.fsb
hurt3 - segment_72.fsb
idle1 - segment_73.fsb
idle2 - segment_74.fsb
idle3 - segment_75.fsb
takeoff - segment_76.fsb
breathe1 - segment_77.fsb
breathe2 - segment_78.fsb
death - segment_79.fsb
hit1 - segment_80.fsb
hit2 - segment_81.fsb
hit3 - segment_82.fsb
fireball4 - segment_83.fsb
hurt1 - segment_84.fsb
hurt2 - segment_85.fsb
plop - segment_86.fsb
say1 - segment_87.fsb
say2 - segment_88.fsb
say3 - segment_89.fsb
step1 - segment_90.fsb
step2 - segment_91.fsb
hurt1 - segment_92.fsb
hurt2 - segment_93.fsb
hurt3 - segment_94.fsb
say1 - segment_95.fsb
say2 - segment_96.fsb
say3 - segment_97.fsb
step1 - segment_98.fsb
step2 - segment_99.fsb
step3 - segment_100.fsb
milk1 - segment_101.fsb
death - segment_102.fsb
say1 - segment_103.fsb
say2 - segment_104.fsb
say3 - segment_105.fsb
death - segment_106.fsb
hit1 - segment_107.fsb
hit2 - segment_108.fsb
hit3 - segment_109.fsb
idle1 - segment_110.fsb
idle2 - segment_111.fsb
idle3 - segment_112.fsb
portal - segment_113.fsb
portal2 - segment_114.fsb
scream1 - segment_115.fsb
scream2 - segment_116.fsb
scream3 - segment_117.fsb
stare - segment_118.fsb
hit1 - segment_119.fsb
hit2 - segment_120.fsb
wings1 - segment_121.fsb
wings3 - segment_122.fsb
wings5 - segment_123.fsb
growl2 - segment_124.fsb
growl3 - segment_125.fsb
affectionate_scream - segment_126.fsb
charge - segment_127.fsb
death - segment_128.fsb
moan1 - segment_129.fsb
moan2 - segment_130.fsb
moan3 - segment_131.fsb
scream1 - segment_132.fsb
scream2 - segment_133.fsb
scream3 - segment_134.fsb
ambient1 - segment_135.fsb
attack_loop - segment_136.fsb
curse - segment_137.fsb
elder_death - segment_138.fsb
elder_hit1 - segment_139.fsb
elder_idle3 - segment_140.fsb
flop1 - segment_141.fsb
guardian_death - segment_142.fsb
NULL_0 - segment_143.fsb
land_death - segment_144.fsb
land_hit1 - segment_145.fsb
land_idle1 - segment_146.fsb
angry1 - segment_147.fsb
death1 - segment_148.fsb
death2 - segment_149.fsb
idle1 - segment_150.fsb
idle2 - segment_151.fsb
idle3 - segment_152.fsb
idle4 - segment_153.fsb
idle5 - segment_154.fsb
spit1 - segment_155.fsb
spit2 - segment_156.fsb
hurt1 - segment_157.fsb
hurt2 - segment_158.fsb
hurt3 - segment_159.fsb
eat1 - segment_160.fsb
eat2 - segment_161.fsb
eat3 - segment_162.fsb
step1 - segment_163.fsb
step2 - segment_164.fsb
step3 - segment_165.fsb
step4 - segment_166.fsb
step5 - segment_167.fsb
swag - segment_168.fsb
angry1 - segment_169.fsb
armor - segment_170.fsb
breathe1 - segment_171.fsb
breathe2 - segment_172.fsb
breathe3 - segment_173.fsb
death - segment_174.fsb
angry1 - segment_175.fsb
angry2 - segment_176.fsb
death - segment_177.fsb
hit1 - segment_178.fsb
hit2 - segment_179.fsb
hit3 - segment_180.fsb
idle1 - segment_181.fsb
idle2 - segment_182.fsb
idle3 - segment_183.fsb
eat1 - segm
View on GitHub
GitHub Stars11
CategoryContent
Updated1y ago
Forks2

Languages

Python

Security Score

80/100

Audited on Mar 26, 2025

No findings