You are viewing a potentially older version of this package. View all versions.
cjayride-CompactStatusSquares-0.2.1 icon

CompactStatusSquares

Small square status-effect icons using Valheim's own art. Position them yourself. Works without SeneaL UI; blocks its status pills when present.

Date uploaded a week ago
Version 0.2.1
Download link cjayride-CompactStatusSquares-0.2.1.zip
Downloads 81
Dependency string cjayride-CompactStatusSquares-0.2.1

This mod requires the following mods to function

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

๐ŸŸฆ Compact Status Squares

Small, configurable buff and debuff icons for Valheim.

Compact Status Squares displays Valheim's own status-effect artwork as small square icons, giving you a cleaner HUD without the large vanilla status list.

Works on its own on Valheim 1.0.21. SeneaL UI is optional: when installed, this mod still takes the status-effect slot and keeps SeneaL's pills from overlapping the squares.

โœจ Features

  • Compact square icons using vanilla status-effect sprites.
  • Configurable positioning with screen corners and X/Y offsets.
  • Flexible layouts with adjustable icon size, columns, and spacing.
  • Status labels displayed to the left, right, above, or below icons.
  • Scalable text for status names, timers, comfort numbers, and hover tips.
  • Vanilla font option using Valheim's Norse font.
  • Live configuration updates so settings can be adjusted without restarting.
  • Hover for details to see a status effect's name.
  • Preview mode to check layouts without active status effects.

๐Ÿ”ง Compatibility with SeneaL UI

SeneaL UI can skip vanilla status-effect updates whenever its interface is enabled, even when its own status pills are switched off.

Compact Status Squares handles the status icons itself and prevents SeneaL UI's status panel from occupying the same HUD area.

While this mod is enabled:

  • Compact Status Squares displays the status-effect icons.
  • SeneaL UI's status pills remain hidden, even if [Elements] StatusEffects is enabled.
  • The large vanilla status list is not drawn.
  • Other SeneaL UI features remain unchanged.

Do not run this alongside another mod that replaces the status-effect HUD.

๐Ÿงช Testing

A test build has already been copied into these Gale profiles that have SeneaL UI installed:

  • beta_cjaycraft_CLIENT
  • sennealteest

Quick Test

  1. Launch one of the profiles and load a character.
  2. Pick up a status effect, such as Rested, a potion buff, Wet, or Cold.
  3. Confirm the effects appear as small square icons.
  4. Check that SeneaL UI's status pills remain hidden.
  5. Adjust the layout settings to suit your HUD.

Configuration

Edit:

BepInEx/config/cjayride.CompactStatusSquares.cfg

The settings include:

Setting Purpose
OffsetX / OffsetY Move the icon cluster
IconSize Adjust icon dimensions
TextScale Scale names, timers, comfort numbers, and hover tips
ShowName Display names Left, Right, Top, or Bottom of an icon
UseVanillaFont Use Valheim's Norse font for labels
Columns Set the number of icons per row
Spacing Adjust the distance between icons
Corner Choose the screen corner used for positioning
Timer Configure timer display
CrispPixels Configure crisp icon rendering
NameGap Adjust the gap between an icon and its name
FillPreview Display sample squares for layout testing

Most settings apply immediately.

To return status-list control to the other HUD systems, set:

[General] Enabled = false

๐Ÿ› ๏ธ Build

Build from the project directory:

dotnet build -c Release

After a successful build, CompactStatusSquares.dll is copied to the game's BepInEx plugins folder.

For testing through Gale, copy the DLL into the profile's plugin directory:

BepInEx/plugins/cjayride-CompactStatusSquares/

๐Ÿ“„ Credits

Compact Status Squares uses Valheim's existing status-effect artwork and is designed to complement SeneaL UI.

CHANGELOG

