99 lines
3.0 KiB
Markdown
99 lines
3.0 KiB
Markdown
# Amibis
|
|
|
|
*Beware this is AI slop. I don't usually work with LUA and haven't really done any verification beyond making sure there aren't rogue loops running calculations constantly*
|
|
|
|
A World of Warcraft: The Burning Crusade Classic addon that compares your equipped gear against Best-in-Slot lists sourced from [wowtbc.gg](https://wowtbc.gg).
|
|
|
|
## Features
|
|
|
|
- **Gear Comparison** — See at a glance which slots are BIS and which can be upgraded
|
|
- **Auto-Detection** — Automatically detects your class and active talent spec
|
|
- **Stats Comparison** — Side-by-side stat breakdown (Healing, Spell Power, Intellect, Spirit, MP5, Haste, Crit)
|
|
- **Upgrade Highlight** — Identifies your biggest available upgrade
|
|
- **Persistent Settings** — Window position and spec overrides saved per character
|
|
|
|
## Usage
|
|
|
|
| Command | Description |
|
|
|---|---|
|
|
| `/amibis` | Toggle the comparison window |
|
|
| `/amibis spec <SpecName>` | Override auto-detected spec (e.g. `/amibis spec Holy`) |
|
|
| `/amibis spec clear` | Reset spec override to auto-detection |
|
|
|
|
### Interacting with the window
|
|
|
|
- **Drag** the title bar to reposition (position is saved)
|
|
- **Shift+Click** a row to link the BIS item in chat
|
|
- **Ctrl+Click** a row to open the dress-up preview
|
|
- **Hover** a row to see the item tooltip
|
|
|
|
## Adding BIS Lists
|
|
|
|
BIS data lives in `Amibis/Data/BISLists.lua`. Each list follows this structure:
|
|
|
|
### 1. Define a class table
|
|
|
|
```lua
|
|
local WARRIOR_T5 = {
|
|
["Head"] = {
|
|
itemID = 12345,
|
|
name = "Helm of the Fallen Defender",
|
|
source = "SSC - Lady Vashj",
|
|
enchant = { id = 35445, name = "Glyph of Renewal" }, -- optional
|
|
},
|
|
-- ... repeat for each slot
|
|
}
|
|
```
|
|
|
|
### 2. Supported slots
|
|
|
|
`Head`, `Neck`, `Shoulder`, `Back`, `Chest`, `Wrist`, `Hands`, `Waist`, `Legs`, `Feet`, `Finger0`, `Finger1`, `Trinket0`, `Trinket1`, `MainHand`, `SecondaryHand`, `Ranged`
|
|
|
|
### 3. Register in BIS_DATA
|
|
|
|
```lua
|
|
local BIS_DATA = {
|
|
["PRIEST"] = {
|
|
["Discipline"] = { ["T5"] = PRIEST_T5 },
|
|
["Holy"] = { ["T5"] = PRIEST_T5 },
|
|
},
|
|
["WARRIOR"] = {
|
|
["Protection"] = { ["T5"] = WARRIOR_T5 },
|
|
},
|
|
}
|
|
```
|
|
|
|
### Field reference
|
|
|
|
| Field | Required | Description |
|
|
|---|---|---|
|
|
| `itemID` | Yes | WoW item ID (number) |
|
|
| `name` | Yes | Display name |
|
|
| `source` | Yes | Where it drops (e.g. `"TK - Kael'thas Sunstrider"`) |
|
|
| `enchant` | No | `{ id = <spellID>, name = "<Enchant Name>" }` |
|
|
|
|
### Important
|
|
|
|
- Class keys must match WoW's English class constants: `"WARRIOR"`, `"PRIEST"`, `"MAGE"`, etc. (all caps)
|
|
- Spec names must match the values in `Amibis:GetPlayerSpec()` (e.g. `"Discipline"`, `"Holy"`, `"Arms"`)
|
|
- Phase keys are strings like `"T5"`, `"T6"` — the default phase is set in `Amibis.lua` under `DEFAULT_AMIBIS_DB.selectedPhase`
|
|
|
|
## Installation
|
|
|
|
Copy the `Amibis` folder into your WoW addon directory:
|
|
|
|
```
|
|
World of Warcraft/Interface/AddOns/Amibis/
|
|
```
|
|
|
|
Required files:
|
|
```
|
|
Amibis/
|
|
├── Amibis.toc
|
|
├── Amibis.lua
|
|
├── Data/
|
|
│ └── BISLists.lua
|
|
└── UI/
|
|
└── ComparisonFrame.lua
|
|
```
|