promotional bannermobile promotional banner

Sharpie's Gear Judge

Advanced Gear stat comparison, analyzes your equipment slots, class, spec, and current level for Classic Era, Anniversary & TBC

File Details

v2.4.1

  • R
  • Feb 16, 2026
  • 9.02 MB
  • 5.6K
  • 2.5.5+1
  • Classic + 1

File Name

SharpiesGearJudge-v2.4.1.zip

Supported Versions

  • 2.5.5
  • 1.15.8

Sharpie's Gear Judge (Era Edition)

v2.4.1 (2026-02-16)

Full Changelog

  • Introduce caching and optimize item scans
    Add lightweight caches and early-filtering to reduce expensive scans and UI churn. Helpers.lua: add MSC.UsableCache and update MSC.IsItemUsable to short-circuit checks, cache results, and only run tooltip restriction parsing when necessary. Interface.lua: skip non-equip and unusable items in UpdateQuestOverlays so the heavy EvaluateUpgrade path only runs for relevant gear. Judge.lua: add MSC.SlotCache, register PLAYER_EQUIPMENT_CHANGED, clear slot cache on relevant events, and use the slot cache in MSC.GetComparisonSlot for finger/trinket and weapon comparisons. Also small cleanup changes (CleanText tweak, tooltip hook newline) and add a Paladin relic entry (item 28065) in Classes/TBC/Paladin.lua. CHANGELOG.md updated to document the optimizations and behavior changes.
  • Add caching for bag scans & upgrade evals
    added unpack fallback; implement MSC.BagCache with a BAG_UPDATE watcher and internal scan functions (Internal_ScanBestMainHand / Internal_ScanBestOffHand).
    Replace direct bag scans with cached getters that rescan only when bags or spec change.
    Add MSC.EvaluationCache and a CacheCleaner to invalidate on relevant events; EvaluateUpgrade now checks/stores results in the cache and returns cached unpacked results.
    Cleanup and clarify MH/OH swap logic and comments.
    BAG_UPDATE mark the new bag cache dirty and safely call RequestUpdate; make GET_ITEM_INFO_RECEIVED context-aware (update quest overlays if quest frame visible, only RequestUpdate when tooltip item matches).
    Optimize quest reward overlays by early-filtering non-equip items with GetItemInfoInstant, lazy-creating overlay textures, and adding a small score delta threshold to avoid floating-point noise.
    extract Colorize helper, refactor BeautifyTooltip for performance and readability (reuse prefix, chain gsub calls, minimize repeated lowercasing, update lowerNewText when mutating).
  • Minor fixes
    ** Introduce locale enhanced setting off by defualt, harden parsing, improve gem/enchant/proc handling, and refine tooltip/UI behavior and saved Pawn import handling.**
    ** Fixed Driud Hit cap handling.**
    ** Fixed Paladin AoE Armor scaling**
    ** Fixed Chance on hit Trinket scoring triple dipping calculations**
  • test
  • Improve proc handling and tooltip parsing
    Rework TBC proc data and fix proc parsing/scoring. Updates Data_Sets.lua with reorganized TBC trinket/weapon entries, added notes, adjusted PPM/val/dur values and an _AUTO_PROC structure for averaged proc yields. Change in Evaluator.lua computes average proc yield (val * dur * ppm / 60) and uses that in accumulators and scoring to avoid overvaluing temporary effects. Judge.lua's BeautifyTooltip now avoids modifying proc/use lines (detects "chance", "sec", "use:" etc.) and restricts compacting/coloring to static equip lines to prevent the Math Scanner from double-counting. Parse.lua improves line classification by detecting additional "chance to..." patterns and ensuring PROC lines are identified before EQUIP. These changes fix scoring inaccuracies and tooltip manipulation bugs related to procs.