Rodo-SuperHornMod icon

SuperHornMod

Craftable Horn of Heimdall: blow a navigation call to guide allies, or a battle alarm that buffs nearby players, scares wildlife and alerts enemies. Realistic 3D sound with echo, obstruction and weather falloff.

By Rodo

CHANGELOG

Changelog

2.1.1

  • Localization language detection switched from Localization.instance (unreliable/wrong assembly) to PlayerPrefs.GetString("language") — fixes a build error and is more robust regardless of when the mod's code runs relative to the game's own localization init.

2.1.0

  • Rebuilt against current Valheim 1.0.14 API — fixes a MissingMethodException crash in Character.Message that occurred on load.
  • Added English/Russian localization: the mod detects the game's own language setting and shows Russian to Russian-language clients, English to everyone else. Covers item name/description, buff name/tooltip, and all in-game messages.
  • Config file is now in English (section names and descriptions) for wider compatibility with config-management tools.
  • Battle alarm buff now starts a cooldown for everyone who receives it, not just whoever blew the horn.
  • Confirmed: the buff does not refresh/stack if the target already has it, and tamed animals never react to the horn.
  • Bronze cost for horn upgrades increased (was +1 Bronze per quality level, now +3).
  • Cooldown message changed to "Надо перевести дыхание... (N сек)" / "Catching your breath... (Ns)".
  • Fixed a potential NullReferenceException if the echo/acoustic-shadow coroutines started before GameCamera.instance existed.
  • Fixed possible duplicate RPC registration when reloading into a new world/server without restarting the game.
  • Hand/item position adjustment no longer uses per-frame reflection (Traverse) — cached once at startup for better performance.
  • WAV loader rewritten to walk RIFF chunks properly instead of scanning the file for text patterns, with proper error handling for corrupt or unsupported (non-16-bit) files.
  • Activation key is now parsed once and cached instead of every frame.

2.0.x and earlier

  • Initial versions (pre-1.0.14 compatibility).