BLISTER
ONLINE WIKI

Community documentation for Blister Online, build 1327.

System mechanic — not covered elsewhere

HUD Customization

A small ✥ button in the corner unlocks 28 individual, draggable HUD pieces — separate entirely from the game's draggable panels

This is a different system from the Window System, which covers the game's 24 pop-up panels (inventory, crafting, the map, and so on). HUD customization instead covers the pieces the game draws directly onto the screen during ordinary play and never closes — the clock, the compass, the crosshair, the minimap, the status stack, and 24 others — none of which are windows and none of which carry a title bar to drag by.

The ✥ arrange button

A small button sits fixed in the corner of the screen at all times, labelled ARRANGE. Clicking it releases your mouse from the game (exiting aim-lock, since you can't drag anything with a pointer that isn't visible) and draws an outlined box with a name and a grip handle over every one of the 28 registered HUD pieces. Dragging a box moves the real piece underneath it. Two of the 28 — the message feed and the skills column — can also be resized, which changes how much they show rather than just where they sit: a taller message feed keeps more lines on screen (up to fourteen), and a taller skills column shows more skills at once. The other 26 are move-only, including the minimap, which is deliberately not resizable — it's a canvas drawn at a fixed pixel size, and stretching its box would only blur it.

Every position you set is saved automatically and restored the next time you play. A ↺ RESET button undoes everything in one click — position and visibility both — but it only appears once you've actually moved something, so it isn't a permanent extra control cluttering the screen for players who never touch the feature.

Switching modules off from the Pause menu

Every one of the same 28 HUD pieces also gets its own ON/OFF switch, listed by name on the Pause menu (press [Esc]) under a HUD MODULES section — the same menu that holds mouse sensitivity, volume, brightness, scanlines, vignette, a View Distance option, and the interface theme. Switching a module off hides it immediately and keeps it hidden even through the game's own repaint loops — several of these pieces redraw themselves every quarter second, and a naive hide would simply be undone by the next repaint. The same ↺ RESET button brings everything back, visibility included, so switching off your own hotbar readout and forgetting about it is always recoverable without touching your save.

Two more HUD settings, outside the 28-module registry

