Error fixer › Sound
Fix: Sound alias uses a missing template
ERROR: weapons.csv missing template alias 'WPN_SHOT_PLR' for alias wpn_m1927_fire
Why it happens: Your alias CSV uses a Template value (like WPN_SHOT_PLR or evt_event_3d_mod) that doesn't exist in the mod tools' template_mod.csv.
How to fix it:- Open the alias CSV named in the error (share\raw\sound\aliases\...).
- Replace the unknown template names with a template that exists - many people simply use UIN_MOD.
- Or add the missing templates to share\raw\sound\templates\template_mod.csv (see the linked thread).
- Back up the CSV first, then link again.
Got a different error?
Copy the error line, or the whole Launcher or linker output, into the box. We'll pick out the errors we know (54 so far) and show what causes them and how to fix them.
Browse common errors
Script failed to compile (No generated data)
One of your GSC/CSC scripts has a compile error, so the linker had nothing to pack. This line is only the summary - the real reason is printed further down as an ERR(...) line with a file, line and column.
GSC syntax error
The compiler hit something it didn't expect at that line and column - usually a missing ; } ) or an extra closing bracket on or just before that line.
Missing closing bracket (unexpected $end)
The file ended while the compiler was still waiting for a closing } - a function or if/for block was opened but never closed.
#using line in the wrong place
A #using line was pasted below a function (or in the middle of the file). All #using lines must be at the very top of the GSC/CSC, before any function.
Invalid character in script (Bad Token)
There is a character the compiler can't read at that position - usually an invisible or 'smart' character copied from a website, Discord or Word.
Unresolved external (function not found)
Your script calls a function the compiler can't find: the name is misspelled, the function was deleted, or the file that contains it isn't #using'd (or isn't in your zone).
Variable used before it is defined
The function uses a variable (often 'player') that was never given a value inside that function. Variables don't carry over between functions.
#using points to a script that doesn't exist
A #using line references a script file the linker can't find - the path is wrong, or an addon's script wasn't copied into your map/mod (or share\raw).
Linker can't open a script/header file
Your zone (or an addon's .zpkg) lists a script or .gsh header that isn't in your map folder - normally an addon that wasn't installed completely.
Error linking script when the map loads
The map compiled, but when the game loaded your scripts something didn't match up - a function, #using or script that one side (GSC or CSC) expects is missing. It is almost always caused by the last script/addon you added.
Clientfield Mismatch
A clientfield is registered in the GSC but not in the CSC (or the other way round). Usually a script was added to mapname.gsc but its CSC part wasn't added, or old zm_usermap copies are out of date.
Could not find zone (language)
The map was only built for English, but the game is running in another language (de_, fr_, ge_ etc.), so it looks for a language zone that doesn't exist.
Fastfile checksum doesn't match
Your game and your Mod Tools are on different versions, so the map built by the tools can't be loaded by the game.
'Could not find material debug_sphere...' spam (usually harmless)
These 'Waited ... for missing asset' and 'Could not find material "debug_sphere..."' lines appear for nearly every custom map and are not the reason your map failed.
Script runtime error: undefined is not a field object
A script tried to read or set a field (like ent.health or level.something) on something that doesn't exist - e.g. a getent/struct with a targetname that isn't in your map.
Script runtime error: cannot cast undefined
A script used a value that was never set (undefined) where a bool/string/number was required - for example checking a flag that was never initialised or a missing KVP.
Wallbuy for a weapon that isn't in the map
A wall buy in your map (often from a prefab) uses a weapon name that isn't included in your zone, so the weapon script gets 'none'.
Weapon not found in game
A script, wallbuy or the box table references a weapon that wasn't built into your map - it's missing from the zone. A few of these for stock weapons you don't use are normal.
Lua not supported (L3akMod missing)
The stock linker can't build Lua UI files. You need L3akMod installed (it replaces a DLL in the bin folder). Verifying the Mod Tools in Steam removes it again.
Duplicate asset in two GDTs
The same asset name is defined in two different GDT files (two addons, or one addon installed twice), so gdtDB doesn't know which to use.
'errors found while updating database' (decimal comma)
Windows is set to a region that uses a comma as the decimal symbol, so the tools can't read numbers like 0.008 in their definition files.
Prefab not found (red box in Radiant)
The map contains a misc_prefab that points to a prefab file that no longer exists (deleted, renamed or map moved), so the compile fails.
misc_model with no model
There is an empty misc_model (or a model whose asset is gone) in the map. It shows as a small box and can cause problems later.
Material / image / xmodel is missing
Something in your map or zone uses an asset that isn't in any GDT you have - usually a prefab/model from another pack whose textures or GDT weren't included or installed.
Model material has no techset (checkerboard texture)
A material used by the model is missing or not set up in APE, so that part of the model renders as the blue/orange checkerboard.
Animation (xanim) not found
A weapon, script or asset wants an animation that isn't defined in any GDT - the animation pack wasn't installed or the asset is missing.
Unable to load weapon
One of the weapon's parts (model, animation, material or sound) failed to build - the real reason is printed just above this line, e.g. 'Could not load mesh ... XMODEL_BIN'.
UmbraConvert failed
The Umbra occlusion step failed while linking, usually because of the umbra volume in the map.
gdtDB database is locked
Another mod tools program (usually a second Radiant or a stuck APE/linker) is still using the asset database.
NavVolume generation is skipped (warning)
This is about the 3D nav volume used by flying AI (e.g. wasps/parasites), not the normal zombie navmesh. It is a warning and appears on many maps.
Found N bad bulletmeshes (warning)
Some models have bullet collision the tools didn't like. This is a warning and does not stop your map from running.
SN-DBS is not installed (warning)
SN-DBS is a distributed build system Treyarch used internally. Without it the tools just compile on your PC, exactly as the message says.
Linker will now terminate
The linker stopped because of an earlier error. This line itself doesn't say what - the cause is the UNRECOVERABLE ERROR line just above it and the ^1ERROR / ERR( lines in the output.
Winding point limit exceeded on brush face
A brush has too many points on one face - usually a heavily cut brush, or clips made with the auto clip generator, or a broken curve/terrain.
Too many terrain collision vertices
Your terrain/curve patches have more collision vertices than the engine allows.
Radiant crashes when opening the map
The map file (or something recently placed in it) is broken, or Radiant's settings are corrupted, so Radiant crashes on load.
Export lighting failed when closing Radiant
Radiant asks to export lighting when you close it, and this often fails. It isn't needed - the Launcher builds lighting when you compile with Light ticked.
Reflection probe out of range
A reflection probe captured an extreme brightness value - usually a probe covering a big area, or with its origin (ball) outside its box.
Probe missing GI data / cube maps missing
The map's lighting and reflection probes were never built (or the build failed), so the probes have no data and the map looks dark/wrong or won't load.
APE won't open
An earlier APE crashed and left a dead process running, or the gdtDB cache got corrupted (sometimes by a broken custom GDT).
Sound alias uses a missing template
Your alias CSV uses a Template value (like WPN_SHOT_PLR or evt_event_3d_mod) that doesn't exist in the mod tools' template_mod.csv.
Sound alias column parse error (VolumeGroup/DuckGroup)
A row in your alias CSV is missing values or has values in the wrong columns - often because the pack's CSV uses a different column layout than your file.
Bad line in sound alias CSV (// comment)
'//' is not a comment in a CSV - the sound tool reads that line as an alias and fails. Comments in alias CSVs must start with #.
Sound file not found (no files for filespec)
An alias points to a .wav that isn't at that path inside sound_assets. One broken alias can stop ALL your custom sounds from building.
WAV is not 48 kHz
BO3 only accepts .wav files at a 48000 Hz sample rate. The file named on the line above is a different rate (often 44.1 kHz).
Sound aliases failed to load
The sound converter failed earlier (bad alias CSV, missing .wav or broken .szc), so no sound zone was produced. Wrong Build Language can also cause it.
Sound zone config (.szc) can't be parsed
The map's .szc file (usermaps\yourmap\sound\zoneconfig) is not valid JSON - usually a missing comma, bracket or quote after adding an alias entry. Non-English decimal settings have also been reported to trigger it.
Sound converter: object reference not set
snd_convert crashed on an alias - most often an alias in the shared user_aliases.csv pointing at a sound file that doesn't exist. Sometimes it's a one-off glitch.
Missing source checksum (sounds)
A sound build glitch that stops new sounds being added to the map.
Sound bank failed to load (game)
The map's sound bank files are missing or broken - often because the Mod Tools' own files are damaged.
Missing stringTable user_aliases.csv
A weapon pack's assets expect user_aliases.csv to be packed with your map, but it isn't in your map folder/zone.
FX not found in game
A script plays an effect that wasn't built into your map: it isn't in the zone and/or wasn't precached.
Material/shader not found in game
A HUD icon or script material isn't packed into your map. Note: debug_sphere/mc/hud_outline lines are normal noise; only worry about materials you added.
Error updating Steam Workshop item
Publishing failed. Common causes: a preview image that is too big/the wrong format or no longer at its saved path, a stale workshop.json, or a single compressed file (xpak) over Steam's 2 GB limit.
Not listed, or the fix didn't work?
Ask in the Discord with your full log, or book an hour and we'll fix it together on a call.