You are viewing a potentially older version of this package. View all versions.
2Gits1CPU-ValhallaMenuCompanion-2.0.0 icon

ValhallaMenuCompanion

SeneaL UI Custom Menu: loading screens with captions and slideshow, item tooltips, title logo, main-menu music and volumes, optional server join, rules, Discord/support rows, Deathlink window.

Date uploaded 17 hours ago
Version 2.0.0
Download link 2Gits1CPU-ValhallaMenuCompanion-2.0.0.zip
Downloads 22
Dependency string 2Gits1CPU-ValhallaMenuCompanion-2.0.0

This mod requires the following mods to function

seneaL-SeneaL_API-1.2.0 icon
seneaL-SeneaL_API

Public API for Valheim UI mods: notices, dialogs and HUD elements, with a bridge that routes the game's own windows to any UI that registers as a provider.

Preferred version: 1.2.0
seneaL-SeneaL_UI-1.2.8 icon
seneaL-SeneaL_UI

Complete Valheim UI redesign: HUD, inventory with equipment and quick slots, chests, crafting, build menu, world map, character windows, in-game settings. The server sets the gameplay rules.

Preferred version: 1.2.8
denikson-BepInExPack_Valheim-5.4.2360 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.

Preferred version: 5.4.2360

README

Valhalla Menu Companion

A menu companion for SeneaL UI. It adds a custom title logo, custom loading screens, custom item tooltips and an optional one-click join for your server, all switched on and off in the config. It does nothing server-specific until you set it up, so it suits any server, modpack or single-player install.

Made with the help of AI.

Features

Everything is optional. On a fresh install the server features (logo, quick connect, rules, Discord, support) are off with every link and address blank: turn on what you want and fill in your own.

Feature Turn on with What it does
Custom loading screens Put images in loading_screens/ Your .png/.jpg images (random or in order), a caption per image, and your own loading tips.
Custom item tooltips Write item_tooltips.txt Extra lore, server notes or hints at the bottom of any item's tooltip.
Title logo [Branding] Enabled = true + logo.png in the folder Replaces the Valheim title logo.
Quick connect [QuickConnect] Enabled = true + ServerAddress The character screen's Start becomes a one-click join (button text is yours), with a PLAY LOCAL button and a live online / player-count line.
Server rules [Rules] Enabled = true + rules.txt A Server Rules row on the title menu; optionally players must agree before their first join (again whenever the rules change).
Discord row [Discord] Enabled = true + URL A Discord row on the title menu that opens your invite.
Support row [Support] Enabled = true + URL A row for Patreon/Ko-fi with an optional confirmation.
Deathlink window Automatic when Deathlink is installed ([DeathlinkWindow] Enabled, on) Its profile selection window gets the SeneaL UI look, and every section fits: long lists scroll instead of overlapping.
Main-menu music [MenuMusic] Enabled = true + songs in menu_music/ Your own songs on the main menu and character screen (in-game music unchanged), shuffled, optionally starting part-way in.
Skip intro [Startup] SkipStartupCinematic (on) Skips the intro video at launch; the Cinematics menu still works.
Tidy the title menu [MainMenu] HiddenRows, HideMenuLook, [Discord] ReplaceOtherDiscordRows (all off) Hide title-menu rows you don't want players to see. Other mods keep working.

