Sound Pack Not Loading in Mechvibes? Here Is Why
A sound pack that will not import, does not appear in the list, or appears but stays silent is one of the most common Mechvibes problems. Mechvibes checks every pack when it imports it, and nearly every failure is one of the rules below. Here is what it checks and how to fix each case.
The easy way: install from the library
Packs in the sound pack library have already passed these checks. On Windows and Linux, click Install in Mechvibes on a pack's page, and Mechvibes shows the pack's name, author and size and installs it when you click Install. A pack you already have is updated the same way when a newer version is published.
On a Mac, click Download zip on the pack's page and add it as described next.
Adding a ZIP yourself
- Open Sound packs in Mechvibes.
- Choose the Keyboard or Mouse tab, depending on what the pack is for.
- Click Add, then Select file, and pick the ZIP.
- Select the pack on the Home page.
If you have a pack as a folder rather than a ZIP, open Sound packs > Manage, open the custom sound packs folder, copy the pack folder in, and click Refresh.
Why an import fails
config.json is not at the top of the ZIP. This is the most common cause. When you zip a folder, some tools put the folder inside the ZIP, so the file ends up at my-pack/config.json instead of config.json. Open the ZIP and check: config.json and the sound files should be the first thing you see. If they are inside a folder, zip the files themselves rather than the folder.
config.json is not valid JSON. A missing comma or an extra quote stops the whole pack. Paste the file into any JSON validator to find the line.
The key mappings are missing or broken. The definitions (or defs in older packs) section has to map keys to sounds. A pack with an empty or malformed section has nothing to play.
The sound file is missing or in an unsupported format. Mechvibes plays OGG, WAV, MP3 and FLAC. Every file named in config.json must be in the ZIP under exactly that name.
Two files share a name. Every file in the ZIP needs its own name, even in different folders, and names that differ only in capital letters count as the same. Names Windows cannot use, such as NUL.ogg or a name ending in a dot, are refused too.
Old packs
Packs made for the original Mechvibes still work. Mechvibes converts them when they load, keeps your old file next to the new one as config.json.v1.backup, and leaves your audio files untouched.
If you used Mechvibes 2, the packs you added there come over by themselves the first time Mechvibes 3 starts (from version 3.0.1), marked New.
One known gap: packs that define separate sounds for holding and releasing a key do not play those variants yet (issue #74).
The pack loads but some keys are silent
Each key only makes a sound if the pack defines one for it. Many packs skip rarely used keys such as the numpad or media keys, and many mouse packs skip the middle button and the wheel. Try a different pack, or add the missing keys yourself.
Fixing or making a pack
The sound pack editor opens a pack's ZIP, shows which keys have sounds, and exports a clean ZIP that Mechvibes accepts. The editor tutorial walks through making a pack from your own recording, and the sound pack config reference documents every field of config.json.