Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
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.0 |
| Download link | cjayride-CompactStatusSquares-0.2.0.zip |
| Downloads | 28 |
| Dependency string | cjayride-CompactStatusSquares-0.2.0 |
This mod requires the following mods to function
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.2360README
๐ฆ 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] StatusEffectsis 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_CLIENTsennealteest
Quick Test
- Launch one of the profiles and load a character.
- Pick up a status effect, such as Rested, a potion buff, Wet, or Cold.
- Confirm the effects appear as small square icons.
- Check that SeneaL UI's status pills remain hidden.
- 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.mdandmanifest.jsonare 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
IconSizeis now 50 (fresh configs only; existingIconSizein 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.