Two further controls affect the HUD but live outside everything described above. Pressing ['] (apostrophe) hides the entire HUD at once and expands the game to fill the whole browser window — press it again to bring both back. And a separate CREATURE HEALTH BARS toggle on the Pause menu, sitting right beside the HIDE THE HUD option it's easy to confuse it with, controls whether the floating health bar over each creature is shown at all — its own setting flips ON to mean shown, deliberately the opposite convention from its own neighbour, so two side-by-side toggles don't quietly mean opposite things under the same word. It applies immediately to creatures already standing in the world, not just ones that spawn afterward.

Hiding the whole HUD with ['] used to genuinely mean it, but only for the game's older interface layout — the newer console-style layout has its own separate root the hide rule had never been taught about, so hiding the HUD there left the newer interface fully on screen and hid nothing. Whatever weapon or tool you were holding also stayed visible either way, since it's drawn directly into the 3D scene rather than as part of the HUD. Both are fixed now: the newer interface hides correctly, and the item in your hand disappears along with everything else — its own on-screen position is completely untouched, it simply isn't drawn at all while the HUD is off.

View Distance: a real performance option, off by default

A separate View Distance setting on the same Pause menu offers three levels — Full, Far, and Near — and trades visible world for real performance: at its shortest setting it hides whole map chunks of scenery once you're far enough from them, cutting measured frame time by roughly a quarter in testing. It only ever hides scenery — trees, rocks, terrain detail — never the sky, never creatures, never anything held or drawn on the HUD, so nothing you actually need to see or fight can vanish this way. It defaults to Full (everything rendered, nothing culled) specifically so the game's normal feel never changes unless you choose otherwise.

According to the development log, View Distance is the one survivor of three different performance approaches that were tried for the same underlying complaint — a city scene with thousands of separate building materials is heavy on the graphics card regardless of how far a player can see. A shared-material cache, the more obvious-looking fix, was built and measured directly against the setting above: it came out roughly 18% slower, not faster, so it was never shipped. Hiding distant scenery outright, simple as it is, was the one approach that actually measured better.

UI Scale: one slider, ten panels

A UI SCALE slider on the Pause menu, running from 0.8× up to 1.6×, is meant to grow the text across the game's docked panels — the inventory sidebar, the quest dialogue panel (where the overwhelming majority of the game's actual writing gets read), the help and stats screens, the guidebook, the collection log, and the bestiary among them — for anyone who finds the default size too small. Getting there took a dedicated run of several versions: most of those ten panels originally ignored the setting completely, several hard-code pixel sizes deep inside their own layout in ways a simple font-size change can't reach, so each had to be individually converted to a proper zoom that scales everything on it together while a length divisor keeps the panel's own size and position exactly where they were at 100%. One side effect of that fix needed a fix of its own: zooming a panel down at the smallest 0.8× setting could shrink a few of its clickable controls below the game's own comfortable minimum tap size, which is now guarded against at every setting.

A cluster of sliders for things nobody but the player can judge

The same Pause menu carries four more sliders, added one at a time whenever a request turned out to be a matter of taste rather than something with a single correct answer — according to the development log, the first of them (World Darkness) existed specifically because an earlier back-and-forth over exactly how dark the world should look had already cost three separate builds, each one changing a number that only the person looking at their own screen could actually judge.

SliderRangeWhat it does
World Darkness0–70%Dims the world itself; every panel and window stays exactly as bright regardless of this setting.
Render Resolution45–100%Trades frame rate for sharpness — 100% renders five times the pixels of the 45% floor, which is as low as it goes since anything softer looked worse than the textures it was drawing.
Creature Size1.0×–5.0×Scales creatures up. Only affects ones that spawn after you change it — the scale is baked into a creature's model the moment it's created, so anything already standing in the world keeps the size it was born with.
Melee Reach+0 to +10Adds flat extra range to every melee weapon in the game, applied the instant you move the slider since it's read fresh on every single swing.
Melee Speed1.0×–3.0×How fast you swing a melee weapon, defaulting to 2.5× — the actual attack rate is still capped at 10 swings a second underneath this, deliberately not exposed as a slider option of its own, so a player can't drag their way into fifty swings a second.
Melee Damage0.30×–1.00×Per-swing melee damage, defaulting to 0.80× — combat experience is paid from the same number, so lowering this also slows how fast Attack, Defence and HP train from melee kills.
Field of View60°–110°Your camera's base field of view, defaulting to 72°.

A separate Speed FOV Kick toggle, on by default, widens the camera further still while you're moving unusually fast — specifically once you're moving well past a normal run's top speed, the kind of speed usually only reached by bunnyhopping — smoothly adding up to another 16° on top of whatever your base Field of View slider is set to, and just as smoothly easing back once you slow back down.

Creature Size and Melee Reach both trace back to the same kind of request — "make creatures 2 to 4 times as big" and "much bigger reach" — where a spec had to guess at a starting number (3.0× and +3 respectively) that neither the operator nor the person implementing it could actually judge from a number alone. Turning both into sliders let the question answer itself instead of costing a build each time someone wanted to try a different value.

Melee Speed and Melee Damage exist for the identical reason, with a specific, quantified problem behind them: an earlier request to let melee swing up to 10 times a second, at reduced damage per hit, worked out to roughly double the damage per second for every existing character against every enemy in the game — and because combat experience is paid per point of damage dealt, it also doubled how fast Attack, Defence and HP could be trained. Rather than resolve that by picking one more number, both halves became sliders so the actual pace of melee combat is something a player sets for themselves. This is a separate multiplier from the flat, unrelated damage reduction described on Tiered Gear — the two stack rather than being the same dial twice.

Ten ambient banners, all off by default

A cluster of ten short banner lines — sharing one fixed column in the centre of the screen, the same column the "BANNERS" piece above moves as a whole — are switched off by default, each with its own individual switch on the Pause menu. Several of these are the visible face of other systems this wiki documents in full elsewhere: A Mark Stands (the Walk Back), The Quiet, A Day's Work (the Eight's nine), The Climb, and The Haunt. The other five are more functional than ambient — Your Ground, On A Round, a dropped-stone alert carrying its own [F10] prompt, a compass Bearing readout, and an in-progress carry called Under — and were switched off along with the rest at the same request, even though they're closer to task readouts than mood text.

