Files
helldivers/CHANGELOG.md
T
2026-03-31 18:42:48 +02:00

5.8 KiB
Raw Blame History

Changelog helldivers-trainer

[2.1.2] 2026-03-31

Changed

  • Stratagem main icon: Größer (86→110px, mobil 70→88px), hellerer Gold-Filter mit drop-shadow Glow, leuchtender Kreis-Hintergrund für besseren Kontrast
  • Queue preview: Icons größer (36→44px), Labels wrappen jetzt über 2 Zeilen statt abzuschneiden, Breite von 60→72px pro Item, Abstufung der Opazität (75%/55%/40% statt 70%/45%)

[2.1.1] 2026-03-31

Fixed

  • Speedrun scores never saved: Individual scores were blocked by if (mode !== 'speedrun') guard; now saved per-stratagem like other modes. Final bulk-save with invalid __speedrun__ stratagem name removed (was causing 400 errors).
  • Dashboard recent-sessions icons missing: r.icon was always undefined since the server doesn't store icon paths in the DB. Now looks up icon from state.stratagems by name.
  • Variable shadowing in renderDashboard: Outer const r = eloRankFor(...) was shadowed by recent.map(r => ...). Renamed outer to myRank.
  • N+1 DB queries in broadcastLobbyUpdate: Was running one SELECT elo per online user. Now batches into a single WHERE username IN (...) query.
  • N+1 DB queries in dashboard endpoint: Same pattern fixed for the /api/dashboard online-users list.
  • Unnecessary typeof guards: typeof u === 'object' checks in lobby/dashboard removed — lobby-update always sends objects, never plain strings.
  • Duplicate else if (mode === 'endless') branch in nextStratagem: Was identical to the else branch below it; merged.

[2.1.0] 2026-03-31

Added

  • Stratagem icons: 65 SVG icons downloaded from community icon set, served as static files under /icons/; icon download script at scripts/download-icons.js
  • Gold CSS filter on all stratagem icons to match the game's yellow accent theme
  • Session summary modal: opens after stopping practice or finishing a drill/speedrun — shows score, completed count, accuracy, best time, and top 5 stratagems
  • Queue preview strip: shows next 3 upcoming stratagems (with icons) below the active stratagem
  • Score popup animation: floating +N pts text appears on every correct completion
  • Shake animation on wrong input: stratagem icon shakes on incorrect arrow key
  • Icon complete pulse: stratagem icon scales + brightens when sequence is completed correctly
  • ELO rank icon in post-match result header (matches rank tier badge)
  • Inline icons in history table rows, best-per-stratagem table, and leaderboard
  • scripts/download-icons.js — automated icon fetcher from GitHub community SVG repo

Changed

  • index.html fully rewritten: new elements for icon display, queue, score popup, session summary modal
  • app.js fully rewritten (~1100 lines): icon helpers, queue builder, popup system, session stats, improved match/lobby flows
  • server.js STRATAGEMS array: all 65 entries now have icon field (or null for missing ones)
  • broadcastLobbyUpdate() now sends [{name, elo, rank}] objects with CSS-safe rank labels
  • challenge-received WS event now includes challenger ELO for display in challenge modal

[2.0.0] 2026-03-30

Added

  • 4 Practice modes: Timed (configurable 15/30/45s, SVG ring timer), Endless (3 lives), Category Drill (progress bar), Speed Run (all stratagems, total time)
  • Settings modal: timer duration and difficulty (Easy/Normal/Hard) persisted in localStorage
  • History view: paginated session table with mode/category filters, SVG polyline score chart, best-time-per-stratagem table
  • ELO rating system: server-side ELO (K=32) calculated after every match; rank tiers PRIVATE → GENERAL
  • Post-match result modal: ELO delta display (before → after +N), round-by-round history
  • Challenge modal: incoming challenge shows challenger name and ELO; replaces toast notification
  • Dashboard hero card: ELO rank badge, rank icon, daily sequence preview arrows, mode column in recent sessions
  • Leaderboard tabs: Practice Score / ELO Rating / Speed Run with correct column headers per tab
  • Mobile hamburger nav: slide-in drawer with overlay backdrop, Esc key closes modals
  • DB migration: elo column on users, mode column on practice_sessions, stratagem_stats table
  • Lobby redesign: ELO + rank shown per player, 2-column layout (Online + Incoming Challenges)
  • View fade transitions on every view switch
  • Danger vignette flash at ≤5s timer remaining
  • Streak fire glow effect (streak ≥ 5), combo multiplier badge (×N, streak ≥ 2)
  • Keyboard shortcuts: Esc stops practice / closes modals, Enter starts practice
  • aria-label on all D-pad buttons, modals with role="dialog" and aria-modal="true"

Changed

  • Full CSS redesign (~700 → ~1200 lines): glassmorphism cards, new design tokens, SVG timer ring, skeleton shimmer, animated modals
  • Dashboard online list now shows ELO; lobby shows ELO + rank per player
  • WS lobby-update now sends [{name, elo, rank}] objects instead of plain usernames
  • WS challenge-received now includes challenger ELO
  • Practice leaderboard query joined with users.elo for rank badge display

[1.0.0] 2026-03-30

Added

  • Initial release
  • Session-based auth with admin and user roles (mustChange password flow)
  • Admin panel: create/delete users, view temp passwords
  • Practice mode: randomized stratagem training with 30s timer, streak scoring
  • Category filters for practice mode
  • 1v1 mode via WebSocket: challenge system, lobby, real-time match (first to 5 rounds)
  • Dashboard: personal stats, daily challenge, online users, recent sessions
  • Leaderboard: top-20 by total score, sessions, match win rate
  • SQLite database (WAL mode) for users, practice sessions, matches
  • Helldivers 2 military UI theme (dark, yellow accents, grid overlay, scanlines)
  • Mobile D-pad support
  • Arrow key input with correct/wrong animations