# Murloc Minder Changelog

## 0.1.8 - 2026-03-02

### Fixes
- Fixed `Delete This Murloc` so unnamed pets can be deleted again by using fallback confirmation phrases instead of requiring a custom name first.
- Fixed delete confirmation matching to be more forgiving by normalizing casing and extra spaces before comparison.
- Fixed template-media path drift by moving Murloc Minder’s reusable module assets under `Templates/Media/` and wiring the addon to use those internal template-owned paths.
- Fixed shared launcher tooltip routing so the highest-priority registered addon now controls the minimap tooltip even when multiple Kagrok addons are installed.

### Features
- Added a reusable shared minimap launcher module with:
  - one global minimap button across participating Kagrok addons
  - priority-sorted addon sections in the right-click menu
  - shared menu-item deduplication into a single `Shared` section
  - shared icon behavior (`addon icon` for a single addon, `pfp` for multi-addon installs)
  - shared button position persistence via `KagrokLauncherDB`
- Added a full shared settings page for Murloc Minder that matches the ACA/Cursor Ring settings layout and moved these controls into it:
  - `Show Tracker`
  - `Show Minimap Button`
  - `UI Scale`
  - `Tracker Scale`
  - `Delete This Murloc`
- Added `X-KagrokLauncherPriority` TOC metadata support so each addon can declare launcher priority directly in its manifest.
- Extracted the custom `Developer Info` panel, button, and social-link copy popup into a reusable module and switched Murloc Minder to consume that module.
- Added self-contained template packages under `Resources/templates/` for:
  - `Developer Info Panel`
  - `Kagrok Shared Launcher`

### Changes
- Reorganized Murloc Minder’s internal reusable modules under `Templates/` for consistency:
  - `Templates/DevInfoModule.lua`
  - `Templates/KagrokLauncherModule.lua`
- Reorganized the reusable module assets to live beside their modules under:
  - `Templates/Media/Social`
  - `Templates/Media/Launcher`
- Updated the resource template examples and README files to document the intended `Templates/Media/...` workflow for future addon integrations.
- Updated the shared launcher settings hub to use structured section panels and addon cards with the same width language as the addon-specific settings pages.
- Consolidated minimap-launcher settings access into a single shared `Open settings` entry that opens `Kagrok's Addons` when multiple Kagrok addons are registered and opens the addon page directly when only one settings page exists.
- Updated addon version metadata/display to `0.1.8` (`v0.1.8` in the main panel title).

## 0.1.7 - 2026-02-28

### Fixes
- Fixed first-run onboarding flow so the main panel auto-opens and the tracker stays hidden until the tutorial is finished.
- Fixed the `Info` tab summary area by making the left-side details pane scrollable.
- Fixed panel scaling stability by reanchoring the main frame and forcing a full layout refresh after UI scale changes.
- Reduced unnecessary UI refresh work by gating/caching heavy Dev, Store, and Info-tab rebuild paths.
- Fixed a heavy activity-log refresh path that could trigger `script ran too long`/FPS drops by caching activity-line color classification, limiting rendered history, and skipping hidden-tab rebuild work.
- Fixed the `Info` tab action-row layout and scroll-region bounds so summary text no longer overlaps buttons or neighboring panels.
- Fixed the minimap right-click menu open path so the first right click opens reliably instead of being swallowed by initial frame visibility state.
- Fixed telemetry version reporting by resolving addon version text through shared metadata/title fallbacks instead of a single raw metadata call.
- Fixed hatch-state initialization so newly hatched adolescent murlocs now begin at `100%` `Hunger`, `Joy`, `Energy`, and `Cleanliness`.
- Fixed egg-stage tooltip leakage by hiding pre-hatch trait/personality and scavenging details until hatch time.

### Features
- Added a native minimap button:
  - anchored to the minimap edge
  - drag-to-move along the minimap ring
  - colored need-value tooltip (`Hunger`, `Joy`, `Energy`, `Cleanliness`)
  - left-click panel toggle
  - right-click options menu (`Toggle tracker`, `Telemetry`, `Developer Info`)
- Added a `Show Minimap Button` toggle beside `Show Tracker` on the main panel footer.
- Added a custom `Developer Info` panel with social links, profile image, slash access (`/mm devinfo`), and a matching `Dev Info` footer button on the main panel.
- Added a dedicated flat social-link copy popup with per-site title/icon treatment and one-line auto-select URL field.
- Added drain telemetry via `/mm telemetry` and `/mm telem`.
- Added a dedicated `Telemetry` button to the `Info` tab action row beside the delete/rename controls.
- Added dismiss-on-left-click behavior for the minimap right-click menu so it closes when clicking elsewhere.
- Added egg-stage tooltip variants:
  - egg/model identity tooltip now uses `I wonder what's inside?!`
  - minimap tooltip now shows pink `Hatch Progress` while in egg stage
- Expanded tooltip/debug visibility:
  - live zone-state line (`Overworld`, `Rested XP`, `Instance`)
  - live scavenging-state line
  - telemetry now includes addon version, zone/scavenge state, ownership summaries, challenge state, and effective decay totals

