HornetAudioEditor
A Silksong mod that lets you customize the game's audio with your own .wav files
| Last updated | 2 days ago | 
| Total downloads | 196 | 
| Total rating | 0 | 
| Categories | Cosmetic | 
| Dependency string | AlphaLul-HornetAudioEditor-1.2.0 | 
| Dependants | 0 other packages depend on this package | 
This mod requires the following mods to function
BepInEx-BepInExPack_Silksong
BepInEx modloader. Preconfigured and ready to use.
Preferred version: 5.4.2304README
A Silksong mod that enables users to customize the game's audio with their own .wav audio clips. The mod comes prepackaged with some of Hornet's voice lines from the original Hollow Knight game (including shaw).
Guide
Preface: This mod only allows you to customize audio that uses RandomAudioClipTable internally. Most audio that has multiple, randomly selected clips uses RandomAudioClipTable. To determine what audio is eligible, read the BepInEx Config section below.
Manual Installation
- Install BepInEx 5 for Silksong
 - In your 
BepInEx/pluginsfolder, make a folder calledHornetAudioEditor - Download and extract the mod zip file
 - Move the contents of the 
pluginsfolder to theHornetAudioEditorfolder you created - Move the file in the 
patchersfolder to yourBepInEx/patchersfolder - Run the game
- After running the game, you'll have access to the 
audioCollections.jsonfile in theHornetAudioEditorfolder 
 - After running the game, you'll have access to the 
 
Basic Usage
When fully configured, your HornetAudioEditor folder should look something like this:
HornetAudioEditor/ ├─ Clips/ │ ├─ clip1.wav │ ├─ clip2.wav │ └─ subfolder/ │ ├─ clip3.wav │ └─ clip4.wav ├─ Collection Presets/ │ ├─ preset1.json │ └─ preset2.json ├─ audioCollections.json └─ HornetAudioEditor.dll
Add audio clips
To add audio clips to the mod, place .wav files in the Clips folder or any of its subfolders.
Configure audioCollections.json
To tell the game which folders to use for each audio table, edit the audioCollections.json file.
- Key: name of folder relative to 
Clips- Use an empty string 
""for the baseClipsfolder 
 - Use an empty string 
 - Value: array of names of audio tables that should use the audio from the folder
 
Example:
table1loads audio from the baseClipsfoldertable3andtable4load audio from theClips/subfolderfoldertable2loads audio from both folders
{
  "": [
    "table1",
    "table2"
  ],
  "subfolder": [
    "table2",
    "table3",
    "table4"
  ]
}
Keeping Vanilla Audio
If you want an audio table to keep its original (vanilla) audio alongside the modded audio, add a + in front of the table name.
Example:
table1fully replaces its audio with only the modded audiotable2adds the modded audio while keeping its vanilla audio
{
  "subfolder": [
    "table1",
    "+table2"
  ]
}
Collection Presets
Collection presets are optional .json files stored in the Collection Presets folder. They define preset collections of audio tables that can be referenced in audioCollections.json all at once.
Use these to prevent your audioCollections.json file from getting overcrowded, or to easily share large collections of tables with others.
Example:
preset1.json
[
  "table1",
  "table2",
  "etc"
]
audioCollections.json
- Interpreted the same as 
table1,table2,etc,singletable 
{
  "subfolder": [
    "preset1.json",
    "singletable"
  ]
}
BepInEx Config
A BepInEx config file can be found at BepInEx/config/alphalul.HornetAudioEditor.cfg after running the game once. This file lets you customize some basic settings.
| Setting | Default | Description | 
|---|---|---|
| Enabled | true | Whether the mod is active. Set to false to disable the mod. | 
| LogAudio | false | Whether to log the name of a RandomAudioClipTable when it plays a sound. Useful for finding table names. | 
| RefreshOnSaveQuit | true | Whether to re-apply audioCollections.json upon returning to the title screen. | 
⚠️ Finding audio table names
To use LogAudio properly, you need to enable the BepInEx console to read the logs in real time. To do so:
- Open 
BepInEx/config/BepInEx.cfg - Find the 
[Logging.Console]section - Set 
Enabled = true 
This launches a console window alongside the game that displays logs. Now, if you set LogAudio to true, you'll see the name of any RandomAudioClipTable in the console whenever it plays a sound, allowing you to tell which name goes with which sounds.
⚠️ Important note
Mono channel .wav files seem to play quieter than stereo ones. If your clips are sounding quieter than expected, consider converting them to stereo in an audio editor like Audacity by re-exporting them with stereo selected in the export options.