Turning a banner off never stops the system behind it from tracking — The Quiet still measures your distance since a kill and the Walk Back still tracks your distance from a death mark whether or not either banner is showing, so switching one back on later shows a live, already-accurate number rather than one restarting from zero. If you've read about any of these systems elsewhere on this wiki and never actually seen the banner in play, this is almost certainly why — it's not that the system isn't running, it's switched off on the display by default.

Panel Skins: your own border art

A separate PANEL SKINS button on the Pause menu opens a third kind of customization — applying real border and background artwork to individual HUD surfaces, rather than moving or hiding them. Nine pieces of art ship with the game, and any of them can be assigned to any skinnable surface — there's no fixed pairing between a given piece of art and the panel it was originally drawn for. For each surface you can set the image, how it fits (a stretched 9-slice frame that keeps the art's corners from smearing, a straight stretch, or a tile), the frame's thickness, its opacity, whether it draws over or under the panel's own content, and whether the panel's own plate stays visible underneath the art or gets fully replaced by it. Clearing every surface returns the interface to exactly how it looked before Panel Skins existed — nothing is left behind.

Only ten surfaces are skinnable this way: the nine original HUD pieces from the very first arrange pass, plus the hotbar. The 19 pieces added later by the HUD Modules expansion above aren't included, and neither are the game's pop-up windows described on the Window System page — those are a different shape of problem the design notes describe as its own, still-undecided project.

The enemy health readout: a genuine bug, not a display option

The small plate that shows a targeted enemy's name, level and health — part of the newer console-style interface described above, not something you configure — used to be wrong in a specific, reproducible way: a full-health enemy could show its bar as completely empty. The cause was plumbing, not math. The plate was supposed to read the enemy's stats directly, but the direct path was never actually wired up, so it fell back to scraping the digits out of a different, older on-screen readout's plain text instead — and that readout draws the enemy's level and its health right next to each other with nothing separating them. A level-4 enemy at full health could read as "412" with nothing to tell the plate where the level ends and the health begins, so it split the digits in the wrong place; whenever that misread health happened to end in a zero, the bar showed 0 out of a real max, making a perfectly healthy enemy look dead. It's fixed now — the plate reads the enemy's actual values directly — and as a side effect, if you ever see the plate show no numbers at all instead of a wrong one, that's deliberate: a reading where health would exceed its own maximum is treated as impossible, so the plate now shows nothing sooner than showing a number it can't trust.

The one place text still gets cut off with "…"

According to the development log, a full sweep of the entire interface for anywhere text is silently truncated with an ellipsis — after the message-feed wrapping fix described above closed the most visible case — found exactly one place left: the small item-name label under each hotbar slot. That label sits in a box only about 32 pixels wide at a small font, room for roughly seven characters, so most item names get cut down to a stub — "Rusty Pickaxe" and "Rusty Axe" end up distinguished by a single visible letter. The label was originally added specifically because the icon alone often can't tell two similar tools apart, so a name this heavily truncated only does part of the job it exists for. As of this writing this hasn't been changed — it's recorded here as the one remaining truncation spot in the game, not as something that's been fixed.

