DKP Auctioneer

Raid-focused DKP auction system to manage points and run fair, transparent loot auctions.

File Details

DKP Aucitoneer V1.0.0

  • R
  • Jan 4, 2026
  • 36.93 KB
  • 12
  • 11.2.7
  • Retail

File Name

DKPAuctioneer.zip

Supported Versions

  • 11.2.7

# DKP Auctioneer - Changelog

## Version 1.0.0 (Initial Release)

### Core Features

#### ๐ŸŽฏ Auction System
- **Item Auctions**: Complete auction system for loot distribution
- **Bid Window**: Interactive window with live timer (30 seconds default)
- **Minimum Offer**: Configurable minimum bids per item
- **Bid/Pass System**: Players can bid or pass
- **Winner Announcement**: Winner display for 5 seconds after auction ends
- **Automatic Closing**: Bid window closes automatically after result display

#### โš–๏ธ Tie-Breaker System
- **Automatic Roll Detection**: Automatically detects ties
- **Auto-Roll**: Players automatically roll in case of a tie (1-100)
- **Roll Parsing**: Supports German and English roll messages
- **Winner Selection**: Highest roll wins automatically
- **Roll Display**: Shows all rolls in chat

#### ๐Ÿ‘ฅ Raid Roster Management
- **Automatic Tracking**: Automatically tracks all raid members
- **Addon Detection**: Shows which players have the addon installed (PING/PONG system)
- **Cross-Realm Support**: Full support for name-realm format
- **Persistent Storage**: DKP values remain saved even after group disband
- **Real-time Updates**: Automatic update on group changes

#### ๐ŸŽ–๏ธ Lootmaster System
- **Lootmaster Assignment**: Define a lootmaster per raid
- **Permission System**: Only lootmaster can start auctions and manage DKP
- **Automatic Sync**: Lootmaster status is automatically synced to all
- **Master-only Features**: Special UI elements only visible to lootmaster

#### ๐Ÿ’ฐ DKP Management
- **Individual Adjustments**: Increase/decrease DKP for individual players
- **Bulk Operations**: Change DKP for all players at once
- **Real-time Sync**: All changes are immediately sent to the group
- **Persistent Storage**: DKP values are stored in SavedVariables

#### ๐Ÿ“œ Logging System
- **Complete History**: Every DKP change is logged
- **Detailed Entries**: Timestamp, player, change, reason
- **Searchable Logs**: Filter logs by player
- **Automatic Sync**: Logs are automatically synced to all group members
- **Won Items Tracking**: Tracks which items were won

### User Interface

#### ๐Ÿ–ผ๏ธ Main Window (Tabbed Interface)
- **Player Tab**: Own DKP, auto-roll settings, personal logs
- **Master Tab**: (Lootmaster only) DKP management, loot list, start auctions
- **Loot Tab**: Overview of all available items
- **Logs Tab**: (Lootmaster only) Complete log history of all players
- **Settings Tab**: Set lootmaster, debug mode, sync/clear functions

#### ๐Ÿ—บ๏ธ Minimap Icon
- **Quick Access**: Click opens/closes main window
- **Draggable**: Icon can be freely positioned around the minimap
- **Persistent Position**: Position is retained across sessions
- **Tooltip**: Shows addon name and function

#### โš™๏ธ Settings & Tools
- **Debug Toggle**: Enable/disable debug output in chat
- **Sync All Data**: Lootmaster can send the complete database to all
  - All DKP values
  - All log entries
  - Lootmaster status
- **Clear All Data**: Delete entire SavedVariable (with confirmation dialog)
- **Automatic Reload Prompt**: Suggests reload after clear all

### Technical Features

#### ๐Ÿ”„ Communication System
- **Addon Messages**: Uses WoW addon message system (PARTY/RAID channel)
- **Cross-Realm Compatible**: Works in cross-realm groups
- **Message Types**:
  - `PING/PONG` - Addon detection
  - `LOOT_PROPOSE` - Start auction
  - `LOOT_BID/LOOT_PASS` - Bids/passes
  - `LOOT_WINNER` - Winner broadcast
  - `AUCTION_ROLL_REQUEST` - Tie-breaker roll request
  - `ROSTER_SYNC` - DKP synchronization
  - `LOG_ENTRY` - Log entries
  - `LOGS_CLEAR` - Log reset for sync
  - `LOOTMASTER_SET` - Lootmaster status

#### ๐Ÿ’พ Data Persistence
- **SavedVariablesPerCharacter**: Separate database per character
- **Automatic Saving**: All changes are saved automatically
- **Database Structure**:
  - `roster` - Player DKP values
  - `logs` - DKP change history
  - `lootmaster` - Current lootmaster
  - `settings` - Debug & UI settings
  - `minimap` - Minimap icon position

