Difference between revisions of "Modding:Audio"

From Stardew Valley Wiki
Jump to navigation Jump to search
(→‎Track list: add decimal soundbank index)
(Added example mod creation instructions)
Line 21: Line 21:
 
! Tool name !! Platforms supported !! Features !! Notes
 
! Tool name !! Platforms supported !! Features !! Notes
 
|-
 
|-
| {{github|mariodon/unxwb|unxwb}} || Windows, macOS || Extracts an XWB soundbank into .wav files and hex codes || A straightforward open and extract utility.
+
| {{github|mariodon/unxwb|unxwb}} || Windows, macOS || Extracts an XWB soundbank into .wav files and hex codes. || A straightforward open and extract utility.
 
|-
 
|-
| [https://www.vgmstream.org/downloads VGMStream] plugin for [https://www.foobar2000.org/ foobar2000] sound player || Windows || Views XWB soundbanks with integer codes and many in-game codes included in filenames || Very convenient file browser. (For some reason, it increments audio IDs by 1, and each audio cue is looped.)
+
| [https://www.vgmstream.org/downloads VGMStream] plugin for [https://www.foobar2000.org/ foobar2000] sound player || Windows || Views XWB soundbanks with integer codes and many in-game codes included in filenames. || Very convenient file browser. (For some reason, it increments audio IDs by 1, and each audio cue is looped.)
 
|-
 
|-
 
| [https://shrinefox.com/browse?post=xacttool XACTTool] || Windows || Extracts an XWB soundbank into .wav files and integer codes. Can also manipulate soundbanks. || Command-line only.
 
| [https://shrinefox.com/browse?post=xacttool XACTTool] || Windows || Extracts an XWB soundbank into .wav files and integer codes. Can also manipulate soundbanks. || Command-line only.
Line 30: Line 30:
 
See the [[#Track list|full track list]] below.
 
See the [[#Track list|full track list]] below.
  
===Changing music and sounds===
+
===Changing existing music and sounds===
 +
====Intro to JSON====
 +
You'll notice a lot of files with <tt>.json</tt> at the end of the name when creating mods for Stardew Valley. That means they're formatted as JSON, which is just a way of writing text that's readable to code. If you haven't used JSON before, reading ''[https://towardsdatascience.com/an-introduction-to-json-c9acb464f43e An Introduction to JSON]'' first will be very helpful to understand what the files are doing.
  
TODO
+
====Create an example mod====
 +
To get a basic content pack up and running:
 +
<ol>
 +
<li>Install [https://smapi.io/ SMAPI] and {{nexus mod|3043|Custom Music}}.</li>
 +
<li>If desired, [[#Soundbank files|extract the soundbank]] to listen to the in game sounds.</li>
 +
<li>[[Modding:Content packs#Create a content pack|Create a SMAPI content pack per step 3 of the general Create a Content Pack page]].</li>
 +
<li>Create a <tt>content.json</tt> file in the same folder with this content:</li>
 +
{{#tag:syntaxhighlight|
 +
{
 +
    "Music" : [
 +
    ]
 +
}|lang=javascript}}
 +
 
 +
If you did everything correctly so far, you should see the new mod under "Loaded X content packs" in the SMAPI console. (If not, review the above steps or [[Modding:Community|ask for help]].)
  
 
==Managing audio in SMAPI==
 
==Managing audio in SMAPI==

Revision as of 01:54, 20 October 2021

Index

Axe.png
Article Stub

This article is marked as a stub for the following reason:

  • add info about Custom Music, C# audio loading/playing

This page explains how to use and edit audio/music in Stardew Valley 1.5.5 and onwards. This is an advanced guide for modders.

Managing audio in Custom Music content packs

What is Custom Music?

Custom Music is a content framework for changing and adding music and sounds, without writing or changing game files or code. You use it by creating a content pack (basically a folder) with a couple of JSON files (basically text).

Soundbank files

All audio content is stored within Content/XACT in the form of soundbanks, which store all of the game's sounds and music. The two soundbank files available are Wave Bank(1.4).xwb and Wave Bank.xwb.

If desired, audio files can be extracted and browsed with an XWB extractor:

XNB Extractors
Tool name Platforms supported Features Notes
unxwb Windows, macOS Extracts an XWB soundbank into .wav files and hex codes. A straightforward open and extract utility.
VGMStream plugin for foobar2000 sound player Windows Views XWB soundbanks with integer codes and many in-game codes included in filenames. Very convenient file browser. (For some reason, it increments audio IDs by 1, and each audio cue is looped.)
XACTTool Windows Extracts an XWB soundbank into .wav files and integer codes. Can also manipulate soundbanks. Command-line only.

See the full track list below.

Changing existing music and sounds

Intro to JSON

You'll notice a lot of files with .json at the end of the name when creating mods for Stardew Valley. That means they're formatted as JSON, which is just a way of writing text that's readable to code. If you haven't used JSON before, reading An Introduction to JSON first will be very helpful to understand what the files are doing.

Create an example mod

To get a basic content pack up and running:

  1. Install SMAPI and Custom Music.
  2. If desired, extract the soundbank to listen to the in game sounds.
  3. Create a SMAPI content pack per step 3 of the general Create a Content Pack page.
  4. Create a content.json file in the same folder with this content:
  5. {
        "Music" : [
        ]
    }
    

    If you did everything correctly so far, you should see the new mod under "Loaded X content packs" in the SMAPI console. (If not, review the above steps or ask for help.)

    Managing audio in SMAPI

    Here is a reference chart for sound methods which you can use for various cases:

    Singleplayer and multiplayer sound functions
    Singleplayer only name Multiplayer equivalent Use case
    Game1.playSound N/A UI and menu sounds; playing a sound for one player only
    GameLocation.localSound GameLocation.playSound For any in-game interactions on specific maps only
    GameLocation.localSoundAt GameLocation.playSoundAt For playing spatial sounds in specific tiles or coordinates, which change volume and location based on player proximity
    Game1.playSoundPitched GameLocation.playSoundPitched For playing any sounds at a different pitch than the original sound
    DelayedAction.playSoundAfterDelay N/A For playing sounds after a specific period of time has passed

    Playing client-side sounds

    Game1.playSound
    You can play a sound for the current player only, played from no specific location, by calling the Game1.playSound() method. For example:
    // For UI elements, such as when the player crafts a new item.
    Game1.playSound("crafting");
    

    This is useful for playing sounds in user interfaces, such as menus, where you don't need to play the sound from any particular map or player location.

    GameLocation.localSound
    Similarly, you can play a sound for the current player only, played from a specific map, by calling the GameLocation.localSound() method:
    // For playing sounds in specific maps, such as a shipping bin on a farm.
    if (this.shippingBinLid.pingPongMotion != 1 && Game1.currentLocation.Equals(this.farm))
    {
        this.farm.localSound("doorCreak");
    }
    

    You can use this to assure that a sound is being played and heard only from a specific map.

    GameLocation.localSoundAt
    This works just like the localSound method, except that it plays spatial audio, and will adjust the played sound's volume and position based on its proximity from the player. Sounds played from GameLocation.localSoundAt() will not be heard if the provided position is off-screen.
    // You can use this method to play sounds
    // that are far from, or close to the player.
    // This is some of the code used for the running sounds, played while riding on a horse.
    public virtual void PerformDefaultHorseFootstep(string step_type)
    {
        // ...
        if (step_type == "Wood")
        {
            if (this.rider.ShouldHandleAnimationSound())
            {
                this.rider.currentLocation.localSoundAt("woodyStep", base.getTileLocation());
            }
        // ...
    
    Game1.playSoundPitched
    If desired, you can pitch shift a sound at intervals of 100 per half step, with 1200 being the pitch of the original sample.
    To play a sound at a higher or lower pitch, for the current player only with no specific location, you can call the Game1.playSoundPitched() method:
    // The singleplayer code for Elliott's piano,
    // located in his cabin.
    switch (key)
    {
      case 1:
        this.playSoundPitched("toyPiano", 1100);
        break;
      case 2:
        this.playSoundPitched("toyPiano", 1500);
        break;
      case 3:
        this.playSoundPitched("toyPiano", 1600);
        break;
      case 4:
        this.playSoundPitched("toyPiano", 1800);
        break;
    }
    
    DelayedAction.playSoundAfterDelay
    Sometimes, you need to play a sound after waiting a certain period of time, for the current player at no particular location. In this case, you can call the DelayedAction.playSoundAfterDelay() method:
    // During a lightning storm, if the random chance is met,
    // the screen will flash, and then
    // a distant lightning strike sound will play after a
    // randomly generated duration of time in milliseconds
    if (Game1.random.NextDouble() < 0.5)
      DelayedAction.screenFlashAfterDelay((float) (0.3 + Game1.random.NextDouble()), Game1.random.Next(500, 1000));
    DelayedAction.playSoundAfterDelay("thunder_small", Game1.random.Next(500, 1500));
    // ...
    

    You can also change the sound's pitch with this function, or call this function several times at once to call them in a predetermined order:

    // When using the phone that is purchasable from the Carpenter's Shop,
    // it will play a specific sequence of dial beeps at predetermined times:
    private void playShopPhoneNumberSounds(string whichShop)
    {
      Random random = new Random(whichShop.GetHashCode());
      DelayedAction.playSoundAfterDelay("telephone_dialtone", 495, pitch: 1200);
      DelayedAction.playSoundAfterDelay("telephone_buttonPush", 1200, pitch: (1200 + random.Next(-4, 5) * 100));
      DelayedAction.playSoundAfterDelay("telephone_buttonPush", 1370, pitch: (1200 + random.Next(-4, 5) * 100));
      DelayedAction.playSoundAfterDelay("telephone_buttonPush", 1600, pitch: (1200 + random.Next(-4, 5) * 100));
      DelayedAction.playSoundAfterDelay("telephone_buttonPush", 1850, pitch: (1200 + random.Next(-4, 5) * 100));
      DelayedAction.playSoundAfterDelay("telephone_buttonPush", 2030, pitch: (1200 + random.Next(-4, 5) * 100));
      DelayedAction.playSoundAfterDelay("telephone_buttonPush", 2250, pitch: (1200 + random.Next(-4, 5) * 100));
      DelayedAction.playSoundAfterDelay("telephone_buttonPush", 2410, pitch: (1200 + random.Next(-4, 5) * 100));
      DelayedAction.playSoundAfterDelay("telephone_ringingInEar", 3150);
    }
    

    Playing multiplayer sounds

    The methods in this section will let you play sounds across different clients in a multiplayer game.
    Sounds played with multiplayer methods will run in singleplayer as well as multiplayer.

    GameLocation.playSound
    This method will play a sound for all players located on the same map, but not from a particular position:
    // When a player places a new structure, a sound will be played
    // for the players that are at the same location,
    // ie. on the farm.
    public virtual void performActionOnConstruction(GameLocation location)
    {
        this.load();
        location.playSound("axchop");
        // ...
    
    GameLocation.playSoundAt
    Like localSoundAt, this method can be used to play sounds spatially at a specific map and location, and will adjust the played sound's volume and position based on its proximity from a nearby player. A player will not hear any sound played from the GameLocation.playSoundAt() method if the provided position is off-screen:
    // The sound code for when Clint is metalworking in the Blacksmith.
    private void clintHammerSound(Farmer who)
    {
        base.currentLocation.playSoundAt("hammer", base.getTileLocation());
    }
    
    GameLocation.playSoundPitched
    Like Game1.playSoundPitched, you can repitch sounds by providing a pitch from 0 to 2400, with intervals of 100 between every half step. However, with the GameLocation.playSoundPitched function, you must specify a map location to play the sound in, which any player in that location will hear.

    Track list

    These are the raw soundbank IDs for music and sounds exported from the game data (see the talk page for the export code).

    A few notes about the table columns:

    • The name is what you'd use in-game (e.g. with the Music map property or the Game1.changeMusicTrack method). When a name is repeated with different soundbank IDs, the game will choose a random sound each time you play it.
    • The wavebank indicates whether the audio is from Content/XACT/Wave Bank.xwb or Content/XACT/Wave Bank(1.4).xwb. Each wavebank has its own set of soundbank IDs, but names don't overlap.
    • The soundtrack index is the sound's position in the soundbank. The hexadecimal version matches the track's filename if you unpack the wavebank using unxwb.
    • The description column is filled in manually for the wiki.

    Footsteps

    name wavebank soundbank index description
    decimal hexadecimal
    Cowboy_Footstep Wavebank 269 0000010d Mainly used as the footstep sound for pets, in Prairie King, and as a hover sound in various menus (including the title screen buttons).
    grassyStep Wavebank 22 00000016 Mainly used as the player footstep sound on grass tiles, when adding hay to a silo, when changing a player's hat or hairstyle, and for rustling bushes in Lewis and Marnie's six-heart event.
    sandyStep Wavebank 16 00000010
    snowyStep Wavebank 340 00000154
    stoneStep Wavebank 23 00000017
    thudStep Wavebank 24 00000018
    woodyStep Wavebank 29 0000001d

    Music

    name wavebank soundbank index description
    decimal hexadecimal
    50s Wavebank 45 0000002d
    AbigailFlute Wavebank 279 00000117
    AbigailFluteDuet Wavebank 280 00000118
    aerobics Wavebank 55 00000037
    archaeo Wavebank 0 00000000
    bigDrums Wavebank 172 000000ac
    breezy Wavebank 281 00000119
    caldera Wavebank 383 0000017f
    Cavern Wavebank 65 00000041
    christmasTheme Wavebank 305 00000131
    Cloth Wavebank 67 00000043
    CloudCountry Wavebank 190 000000be
    clubloop Wavebank 102 00000066
    cowboy_boss Wavebank 267 0000010b
    cowboy_outlawsong Wavebank 277 00000115
    Cowboy_OVERWORLD Wavebank 261 00000105
    Cowboy_singing Wavebank 262 00000106
    Cowboy_undead Wavebank 270 0000010e
    crane_game Wavebank(1.4) 12 0000000c
    crane_game_fast Wavebank(1.4) 13 0000000d
    Crystal Bells Wavebank 64 00000040
    Cyclops Wavebank 124 0000007c
    desolate Wavebank 40 00000028
    distantBanjo Wavebank 347 0000015b
    EarthMine Wavebank 64 00000040
    EarthMine Wavebank 65 00000041
    EarthMine Wavebank 66 00000042
    echos Wavebank 49 00000031
    elliottPiano Wavebank 295 00000127
    EmilyDance Wavebank 357 00000165
    EmilyDream Wavebank 358 00000166
    EmilyTheme Wavebank 359 00000167
    end_credits Wavebank 403 00000193
    event1 Wavebank 299 0000012b
    event2 Wavebank 302 0000012e
    fall1 Wavebank 121 00000079
    fall2 Wavebank 119 00000077
    fall3 Wavebank 120 00000078
    fallFest Wavebank 304 00000130
    fieldofficeTentMusic Wavebank 375 00000177
    FlowerDance Wavebank 301 0000012d
    FrogCave Wavebank 387 00000183
    FrostMine Wavebank 67 00000043
    FrostMine Wavebank 68 00000044
    FrostMine Wavebank 69 00000045
    Ghost Synth Wavebank 119 00000077
    grandpas_theme Wavebank 336 00000150
    gusviolin Wavebank 297 00000129
    harveys_theme_jazz Wavebank(1.4) 4 00000004
    heavy Wavebank 51 00000033
    honkytonky Wavebank 52 00000034
    Icicles Wavebank 68 00000044
    IslandMusic Wavebank 374 00000176
    jaunty Wavebank 41 00000029
    junimoKart Wavebank(1.4) 20 00000014
    junimoKart_ghostMusic Wavebank(1.4) 0 00000000
    junimoKart_mushroomMusic Wavebank(1.4) 21 00000015
    junimoKart_slimeMusic Wavebank(1.4) 22 00000016
    junimoKart_whaleMusic Wavebank(1.4) 1 00000001
    junimoStarSong Wavebank 308 00000134
    kindadumbautumn Wavebank 282 0000011a
    LavaMine Wavebank 72 00000048
    LavaMine Wavebank 73 00000049
    LavaMine Wavebank 198 000000c6
    LavaMine Wavebank 215 000000d7
    libraryTheme Wavebank 341 00000155
    MainTheme Wavebank 335 0000014f
    Majestic Wavebank 121 00000079
    MarlonsTheme Wavebank 349 0000015d
    marnieShop Wavebank 180 000000b4
    mermaidSong Wavebank 362 0000016a
    moonlightJellies Wavebank 303 0000012f
    movie_classic Wavebank(1.4) 7 00000007
    movie_nature Wavebank(1.4) 8 00000008
    movie_wumbus Wavebank(1.4) 9 00000009
    movieTheater Wavebank(1.4) 10 0000000a
    movieTheaterAfter Wavebank(1.4) 11 0000000b
    musicboxsong Wavebank 44 0000002c
    Near The Planet Core Wavebank 72 00000048
    New Snow Wavebank 126 0000007e
    night_market Wavebank 364 0000016c
    Of Dwarves Wavebank 73 00000049
    Orange Wavebank 122 0000007a
    Overcast Wavebank 215 000000d7
    Pink Petals Wavebank 93 0000005d
    PIRATE_THEME Wavebank 390 00000186
    PIRATE_THEME(muffled) Wavebank 390 00000186
    playful Wavebank 278 00000116
    Plums Wavebank 120 00000078
    poppy Wavebank 53 00000035
    ragtime Wavebank 46 0000002e
    sad_kid Wavebank 389 00000185
    sadpiano Wavebank 47 0000002f
    Saloon1 Wavebank 350 0000015e
    sam_acoustic1 Wavebank(1.4) 2 00000002
    sam_acoustic2 Wavebank(1.4) 3 00000003
    sampractice Wavebank 50 00000032
    sappypiano Wavebank 43 0000002b
    Secret Gnomes Wavebank 66 00000042
    SettlingIn Wavebank 192 000000c0
    shaneTheme Wavebank 361 00000169
    shimmeringbastion Wavebank 54 00000036
    spaceMusic Wavebank 285 0000011d
    spirits_eve Wavebank 334 0000014e
    spring1 Wavebank 93 0000005d
    spring2 Wavebank 91 0000005b
    spring3 Wavebank 92 0000005c
    springsongs Wavebank 91 0000005b
    springsongs Wavebank 92 0000005c
    springsongs Wavebank 93 0000005d
    springtown Wavebank 94 0000005e
    Stadium_ambient Wavebank 356 00000164
    starshoot Wavebank 42 0000002a
    submarine_song Wavebank 366 0000016e
    summer1 Wavebank 122 0000007a
    summer2 Wavebank 123 0000007b
    summer3 Wavebank 115 00000073
    SunRoom Wavebank(1.4) 17 00000011
    sweet Wavebank 144 00000090
    tickTock Wavebank 300 0000012c
    tinymusicbox Wavebank 296 00000128
    title_night Wavebank 127 0000007f
    tribal Wavebank 198 000000c6
    Tropical Jam Wavebank 115 00000073
    VolcanoMines Wavebank 382 0000017e
    VolcanoMines Wavebank 384 00000180
    VolcanoMines1 Wavebank 382 0000017e
    VolcanoMines2 Wavebank 384 00000180
    wavy Wavebank 95 0000005f
    wedding Wavebank 104 00000068
    winter1 Wavebank 126 0000007e
    winter2 Wavebank 124 0000007c
    winter3 Wavebank 125 0000007d
    WizardSong Wavebank 321 00000141
    woodsTheme Wavebank 216 000000d8
    XOR Wavebank 69 00000045

    Music (ambient)

    name wavebank soundbank index description
    decimal hexadecimal
    babblingBrook Wavebank 343 00000157
    bugLevelLoop Wavebank 169 000000a9
    communityCenter Wavebank 307 00000133
    cracklingFire Wavebank 342 00000156
    darkCaveLoop Wavebank 168 000000a8
    fall_day_ambient Wavebank 338 00000152
    Frost_Ambient Wavebank 200 000000c8
    heavyEngine Wavebank 344 00000158
    Hospital_Ambient Wavebank 283 0000011b
    jojaOfficeSoundscape Wavebank 337 00000151
    jungle_ambience Wavebank 371 00000173
    Lava_Ambient Wavebank 201 000000c9
    movieScreenAmbience Wavebank(1.4) 6 00000006
    nightTime Wavebank 224 000000e0
    ocean Wavebank 175 000000af
    pool_ambient Wavebank 288 00000120
    rain Wavebank 116 00000074
    roadnoise Wavebank 189 000000bd
    spring_day_ambient Wavebank 179 000000b3
    spring_night_ambient Wavebank 345 00000159
    summer_day_ambient Wavebank 339 00000153
    tropical_island_day_ambient Wavebank 376 00000178
    Upper_Ambient Wavebank 199 000000c7
    Volcano_Ambient Wavebank 377 00000179
    wind Wavebank 85 00000055
    winter_day_ambient Wavebank 354 00000162

    Sound

    name wavebank soundbank index description
    decimal hexadecimal
    achievement Wavebank 103 00000067
    axchop Wavebank 141 0000008d
    axe Wavebank 1 00000001
    backpackIN Wavebank 133 00000085
    barrelBreak Wavebank 310 00000136
    batFlap Wavebank 170 000000aa
    batScreech Wavebank 171 000000ab
    bigDeSelect Wavebank 2 00000002
    bigSelect Wavebank 3 00000003
    bob Wavebank 30 0000001e
    boop Wavebank 98 00000062
    boop Wavebank 99 00000063
    boop Wavebank 100 00000064
    boop Wavebank 101 00000065
    boulderBreak Wavebank 238 000000ee
    boulderCrack Wavebank 4 00000004
    breakingGlass Wavebank 284 0000011c
    breathin Wavebank 84 00000054
    breathout Wavebank 83 00000053
    bubbles Wavebank 235 000000eb
    bubbles Wavebank 236 000000ec
    busDoorOpen Wavebank 191 000000bf
    busDriveOff Wavebank 309 00000135
    button1 Wavebank 250 000000fa
    cacklingWitch Wavebank 323 00000143
    camel Wavebank(1.4) 23 00000017
    cameraNoise Wavebank 292 00000124
    cancel Wavebank 353 00000161
    cast Wavebank 246 000000f6
    cat Wavebank 332 0000014c
    cat Wavebank 333 0000014d
    cavedrip Wavebank 129 00000081
    clam_tone Wavebank 363 0000016b
    clank Wavebank 173 000000ad
    clank Wavebank 203 000000cb
    clank Wavebank 203 000000cb
    clank Wavebank 204 000000cc
    clank Wavebank 205 000000cd
    clank Wavebank 205 000000cd
    clubhit Wavebank 159 0000009f
    clubSmash Wavebank 174 000000ae
    clubswipe Wavebank 160 000000a0
    cluck Wavebank 31 0000001f
    cluck Wavebank 32 00000020
    cluck Wavebank 33 00000021
    coin Wavebank 5 00000005
    coldSpell Wavebank 197 000000c5
    cow Wavebank 80 00000050
    cow Wavebank 81 00000051
    cow Wavebank 82 00000052
    cowboy_dead Wavebank 268 0000010c
    cowboy_explosion Wavebank 276 00000114
    cowboy_gopher Wavebank 275 00000113
    cowboy_gunload Wavebank 272 00000110
    Cowboy_gunshot Wavebank 266 0000010a
    Cowboy_monsterDie Wavebank 264 00000108
    Cowboy_monsterDie Wavebank 265 00000109
    cowboy_monsterhit Wavebank 274 00000112
    cowboy_powerup Wavebank 271 0000010f
    Cowboy_Secret Wavebank 263 00000107
    crafting Wavebank 36 00000024
    crane Wavebank(1.4) 14 0000000e
    crickets Wavebank 117 00000075
    cricketsAmbient Wavebank 346 0000015a
    crit Wavebank 352 00000160
    croak Wavebank 138 0000008a
    crow Wavebank 324 00000144
    crystal Wavebank 143 0000008f
    cut Wavebank 6 00000006
    daggerswipe Wavebank 163 000000a3
    death Wavebank 70 00000046
    debuffHit Wavebank 151 00000097
    debuffSpell Wavebank 152 00000098
    detector Wavebank 37 00000025
    dialogueCharacter Wavebank 7 00000007
    dialogueCharacterClose Wavebank 8 00000008
    dirtyHit Wavebank 243 000000f3
    dirtyHit Wavebank 244 000000f4
    discoverMineral Wavebank 208 000000d0
    distantTrain Wavebank 220 000000dc
    distantTrain Wavebank 221 000000dd
    dog_bark Wavebank 331 0000014b
    dog_pant Wavebank 330 0000014a
    dogs Wavebank 228 000000e4
    dogWhining Wavebank 316 0000013c
    doorClose Wavebank 9 00000009
    doorCreak Wavebank 319 0000013f
    doorCreakReverse Wavebank 322 00000142
    doorOpen Wavebank 320 00000140
    dropItemInWater Wavebank 10 0000000a
    drumkit0 Wavebank 110 0000006e
    drumkit1 Wavebank 111 0000006f
    drumkit2 Wavebank 108 0000006c
    drumkit3 Wavebank 107 0000006b
    drumkit4 Wavebank 109 0000006d
    drumkit5 Wavebank 106 0000006a
    drumkit6 Wavebank 105 00000069
    Duck Wavebank 231 000000e7
    Duggy Wavebank 60 0000003c
    dustMeep Wavebank 186 000000ba
    DwarvishSentry Wavebank 386 00000182
    dwoop Wavebank 34 00000022
    dwop Wavebank 234 000000ea
    eat Wavebank 25 00000019
    explosion Wavebank 35 00000023
    fallDown Wavebank 318 0000013e
    fastReel Wavebank 248 000000f8
    fireball Wavebank 71 00000047
    fishBite Wavebank 26 0000001a
    fishBite_alternate_0 Wavebank 398 0000018e
    fishBite_alternate_1 Wavebank 397 0000018d
    fishBite_alternate_2 Wavebank 396 0000018c
    fishEscape Wavebank 253 000000fd
    FishHit Wavebank 251 000000fb
    fishingRodBend Wavebank 254 000000fe
    fishingRodBend Wavebank 255 000000ff
    fishingRodBend Wavebank 256 00000100
    fishSlap Wavebank 260 00000104
    flameSpell Wavebank 150 00000096
    flameSpellHit Wavebank 149 00000095
    flute Wavebank 112 00000070
    flybuzzing Wavebank 164 000000a4
    frozen Wavebank 394 0000018a
    furnace Wavebank 38 00000026
    fuse Wavebank 48 00000030
    getNewSpecialItem Wavebank 223 000000df
    ghost Wavebank 11 0000000b
    give_gift Wavebank 348 0000015c
    glug Wavebank 325 00000145
    goat Wavebank 78 0000004e
    goat Wavebank 79 0000004f
    goldenWalnut Wavebank 372 00000174
    gorilla_intro Wavebank 388 00000184
    grunt Wavebank 12 0000000c
    gulp Wavebank 239 000000ef
    gulp Wavebank 240 000000f0
    hammer Wavebank 134 00000086
    harvest Wavebank 326 00000146
    healSound Wavebank 196 000000c4
    hitEnemy Wavebank 56 00000038
    hoeHit Wavebank 13 0000000d
    horse_flute Wavebank 395 0000018b
    horse_flute Wavebank 401 00000191
    horse_flute Wavebank 402 00000192
    jingle1 Wavebank 252 000000fc
    junimoKart_coin Wavebank(1.4) 16 00000010
    junimoMeep1 Wavebank 306 00000132
    keyboardTyping Wavebank 293 00000125
    killAnimal Wavebank 233 000000e9
    leafrustle Wavebank 142 0000008e
    magma_sprite_die Wavebank 380 0000017c
    magma_sprite_hit Wavebank 379 0000017b
    magma_sprite_spot Wavebank 381 0000017d
    Meteorite Wavebank 225 000000e1
    Milking Wavebank 230 000000e6
    minecartLoop Wavebank 188 000000bc
    miniharp_note Wavebank(1.4) 5 00000005
    money Wavebank 61 0000003d
    moneyDial Wavebank 237 000000ed
    monkey1 Wavebank 385 00000181
    monsterdead Wavebank 158 0000009e
    mouseClick Wavebank 294 00000126
    newArtifact Wavebank 211 000000d3
    newRecipe Wavebank 214 000000d6
    newRecord Wavebank 213 000000d5
    objectiveComplete Wavebank 132 00000084
    openBox Wavebank 14 0000000e
    openChest Wavebank 161 000000a1
    Ostrich Wavebank 367 0000016f
    ow Wavebank 63 0000003f
    owl Wavebank 227 000000e3
    parrot Wavebank 360 00000168
    parrot_squawk Wavebank 373 00000175
    parry Wavebank 173 000000ad
    phone Wavebank 113 00000071
    Pickup_Coin15 Wavebank 273 00000111
    pickUpItem Wavebank 15 0000000f
    pig Wavebank 130 00000082
    pig Wavebank 131 00000083
    potterySmash Wavebank 147 00000093
    powerup Wavebank 39 00000027
    pullItemFromWater Wavebank 28 0000001c
    purchase Wavebank 145 00000091
    purchase Wavebank 146 00000092
    purchase Wavebank 241 000000f1
    purchaseClick Wavebank 146 00000092
    purchaseRepeat Wavebank 241 000000f1
    qi_shop Wavebank 399 0000018f
    qi_shop_purchase Wavebank 400 00000190
    questcomplete Wavebank 128 00000080
    quickSlosh Wavebank 290 00000122
    quickSlosh Wavebank 291 00000123
    rabbit Wavebank 74 0000004a
    rainsound Wavebank 135 00000087
    rainsound Wavebank 136 00000088
    rainsound Wavebank 137 00000089
    reward Wavebank 212 000000d4
    robotBLASTOFF Wavebank 287 0000011f
    robotSoundEffects Wavebank 286 0000011e
    rockGolemDie Wavebank 166 000000a6
    rockGolemHit Wavebank 167 000000a7
    rockGolemSpawn Wavebank 165 000000a5
    rooster Wavebank 329 00000149
    scissors Wavebank 229 000000e5
    seagulls Wavebank 176 000000b0
    seagulls Wavebank 177 000000b1
    seagulls Wavebank 178 000000b2
    secret1 Wavebank 218 000000da
    seeds Wavebank 17 00000011
    select Wavebank 148 00000094
    sell Wavebank 242 000000f2
    serpentDie Wavebank 315 0000013b
    serpentHit Wavebank 314 0000013a
    sewing_loop Wavebank(1.4) 15 0000000f
    shadowDie Wavebank 194 000000c2
    shadowHit Wavebank 195 000000c3
    shadowpeep Wavebank 18 00000012
    sheep Wavebank 232 000000e8
    shiny4 Wavebank 19 00000013
    Ship Wavebank 96 00000060
    Ship Wavebank 97 00000061
    shwip Wavebank 317 0000013d
    SinWave Wavebank 245 000000f5
    sipTea Wavebank 193 000000c1
    skeletonDie Wavebank 183 000000b7
    skeletonHit Wavebank 184 000000b8
    skeletonStep Wavebank 182 000000b6
    slime Wavebank 57 00000039
    slimedead Wavebank 59 0000003b
    slimedead Wavebank 156 0000009c
    slimedead Wavebank 157 0000009d
    slimeHit Wavebank 185 000000b9
    slingshot Wavebank 207 000000cf
    slosh Wavebank 289 00000121
    slosh Wavebank 290 00000122
    slosh Wavebank 291 00000123
    slowReel Wavebank 247 000000f7
    smallSelect Wavebank 20 00000014
    SpringBirds Wavebank 86 00000056
    SpringBirds Wavebank 87 00000057
    SpringBirds Wavebank 88 00000058
    SpringBirds Wavebank 89 00000059
    SpringBirds Wavebank 90 0000005a
    squid_bubble Wavebank 392 00000188
    squid_hit Wavebank 393 00000189
    squid_move Wavebank 391 00000187
    Stadium_cheer Wavebank 355 00000163
    stairsdown Wavebank 313 00000139
    stardrop Wavebank 351 0000015f
    steam Wavebank 378 0000017a
    stoneCrack Wavebank 75 0000004b
    stoneCrack Wavebank 76 0000004c
    stumpCrack Wavebank 217 000000d9
    submarine_landing Wavebank 365 0000016d
    swordswipe Wavebank 58 0000003a
    swordswipe Wavebank 162 000000a2
    telephone_buttonPush Wavebank 369 00000171
    telephone_dialtone Wavebank 370 00000172
    telephone_ringingInEar Wavebank 368 00000170
    throw Wavebank 187 000000bb
    throwDownITem Wavebank 21 00000015
    thunder Wavebank 114 00000072
    thunder_small Wavebank 327 00000147
    thunder_small Wavebank 328 00000148
    tinyWhip Wavebank 249 000000f9
    toolCharge Wavebank 62 0000003e
    toolSwap Wavebank 27 0000001b
    toyPiano Wavebank 181 000000b5
    trainLoop Wavebank 222 000000de
    trainWhistle Wavebank 219 000000db
    trashbear Wavebank(1.4) 25 00000019
    trashbear_flute Wavebank(1.4) 24 00000018
    trashcan Wavebank 209 000000d1
    trashcanlid Wavebank 210 000000d2
    treecrack Wavebank 140 0000008c
    treethud Wavebank 139 0000008b
    UFO Wavebank 226 000000e2
    wand Wavebank 118 00000076
    warrior Wavebank 206 000000ce
    wateringCan Wavebank 153 00000099
    wateringCan Wavebank 154 0000009a
    wateringCan Wavebank 155 0000009b
    waterSlosh Wavebank 257 00000101
    waterSlosh Wavebank 258 00000102
    waterSlosh Wavebank 259 00000103
    whistle Wavebank 298 0000012a
    woodchipper Wavebank(1.4) 18 00000012
    woodchipper_occasional Wavebank(1.4) 19 00000013
    woodWhack Wavebank 311 00000137
    woodWhack Wavebank 312 00000138
    woodyHit Wavebank 77 0000004d
    yoba Wavebank 202 000000ca

    See also