File Details
v0.1.0-classic
- R
- May 15, 2026
- 16.76 KB
- 2
- 1.15.8
- Classic
File Name
HelloLog-v0.1.0-classic.zip
Supported Versions
- 1.15.8
HelloLog
v0.1.0 (2026-05-15)
Full Changelog Previous Releases
- Wire toc to CurseForge project 1544304
Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com - Add CurseForge release workflow
Tag pushes matching v* trigger BigWigsMods/packager, which:- packages the addon into a release zip
- creates a GitHub release using the built-in GITHUB_TOKEN
- uploads to CurseForge when CF_API_KEY is configured as a repo secret
.pkgmeta sets package-as: HelloLog so the zip folder name matches
the toc, and ignores the workflow, pkgmeta itself, README, and the
logo so they aren't shipped to clients.
To finish setup:
- Create the project on CurseForge and copy its project ID.
- Add "## X-Curse-Project-ID: <id>" to HelloLog.toc.
- Add a CF_API_KEY repo secret (https://www.curseforge.com/account/api-tokens).
- Tag a release: git tag v0.1.0 && git push --tags
Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com
- HelloLog: per-zone session log for Classic Era
A loot, gold, kill, reputation, and zone-visit tracker that records
into a single per-zone bucket per recording session.
Recording flow- Pressing Record locks the active bucket to the player's current
zone. ZONE_CHANGED_NEW_AREA only appends a timestamped visit
entry; the bucket stays attached to its starting zone until Stop
archives it or /hl wipe clears everything. - Recording state (HelloLogDB.state.recording) and the locked zone
(state.zone) persist across /reload; secondsActive is flushed
once per second so a reload loses < 1s. - Stop archives the live bucket to HelloLogDB.history with a
closedAt timestamp. New archives the current bucket and starts a
fresh one in the player's current zone.
Data captured per bucket - Loot: CHAT_MSG_LOOT parsed against LOOT_ITEM_SELF/_MULTIPLE
/_PUSHED/_CREATED with item links, counts, quality, and icons. - Money: positive deltas on PLAYER_MONEY.
- Kills: any hostile NPC damaged by a MINE|PARTY|RAID source that
subsequently fires UNIT_DIED is credited as a kill (so healers
and non-DPS roles get attribution without relying on PARTY_KILL,
which is subgroup-scoped). - Per-mob loot: drops attributed to the player's current dead
target at the moment the loot message arrives. - Reputation: CHAT_MSG_COMBAT_FACTION_CHANGE parsed against
FACTION_STANDING_INCREASED/_DECREASED into a signed delta per
faction. - Zone visits: timestamped log of every ZONE_CHANGED_NEW_AREA
while recording, plus the seed zone on Start / New.
UI - Single Blizzard BasicFrameTemplateWithInset window, 420px wide
by default, anchored TOPRIGHT to UIParent (below the minimap)
so dragging and resizing grow downward. - Compact header: Record / Stop / Details buttons, zone name,
one stats line below (time · kills (rate) · gold with dim
middle-dot separators), an optional rep line, and a quality-
bordered icon grid of looted items below. - Clicking Details widens the panel to 560 and shows an expanded
body whose mode cycles Live → History list → Back via a single
toggle button. The body has a pinned session summary above a
scrollable section stack:
Reputation — per-faction cumulative delta with /hr rate
Zones visited — timestamp · zone · duration
Items — name, count, /hr rate, quality-coloured
By mob — kill count + rate · item count + drop icons - Hovering any per-mob drop icon adds "From this mob: N/hr" to its
tooltip. Per-hour rates are suppressed for the first 30s.
Persistence (HelloLogDB, per-character) - sessions[zone] — currently open buckets
- history[] — archived buckets, sorted by closedAt desc in
the history list view - state.recording, state.zone — recording lock
- ui.point, ui.expanded — window placement and toggle
Slash commands
/hl or /hellolog: start, stop, show, detail, reset, resetpos, wipe
Files
Core.lua — addon bootstrap, event multiplexer, slash router
Session.lua — bucket lifecycle: Start/Stop/Close/New/Tick/Wipe,
zone lock, archive
Loot.lua — chat-loot parser and money delta tracker
Rep.lua — reputation parser
Kills.lua — damage→UNIT_DIED kill attribution
Detail.lua — expanded body: summary + sections + history browser
UI.lua — main frame, buttons, compact stats lines
🤖 Generated with Claude Code
- Pressing Record locks the active bucket to the player's current

