HyperTrace 1.0.0
HyperTrace 1.0.0 - Release notes
Everything that changed since the last released build (0.7.2).
Renamed: LMU App → HyperTrace
- The app is now called HyperTrace, with a new icon. Settings/logs moved from
~/.lmuapp/to~/.hypertrace/— nothing is carried over automatically: you'll start with default overlay positions and your presets need to be recreated. Once you're set up, the old~/.lmuappfolder is no longer used and can be safely deleted.
New: Damage overlay
- New "Damage" widget — top-down car silhouette , 17 zones total: 4 body edges + 4 corners, 4 wheels, 4 suspension wishbones, and the rear wing as its own zone. Each zone is coloured on a 4-level severity scale (grey/amber/orange/bright red for the most severe level).
- Wheels show detached/punctured state; suspension shows damage tiers; body zones and the rear wing. No text or numeric readout — the silhouette is the whole display, matching the design spec.
Main window redesign
- Sidebar layout — the window is now a wider (560px) panel with a navigation rail on the left (Overlays / Presets / Stream / Broadcast, active page marked with an amber bar) instead of the old top tabs, in the style of typical sim-racing companion apps.
- Header bar — app name and version always visible at the top, on every page.
- Status footer — a permanent strip at the bottom shows at a glance whether the game is connected, REST enrichment is active, the stream is on, and broadcast is on.
- Global controls grouped — Lock/Free, Auto-hide and Merge Fuel & VE now live in a visually distinct "Global controls" card at the top of the Overlays page.
- One single preset control — a dropdown to switch, plus Save / Save As, at the bottom of the Overlays page; the active preset is also highlighted in the Presets page list.
- Deleting a preset now asks for confirmation — the trash button turns into a check on first click; clicking the check confirms the deletion, and it reverts to a trash on its own after a couple of seconds if you don't. No popup dialog.
- Fixed Broadcast settings resetting on every launch — the app was force-resetting that toggle to on at startup regardless of what was saved; it now stays exactly as you left it.
- Tower is now off by default on a fresh install, matching Battle/Driver Card/Sectors (it used to be the only one of the four turned on automatically).
- Each preset is now its own file, under a new
presets/folder next to the config, instead of all being bundled together inside the main config file — easier to back up, share, or edit a single preset by hand. - Internal: the window's small custom controls moved to their own module (
main_window_controls.py), the hand-rolled segmented buttons and the triple-duplicated Battle/Driver Card/Sectors exclusivity were replaced by two small reusable components, and the toggle colors moved into the central theme.
Fuel & VE Calculators
- Fixed REFUEL showing absurd values (a long race with a low-consumption class could show a refuel amount many times over 100%). REFUEL now shows what actually makes sense to add at your next stop, capped to what the tank can hold; the old "FINISH" column is now "TO END" and shows the total amount still needed for the rest of the race, uncapped — which is what could grow that large, just correctly labeled now.
- New "TANKS" column — number of full tanks/refills still needed to reach the end of the race, e.g. 400L needed with a 50L tank reads "8.0". Shown alongside "TO END".
- REFUEL and TO END now also work in Practice and Qualifying, not just Race.
- More accurate numbers overall — LAST and AVG 5 now read each lap's consumption from the same background engine that already ran everything else in the app, instead of a simpler estimate computed inside the widget itself. Laps remaining now accounts for exactly where you are on the current lap rather than rounding to the nearest whole lap.
- Fixed the VE bar always showing green regardless of level — it now turns orange under 25% and red under 10%, matching the VE column in Standings.
New: Auto-hide (replaces "Hide in garage")
- New Auto-hide toggle in Global Controls (Overlays page) — when on, every overlay hides automatically unless you're actively driving on track, same as the game's own on-track detection. Off by default.
- Replaces the old "Hide in garage" toggle, which is now removed for desktop overlays — Auto-hide already covers the garage case and more (menus, replays, anywhere you're not actually driving). The Stream page keeps its own separate "Hide in garage" toggle, unaffected.
Class badges
- LMP2 and LMP3 now show their full names instead of "P2"/"P3" wherever a class badge appears.
Under the hood
- One typeface across the whole app — the Live Timing panel was still drawn in the system font, and its session clock in a third font again, while everything else used Montserrat; all of it now matches. The unused JetBrains Mono and Saira SemiCondensed files are no longer bundled either, which takes about a megabyte off the download.
- REST enrichment no longer runs when there's nothing to enrich — the background thread that queries LMU's local API (car numbers, team names, class gaps, weather forecast, suspension damage) used to send requests five times a second even with the game closed, on a loading screen or alt-tabbed. It now waits until a session is actually live.
- Third-party attribution — the app now ships a
THIRD_PARTY_NOTICES.mdcrediting the GPLv3 project the calc engine and the overlay update loop are adapted from.