Longhouse 2.0.3
10 September 2026. After 2.0.2.
Repins Rist to 1.2.1.
Fixed
- Rist's experience bar disappeared and did not come back. On a server it went before you ever saw it; in singleplayer it went the first time you died or hid the HUD. The bar is a clone of the eitr panel, which vanilla keeps switched off for a character with no eitr, and the one write that brought it up was lost the first time the bar was hidden. Nothing was wrong with anyone's experience or levels - it was the display only, and the panel kept showing the right numbers throughout.
Changed
- The "rist waiting" note now sits above the bar and follows it, rather than at a fixed screen position it had drifted away from.
- Rist's bar positions are measured against your HUD's canvas scale now instead of in raw
screen pixels, so the position a server sets is the same visual position on every
player's screen. If you had tuned
BarPosXorBarPosYby hand in singleplayer, they mean something slightly different after this and may want re-nudging once. On a server the host's values apply either way.
What moved · 1
Rist 1.2.0 → 1.2.1
1.2.1
Fixed
The experience bar disappeared and never came back. It went the first time it was hidden - which on a dedicated server was immediately, before anyone saw it, and in singleplayer was the first time you died or pressed the hide-HUD key.
The bar is a clone of the eitr panel, and the eitr panel spends its life switched off for a character with no eitr: vanilla's hide clip does not fade it, it deactivates its parts by name through
AnimationObjectToggle. Everything the clone showed - frame, track, both fills, text - came from oneSetBool("Visible", true)written once when it was built. The bar was then hidden and shown withSetActive, and disabling a GameObject disables its Animator; Unity'skeepAnimatorStateOnDisabledefaults to false, so re-enabling rebinds it and resets every parameter to its authored default.Visiblewent back to false, the show clip never played again, the parts stayed inactive, and nothing re-asserted it.It is hidden by a
CanvasGroupalpha now, so nothing is ever disabled and nothing rebinds. The clone is also detached from the borrowed animator entirely at build time and brought up by hand instead - handing a permanently visible bar's visibility to a controller whose whole job is hiding the eitr panel was the mistake underneath. The flash on a waiting pick is driven here now rather than through the donor's trigger.Both
GuiBarcomponents are destroyed at build time as well, with what they point at cached first. That was the next failure waiting: this file already drives both fills by hand becauseGuiBarcachesm_barImageinAwakeand re-readsm_widthon the firstSetValue, and its comment noted thatLateUpdate"never runs, because the donor's parts are inactive". Activating those parts made it run, and it would have squashed every width tom_width * valuewith anm_widthcaptured from a donor whose fills are zero wide.Reported from the live server by a player and reproduced on two machines.
discussThe "rist waiting" note is above the bar, and follows it. It was drawn at
discussBarPosXandBarPosY, which are only where the bar is whenBarFollowStaminais off - and that has defaulted to on since the bar started following the stamina bar, so the note sat at a point the bar had long since left. It is measured off the bar's real top edge now, taken from the union of its child rects rather than the root's own, which is a thin strip that runs through the middle of what you can see.The bar no longer re-pins itself during a cutscene, when
discussHudhas parked its whole root off screen at x=10000.
Changed
Every position in the
[Bar]block is now measured against your HUD's canvas scale instead of in raw screen pixels. The bar's placement is a server setting - the host decides where it sits so that everyone on a server sees the same layout - and a raw pixel offset could not deliver that: 70 pixels below the stamina bar is a different place on a 1080p screen, a 1440p screen, and for a player running the HUD at 1.4. Multiplying by the scale factor Valheim's ownCanvasScalerapplies turns one imposed number into the same visual position on every screen. The IMGUI text scales with it too, with 12px as a floor rather than a fixed size.BarSizeis deliberately untouched: it is set in canvas units and the scaler is already applying the same factor to it.On a screen at scale 0.93 this moves the bar about five pixels; the defaults are kept as round numbers rather than retuned to cancel that out on one particular monitor.
discuss
Added
discussBarNoteGap, the gap between the top of the bar and the note above it.
Discussion
Nothing said yet.
Sign in or make an account to join in.