Combat Mode brings modern action-game controls to World of Warcraft, replacing traditional tab-targeting with intuitive aiming, more engaging controls, and immersive combat.
Lock your cursor to the center of the screen and control your character by simply moving the mouse—no more holding right-click to turn. Toggle Mouse Look on permanently, or hold a key to temporarily free the cursor whenever you need it.
Target enemies by simply aiming at them. Combat Mode's reticle targeting replaces traditional tab-targeting with an action-inspired system that also supports automatic ground targeting for AoE abilities, casting them exactly where you aim.
The crosshair is the heart of Combat Mode—a fully reactive, intelligent HUD that adapts to your target and combat state in real time, delivers rich contextual feedback, and is fully customizable.
Bind left-click, right-click, and modifier combinations directly to your rotation. While Mouse Look is active, every click becomes an instant spell cast, giving you up to eight actions at your fingertips without touching your action bars.
Lock onto a target with a single tap to prevent the reticle from switching unexpectedly. Tap again to release it. While locked, use the mouse wheel to cycle nearby enemies, making it easy to prioritize targets in crowded encounters.
Displays Blizzard's Assisted Combat next-cast suggestion directly beside the crosshair, complete with satisfying cast-success feedback. Keep your rotation readable without staring at the action bar.
When your reticle passes over an NPC, quest object, or other interactable, a contextual, range-aware indicator appears beside the crosshair so you always know when something is within reach.
Hold a key during Mouse Look to instantly open a radial menu for your party. Select a teammate to target and cast supportive abilities without ever leaving Mouse Look. Integrated health, range, and status indicators help you react quickly when every second counts.
Mouse Look automatically disengages whenever you open bags, the map, your character panel, or other interface windows, then seamlessly resumes when you're finished. You can even define your own UI frames and custom conditions to trigger Auto Unlock.
Enhance immersion with an optional, fully customizable action camera that delivers a more dynamic third-person perspective, making combat feel faster, weightier, and more cinematic.
Grab it on CurseForge or Wago Addons.
After installing the AddOn, you'll be greeted by this message upon your first login on each character:
- Click Okay to proceed or go to Game Menu (ESC) > Options > AddOns > Combat Mode.
- In the options panel, you'll be able to configure the addon to your liking.
Please, take your time reading what each option does, their tooltips and dev notes. They answer the majority of the most commonly asked questions.
You can report bugs, request features and provide feedback over on our Discord.
Combat Mode is organized by domain. Runtime lives under CombatMode/Core/; settings under CombatMode/UI/; static tables under CombatMode/Constants/.
| Domain | Owns |
|---|---|
| Runtime | AddOn shell, events, CVars, binding queue, bootstrap (Core/Runtime/) |
| FreeLook | Mouse look / mouselook state + auto cursor unlock |
| Crosshair | Reticle, Interaction HUD, Combat Assist, Target Lock focus marker, cast animations |
| ClickCasting | Mouse override bindings + targeting macro builder |
| PartyRadial | Hold-to-open party radial (secure slices, health, roles) |
| Options toolkit | Standalone options window + editors (UI/Options/, UI/Editors/) |
Load order and public entry points: STRUCTURE.md. Agent/contributor rules: AGENTS.md.
You can submit a PR with your contributions to Combat Mode's repository on GitHub.
- Clone and install the addon into your Retail
Interface/AddOnsfolder for local testing. - Skim the architecture table above, then STRUCTURE.md for load order.
- Follow CONTRIBUTING.md — especially the first-hour path (change a toggle, add a constant, secret-value rules).
- Run a focused manual pass from TESTING.md for your changed features.
- Open a PR and complete
.github/PULL_REQUEST_TEMPLATE.md. Use RELEASE.md when shipping a version.
- Install StyLua and Selene.
- Script index helper:
pwsh ./scripts/help.ps1 - Setup sanity helper:
pwsh ./scripts/dev-check.ps1 - Default changed-files helper:
pwsh ./scripts/lint-changed.ps1 - Default local gate (changed files):
pre-commit run --files <changed files> - Tool-specific debug checks:
stylua --check <paths>,selene --config selene.toml <paths> - Install pre-commit hooks (recommended):
pip install pre-commitpre-commit install- Release prep / full sweep only:
pre-commit run --all-files











