promotional bannermobile promotional banner

KillOrder

Identifies NPCs by class, visually displaying attack priority so your group always knows who to focus first.

File Details

KillOrderTBCv1.2.zip

  • R
  • Jun 4, 2026
  • 50.55 KB
  • 23
  • 2.5.5
  • Classic TBC

File Name

KillOrderTBCv1.2.zip

Supported Versions

  • 2.5.5

KillOrderTBC — Changelog


v1.2 — Smart Auto-Classification & Elite Sub-Roles

Auto Role Detection (Major Rework)

The addon no longer relies on teaching it one mob at a time. A new classification engine runs automatically the moment a mob appears on your screen.

How it works — in plain terms:

  • Mana bar present? → the mob is in the Caster bucket (Healer, Caster, or Ranged)
  • No mana bar? → the mob is in the Melee bucket (Melee or Tank)
  • Ranged weapon detected? → promoted to Ranged within the mana group
  • Casts a heal spell? → upgraded to Healer (high confidence, saved permanently)
  • Casts a damage spell? → confirmed Caster (high confidence, saved permanently)

This means walking into a dungeon and looking at the pull — most mobs already have the right color on their Role Bar with zero input from you.

Confidence System

Results are graded: Low (keyword/creature type) → Medium (mana bar scan) → High (cast observed). A higher-confidence result always wins. Once a mob is marked High confidence from a cast, it is never downgraded again — even across sessions.

Comprehensive Spell Database

250+ named TBC abilities are now classified across four tables:

  • Healer spells — all ranked heals, HoTs, and NPC-specific mending abilities ("Dark Mending", "Shadowmend", "Nether Mend", "Fel Regeneration", and more)
  • Caster spells — fire, frost, arcane, shadow, warlock, nature damage, holy damage, and NPC-specific abilities ("Nether Blast", "Void Bolt", "Fel Fireball", "Shadow Storm", and more)
  • Ranged spells — physical shots and arrows (Auto Shot, Aimed Shot, Volley, Arrow Volley, Fire Arrow, and more) — ranged mobs now confirmed by cast, not just weapon check
  • Melee / Tank spells — strike and taunt abilities used as fallback confirmation

Elite Sub-Roles (12-Role Priority System)

Every base role now has an Elite counterpart. The priority list expands from 8 to 12 slots:

Priority Role
1 World Boss
2 Elite Healer
3 Healer
4 Elite Caster
5 Caster
6 Elite Ranged
7 Ranged
8 Elite Melee
9 Melee
10 Elite Tank
11 Tank
12 Unknown

An elite mob is automatically promoted to its Elite sub-role the moment it appears — no teaching required. Elite Casters show a brighter blue bar than regular Casters. Elite Melee show a brighter yellow. Each elite sub-role has its own distinct color and can be reordered or recolored independently in the Main Window.

Static NPC Database Expanded

All 200+ hand-curated dungeon NPCs have been updated to use elite sub-roles where appropriate. Bosses like Mennu the Betrayer, Moroes, Priestess Delrissa, and Kael'thas Sunstrider are now correctly tagged Elite Healer, Elite Melee, Boss, etc.

Keybinding — Fixed

The Assist Mode keybinding now correctly appears in WoW Menu → Key Bindings → scroll to AddOns → KillOrderTBC. Rebuilt using a SecureActionButton (the same pattern used by reliable TBC addons) instead of the previous Bindings.xml action block approach which was silently ignored by the TBC Anniversary client.

Spotlight Visual — Reworked

The spotlight is now a proper street-lamp cone of light: wide diffuse halo at the top (the lamp bloom), a tapered beam shaft descending toward the nameplate, and a soft light pool right at the health bar — like a dock lamp at night. The beam tints with the mob's role color; the hot core stays white.

Options Cleanup

  • "Open Key Bindings" button removed from Options — bind it directly in WoW Key Bindings
  • Assist Mode enable checkbox remains in Options

v1.1 — Polish & Interface Refinements

Visual

  • Pill-shaped Role Bar — rounded ends using native cap textures; matches the health bar aesthetic
  • Role Bar intensity slider — controls color vividness independently from dimming
  • Role bar text color — four presets: White, Yellow, Cyan, Violet
  • Spotlight cone — reworked from a flat line to a cone with outer halo, mid beam, and bright core
  • Dim divider visual — dark band with center label and hover tooltip separating bright/dim zones
  • Dimmed rows shown at reduced brightness in the Main Window as a live preview
  • Options section headers — large colored accent bars clearly separate each settings group
  • Options Tips box — green-highlighted block at top of Options reminding about Always Show Nameplates and /ko teach

Behavior

  • Pulse is GUID-based — pulse and spotlight only trigger on the exact targeted mob, not all mobs sharing the same name
  • Dim excludes current target — your target always shows at full brightness
  • Enabling Nameplates in the Main Window now auto-enables Show Priority Numbers and Show Role Name
  • All slider bars show their saved position immediately on open; settings remembered across reloads
  • Renamed HUD Bar → Role Bar everywhere (options, main window, code)

Options Cleanup

  • Role Colors section removed from Options — managed entirely in the Main Window
  • Elite & Boss color checkboxes removed — always active, colors set in the Main Window
  • Target Alert Bar enable/disable removed from Options — Role Bar toggle lives on the Main Window bottom bar
  • Font picker removed — clean default font only
  • High/Low intensity buttons replaced with a single intensity slider
  • Dim amount slider removed — dim is fully transparent when enabled