0.2.3

  • Packaging fix: CHANGELOG.md and manifest.json are saved without a UTF-8 BOM (Thunderstore's validator rejects BOM-prefixed files). No behavior change - v0.2.2's portal-trip fix is included.

0.2.2

  • The squares now hide themselves while the player is travelling through a portal. They are drawn with OnGUI, and Unity composites IMGUI after every UI canvas pass, so no canvas setting could ever put a custom loading screen over them - not drawing them during the trip is the fix. Status effects keep running; the squares return the moment you arrive.

0.2.1

  • Default IconSize is now 50 (fresh configs only; existing IconSize in your cfg file is unchanged).

0.2.0

  • Release for Valheim 1.0.21 (Unity 6): status squares draw with OnGUI in screen pixels. Unity UI on the game HUD was invisible in practice; SeneaL UI is optional, not required.
  • Lighter HUD path: no per-label Outline meshes, no extra overlay canvas, SeneaL scans only when SeneaL is installed.
  • Startup logs explain when squares are hidden (no player, HUD toggled off, no buffs, and so on).

0.1.15

  • Draw status squares with OnGUI in screen pixels. Valheim 1.0.21's HUD canvas was swallowing the Unity UI layer, so icons could log as drawn and still be invisible.
  • Log the first reason squares are skipped (disabled, no player, HUD hidden, no effects, no icons).

0.1.14

  • Squares now stretch across Valheim's HUD canvas, so they sit in the chosen screen corner instead of a 100x100 box in the middle of the HUD.
  • Dropped Unity UI Outline and stopped rebuilding layout five times a second, which was hammering FPS.
  • Skip SeneaL leftover scans when that mod is not installed. Show squares whenever the vanilla HUD is visible.

0.1.13

  • Parent the squares under Valheim's own HUD root instead of a separate overlay canvas, so they render on Valheim 1.0.21 / Unity 6 without SeneaL UI.
  • Track slot placement explicitly so recreated HUD layers still position every square.
  • Log once when the game reports HUD effects but none have icons to draw.

0.1.12

  • New status squares stay hidden until they are placed in the list, so they no longer flash at a default screen position when an effect is applied.

0.1.11

  • Re-checked against Valheim 1.0.21 (Hud.UpdateStatusEffects, SEMan.GetHUDStatusEffects, StatusEffect.GetIconText).
  • Cut per-frame HUD work: cache layout/fonts, skip unchanged squares, localize names once, and stop reflecting into SeneaL UI every frame.

0.1.10

  • Verified against Valheim 1.0.21 (Release build).
  • BepInEx dependency set to denikson-BepInExPack_Valheim-5.4.2360.

0.1.9

  • Defaults: NameGap 1.731, Spacing 5.616, ShowName Bottom, TextScale 0.83.

0.1.8

  • A name above or below an icon sits on the icon edge, and the next icon starts under that line.
  • Defaults: ShowName Bottom, NameGap 0, TextScale 0.83, Spacing 11.

0.1.7

  • ShowName can also place the status name Top or Bottom of the icon.

0.1.6

  • NameGap sets the pixels between the icon and the status name, so the name can clear the comfort number.
  • FillPreview draws sample squares, including Resting Comfort with 16, so the layout can be checked with no status effects. Off by default.

0.1.4

  • Removed the Alt coordinate overlay and the Alt+arrow nudge. Position stays in the config.

0.1.3

  • TextScale sizes timers, comfort numbers, names, and the hover tip.
  • ShowName can draw the localized status name Left or Right of the icon (Off by default).
  • UseVanillaFont switches those labels to Valheim's Norse font.

0.1.2

  • Stop NullReferenceException spam on logout: SeneaL's status panel is already destroyed while LateUpdate still ran.

0.1.1

  • Default cluster sits in the top-right with OffsetX -18, OffsetY -18, and IconSize 36.577.

0.1.0

  • Small square status icons using the vanilla effect sprites.
  • Screen corner, offset, size, columns, and spacing are configurable, including in-game nudge.
  • While this mod is on, it takes the status-effect slot: SeneaL UI's pills stay hidden and the large vanilla list is not drawn.