Dub packs get a reputation for being complicated, mostly because the requirements aren’t obvious until you hit them. Rather than walking through the process top-to-bottom, this covers it the way most people actually run into it — one question at a time, as each one comes up.
A dub pack is a voice pack that’s been given two extra things: a video file, and timestamp data telling the game exactly when each sample plays inside that video. It still functions as an ordinary voice pack in the standard studio — the extra data is what unlocks Dub Mode specifically, where a player records lines with unlimited retakes and hears the finished result only once every sample has been performed, dubbed directly over your video.
This one isn’t a creative choice by the developer — it’s a hard limitation of Godot, the engine the game runs on. Godot’s built-in video playback only understands OGV, so any Godot game inherits that same restriction whether the developer wants it or not. If your source footage is MP4, AVI, or anything else, it has to be converted before the game will touch it. A free tool like ffmpeg handles that conversion without much fuss.
Nothing exotic. An audio editor for cutting samples — Audacity is the common free choice — and something to separate vocals from background noise if your source scene has music or ambient sound mixed into the dialogue. Everything else happens inside the game itself, through its built-in metadata editor.
Don’t throw it away. Save the leftover instrumental or ambient track as a file named _backing_track inside your pack, and the game plays it automatically underneath every player’s recording. This single step is what separates a dub that sounds like the original scene from one that sounds like a voice floating in dead silence.
Under 6 seconds is the target, cut at natural breaks in the dialogue rather than mid-word. Loudness matters here the same way it does for regular voice clips — the scoring and playback systems both work better with samples that aren’t quiet.
Yes, more than people expect. Dub samples need to play back in sequence, so a numeric prefix — 01_IntroLine, 02_PunchlineOne, 03_PunchlineTwo — keeps that order intact. Leaving files unordered is one of the most common mistakes in dub packs that otherwise sound fine but play back in the wrong sequence.
While you’re cutting audio in Audacity, check the exact playback position — hours, minutes, seconds, and milliseconds — where each line starts in the source footage. A common trick is temporarily baking that timestamp into the working filename so it doesn’t get lost during editing; a line starting at 44.048 seconds might be labeled something like 07_MyClip_44-048 while you’re still working, before being cleaned up in the final version.
Inside the game, under Extras > Edit Voice Packs & Clip Metadata. For each sample, you enter its timestamp in seconds — and a single sample can carry more than one timestamp if that same line repeats at different points in the scene. This same screen is where you’d tag samples by “dub character” for scenes with more than one speaker (letting players pick which character they’re voicing, while anyone they don’t select keeps the original audio), and where you can flag a clip as “dub only” so it stays exclusive to Dub Mode rather than showing up in the regular studio rotation.
Missing the OGV video, or naming it anything other than exactly dub_video, is the single most common reason a finished dub pack won’t load at all. Skipping timestamps means samples exist but never sync to anything. And forgetting the numeric filename prefix means your finished dub plays back out of order, even though every individual sample sounds fine on its own.
Same destination as any other voice content — the packs_voice folder inside the game’s data directory. Despite everything unique about building one, a dub pack still installs exactly like a regular voice pack once it’s finished.
dub_video file, in OGV format, sitting in the same folder as the audio