promotional bannermobile promotional banner

NexEnhance

A lightweight, modular framework that enhances the default Blizzard UI — it improves, it doesn't replace.
Back to Files
File nameNexEnhance_MIDNIGHT-1.6.0-Release.zip
Uploader
KkthnxKkthnx
Uploaded
Jul 10, 2026
Downloads
37
Size
947.4 KB
Flavors
Retail
File ID
8408303
Type
R
Release
Supported game versions
  • 12.0.7

What's new

NexEnhance — Changelog


[1.6.0] — 2026-07-09

Added

  • Settings — Cursor: new sidebar group for mouse extras (Ring + Trail).
  • Cursor — Cursor Ring: optional class-coloured GCD (and cast) cooldown ring under the cursor — Midnight-safe DurationObjects, off by default; custom soft donut art (Media/Cursor/CursorRing.tga) for chrome + swipe.
  • Cursor — Cursor Trail: optional soft glow trail that follows the mouse — pooled ADD-blend dots, sleeps when idle, hides on mouselook/cinematics; class / custom / rainbow colour; off by default (Media/Cursor/CursorTrailDot.tga).
  • Nameplates — Target Resource: optional class resource (combo points, holy power, runes, shards, …) under the current target's nameplate — reparents Blizzard's mechanic bar (no custom UnitPower math); off by default.
  • Automation — Best Quest Reward: gold coin on the highest vendor-value reward choice (visual only; Quick Quest still auto-picks when enabled).
  • Announcements — Pull Countdown: /pc [seconds] (alias /jenkins) posts a group chat pull timer; second /pc aborts. Default 10s; requires group, out of combat.
  • Chat — Emojis: optional autocomplete when typing : in chat — pick NexEnhance :name: emojis from Blizzard's native dropdown (Tab / Enter / click). Toggle under Chat Emojis settings; uses the same texture set as inline chat emojis.
  • Chat — Emojis: class icon set (:dk:, :dh:, :mage:, …) for all 13 classes.
  • Chat — Emojis: revamp to Unicode-style Media/Emojis assets — Slack :shortcode: names, classic ASCII emoticons (:), :-D, <3, …), and class aliases aligned with the new texture set.
  • Unit Frames — Unit Frame Text: optional White Name and Level for HUD frames (player, target, focus, boss, pet, ToT, standard party portraits; compact raid/party unchanged).

