TurretAmmoFix
Allow all bolt/ammo items to be loaded into turrets and ballistas by appending them to each Turret's allowed-ammo list at spawn.TurretAmmoFix
Let your turrets and ballistas actually use all ammo-type items.
In vanilla, a Turret (ballista) only accepts the specific ammo prefabs assigned to its Turret.m_allowedAmmo list. TurretAmmoFix scans every Ammo item in the game (ObjectDB and ZNetScene prefabs) and appends any that are missing to each turret's allowed-ammo list the moment it spawns — so bolt ammo from other mods, custom bolts, and any ItemType.Ammo item can be loaded and fired.
A Valheim BepInEx 5 plugin.
Features
- Works on every
Turret(ballista) instance at spawn, including modded ammo. - No new items, no recipes, no prefab injection, no networking — purely client-side list expansion.
- Fully configurable.
Requirements
- BepInExPack Valheim (installed automatically by your mod manager)
Installation
- Install through your mod manager (recommended).
- Manual: drop
TurretAmmoFix.dllintoBepInEx\plugins\.
How to use
Load the game and place a turret/ballista as usual. Open the turret's ammo-storage slot — every Ammo-type item in your inventory (vanilla bolts, custom bolts, and any ammo added by other mods) will now be loadable. Firing behaviour is unchanged; the mod only expands the allowed-ammo list.
Configuration
Config file is generated on first launch at BepInEx\config\custom.turretammofix.cfg:
| Key | Default | Description |
|---|---|---|
Enabled |
true |
Master toggle. When false the mod makes no changes. |
AllowAllBoltAmmo |
true |
Add every ItemType.Ammo item to turrets. |
How it works
A postfix on Turret.Awake collects all Ammo items reachable from ObjectDB.m_items and ZNetScene.m_prefabs, then appends any that are missing to m_allowedAmmo (each entry gets an inactive empty child visual, matching the vanilla pattern).
Changelog
See CHANGELOG.md.