#### ๐Ÿ—๏ธ Architecture
- **Modular Design**: Separate modules for core, comm, roster, loot, auction, UI, logs
- **Event-Driven**: Uses WoW event system (GROUP_ROSTER_UPDATE, CHAT_MSG_SYSTEM, etc.)
- **Helper Functions**: Central helpers for name normalization, group detection
- **Error Handling**: Robust use of pcall() for critical operations

### Slash Commands
- `/dkp` - Toggle main UI

### Quality of Life Features
- **Smart Name Handling**: Automatic normalization of player names (with/without realm)
- **Flexible Roll Parsing**: Supports German and English roll messages
- **Duplicate Prevention**: Prevents duplicate log entries during sync
- **UI Auto-Refresh**: UI automatically refreshes on data changes
- **Local Lootmaster Handling**: Lootmaster receives own bids/rolls even if not via addon message

### Bug Fixes & Optimizations
- โœ… Fixed: Duplicate message reception due to separate event frames
- โœ… Fixed: Roll parsing for players without realm suffix
- โœ… Fixed: Serialization of complex data structures
- โœ… Fixed: Log sync correctly overwrites old entries (LOGS_CLEAR signal)
- โœ… Optimized: Timed delay for sync all for stable transmission

### Known Limitations
- **Serialization**: Complex nested tables are not supported (simple structures work)
- **Message Size**: Very large databases may hit message size limits
- **Offline Sync**: Players who are offline during sync do not receive updates

### Requirements
- World of Warcraft: The War Within (11.0.2+)
- Interface Version: 110002+

---

**First Release**: January 2026  
**Author**: Lit  
**Version**: 1.0.0  
**License**: All Rights Reserved

---

# DKP Auctioneer - Changelog (Deutsch)

## Version 1.0.0 (Initial Release)

### Kernfunktionen

#### ๐ŸŽฏ Auktionssystem
- **Item Auctions**: Vollständiges Auktionssystem für Loot-Verteilung
- **Bid Window**: Interaktives Fenster mit Live-Timer (30 Sekunden Standard)
- **Minimum Offer**: Konfigurierbare Mindestgebote pro Item
- **Bid/Pass System**: Spieler können bieten oder passen
- **Winner Announcement**: Gewinner-Anzeige für 5 Sekunden nach Auktionsende
- **Automatic Closing**: Bid Window schließt automatisch nach Result-Anzeige

#### โš–๏ธ Tie-Breaker System
- **Automatic Roll Detection**: Erkennt automatisch Gleichstände
- **Auto-Roll**: Spieler würfeln automatisch bei Gleichstand (1-100)
- **Roll Parsing**: Unterstützt Deutsch und English Roll-Messages
- **Winner Selection**: Höchster Roll gewinnt automatisch
- **Roll Display**: Zeigt alle Rolls im Chat an

#### ๐Ÿ‘ฅ Raid Roster Management
- **Automatic Tracking**: Verfolgt alle Raid-Mitglieder automatisch
- **Addon Detection**: Zeigt an welche Spieler das Addon installiert haben (PING/PONG System)
- **Cross-Realm Support**: Vollständige Unterstützung für Name-Realm Format
- **Persistent Storage**: DKP-Werte bleiben auch nach Gruppenauflösung gespeichert
- **Real-time Updates**: Automatische Aktualisierung bei Gruppen-Änderungen

#### ๐ŸŽ–๏ธ Lootmaster System
- **Lootmaster Assignment**: Definiere einen Lootmaster pro Raid
- **Permission System**: Nur Lootmaster kann Auktionen starten und DKP verwalten
- **Automatic Sync**: Lootmaster-Status wird automatisch an alle gesynct
- **Master-only Features**: Spezielle UI-Elemente nur für Lootmaster sichtbar

#### ๐Ÿ’ฐ DKP Management
- **Individual Adjustments**: Erhöhe/Verringere DKP einzelner Spieler
- **Bulk Operations**: Ändere DKP aller Spieler gleichzeitig
- **Real-time Sync**: Alle Änderungen werden sofort an die Gruppe gesendet
- **Persistent Storage**: DKP-Werte werden in SavedVariables gespeichert

#### ๐Ÿ“œ Logging System
- **Complete History**: Jede DKP-Änderung wird protokolliert
- **Detailed Entries**: Timestamp, Spieler, Änderung, Grund
- **Searchable Logs**: Filtere Logs nach Spieler
- **Automatic Sync**: Logs werden automatisch an alle Gruppenmitglieder gesynct
- **Won Items Tracking**: Verfolgt welche Items gewonnen wurden

### Benutzeroberfläche