Bug Fixes

  • Priority numbers (Show Priority Numbers toggle) now correctly show and hide
  • Role Bar now shows for all roles — a filter silently blocking Tank and Unknown was removed
  • StaticPopup EditBox capitalization fixed for TBC Anniversary client (rename dialog opens correctly)
  • Bindings.xml format corrected for TBC 2.5 client
  • MTTick forward-reference crash on login fixed
  • Font path backslash escaping corrected (was silently breaking font rendering)
  • Duplicate role entries in saved variables auto-cleaned on load
  • Main Window height is now dynamic — always fits all rows, divider, and toggle bar without clipping

v1.0 — Initial Release

Kill Priority System

  • Nameplate role coloring — enemy nameplates colored by kill priority: Healer, Caster, Ranged, Melee, Tank, Unknown, Elite, Boss
  • Kill Priority Order — drag rows in the Main Window to set your preferred kill order
  • Role Bar — colored pill bar below each mob's health bar showing role name and kill order number
  • Priority number badge — kill order number on the left side of the Role Bar
  • Double-click a row to change its color; right-click to rename; names persist across reloads

Role Detection (4-Layer System)

  1. Static database — 200+ TBC dungeon NPCs built in at load
  2. Creature type and classification fallback
  3. Mouseover scan — result cached per session
  4. Cast observation — high-confidence role saved between sessions

Dungeons covered: Hellfire Ramparts, Blood Furnace, Shattered Halls, Slave Pens, Underbog, Steamvault, Mechanar, Botanica, Arcatraz, Mana-Tombs, Auchenai Crypts, Sethekk Halls, Shadow Labyrinth, Old Hillsbrad, Black Morass, Magister's Terrace, Karazhan trash

Dim System

  • Dim divider — draggable line in the Main Window separating bright vs dimmed roles
  • Roles below the divider go fully transparent
  • Current target always stays fully visible regardless of dim setting

Effects

  • Target pulse — Role Bar pulses on your current target only (GUID-based)
  • Spotlight (Experimental) — cone of light above your targeted mob's nameplate

Role Bar HUD

  • On-screen bar showing role name and kill priority when you target a hostile mob
  • Moveable and scaleable; scale slider in Options
  • Shows for all roles including Tank and Unknown

Assist Mode (Experimental)

  • Keybinding to cycle through visible hostiles in kill-priority order
  • Bind in WoW Menu → Key Bindings → KillOrderTBC

Group Sync

  • /ko mt — toggle MT target broadcast; your target is highlighted on all group members' nameplates
  • /ko sync — push your full priority order and dim threshold to the group instantly

Slash Commands

Command Action
/ko Open Main Window
/ko options Open Options Window
/ko teach <role> Assign role to current target
/ko mt Toggle MT target broadcast
/ko sync Push priority order to group
/ko assist Toggle Assist Mode
/ko reset Clear learned NPC cache
/ko scan Force nameplate rescan
/ko debug Print diagnostics to chat
<button class="cds-reset group/btn relative isolate inline-flex shrink-0 items-center justify-center gap-1.5 whitespace-nowrap select-none border-0 outline-none rounded h-control font-sans text-body font-medium [&amp;:disabled:not([aria-busy])]:opacity-50 disabled:pointer-events-none transition-shadow duration-fast focus-visible:shadow-focus text-primary aria-pressed:text-accent aspect-square w-control px-0 !text-muted hover:!text-primary" type="button" data-cds="Button" aria-label="Copy" data-testid="action-bar-copy"></button><button class="cds-reset group/btn relative isolate inline-flex shrink-0 items-center justify-center gap-1.5 whitespace-nowrap select-none border-0 outline-none rounded h-control font-sans text-body font-medium [&amp;:disabled:not([aria-busy])]:opacity-50 disabled:pointer-events-none transition-shadow duration-fast focus-visible:shadow-focus text-primary aria-pressed:text-accent aspect-square w-control px-0 !text-muted hover:!text-primary" type="button" data-cds="Button" aria-label="Give positive feedback"></button><button class="cds-reset group/btn relative isolate inline-flex shrink-0 items-center justify-center gap-1.5 whitespace-nowrap select-none border-0 outline-none rounded h-control font-sans text-body font-medium [&amp;:disabled:not([aria-busy])]:opacity-50 disabled:pointer-events-none transition-shadow duration-fast focus-visible:shadow-focus text-primary aria-pressed:text-accent aspect-square w-control px-0 !text-muted hover:!text-primary" type="button" data-cds="Button" aria-label="Give negative feedback"></button>
<button class="cds-reset group/btn relative isolate inline-flex shrink-0 items-center justify-center gap-1.5 whitespace-nowrap select-none border-0 outline-none rounded h-control font-sans text-body font-medium [&amp;:disabled:not([aria-busy])]:opacity-50 disabled:pointer-events-none transition-shadow duration-fast focus-visible:shadow-focus text-primary aria-pressed:text-accent aspect-square w-control px-0 !text-muted hover:!text-primary" type="button" data-cds="Button" aria-label="Retry" data-testid="action-bar-retry"></button>