Version history

  • The first nine pieces made draggable, and framed as boxes with drag handles specifically so nothing had to be bolted onto elements that ignore clicks by design — several of the original nine are drawn with pointer-events disabled so they never steal a click meant for combat.
  • Nineteen more pieces registered, closing the gap between what players could move and what they'd actually asked to move — everything from the clock and compass down to the "SAVED" indicator and the daily-deed chip. Two candidates were deliberately left out: the minimap itself (it's a canvas already living inside an existing registered piece, and giving it a second handle would let it be dragged apart from its own frame) and the hotbar (its nearest positioned ancestor is the whole bottom bar row, so registering it would move the entire row rather than just the hotbar — left as a decision for later rather than made silently here).
  • Per-module visibility added, the harder half of the feature: because several pieces are repainted on a timer, a plain inline style toggle would be undone within a quarter second. Solved with a single stylesheet rule per hidden module, which always outranks the inline style those repaint loops set.
  • The Pause-menu switch list added, so turning a module off no longer required the browser console — the only way to reach the feature for one full build.
  • Fixed the message feed cutting messages off with "…" instead of showing them. Messages routinely ran to roughly double the feed's own width — not an edge case, the ordinary case — and an earlier fix had only added a tooltip readable on hover, which doesn't help while the mouse is locked to the camera during ordinary play, exactly when the feed is actually being read. Long messages now wrap onto extra lines instead of being clipped, with the feed itself capped so a run of unusually long messages can't grow off the top of the screen.
  • Fixed the way back being hidden inside the very mode a player would need to already know about. The reset button originally only appeared while arrange mode was open — a player who accidentally dragged something and closed the menu had no visible way back. It now also appears automatically any time a saved layout exists, whether or not arrange mode is currently open.
  • Panel Skins added, directly from a request to make nine pieces of border and background art the operator had drawn settable from the game's own menu rather than baked into a fixed layout. Built as a 9-slice frame so a border's drawn corners never smear when stretched to fit a differently-shaped panel, with each surface's frame thickness independently clamped so it can never eat more than 90% of a small panel's own box.
  • Fixed the enemy health plate reading a full-health enemy as empty. The plate never actually had its own direct link to the enemy's stats — it scraped the digits out of an older, unrelated readout's text instead, and that readout glues an enemy's level and health together with nothing between them, so the split landed in the wrong place whenever the misread number happened to end in a zero. Wired the plate to the enemy's real values directly; it no longer parses anything.
  • v1110 — six sliders now show their own default next to the current value. Field of View, World Darkness, Creature Size, and the three melee sliders all save permanently between sessions, but nothing on screen said what any of them originally shipped as. Each now shows a dim "· default X" note beside its readout whenever it's been moved away from that default, and stays quiet when it hasn't. Render Resolution is the one slider left out of this — its 45% floor is the slider's own lower bound rather than an ordinary default value, and it's owned by a different part of the settings code.

Trivia

  • Every ON/OFF button on the Pause menu's HUD list carries its own accessible name — "clock on", "clock off", and so on — rather than a bare "ON"/"OFF" repeated 28 times over, a deliberate fix after an earlier accessibility sweep found the same problem on a much smaller set of toggles elsewhere on the same menu.
  • That naming scheme briefly collided with something else already on the same Pause menu: Compass is both a HUD module you can show or hide here and a separate on/off setting elsewhere on that same menu, and for a short stretch both controls carried the identical accessible name ("compass on" / "compass off"), making it impossible to tell which one a screen reader was actually pointing at. Every module's accessible name now reads "show X module" / "hide X module" instead, so no HUD toggle can collide with an unrelated setting that happens to share its subject again, for any of the 28.
  • The banners aren't part of the movable status stack at all, despite looking similar — they're drawn in a separate, shared centre column several unrelated systems all take turns using.
  • Real world X/Z coordinates are on the HUD — added on request, because the only number that previously looked like a position was actually the chunk index the map streams by, which reads nothing like your actual location (it showed "0,0" while genuinely standing at world position 512,0). The chunk index is still shown too, just labelled separately, so the two can't be mistaken for each other.
  • Applying a skin to the minimap did nothing at all the first time it shipped — not because the frame was broken, but because the minimap draws an opaque canvas that fills its own box, painting straight over a skin drawn behind it. A border going over its own panel's content, rather than always sitting behind it, turned out to be the ordinary case for several of these surfaces, not a special one.
  • The ['] shortcut used to be bound to that exact physical key position rather than to the apostrophe character itself — on a German QWERTZ keyboard that position actually types an umlaut, while the real German apostrophe key (Shift+#) did nothing at all. It's since been fixed to accept whichever physical key or character the player's own keyboard layout actually produces, with the on-screen reminder naming the real key for their layout rather than a fixed one.