#### ๐Ÿ–ผ๏ธ Hauptfenster (Tab-Interface)
- **Player Tab**: Eigene DKP, Auto-Roll Einstellungen, Personal Logs
- **Master Tab**: (Nur Lootmaster) DKP-Verwaltung, Loot-Liste, Auktionen starten
- **Loot Tab**: Übersicht aller verfügbaren Items
- **Logs Tab**: (Nur Lootmaster) Komplette Log-Historie aller Spieler
- **Settings Tab**: Lootmaster setzen, Debug-Modus, Sync/Clear Funktionen

#### ๐Ÿ—บ๏ธ Minimap Icon
- **Quick Access**: Klick öffnet/schließt Main Window
- **Draggable**: Icon kann frei um die Minimap positioniert werden
- **Persistent Position**: Position bleibt über Sessions erhalten
- **Tooltip**: Zeigt Addon-Name und Funktion

#### โš™๏ธ Settings & Tools
- **Debug Toggle**: Aktiviere/Deaktiviere Debug-Ausgaben im Chat
- **Sync All Data**: Lootmaster kann komplette Datenbank an alle senden
  - Alle DKP-Werte
  - Alle Log-Einträge
  - Lootmaster-Status
- **Clear All Data**: Lösche komplette SavedVariable (mit Bestätigungs-Dialog)
- **Automatic Reload Prompt**: Empfiehlt Reload nach Clear All

### Technische Features

#### ๐Ÿ”„ Kommunikationssystem
- **Addon Messages**: Nutzt WoW Addon Message System (PARTY/RAID Channel)
- **Cross-Realm Compatible**: Funktioniert in Cross-Realm Gruppen
- **Message Types**: 
  - `PING/PONG` - Addon-Detection
  - `LOOT_PROPOSE` - Auktion starten
  - `LOOT_BID/LOOT_PASS` - Gebote/Pässe
  - `LOOT_WINNER` - Gewinner-Broadcast
  - `AUCTION_ROLL_REQUEST` - Tie-Breaker Roll-Anfrage
  - `ROSTER_SYNC` - DKP-Synchronisation
  - `LOG_ENTRY` - Log-Einträge
  - `LOGS_CLEAR` - Log-Reset für Sync
  - `LOOTMASTER_SET` - Lootmaster-Status

#### ๐Ÿ’พ Datenspeicherung
- **SavedVariablesPerCharacter**: Separate Datenbank pro Charakter
- **Automatic Saving**: Alle Änderungen werden automatisch gespeichert
- **Database Structure**:
  - `roster` - Spieler-DKP-Werte
  - `logs` - DKP-Änderungs-Historie
  - `lootmaster` - Aktueller Lootmaster
  - `settings` - Debug & UI-Einstellungen
  - `minimap` - Minimap Icon Position

#### ๐Ÿ—๏ธ Architektur
- **Modular Design**: Separate Module für Core, Comm, Roster, Loot, Auction, UI, Logs
- **Event-Driven**: Nutzt WoW Event System (GROUP_ROSTER_UPDATE, CHAT_MSG_SYSTEM, etc.)
- **Helper Functions**: Zentrale Helper für Name-Normalisierung, Gruppe-Detection
- **Error Handling**: Robuste pcall() Verwendung für kritische Operationen

### Slash Commands
- `/dkp` - Toggle Main UI

### Quality of Life Features
- **Smart Name Handling**: Automatische Normalisierung von Spielernamen (mit/ohne Realm)
- **Flexible Roll Parsing**: Unterstützt Deutsche und Englische Roll-Messages
- **Duplicate Prevention**: Verhindert doppelte Log-Einträge beim Sync
- **UI Auto-Refresh**: UI aktualisiert sich automatisch bei Datenänderungen
- **Local Lootmaster Handling**: Lootmaster empfängt eigene Bids/Rolls auch wenn nicht per Addon Message

### Bug Fixes & Optimizations
- โœ… Behoben: Doppelter Nachrichten-Empfang durch separate Event Frames
- โœ… Behoben: Roll-Parsing für Spieler ohne Realm-Suffix
- โœ… Behoben: Serialisierung von komplexen Daten-Strukturen
- โœ… Behoben: Log-Sync überschreibt alte Einträge korrekt (LOGS_CLEAR Signal)
- โœ… Optimiert: Zeitliche Verzögerung beim Sync All für stabile Übertragung

### Bekannte Einschränkungen
- **Serialization**: Komplexe nested Tables werden nicht unterstützt (einfache Strukturen funktionieren)
- **Message Size**: Sehr große Datenbanken könnten Message-Size Limits erreichen
- **Offline Sync**: Spieler die während Sync offline sind, erhalten keine Updates

### Anforderungen
- World of Warcraft: The War Within (11.0.2+)
- Interface Version: 110002+

---

**Erstveröffentlichung**: Januar 2026  
**Autor**: Lit  
**Version**: 1.0.0  
**Lizenz**: All Rights Reserved