How to make a simple SFX replacement mod
This guide will teach you how to make a simple SFX replacement for any given skill.
Step 0: What you need
There are three main things you will need to create a SFX mod.
Firstly, you will need XIVLauncher for Dalamud and access to plugins.
Secondly, you need VFXEditor. This is a default Dalamud plugin and how we'll be actually creating the mod.
Thirdly, you will need any audio editing tool. I like using Audacity, it's free, open source, and easy to use even if you've never done audio editing before. You'll need this to prepare your file for use with the game, making adjustments such as increasing the volume or trimming it down to only the important parts.
Optionally, you may want a few more things:
Penumbra, for actually using your mod longterm. It's a custom repo: https://raw.githubusercontent.com/Ottermandias/SeaOfStars/main/repo.json
If you don't know what to do with that link, check out Serenity's guide to installing Penumbra and more here: https://reniguide.carrd.co/
A recording tool, such as OBS, for Marketing your mod.
An Image Editing tool, such as Paint.net, for Marketing your mod.
Step 0.5: Prepare your audio file
If you're making an audio mod, you need a sound for your mod. For the purposes of demonstration in this tutorial, I'm going to be creating a mod that replaces the SFX for "Infuriate" with the "aaaaawubadugh" sound from Halo CE.
My own primary method for getting sound files is as simple as youtube and a youtube to mp3 site. Try to get a sample of your sound with minimal or no background noise - any background noise can quickly become irritating for someone using your mod.
Now that you have a sound file, open it up in your audio editor of choice. I'm going to use Audacity for this. I'm going to load my audio file into audacity and...
Here you can see the waveforms that make up your sound file. You can see one small waveform and one larger waveform. In this case, the sound I'm using has a "noticing the player" sound at the start, and an "Agitated yell" for the rest of the file.
Trimming your clip
So, considering the context of the replacement I'm trying to make - you're already mid combat, so having a "noticing the enemy" sound doesn't make sense. It's infuriate, you want just the angry parts. In this case, I've already identified the part I want, and the part I don't want, and the audio clip is thankfully clearly divided between the two. Take your mouse, click on one end of the part you want, and drag to capture the entire bit you want.
Now you can hit the big green "play" button to preview your trim and see how it sounds in isolation. Good to hear how exactly your trim will sound ingame, and damn near essential if you're making a tight cut in a crowded audio file. If you need to make precise adjustments, you can grab either side of the selection and drag them to change the selection.
Despite having our clip right now, we're not going to export it just yet, there's one more thing to consider:
Audio balance
The #1 mistake I see audio mods make is being totally inaudible. It's an audio mod, you need to hear it!
If you just take a sound and import it, it might sound fine in isolation, but the moment you get into actual gameplay it'll be quickly drowned out by the action combat music and other sfx.
What follows is FAR from scientific, but this is my own common practice for making my mods audible and reliably balanced.
With your selection...selected, look to the top bar: hit "effect > volume and compression > amplify"
Once you open this window, Audacity will have a default "suggested" amplification level, in this case it recommends I amplify my sound by about 7db
Now my strategy to make things very audible, is to take this figure, and add exactly 10 to it. We're going to amplify this sound by about 17db.
We're going to put in that 17, and hit "Apply"
Beautiful. Now a word: This might look (and sound) a bit unpleasantly loud, but that's fine. The game does it's own volume wrangling under the hood, and it won't be this loud when you hear it in game.
Also, remember: you're not amplifying every sound you make by 17! You take whatever audacity gives you, and add 10 to it. Some sounds may only need exactly 10. Some may need less than 10. It's very dependent on the sound file itself.
For now, we'll call this done. While your sound isn't currently playing, hit "File > Export Audio..."
I've never really paid attention to what's listed here: Just make sure you have "Current Selection" chosen, and you're placing it somewhere you can find it later. Also, make sure you export as either .wav or .ogg, as those formats are supported by vfxeditor.
Step 1: VFXEditor
Download and enable the vfxeditor plugin.
Now, while ingame, type in /vfxedit
Intimidating. But all you need to pay attention to here is the little button that says "scd". Hit it.
This new window will open. Still a bit spooky, but it's easier than it looks.
Hit the magnifying glass in line with "Loaded Scd" to open another little nifty interface.
I'm covering actions, so we're going to ignore all the other tabs and just focus on Game Items > Actions here. You could probably do nifty stuff with the other tabs, but I'm not qualified to teach you anything about them, as I don't know myself.
We're making a mod for "Infuriate" so I'm going to type Infuriate into the search box
Three infuriates? What the hell??
The reason for this is the game keeps depreciated versions of skills, as well as NPC-only versions of skills, and those are what vfxedit is seeing. But thankfully, there's a really easy way to tell - hit the one with the correct icon. In this case, we can clearly see the topmost infuriate is the player used versions. Click on that one
Now this is handy, only one sound. Some abilities have multiple entries here - I'll go over what to do in that case later. For now, we're hitting the checkbox.
Infuriate loaded? Audio 0? Poggers. But we're going to ignore that right now - repeat the previous process on the "SCD Being Replaced" tab with its magnifying glass. Make sure you select the same things. Now that you have both loaded, hit that tempting "Audio 0" button.
Here is where you are doing the actual replacing. If you hit the "Play" button right now, you'll hear the default sound in all its isolated glory. If you want to actually export this sound for your own use, you can hit the floppy disk to save it as a wav. This is especially useful if you want to ADD to a sound rather than completely REPLACE it. I'll also go into this later.
We're going to hit the upwards arrow. This will open your file editor. You need to find your prepared sound file from earlier. Click it and press ok. Or double click it.
You'll be back at the previous screen. Now, hit the play button again. If you've done everything right, you should hear your own sound! Pog! Be warned, it may still be very loud, but this still isn't representative of what will happen in gameplay.
Now, hit the big green "UPDATE" button. This applies your change to the actual game itself. Now go use your ability! See if it sounds how you want it to sound. If it doesn't, you'll want to go back into your audio file, change whatever you want to change, re-save it, re-import it, and re-press the big green button.
Step 2: Exporting your mod
Now that you've made it how you want it, don't rest easy just yet. Your vfxedit is temporary and will disappear next time you close the game. We're going to export the mod as a Penumbra modpack. Return to the Scd Editor tab and take note of the "Export" button. Hit it.
Prompted for penumbra or textools, you want to hit "Penumbra"
Another spooky screen. But worry not, this is just where you need to put in a little bit of mod metadata and tell it what to actually export.
First, name your mod. You'll want a descriptive name - even if you don't plan on uploading this, you will want to be able to sort through your own mods. Secondly, make it snappy, and keep it simple. It doesn't look good if it goes too long. I'm going to go with the simple and descriptive "Aaaghwubadugh Infuriate". It's pretty clear what it does and what it replaces.
Secondly, name yourself as Author. I'm Mahogany, so I'm putting in "Mahogany" here.
Lastly, you need to tell vfxedit what to actually export. See the big list down there? We're exporting an scd, and scd should say [0/1] (or more). Click on the empty box next to Scd to put in a tick, and it will change to Scd [1/1] (or more)
As you can see, my mod has a name, I'm credited as the Author, and Scd is checked. Now, we hit "Export" in the top right!
Once more, your file editor will open. Save your mod somewhere you can find it.
You're technically ready to upload and share your mod now! But I like to make extra sure. At this point, I restart my game (to make sure vfxeditor is cleared), open penumbra on the title screen, import my mod and enable it. Now, I load into the game and make finally sure it still super works when going through penumbra.
And it does! If you're just making this mod for yourself, you can consider yourself done now. The mod is done! Congrats!
Next, I'm going into what to do if you want to share your mod with others.
Step 3: Marketing
First things first, you'll need to sell people on your mod - installing a mod is a hard sell without knowing exactly what it does. You'll want to do this before uploading the mod itself. As an audio mod to an ability, you need a video to properly demonstrate what your mod does.
If you have a modern Nvidia graphics card, you have access to shadowplay as an incredibly convenient recording option. This is what I personally use. If not, a commonly available option is OBS - https://obsproject.com/
Another useful plugin to help with this process is Personal Orchestrion. This is in the default repo, and will let you set your background music to "None" - perfect for recording your demo without music being distracting.
Another useful tool is the "Scroll Lock" button, which disables your UI by default. This is great for recording a cleaner video.
So, my own personal process is this - make sure my mod is loaded into penumbra. Head to a striking dummy (if you have a house or find one with a striking dummy this is great for avoiding other noise) - set music to none with personal orchestrion - toggle off UI - hit record - use the skill - hit end recording.
Now, just upload it to a video sharing website. Here's my own video of the mod I just made for this guide! https://www.youtube.com/watch?v=LTREOKCDnWw
Secondly, I advise you to make a custom thumbnail. Before the user sees the video, they see a thumbnail. This is how you grab people's attention in the first place. I prefer making my thumbnails easy to understand and not have excess information.
You'll need an image editor. I like using paint.net for my own edits - grab it here: https://www.getpaint.net/
My own process is to generally grab a base image based on whatever sound I'm using, and then put ffxiv iconography over it. I recommend the ffxiv consolegameswiki as a great place to grab icons from the game. Also, use the "Layers" function to make sure you're not making those annoying transparent squares show up. Here's the thumbnail I made:
It's simple and to the point. Combined with the name and your mod category, people can tell from a glance what they're getting.
Congratulations! You're now totally ready to upload your mod to any number of XIV Mod sites. I personally use xivmodarchive.
Remember to tag your mod correctly, follow the rules of the website you're using, and attach the thumbnail and video you made.
Congrats on making and publishing your audio mod! If you're interested in the mod I made for this demonstration, you can grab it here: https://www.xivmodarchive.com/modid/111585
Addendum: Special cases
Actions with multiple associated sounds
Some actions have multiple sounds associated with them. We'll use Tactician as an example.
This is an example of a partywide mitigation ability. It has two parts: The "casting" sound, when you press the button, and an "application" sound, played for and on each person who recieves the effect.
In general, the thing you probably want to change is the casting sound. Out of these two, the casting sound is #0. If you look at the file names, one ends with "c_re" and the other ends with "t". I remember this as "C = casting" and "T = Target"
However, the ability to change both the casting sound and the "target recieved effect" sound does open the door to more creative applications.
Here's an example from a mod I made, "Cuno doesn't care (about physranged defensives)" https://www.youtube.com/watch?v=YO9ws5xBemY
In this instance, the casting sound is "Fuck does cuno care?" and the target sound is "Cuno doesn't fucking care". You can set up question and answer scenarios with these kinds of abilities which really broadens the kinds of memes you can apply to your effects.
Another example from my mod "Liturgycore" https://www.youtube.com/watch?v=FWabC-lSmTw
This one has three parts to it. When you place down the bell, it plays "Let's go gambling!" when the bell is triggered, it plays a buzzer fail noise, and when healing is recieved, each member plays "Aw dang it". You can get very creative with this kind of thing.
Pet-related Sounds
Not every ability is tied to one action. Let's take liturgycore as an example again. Opening up liturgy in vfxedit:
No "t"? How change "target" sound?
So, Liturgy is kind of a "Pet" of sorts. And "Pet" actions are different beasts entirely internally from the button you press to use it. Liturgy is a pet that uses it's own entirely distinct ability when it's triggered.
Thankfully, that ability is ALSO called Liturgy of the Bell! It's one of those "NPC abilities" I talked about before, and as such it defaults to a cure1 icon.
See this? This is actually the target sound for recieving a liturgy heal, and this is what I tied the "Aw Dang it" to. If your ability uses any kind of pet, you're likely going to have to do something similar to this to find and replace their own sounds.
I still can't find the sound I want in the action!
Some sounds are considered "Object" sounds and aren't actually attached to your action in vfxedit. Two examples I've found so far are actually the "Casting" sound of the liturgy's triggered heal, and the "Explosion" sound of Machinist's Wildfire.
This is a bit more annoying. You're going to want to get another plugin, "ResLogger2.Plugin". It's in the default repo.
Reslogger2 is a tool that will print a path to any thing whenever it's loaded or played. I think. Download it, install it, enable it, and type /reslog
What the hell is all this? It's paths to everything that's being played. For sanity's sake, you can type in "Sound" in the path filter to help narrow things down.
Now, you'll want to use the ability you're having trouble with. I'm using Machinist's wildfire for this demonstration. With the window open, I trigger wildfire's explosion sound and...
Abi_Mch_TimeBomb_Exp_t? That sounds like our boy!! And it is. Right click on that line to copy it to your clipboard.
Head back up to vfxedit's scd editor. Now, instead of clicking the magnifying glass, we're going to paste what we got into the field directly.
Now, that isn't a real path, but it's pretty close. I think the longest path is the best bet, so I'm going to delete everything except for the last part of the string, that starts with sound/vfx/ability and ends in t.scd
Now we'll press enter and...
Yippee! Path recognized and you now have access to the sounds you were looking for.