### Changes
- Instanced content (`dungeons`, `delves`, `raids`, and other instances) now freezes passive need decay and disallows scavenging while leaving challenge progression available.
- Updated shared pet tooltips to show the current zone and scavenging state dynamically instead of static explanatory text.
- Added helper text to the fully expanded tracker footer: `Type /mm, or click to open main panel`.
- Refined the developer-facing panels/popups to use a custom flat dark shell with neutral borders and pink/blue accent styling derived from my pfp.
- Moved telemetry access from the main footer into the `Info` tab action row and added a separate custom-styled `Dev Info` footer button on the far left side of the main panel.
- Updated addon version metadata/display to `0.1.7` (`v0.1.7` in the main panel title).

## 0.1.6 - 2026-02-26

### Fixes
- Fixed addon-wide sound playback reliability by hardening fallback call paths across `PlaySound`, `PlaySoundKitID`, and `PlaySoundFile` variants.
- Fixed a Lua error in channel fallback generation (`table index is nil`) that could break dev sound playback.
- Fixed assignment index resolution instability by making the murloc sound list deterministic and file-backed for dev preview and runtime mapping.

### Features
- Added UI sound hooks for popup interactions:
  - Name, rename, and delete dialogs
  - Trait-reroll confirmation popup
  - Customization purchase confirmation popup
  - Welcome/tutorial overlay open/close and step-advance button
- Added UI sound hooks for store interactions:
  - Quick-Buy purchase button clicks and success/failure outcomes
  - Store-tab item purchase button clicks and success/failure outcomes
  - Customization habitat buy/apply button clicks and success/failure outcomes

### Changes
- Updated addon version metadata/display to `0.1.6` (`v0.1.6` in the main panel title).
- Kept gameplay and UI sound behavior aligned with SFX settings while retaining dev-preview audio routing through the dedicated preview path.

## 0.1.5 - 2026-02-26

### Fixes
- Fixed challenge card transition visuals so a border glow pulse appears on both the main board and tracker rows (instead of rapid text flashing).
- Fixed challenge pulse cadence to a slower, readable speed.
- Fixed challenge glow layering so the pulse renders above card content.
- Expanded challenge glow bounds by 2px on each side for clearer visibility.
- Fixed `Reset To First Use` so onboarding/tutorial flags are fully reset (welcome tutorial state and egg tutorial flags/cooldowns).
- Fixed shell-milestone trait bonuses not firing from some shell grant paths by standardizing shell additions through `AddShells`.
- Fixed Customization habitat preview tiles stretching vertically by forcing atlas previews to fit card bounds (no native atlas sizing) and clipping card children.
- Fixed runaway scavenging restart countdowns on the `Scavenge` button by normalizing stale/legacy `nextStartAllowedAt` timestamps at load and at runtime reads.

### Features
- Added a guided multi-step onboarding tutorial overlay with dark mask cutouts and contextual section highlighting.
- Added a dedicated final tutorial page covering adolescent gameplay expectations, trait behavior overview, shell economy/store guidance, free first nametag reminder, and rarity-tier hinting.
- Added trait-driven challenge emote variants, including mischievous-specific rude/rested emote behavior.
- Added a broader trait reaction matrix with per-action trait effects (`feed`/`play`/`rest`/`clean`) plus shell-milestone trait triggers.
- Added murloc identity hover tooltips on name/model surfaces across UI variants, showing name, hatch description, and trait effect summaries.
- Added a full `Customization` tab implementation with a `Habitats` page and a 3-column background selection grid.
- Added purchasable habitat backgrounds in Customization:
  - `Default Habitat` (FREE)
  - `Elwynn` (1000)
  - `Twin Peaks` (1500)
  - `Murloc Habitat` (2000)
  - `Exile's Reach` (2500)
  - `Plunderstorm Harbor` (5000)
- Added persistent habitat customization state (owned backgrounds, selected customization page, and active habitat background).
- Added purchase-confirm popups for customization background purchases (`Are you sure...`).
- Added instant background apply behavior from Customization when clicking owned backgrounds.

### Changes
- Moved the tutorial message panel to the habitat section so it no longer overlaps the side or bottom UI areas.
- Updated tutorial flow to keep `Next` through the challenge step and use `Finish` only on the new final page.
- Rebalanced passive need decay for a more AFK cadence (hunger baseline retained, joy/energy/cleanliness slowed).
- Updated egg care actions (`Soothe`/`Warm`/`Clean`) to use 30s per-action cooldowns while keeping hatch progress uncapped by the old egg care cap.
- Standardized care item ownership for `play`/`rest`/`clean` to single-item ownership behavior and removed their count display in care UI (food counts remain).
- Reworked find/reward weighting to favor tier 1-2 foods, make higher-tier foods rarer, make tier 1-2 care finds uncommon, and tier 3+ care finds very rare.
- Updated find rewards to skip granting care items already owned (matching loss/ownership guard behavior).
- Updated toy challenge behavior: `use_toy` now tracks Blizzard Collections Toy Box usage instead of addon play-item usage.
- Updated toy challenge wording and tooltip copy to reflect Toy Box usage.
- Updated egg random challenge generation to exclude food-based challenge types (`feed` and `eat_food`).
- Updated store/quick-buy/care action effect presentation so trait-adjusted deltas are reflected in tooltips and item effect text using colored compact need percentages.
- Updated addon versioning metadata/display to `0.1.5` (`v0.1.5` in the main panel title).
- Updated habitat background default mapping so `Default Habitat`/`auto` resolves to `Queen's Conservatory`.
- Adjusted Customization habitat tile placement upward by 10px for improved alignment.

