fix: finalize arrow asset and docs updates

This commit is contained in:
Xurkon
2026-06-03 00:26:39 -05:00
parent 4fc8d661fd
commit c3b91f3bee
22 changed files with 86 additions and 19 deletions
+4 -3
View File
@@ -179,11 +179,11 @@
<h2 id="v163">[v1.6.3] &mdash; Arrow Redesign, Minimap Pin Drift Fix (Live API + Corrected Pixel Math), Sunstrider Isle Arrow Distance, Map Pins, Tooltip Schema Fixes, QuestData String Safety</h2>
<ul>
<li><strong>[Docs &mdash; Release Metadata Sync]</strong> Updated the README badge, documentation version badges, and in-game addon version to <code>v1.6.3</code>, then tightened the release filters so handoff notes, local dev settings, and other workspace-only artifacts stay out of the exported release archive.</li>
<li><strong>[Fix &mdash; Arrow Asset Regression &amp; Redesign]</strong> Rebuilt the bundled arrow set so the live dropdown is backed by four image arrows (<code>Arrow1</code> through <code>Arrow4</code>) plus one legacy sheet arrow (<code>arrowold</code>). The old default <code>arrow.tga</code> cache path was retired in favor of the new image-specific asset names, and a regression test now asserts that only <code>arrowold</code> remains a bundled sprite sheet.
<li><strong>[Fix &mdash; Arrow Asset Regression &amp; Redesign]</strong> Rebuilt the bundled arrow set so the live dropdown is backed by four image arrows (<code>Arrow1</code> through <code>Arrow4</code>) plus one legacy sheet arrow (<code>arrowold</code>). The old default <code>arrow.tga</code> cache path was retired in favor of the new image-specific asset names, and the generator now keeps sheet-mode detection isolated so only <code>arrowold</code> or an explicitly custom sheet can enter the sprite-sheet path.
<ul>
<li><strong>Bundled asset layout</strong>: The new arrow images live under <code>Icons\\Arrows</code>, with matching generated preview TGAs so the dropdown can show a visible swatch for each style.</li>
<li><strong>Runtime split</strong>: Image styles rotate as single textures; sprite-sheet logic is reserved for <code>arrowold</code> and explicitly custom sheet uploads only.</li>
<li><strong>Regression proofing</strong>: <code>Tests\\QuestieArrowAssets_spec.lua</code> now checks the manifest labels, texture paths, sheet guard, and folder contents so a future asset rename cannot silently reintroduce sheet mode for every style.</li>
<li><strong>Regression proofing</strong>: The asset generator now classifies styles by alpha bounds and texture format before writing the manifest, so a future asset rename or format change cannot silently reintroduce sheet mode for every style.</li>
</ul>
</li>
<li><strong>[Fix &mdash; Arrow UI/Attachment Redesign]</strong> The Arrow tab now exposes independent arrow/objective positioning, individual lock toggles, attach/detach behavior, a gap slider, objective transparency, distance-unit selection, and larger font sizing. The objective text can be attached to the arrow again with a one-click reset, but it can also be moved and locked independently when detached.
@@ -193,7 +193,8 @@
<li><strong>Preview handling</strong>: The dropdown uses preview swatches from the generated <code>Icons\\Arrows\\*_preview.tga</code> files so users can see the artwork at a glance instead of guessing from the name.</li>
</ul>
</li>
<li><strong>[Fix &mdash; Arrow Runtime Texture Fallback]</strong> Bundled image arrows now use the generated preview texture path at runtime as the live render source, while the raw source TGA remains available for packaging and regeneration. This keeps image arrows stable even when the client behaves oddly with a specific source TGA, while the sheet arrow stays isolated to <code>arrowold</code>.</li>
<li><strong>[Fix &mdash; Arrow Runtime Texture Fallback]</strong> Bundled image arrows now use the generated runtime TGA as the live render source, while the preview TGA stays dedicated to the dropdown swatch. This keeps image arrows stable even when the client behaves oddly with a specific source file, while the sheet arrow stays isolated to <code>arrowold</code>.</li>
<li><strong>[Fix &mdash; Arrow2 Orientation]</strong> Rotated <code>Arrow2</code> 180 degrees so the pointed tip is the top-facing tip of the asset instead of the base. The runtime TGA and its preview stay in sync so the dropdown thumbnail and in-game arrow match exactly.</li>
<li><strong>[Fix &mdash; Minimap Pin Drift: Live View-Radius API + Corrected Pixel Math]</strong> Resolved the long-running minimap pin drift bug where quest pins appeared to &quot;follow&quot; the player or jump on every frame. Pins now stay anchored to their world positions across all minimap zoom levels (0-5+) and across both Stock UI and ElvUI.
<ul>
<li><strong>Time-to-fix note</strong>: This took roughly three weeks of iteration. The first three attempts either crashed, partially fixed only some zoom levels, or regressed zoom 0. The final patch was the first one that held across the full zoom range without the pin math drifting again.</li>
+2 -2
View File
@@ -225,7 +225,7 @@
<div class="grid">
<div class="card">
<h4>Arrow Redesign</h4>
<p>The Arrow tab now ships with `Arrow1`-`Arrow4` as bundled image styles, keeps `arrowold` as the only sprite sheet, and lets users detach, lock, reattach, and preview custom arrow textures from `Icons/Arrows` without touching core files.</p>
<p>The Arrow tab now ships with `Arrow1`-`Arrow4` as bundled image styles, keeps `arrowold` as the only sprite sheet, and lets users detach, lock, reattach, and preview custom arrow textures from `Icons/Arrows` without touching core files. Under the hood, the addon now distinguishes plain image TGAs from sprite sheets by texture format and alpha bounds, so only true sheets go through sheet-cell UV logic.</p>
</div>
<div class="card">
<h4>Sunstrider Coordinate Normalization (Final)</h4>
@@ -249,7 +249,7 @@
</div>
<div class="important">
<strong>Documentation scope:</strong> The landing page and changelog now describe the published v1.6.3 release state so collaborators can review what is currently shipped.
<strong>Documentation scope:</strong> The landing page and changelog now describe the published v1.6.3 release state so collaborators can review what is currently shipped. The arrow notes here are intentionally developer-level: they call out the runtime split, the texture-format detection, and why the old sheet fallback only applies to <code>arrowold</code> or an explicitly custom sheet upload.
</div>
</section>