All files live in BepInEx/config/ValhallaMenu/. Edits are picked up on the main menu within a few seconds. The settings file is BepInEx/config/valhalla.menu.companion.cfg (or use your mod manager's config editor).

Custom loading screens

Put .png or .jpg images (1920x1080 recommended, up to 16 MiB each) in BepInEx/config/ValhallaMenu/loading_screens/. Tips go in loading_tips.txt, one per line (created with examples on first launch).

Setting [LoadingScreen] Default Meaning
Enabled true Off restores the vanilla loading screen.
ImageOrder Random Random (shuffled: every image once before any repeats, even across restarts) or Sequential (file-name order).
ImageFit Cover Cover fills the screen and crops, Fit letterboxes, Stretch distorts.
TipsMode Replace Replace (only your tips), Append (vanilla + yours) or Off.
SlideshowSeconds 20 On a long load, switch to the next image after this many seconds (minimum 3). 0 = one image per loading screen.
Logo Keep Logo at the top: Keep, Custom (LogoFile, else your title logo) or Hide.
LogoFile loading_logo.png Logo picture for Logo = Custom, in BepInEx/config/ValhallaMenu/.
HideSpinner false Hide the spinning icon in the corner.
HideShading false Show your images at full brightness (removes Valheim's darkening of the background).
ShowCaptions true Show captions from loading_screens/captions.txt on your images.
CaptionPosition BottomLeft TopLeft, TopCenter, TopRight, BottomLeft, BottomCenter or BottomRight.
CaptionFontSize / CaptionColor 30 / #FFFFFF Caption size and colour (a dark outline keeps it readable).

Different images for joining, dying and teleporting

Put images in sub-folders of loading_screens/ to use them only at that moment:

Folder Shown when Without it
loading_screens/join/ joining a world or server the images in loading_screens/
loading_screens/respawn/ respawning after death the images in loading_screens/
loading_screens/teleport/ teleporting (portals) Valheim's own teleport screen

Captions

Give each image a title, a credit or a hint in loading_screens/captions.txt (created with examples on first launch):

sunset.png = <b>Sunset over the Meadows</b>\n<size=75%>Screenshot by Ragnar</size>
boss_arena = The Elder awaits
* = My Valheim Server

The name may be written with or without its extension and may contain spaces. * is the caption for every image without its own line. Captions show only on your custom images, never on the vanilla loading screen.

Main-menu music

Turn on [MenuMusic] Enabled and put songs (.ogg works best; .mp3 and .wav too) in BepInEx/config/ValhallaMenu/menu_music/. Each time you reach the main menu one of them plays instead of Valheim's menu theme; once you enter a world the normal game music takes over. Songs stream from disk.

Setting [MenuMusic] Default Meaning
Enabled false Turn the feature on.
Order Random Random (shuffled: every song once before any repeats, even across restarts) or Sequential.
StartSeconds 0 Start each song this many seconds in. When it ends it loops from the very beginning.
Volume 100 Percent of Valheim's menu-music volume (the game's music slider still applies).

Menu volumes

[MenuAudio] sets the volumes for the main menu and character screen only: Enabled (off), MasterVolume, MusicVolume and EffectsVolume (percent). Each player's own Valheim audio settings come back the moment they leave the menu, and they can still change them in game as usual (the mod never saves over them). While the Settings window is open on the menu, the mod stays out of the way of its sliders.

Different start points per song go in menu_music/start_times.txt

Custom item tooltips

Add lines to item_tooltips.txt (created with examples on first launch):

SwordIron = Forged in the fires of the north.
$item_axe_bronze = Line one\nLine two

The key is the item's prefab name or its name token. The text appears at the bottom of the tooltip in [Tooltips] TextColor.

Write several lines for the same item to give it more text. With [Tooltips] MultipleLines = Random the tooltip shows just one of them instead, a different one each time the item is hovered (every line once before any repeats), which is nice for rotating lore or hints:

SwordIron = Forged in the fires of the north.
SwordIron = Favoured by the jarls of old.
SwordIron = Its edge remembers every battle.

Setting up your server (server owners)

  1. [QuickConnect]: Enabled = true, ServerAddress, ServerPort, ButtonText (e.g. ENTER MY SERVER) and, if needed, ServerPassword. The password is stored in plain text: anyone you give the config to can read it.
  2. [Rules]: Enabled = true, then write your rules in rules.txt. RequireAcceptance makes players agree before the first join; raise Version to make everyone agree again.
  3. [Discord] / [Support]: Enabled = true and your links. [Branding]: Enabled = true and your logo.png.
  4. Share your mod-manager profile (code or export) so players get the same config and files. Leave out loading_shuffle.txt: it only records your own place in the image shuffle.

Requirements and compatibility

  • BepInExPack Valheim 5.4.2360, SeneaL UI 1.2.8, SeneaL API 1.2.0 (installed automatically by mod managers).
  • Client-side only; not needed on the dedicated server. Tested with Valheim 1.0.21, Path of Valheiman and Deathlink.
  • The title-menu rows and the character screen are drawn by SeneaL UI; this mod adds its entries to SeneaL's menu.
  • Path of Valheiman replaces the game logo (title and loading screen) with its own. To keep yours, set SeneaL UI's own MenuModExtras = false; that also hides other mods' extra title-menu rows.
  • Deathlink: the restyled window is optional ([DeathlinkWindow] Enabled); Deathlink keeps all of its own behaviour.

The game, SeneaL UI and SeneaL API belong to their developers. This package contains none of their files.

CHANGELOG

Changelog

1.11.0

(1.10.0 was not published separately; its changes are listed below and are part of this release.)

  • New, optional: main-menu music. [MenuMusic] Enabled plays your songs from menu_music/ on the main menu (shuffled, every song once before any repeats), StartSeconds or menu_music/start_times.txt to start part-way in, looping from the beginning, and Volume. In-game music is unchanged.

  • New, optional: menu-only volumes. [MenuAudio] Enabled, MasterVolume, MusicVolume, EffectsVolume apply on the main menu and character screen only; players' own saved audio settings return when they leave the menu and are never overwritten.

  • Public defaults: every server feature (title logo, quick connect, rules, Discord, support) starts off and every link, address and password starts blank. Turn on what you want and fill in your own.

  • Updating from 1.9.0 keeps your setup: on the first start, a configured 1.9.0 config (server address, rules, Discord link) gets those features switched on automatically, once, and it is logged.

  • Optimization pass: removed an unused hook on SeneaL's in-game Esc menu (it ran every frame while that menu was open), cheaper character-screen label refresh, cached menu-scene check, loading images no longer keep a second copy in RAM, HiddenRows parsed only on change, unused code and imports removed.

  • All Harmony hooks are now standard attribute patches ([HarmonyPatch] classes with [HarmonyPrefix] / [HarmonyPostfix]), each applied on its own so one missing target never disables the others.

  • New, optional: random tooltip lines. [Tooltips] MultipleLines = Random shows one of an item's lines per hover (a different one each time, every line once before any repeats). Default All keeps showing every line.

  • New, optional loading-screen options:

    • Separate images for joining, respawning and teleporting: sub-folders join/, respawn/ and teleport/ in loading_screens/. Join and respawn fall back to the main images; teleport only changes with its own folder.
    • Slideshow on long loads: [LoadingScreen] SlideshowSeconds (20; 0 = off).
    • Your logo on the loading screen: [LoadingScreen] Logo = Custom uses loading_logo.png or your title logo; Hide removes it; Keep (default) leaves it alone.
    • HideSpinner and HideShading (full-brightness images) to show more of your picture.
    • Captions now also show on teleport images.
  • New: a SeneaL UI look for Deathlink's profile selection window. It switches itself on when Deathlink is installed (nothing to configure) and does nothing without it.

    • SeneaL window frame (double border, solid panel), SeneaL title bar (fading rules and brass diamonds), close button.
    • Profiles in a compact list on the left: SeneaL slot checkboxes with a brass fill for the selected one, the selected name in gold, the whole row clickable. Seal Your Fate sits right under the list.
    • Death Penalty, Combat, XP, Loot and Harvest as cards in the right column that grow with their text; empty sections are hidden. The window is as tall as the screen allows, so even long profiles fit (the column scrolls if they don't). Deathlink keeps all of its own behaviour.
    • [DeathlinkWindow] Enabled (on) and TextScale (1.4). Turning it off restores Deathlink's own window.

1.10.0

  • New, optional: loading-screen captions. loading_screens/captions.txt (image.png = caption, * for all other images) puts a title or credit on each custom image. [LoadingScreen] ShowCaptions, CaptionPosition, CaptionFontSize, CaptionColor.

  • Now a general-purpose mod. Nothing server-specific is built in or bundled; every server feature has an on/off switch and is off on a fresh install: [QuickConnect] Enabled, [Rules] Enabled (new master switch for the rules row and the join agreement), [Discord] Enabled, [Support] Enabled. Title-menu tidying (HiddenRows, HideMenuLook, ReplaceOtherDiscordRows) is also off by default. Existing config files keep their values; turn on [QuickConnect] Enabled and [Rules] Enabled to keep a 1.9.0 setup working.

  • Generic default texts (JOIN SERVER, SUPPORT THE SERVER); the support dialog uses your button text as its title.

  • No logo file = Valheim's logo stays (logged as info, not a warning).

  • The package no longer includes a config folder, and its zip paths use forward slashes.

  • New, optional: custom loading screens. Images from config/ValhallaMenu/loading_screens/ (PNG/JPG, random or sequential, cover/fit/stretch) and tips from loading_tips.txt (replace or append to vanilla).

  • New, optional: custom item tooltips from config/ValhallaMenu/item_tooltips.txt (ItemPrefabName = text).

  • Fix: the quick-connect password stayed in Valheim's ServerPassword for the rest of the session, so any other password-protected server joined afterwards was sent the Valhalla password and refused without a prompt. It is now cleared right after the Valhalla handshake.

  • Fix: the Discord entry now shows a notice when its URL is not configured (it did nothing before).

  • New [Discord] Enabled setting to hide the Discord entry.

  • Fix: the server's own Discord row disappeared whenever another mod (Path of Valheim, SeneaL UI) added a Discord row. As in 1.9.0, this mod's Discord row now replaces the others ([Discord] ReplaceOtherDiscordRows).

  • New [MainMenu] HiddenRows (default Mod Config): hide title-menu rows by caption, or Caption/Subtitle.

  • Removed the unused [Branding] Width / Height settings.

  • Startup log line now includes a build id (Valhalla Menu Companion v1.10.0 build xxxxxxxx).

  • Maintenance work from the 1.8.23 → 1.9.0 development passes is included: safer restore of SeneaL native click handlers and logo bindings, isolated teardown, stricter status/rules state handling. Rules acceptance is keyed to the exact rules text, so players may be asked to accept the rules once more after updating.

1.9.0 — Public Valhalla release

  • First public release of Valhalla Menu Companion.
  • Custom Valhalla title-screen logo and native SeneaL menu integration.
  • One-click server connection, Steam online status, and player counts.
  • Required native Code of Honor acknowledgement, with compact responsive rules dialogs.
  • Community Discord and optional support link.
  • Lifecycle, configuration, validation, and packaging improvements from the 1.8.x development series.
  • Bundled approved production logo and rules, with two-page rules layout settings.
  • Rules acceptance version updated to 1.9.0.