## 0.1.4b - 2026-02-25

### Fixes
- Fixed oversized cooldown text (for example `90000`) on care actions by normalizing stale/invalid cooldown timestamps.
- Fixed egg challenge skip flow to use per-card reload buttons during egg stage.
- Fixed egg challenge cooldown lockouts caused by stale reroll timestamps.
- Fixed per-card challenge reload timers getting stuck and leaving reload buttons disabled.
- Fixed tracker egg-care cooldown behavior to mirror each matching main-panel care action independently.
- Fixed layering issues where model/chat/challenge elements could draw over Blizzard UI in unintended order.
- Fixed `TrimString` nil error during economy/pet initialization on load.

### Features
- Added tracker egg-care buttons (`Soothe Egg`, `Warm Egg`, `Clean Egg`) in the action-button area.
- Added egg tutorial starter board on new egg generation:
  - `Complete 3 care actions` (+6% hatch)
  - `Soothe the egg once` (+3% hatch)
  - `Warm the egg once` (+3% hatch)
  - `Clean the egg once` (+3% hatch)
- Added challenge card cooldown indicator text (`CD m:ss`) styled to match existing UI.
- Added first-purchase-free nametag flow in Store (first use free, then standard cost).
- Added free-nametag visibility improvements in Store (FREE label/highlight and free pricing in tooltip/confirm flow).

### Changes
- Removed floating hatch progress and hatch button from the habitat panel in egg stage.
- Kept hatch progress and hatch button only in the left-side panel.
- Resized and centered the tracker hatch progress bar within the top egg tracker section.
- Set tracker hatch progress bar height to 25% of the egg tracker top cell and centered it vertically.
- Updated tracker mini egg mode to use a single large hatch-progress value cell in place of the 2x2 need grid.
- Removed colored text treatment from egg-care tracker buttons for cleaner visual parity.
- Updated egg challenge rewards to display flat hatch bonus text (`+N%`) in hatch-pink styling.
- Expanded egg-stage random challenge generation to use adolescent challenge types while remapping care actions to egg actions (`soothe`/`warm`/`clean`), excluding non-egg-scoped `work_ticks`.
- Replaced redundant store header section text with a large persistent shell count.
- Removed the `Later` option from the post-hatch naming popup.
- Added welcome-panel callout for free first nametag use.
- Main panel now sits beneath overlapping Blizzard panels, while the pop-out tracker remains above Blizzard panels.
- Habitat model controls were returned to stable centered defaults after movement/scale experimentation.

## 0.1.3b - 2026-02-24

### Fixes
- Stopped tracking buffs during combat to avoid secret value taint.
- Resumed aura-based tracking safely after combat ends.
- Fixed gathering challenge progress hooks for fishing, skinning, herbalism, and mining.
- Fixed swim challenge responsiveness with real-time time-tracking updates.

### Features
- Added quick-use care buttons to the tracker (expanded view).
- Added tracker challenge state text updates (`Expand`/`Collapse`) for clarity.
- Added item tooltips across store rows, quick-buy cards, and care action entries.

### Changes
- Rebalanced item value changes.
- Main window now closes when pressing `ESC`.
- Converted swimming challenge goals to timed objectives (`short`/`long`) with live progress display.
- Updated food behavior:
  - Food now provides a flat joy bonus model.
  - Gluttonous trait increases food joy bonus and applies food cleanliness penalty.
  - Snack Tongs now adds a flat +2 joy to all food on top of other food bonuses.

## 0.1.2b - 2026-02-23

### Fixes
- Attempted fixes for secret-value taint issues.

### Features
- Added special trait and trait-pair weighting behavior.
- Updated tracker with a smaller percent-only stage.
- Updated tracker controls to follow expand/collapse/maximize logic.

### Changes
- Adjusted gameplay values.
- Updated the Care section to better reflect values gained from items.
- Made several small main-panel UI adjustments.
- Retained as the rollback baseline (`0.1.2b`) for live-env validation.

## 0.1.1b - 2026-02-23

### Fixes
- Removed character-level scaling from challenge requirements and challenge rewards.

### Features
- Added the pop-out tracker system.
- Added 3D model presentation support for egg and adolescent stages.

### Changes
- Refined the main addon UI layout and styling.

## 0.1.0b - 2026-02-22

### Fixes
- Initial release baseline.

### Features
- All basic core features were in place.

### Changes
- Used placeholder textures and baseline tuning values for early iteration.
