Description
Character Gear Optimizer
A gear optimizer and upgrade advisor for WoW Forever, Classic and Retail — pick your spec and goal, see a score on every item, equip your best set in one click, and auto-roll only on real upgrades.
Character Gear Optimizer scans your bags, bank and equipped gear, scores every candidate against configurable stat weights for your spec, and shows you the best set for the job. Hit caps, resistance caps and weapon setups are handled for you, saved sets are one click away, and anything the optimizer wants is automatically protected from being sold.
Character Gear Optimizer replaces item-level guesswork with actual math. Every item is scored against the stat weights for your current spec — or your own custom profile — so a lower-ilvl piece with the right stats wins when it deserves to. The panel shows a live character sheet beside your gear, a per-slot picker listing every alternative you own with its score, and a set manager for saving and swapping full loadouts. It runs on every supported client: WoW Forever, Classic Era, every Classic expansion and the current Retail build. Already use Pawn? Paste your Pawn string in and keep your own stat weights.
✨ At a Glance
- Quick Setup — on first login pick your spec and what you are doing (Leveling, Dungeons & Raids or PvP) and a ready-made weight preset is built and activated. Reopen it any time with
/cgo setup. - Stat weight scoring — every item in your bags, bank and equipped slots is scored against your spec's weights, not just its item level.
- Per-slot item picker — click any gear slot to see every alternative you own, each with its calculated score, and swap in one click.
- Custom weight profiles — build your own stat weights when the presets don't match how you actually play, or import and export Pawn strings.
- Upgrade tooltips — every item tooltip shows its weighted score and the difference against what you are wearing.
- Cap priorities — hit cap, dual-wield white hit, and all five resistance schools, with a dynamic hit cap that accounts for talents.
- Saved gear sets — save, update and equip full loadouts, with the optimizer's current best set always one click from being saved.
- Weapon setup — separate main-hand, off-hand and ranged handling so two-handers and dual-wield are scored correctly, remembered per spec and per profile.
- Weapon Speed weight — prefer slow weapons with a positive weight or fast ones with a negative weight.
- Live character stats — primary, melee, ranged, spell and defense panels update as you preview gear.
- Spec HUD — a compact readout of the stats that matter for your role, including avoidance and cap progress.
- Sell protection — anything in a saved set, in the working set, or an upgrade under any of your weight profiles is protected from vendoring.
- Auto Roll — automatic need/greed rolling, with Need only when the drop is at least a 15% upgrade for you (change it with
/cgo rollmin). - Gargul reserve integration — import a reserve CSV and click to roll on what you reserved.
- Controller navigation — full gamepad support with spatial d-pad movement across the panel and item picker.
- Open with
/cgo— or/cgopt,/chargear,/charactergear.
🎮 One Project, Every Supported WoW Version
Character Gear Optimizer is a single CurseForge project with releases built for the current Retail and every Classic client. Download the file matching your game client — do not install a Retail package in a Classic client, or vice versa.
| Game client | Download the matching release | Highlights |
|---|---|---|
| Retail | Mainline |
Full stat weights, modern secret-value handling, gamepad navigation |
| WoW Forever | Forever |
Quick Setup presets, single hit and crit stats, Dynamic Hit Cap, combat-safe equipping |
| Mists of Pandaria Classic | Mists |
MoP stat model with reforging-era weights |
| Cataclysm Classic | Cata |
Cata mastery and hit-cap handling |
| Wrath of the Lich King Classic | Wrath |
Wrath defense cap, resistance sets and dual-wield hit |
| Burning Crusade Classic | TBC |
TBC hit and spell-hit caps with per-school resistance |
| Classic Era / Season of Discovery / Hardcore | Vanilla |
Vanilla stat model, weapon skill and resistance gearing |
Important: Each release ZIP contains the
CharacterGearOptimizerfolder and its matching.toc. Verify the path isInterface\AddOns\CharacterGearOptimizer\CharacterGearOptimizer.tocbefore enabling. Stat models differ per client — the addon only shows caps and stats that exist in the era you are playing.
⚔️ Core Features
Stat Weight Optimization
Every item you own is scored against a weight profile. Instead of sorting by item level, the optimizer multiplies each stat on the item by its weight and totals the result, so a piece with your best stats beats a higher-ilvl piece with wasted ones.
- Preset profiles for every class spec, including hero talent paths on Retail.
- Custom profiles — define your own weights per stat when the presets don't match your build.
- Slot-aware scoring — rings, trinkets and weapons are evaluated against both slots they could occupy.
- Empty slot handling — anything with a positive score is an upgrade for an empty slot, so new characters get sensible answers immediately.
The Item Picker
Click any gear slot in the panel to open a scored list of every alternative you own for that slot. Each row shows the item and its calculated score under your current profile, so the comparison is explicit rather than implied. Pick one and it equips.
Quick Setup
New characters are greeted with a two-step window: choose your spec (the detected one is marked) and what you are doing — Leveling, Dungeons & Raids or PvP. The addon builds a weight preset for that combination, saves it as a normal profile you can edit, and makes it active. Leveling presets favor weapon damage, stamina and regen; PvP presets favor stamina and resilience. Presets are starting points based on stat priorities, not simulations, and /cgo setup lets you choose again whenever your goal changes.
Pawn Import and Export
Paste a Pawn scale string with /cgo import to use weights from a guide or your own sims, and export any profile with /cgo pawn to share it.
Auto Roll
Loot rolls are answered for you. The addon rolls Need only when the item beats what you are wearing by your chosen margin (15% by default, /cgo rollmin <percent>), and /cgo autoroll switches the feature off.
Cap Priorities
Toggle the caps that matter for your content and the optimizer will weight toward them:
- Dynamic Hit Cap — calculated from your level, target level and talent-granted hit.
- DW White Cap — the higher dual-wield white-swing hit requirement, for fury and combat specs.
- Resistance caps — Fire, Frost, Nature, Shadow and Arcane, for fights that demand a resistance set.
- Not 60 — prefer heirlooms and level-appropriate gear while you are still levelling.
Gear Sets
Save the optimizer's current best set, or any loadout you have assembled, as a named set. Update it in place as you gear up, and equip it in one click. Equipping uses the game's secure buttons, so it works within the modern client's addon restrictions. LazySets go one step further: one button rescans your bags and equips the best gear for a saved weight profile, with that profile's weapon setup. Saved sets feed directly into sell protection — a set member is never vendored by accident.
Sell Protection
The optimizer already knows what is valuable to you, so it publishes that knowledge. An item is protected when it is a member of any saved set, part of the set currently displayed in the panel, or an upgrade for any of your weight profiles. The companion Sellomatic addon reads this and will not sell a protected item — including upgrades you have not equipped yet.
Simulation
With SimulationCraft installed as an optional dependency, the Simulate button hands off your current and proposed sets for a DPS comparison, so weight-based scoring can be checked against a real sim.
Gargul Reserves
Import a reserve list as CSV and the addon tracks what you reserved, surfaces it on drops, and lets you click to roll on your reservations without hunting through chat.
Controller Support
The panel is fully navigable with a gamepad. Movement is spatial rather than index-based, so the d-pad goes where it looks like it should even though gear slots ring the model and checkboxes sit in columns. The item picker becomes its own input layer, so B backs out of the picker before it closes the panel.
- D-pad / left stick — move between gear slots, checkboxes and buttons.
- A — activate the focused control.
- B — close the item picker, or the panel if no picker is open.
- Left trigger — jump to the optimizer from anywhere.
👥 Built For Every Kind of Player
- Casual players: Open the panel, click Equip Set, and wear the best gear you own. No configuration needed.
- Raiders: Cap priorities and per-profile scoring mean your hit-capped set and your resistance set are both one click away.
- Levelling and alts: The Not 60 option prefers heirlooms, and empty slots are filled with anything that scores positively.
- Theorycrafters: Custom weight profiles and SimulationCraft handoff let you test your own stat model rather than trusting a preset.
- Controller players: The whole panel is navigable with a gamepad, including the per-slot item picker.
📝 Notes
- Useful commands:
/cgo setup,/cgo upgrade(top upgrades in your bags),/cgo weak(weakest slots),/cgo hitcap,/cgo import,/cgo pawn,/cgo help. - Settings, weight profiles and saved sets persist between sessions via
CharacterGearOptimizerDB(per character) andCharacterGearOptimizerGlobalDB(account-wide). - SimulationCraft is an optional dependency — everything except the Simulate button works without it.
- The addon does not add Retail-only stats to Classic clients; each release only evaluates stats that exist in that era.
- Sell protection is published as
CGOIsProtectedFromSelling, so other addons can honour it. Sellomatic does this automatically. - Item scoring is done client-side against your own bags, bank and equipped gear — no external data or account linking is required.
🔧 Module Reference
| Module | Description |
|---|---|
Core.lua |
Addon framework, slash commands and event dispatch |
Compat.lua |
Cross-client API compatibility layer |
LegacyAPI.lua |
Polyfills for globals removed in modern clients |
Weights.lua |
Stat weight profiles, class specs and custom weights |
StatCalculations.lua |
Stat extraction and score calculation |
StatCapabilities.lua |
Which stats exist on the running client |
HitCap.lua |
Hit, spell hit and dual-wield white cap maths |
Scanner.lua |
Bag, bank and equipped item scanning |
Optimizer.lua |
Best-set solving across all slots |
Simulation.lua |
SimulationCraft handoff |
EquipManager.lua |
Set saving, updating and equipping |
SellProtection.lua |
Publishes what must never be vendored |
TooltipHook.lua |
Item score on tooltips |
UI_Panel.lua |
Main panel and per-slot item picker |
UI_StatsPanel.lua |
Live character stat readouts |
UI_Buttons.lua |
Panel action buttons |
SpecHUD.lua |
Compact role-relevant stat HUD |
GamepadNav.lua |
Controller navigation and input routing |
AutoRoller.lua |
Automatic need/greed on upgrades |
Wizard.lua |
Quick Setup window and goal presets |
GargulCSV.lua |
Reserve list CSV parser |
GargulReserves.lua |
Reserve tracking and click-to-roll |
CloudSync.lua |
Profile synchronisation |
MinimapButton.lua |
Minimap button and menu |
Options.lua |
Options panel |
Localization.lua |
Translatable strings |
🐛 Support
Found an issue or have an idea? Please open an issue or leave a comment on CurseForge. When reporting a bug, include your game version, addon version, and the full error message if one appears. Appreciate any patreons to help as this is costing me time and money to maintain: https://www.patreon.com/c/LazyLoafs504
Made for players who would rather be raiding than doing spreadsheet math.
More from this author
Same look, same controls, built for WoW Forever, Classic and Retail:
- Overcraft UI - unit frames, action bars and chat in one clean UI
- Lazy Bags - combined bag with auto sell and categories
- Lazy Cooldowns - big, readable cooldown numbers on every button
- Lazy Buffing - buff reminders with one-click buffing
- Lazy Consumables - class-aware consumable tracker
- Lazy Feed Pet - hunter pet panel with one-click Call, Revive and Mend
- Gooncheck - ready check and consumables check






