promotional bannermobile promotional banner
premium banner
A virtual prestige leveling system for max-level characters in WoW TBC Classic (2.5.5).

Description

# Prestige

 

A virtual prestige leveling system for max-level characters in WoW TBC Classic (2.5.5).

 

## What It Does

 

At level 70, character progression stops. Prestige gives you a reason to keep going: every mob kill and quest turn-in earns virtual XP towards **Prestige Levels**. Track your progress, earn medal tiers, and see other addon users' prestige in chat and tooltips.

 

## Features

 

### Virtual XP System
- **Mob kills** are detected via the combat log and award XP based on the actual TBC XP formula (mob level, level difference, elite multiplier, group size penalty)
- **Quest completions** award XP based on the quest's reward value
- XP is only tracked at level 70 - the addon stays completely inactive below max level

 

### Realm-Wide Prestige (Shared Progress)
- Prestige progress is **shared across all characters on the same realm**
- XP earned on any character contributes to the same prestige level
- Log in on an alt and see the same rank immediately
- Different realms maintain separate prestige progress

 

### Prestige Leveling
- Each prestige level requires **1,709,620 XP** (110% of the 69-to-70 requirement)
- Every prestige level costs the same amount - no exponential scaling
- Progress persists across sessions via SavedVariables

 

### Prestige Bar
- Custom XP bar showing your current progress (percentage and prestige level)
- Draggable - position it anywhere on your screen
- Resizable via mouse wheel (Shift+scroll for height)
- Medal icon displayed next to the bar
- Click the bar to open the menu window
- Hover for a detailed tooltip with stats (total XP, kills, quests, XP remaining)

 

### Menu Window
- **Info tab**: Overview with medal, XP bar, stats, and next rank preview
- **Ranks tab**: All 15 ranks with icons, level requirements, and current rank highlighted
- **Players tab**: Scrollable list of known addon users sorted by prestige level
- **Help tab**: Commands and controls reference

 

### Rank System (15 Ranks)

 

Uses the classic PvP rank icons with faction-specific names:

 

| Prestige | Alliance | Horde |
|:-:|---|---|
| 1 | Private | Scout |
| 2 | Corporal | Grunt |
| 3 | Sergeant | Sergeant |
| 4 | Master Sergeant | Senior Sergeant |
| 5 | Sergeant Major | First Sergeant |
| 6 | Knight | Stone Guard |
| 7 | Knight-Lieutenant | Blood Guard |
| 8 | Knight-Captain | Legionnaire |
| 9 | Knight-Champion | Centurion |
| 10 | Lieutenant Commander | Champion |
| 11 | Commander | Lieutenant General |
| 12 | Marshal | General |
| 13 | Field Marshal | Warlord |
| 14 | Grand Marshal | High Warlord |
| 15+ | Legend | Legend |

 

### Multiplayer Integration
- **Guild & Party/Raid**: Prestige data is automatically broadcast to guild members and group members on login
- **Player Tooltips**: Hovering over a player with the addon shows their prestige level in the tooltip
- **Chat Medals**: Medal icons are displayed next to player names in all chat channels (say, yell, party, raid, guild, whisper, custom channels)
- Communication uses `SendAddonMessage` - completely invisible and does not clutter chat

 

## Slash Commands

 

| Command | Description |
|---|---|
| `/prestige` | Show current status (level, XP, kills, quests, known players) |
| `/prestige menu` | Open the prestige menu window |
| `/prestige size <w> [h]` | Resize the prestige bar (width 100-600, height 10-40) |
| `/prestige reset` | Reset all progress (requires confirmation) |

 

## Installation

 

1. Download or clone the `Prestige` folder
2. Place it in your `\World of Warcraft\_anniversary_\Interface\AddOns` directory
3. Restart WoW or type `/reload`
4. The addon activates automatically once your character reaches level 70

 

## File Structure

 

```
Prestige/
  Prestige.toc         - Addon metadata
  Data.lua             - Constants, medal definitions, XP formula, hash functions
  Core.lua             - Initialization, SavedVariables, realm-wide data, slash commands
  XPEngine.lua         - Kill/quest tracking, mob level cache, rate limiter
  Communication.lua    - Addon messaging protocol (guild/party/raid broadcast)
  UI.lua               - Prestige bar, tooltip hooks, chat medals, nameplate icons
  Menu.lua             - Menu window with Info, Ranks, Players, Help tabs
```

 

## How XP Is Calculated

 

### Mob Kills
The addon uses the official TBC XP formula:
- **Base XP** = 45 + (5 x mob level)
- **Same level or higher**: Up to +25% bonus (capped at +5 levels above player)
- **Lower level**: XP scales down linearly toward the gray level threshold
- **Gray mobs** (more than 9 levels below at level 70): 0 XP
- **Elite multiplier**: Elite (2x), Rare-Elite (2.5x), Rare (1.5x), World Boss (3x)
- **Group penalty**: XP is divided by group size with a small multiplier bonus

 

Mob levels and classifications are cached when you target or mouseover enemies. If the level is unknown (e.g. you never targeted the mob), a fallback of level 68 is used.

 

### Quest Completions
- Quest XP is captured from `GetRewardXP()` when the quest completion dialog appears
- If the API returns 0 at max level, a fallback of 12,650 XP (average level 70 quest) is used

 

## Requirements

 

- WoW TBC Classic 2.5.5 (Interface 20505)
- Character must be level 70 for the addon to activate

 

## Version History

 

### 1.1.0
- **Realm-wide shared progress**: Prestige XP, level, kills, and quests are now shared across all characters on the same realm
- Automatic migration of existing data from v1.0.0
- Login message now displays the realm name to confirm shared progress

 

### 1.0.0
- Initial release
- Virtual XP from mob kills and quest completions
- 15-rank medal system with PvP rank icons
- Prestige bar with drag-to-move and scroll-to-resize
- Menu window with Info, Ranks, Players, and Help tabs
- Guild/Party/Raid addon communication
- Chat medal icons and player tooltip integration
- Nameplate prestige badges for group members

 

## Author

 

J4gg3d

 

## Special Thanks

 

- **Scura** - for testing and feedback
- **Scura**, **m4es7ro**, **Nexusexe** - for the idea behind Prestige