Fixed

  • Skins — Missing Stats: scroll clamp no longer reads GetVerticalScrollRange (SecretReturnsForAspect(ScrollRange) — PaperDoll contamination marks the aspect). Range is computed from our SetSize heights; GetTop/GetBottom fall back to the last plain content height when anchoring-secret.
  • Automation — Quick Join: removed addon auto-invite of LFG applicants — C_LFGList.InviteApplicant is protected; programmatic InviteButton:Click() still runs tainted and caused ADDON_ACTION_BLOCKED. Use Blizzard's listing Auto-accept when CanActiveEntryUseAutoAccept shows it.
  • Cursor — Cursor Trail: slow mouse moves now leave a trail — spacing accumulates from the last emitted dot instead of resetting every frame.
  • Cursor — Cursor Trail: no streak across mouselook/combat-only gaps; paint loop sleeps while suppressed; live Offset X/Y re-anchors without wiping the trail.
  • Cursor — Cursor Ring: secret-safe IsZero checks; refresh GCD/cast when enabled mid-cooldown; enable lifecycle no longer double-fires OnEnable/OnDisable.
  • Nameplates — Target Resource: clearing target restores Blizzard's personal-plate class bar (no longer orphaned on the previous nameplate).
  • Miscellaneous — Exp / Rep Bar: XP/honor/azerite use plain math — Resources 12.0.7 does not mark those APIs SecretReturns (removed speculative secret path).
  • Miscellaneous — Loot Roll: plain timer/quality handling; prefer C_Loot.GetLootRollDuration when available.
  • Chat: OnDisable tears down whisper sound/invite listeners and UIScaleApplied; sticky whisper restored; secure hooks gated with IsEnabled().
  • Secrets (docs pass 2): pruned speculative IsSecret/NotSecret on APIs that are only SecretArguments or untagged in Resources 12.0.7 (nav distance, action usability/range, item/money/merchant/quest objectives, levels/classFilename, gossip names, mail/durability, map coords, UIWidget timers, housing counts, …). Kept identity (UnitName/UnitGUID/UnitCreatureType), threat, raid markers, chat/LFG lockdown, auras, spell cooldowns, cast secrets. Truth tables: wow-midnight-secret-values-guide.mdc.
  • DataText — Currency & Gold / Friends / Guild: drop speculative IsSecret on GetMoney, currencies, and roster fields (docs-untagged); keep chat-payload guards.
  • Automation — Auto Vendor / Warband Gold / Auto Greed: prune money/repair/quality secret folklore; normal comparisons.
  • Announcements — Level Announcer: UnitLevel / level-up payload are not secret-tagged.
  • Inventory — Delete Cheapest: plain stack × sellPrice math.
  • Unit Frames — Player Cast Bar: secret-safe IsShown / ShouldShowCastBar checks.
  • Action Bars: clear mouseover fade OnUpdate + activeFades on disable.
  • Maps — Minimap: OnDisable tears down pulse/clicker/bin events and SettingChanged callbacks; cluster footprint hooks gate on IsEnabled().
  • Maps — World Map: OnDisable stops coords/fade OnUpdate; Maximize/fade hooks gate on module enable.
  • Miscellaneous — AFK Camera: OnDisable unregisters frame events and model OnUpdate; re-enable rebinds cleanly.
  • Tooltip: core + ID/icons/mount/reagents/ilvl hooks gate on Tooltip:IsEnabled().
  • Tooltip — IDs: nameplate aura "From:" no longer calls GetUnitName(sourceUnit, true) when AuraData.sourceUnit is a secret token (that path hits UnitRealmRelationship, which is SecretArguments = AllowedWhenUntainted). Skip when the token is secret; otherwise use UnitName only.
  • Tooltip: ResolveTipIdentity never keeps a secret GetUnit() token (same UnitRealmRelationship footgun on unit tips); falls through to clean raid/party / UnitTokenFromGUID tokens.
  • Skins — Missing Stats: hook handlers + PLAYER_REGEN_ENABLED gate/teardown on disable.
  • Core — Settings: modules no longer double-call OnEnable/OnDisable from OnSettingChanged("enable") (ApplyModuleSetting already owns lifecycle) — automation, DataText, unit frames, nameplates, action bars, inventory, misc.
  • Maps — Map Reveal / Wowhead Links: OnDisable hides reveal tiles / link boxes live; enable lifecycle no longer double-fires Setup.
  • Automation — Auto Hide Tracker: re-enable re-registers the secure state driver (Setup is one-shot; UpdateDriver must run again after disable).
  • Core — Commands: /nex toggle uses ApplyModuleSetting (runs OnEnable/OnDisable).
  • Core — Settings: fractional sliders no longer show float noise (0.450000017881390.45) — label formatter inferred from step size.
  • Core — Settings: /nex config, Escape-menu NexEnhance, and keybinds no longer call OpenSettingsPanel in combat (ADDON_ACTION_BLOCKED) — opens after combat ends.
  • Core — Commands: /nex version (aliases /nex ver, /nex build) prints addon version, TOC Interface, client patch, build, build date, tocversion, locale, project.
  • Core — Chat prefix: F.Print uses blue Nex + gold Enhance (matches TOC title); login line is Loaded. /nex v1.6.0 instead of a full brand-blue sentence.
  • Minimap — Collect Buttons: stop sweeping HandyNotes map pins into the tray (Midnight uses HandyNotes_MidnightPinNN; the old pattern only matched dotted names). Already-collected pins are released on the next scan; /reload restores any pin art the tray already reskinned.
  • Miscellaneous — AFK Camera: use SetUIVisibility (Alt+Z path) instead of UIParent:Hide() so PlayerFrame health text is not updated with secret values.
  • Automation — Auction Search History: close the recent-search dropdown when the Auction House (or its search bar) hides — it was parented to UIParent and could stay on screen after closing the AH.
  • Action Bars — Equipped Item Border: stop the green equipped glow sticking after gear swaps — read Blizzard's border visibility from the secure Update() pass instead of calling IsEquippedAction from tainted code (secret boolean), and refresh on PLAYER_EQUIPMENT_CHANGED.
  • Unit Frames — Unit Frame Text: with White Name and Level on, Level Colours now swaps the default yellow difficulty band to white instead of disabling tinting.
  • Chat — Emojis: nose emoticons (:-), :-D, …) were never replaced — a bad :% filter in BuildReplacementList skipped them; removed.
  • Chat — Emojis: fix severe chat lag — emoticon scan no longer runs on every line with a colon (timestamps, Player: message); broken :* / =* patterns caused catastrophic regex backtracking; literals are escaped at build time with plain-text prechecks before gsub.
  • Chat — Emojis: autocomplete dropdown rows were 14px tall with 16px icons — taller rows, smaller aligned icons, and lighter token text so suggestions are readable instead of smooshed.
  • Chat — Emojis: autocomplete source now follows Blizzard's AutoComplete_Update(text, cursor) contract (shortcode parsed from text before cursor); respects disallowAutoComplete during backspace.
  • Tooltip — Item Level: clear inspect unit/GUID when the tooltip hides so delayed NotifyInspect / UNIT_INVENTORY_CHANGED cannot keep polling after hover.
  • Tooltip — Hover Tips: gate chat hyperlink handlers on module enable + hoverTips (SetScript cannot be uninstalled).
  • Action Bars: hotkey abbreviation hook gates on IsEnabled().
  • Chat — Emojis: bubble worker only registers events while bubbles are on; autocomplete layout hook skips when the module is off; cursor uses byte index with strsub (no UTF-8/byte mix).
  • Unit Frames — Player Cast Bar: clear driver OnUpdate on deactivate; reattach on wake.
  • Announcements — Rare Alert: left-click target failed when Cast On Key Down was on — secure overlay only listened for mouse-up while the CVar requires mouse-down. Now forces useOnKeyDown=false and registers AnyUp+AnyDown (RareScanner / Plumber pattern); drop the PreClick CVar flip.

This mod has no additional files