DKP Auctioneer

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

File Details

DKPAuctioneer_V1.4.0

  • R
  • Mar 16, 2026
  • 47.97 KB
  • 19
  • 12.0.1
  • Retail

File Name

DKPAuctioneer_V1.4.0.zip

Supported Versions

  • 12.0.1

# Changelog 1.4.0

## [1.4.0] - 2026-03-16

### Added
- **Bidder Count Display**: Bid window now shows a player icon with the number of participants in the top-left corner
  - Visual indicator showing how many players are participating in the auction
  - Icon updates dynamically based on actual participant count from Pre-Auction phase
  - Yellow text positioned over the icon for better visibility

### Changed
- **UI Redesign - Pre-Auction Window**:
  - Title changed from "DKP Auction" to "Auktion"
  - Item display now centered with icon and quality-colored item name
  - Dynamic text wrapping and centering based on item name length
  - Improved layout and visual consistency

- **UI Redesign - Bid Window**:
  - Title changed to "Auktion" (matching Pre-Auction window)
  - Item display with icon and quality-colored name, centered layout
  - Input field redesigned: "Gebot: [Input Field] / [Player DKP]" format
  - Button labels changed: "Bid" → "Bieten", "Pass" → "Passen"
  - Buttons centered at bottom with 120x30 size
  - Window height optimized to 250px (from 280px)
  - Input field size: 120x40px with 18pt font
  - Status label shows validation errors from PlaceBid instead of chat messages

- **Message Optimization - Chat Cleanup**:
  - Removed debug spam: All [SERIALIZE], [DESERIALIZE], [PARTICIPATE], [DKP TEST] messages
  - Converted technical messages to DKP:Debug (only visible when debug mode enabled)
  - Removed local [DKP] notification for auction start
  - Removed local [DKP] notification for passed bids
  - Removed local [DKP] notification for DKP deductions (log entries)
  - Removed local [DKP] notification for tie-breaker details

- **Raid Chat Messages Enhanced**:
  - Pre-Auction start: "[DKPAuctioneer] Teilnahme-Abfrage gestartet für: [Item]"
  - Auction start: "[DKPAuctioneer] Auktion startet: Min. Gebot: X DKP"
  - Winner announcement: "[DKPAuctioneer] [Player] gewinnt: [Item] für X DKP" (changed from "won ... for")
  - No participants: "[DKPAuctioneer] Keine Teilnehmer! Auktion wird beendet."
  - No bids: "[DKPAuctioneer] Keine Gebote erhalten! Auktion wird beendet."
  - Tie-breaker: "[DKPAuctioneer] Gleichstand: X Spieler mit Y DKP. ROLL!"

- **Auction End Behavior**:
  - When no participants: Auction ends, button resets to "Auction Start", winner set to "-"
  - When no bids received: Auction ends, button resets to "Auction Start", winner set to "-"
  - Master Tab refreshes automatically to update button status

### Fixed
- **Recursive Serialization**: Fixed nested table serialization in Pre-Auction participant data
  - Participants table now correctly serialized with all nested data
  - Balanced bracket parsing in deserialization handles complex structures
  - Prevents "table: 0x..." string issues in communication

- **Error Handling**: PlaceBid validation errors now displayed in UI instead of chat
  - Minimum bid validation messages shown in status label
  - 5 DKP increment validation shown in UI
  - Insufficient DKP messages shown in UI
  - Cleaner user experience with contextual error display

- **Item Display Cache**: Proper handling of items not yet in cache
  - Uses Item:CreateFromItemLink with ContinueOnItemLoad callback
  - Automatic retry when item data becomes available
  - Dynamic centering update after item loads

### Technical Details
- Addon Version: 1.4.0
- Interface Version: 120001
- WoW Expansion: Midnight (Patch 12.0.1)
- Release Date: March 16, 2026

### Code Changes
- **DKPAuctioneer_Comm.lua**: Recursive serialization with serializeTable helper, balanced bracket deserialization
- **DKPAuctioneer_Auction.lua**: PlaceBid returns (success, errorMsg) tuple, participant count tracking, raid message improvements
- **DKPAuctioneer_UI.lua**: Complete redesign of Pre-Auction and Bid windows, CenterItemDisplay() function, bidder count display
- **DKPAuctioneer_Loot.lua**: Message cleanup, debug conversions
- **DKPAuctioneer_Logs.lua**: DKP deduction messages converted to debug
- **DKPAuctioneer_Roster.lua**: "DKP aktualisiert" → DKP:Debug
- **DKPAuctioneer_Lootmaster.lua**: "Lootmaster aktualisiert" → DKP:Debug

### All Features from v1.3.0 Included
This version includes all features from version 1.3.0 and earlier versions.

---

## [1.4.0] - 2026-03-16

### Hinzugefügt
- **Bieter-Anzahl Anzeige**: Bid-Fenster zeigt nun ein Spieler-Icon mit der Anzahl der Teilnehmer oben links
  - Visueller Indikator zeigt, wie viele Spieler an der Auktion teilnehmen
  - Icon aktualisiert sich dynamisch basierend auf der tatsächlichen Teilnehmerzahl aus der Pre-Auction Phase
  - Gelber Text über dem Icon für bessere Sichtbarkeit

### Geändert
- **UI Neugestaltung - Pre-Auction Fenster**:
  - Titel geändert von "DKP Auction" zu "Auktion"
  - Item-Anzeige nun zentriert mit Icon und qualitätsgefärbtem Item-Namen
  - Dynamischer Textumbruch und Zentrierung basierend auf Item-Namenlänge
  - Verbessertes Layout und visuelle Konsistenz

- **UI Neugestaltung - Bid-Fenster**:
  - Titel geändert zu "Auktion" (passend zum Pre-Auction Fenster)
  - Item-Anzeige mit Icon und qualitätsgefärbtem Namen, zentriertes Layout
  - Eingabefeld neu gestaltet: "Gebot: [Eingabefeld] / [Spieler DKP]" Format
  - Button-Beschriftungen geändert: "Bid" → "Bieten", "Pass" → "Passen"
  - Buttons zentriert am unteren Rand mit 120x30 Größe
  - Fensterhöhe optimiert auf 250px (von 280px)
  - Eingabefeld-Größe: 120x40px mit 18pt Schrift
  - Status-Label zeigt Validierungsfehler von PlaceBid anstatt Chat-Nachrichten

- **Nachrichten-Optimierung - Chat Bereinigung**:
  - Debug-Spam entfernt: Alle [SERIALIZE], [DESERIALIZE], [PARTICIPATE], [DKP TEST] Nachrichten
  - Technische Nachrichten zu DKP:Debug konvertiert (nur sichtbar wenn Debug-Modus aktiv)
  - Lokale [DKP] Benachrichtigung für Auktionsstart entfernt
  - Lokale [DKP] Benachrichtigung für Passen entfernt
  - Lokale [DKP] Benachrichtigung für DKP-Abzüge entfernt (Log-Einträge)
  - Lokale [DKP] Benachrichtigung für Tie-Breaker Details entfernt

- **Schlachtzugs-Nachrichten verbessert**:
  - Pre-Auction Start: "[DKPAuctioneer] Teilnahme-Abfrage gestartet für: [Item]"
  - Auktionsstart: "[DKPAuctioneer] Auktion startet: Min. Gebot: X DKP"
  - Gewinner-Ankündigung: "[DKPAuctioneer] [Spieler] gewinnt: [Item] für X DKP" (geändert von "won ... for")
  - Keine Teilnehmer: "[DKPAuctioneer] Keine Teilnehmer! Auktion wird beendet."
  - Keine Gebote: "[DKPAuctioneer] Keine Gebote erhalten! Auktion wird beendet."
  - Tie-Breaker: "[DKPAuctioneer] Gleichstand: X Spieler mit Y DKP. ROLL!"

- **Auktionsende-Verhalten**:
  - Bei keinen Teilnehmern: Auktion endet, Button setzt auf "Auction Start" zurück, Gewinner auf "-" gesetzt
  - Bei keinen Geboten: Auktion endet, Button setzt auf "Auction Start" zurück, Gewinner auf "-" gesetzt
  - Master Tab aktualisiert sich automatisch um Button-Status zu aktualisieren

### Behoben
- **Rekursive Serialisierung**: Verschachtelte Tabellen-Serialisierung in Pre-Auction Teilnehmer-Daten behoben
  - Teilnehmer-Tabelle wird nun korrekt mit allen verschachtelten Daten serialisiert
  - Balanciertes Klammer-Parsing in Deserialisierung verarbeitet komplexe Strukturen
  - Verhindert "table: 0x..." String-Probleme in der Kommunikation

- **Fehlerbehandlung**: PlaceBid Validierungsfehler werden nun in der UI anstatt im Chat angezeigt
  - Mindestgebot-Validierungsmeldungen im Status-Label angezeigt
  - 5 DKP Schrittweiten-Validierung in UI angezeigt
  - Unzureichende DKP Meldungen in UI angezeigt
  - Sauberere Benutzererfahrung mit kontextbezogener Fehleranzeige

- **Item-Anzeige Cache**: Korrekte Behandlung von Items, die noch nicht im Cache sind
  - Verwendet Item:CreateFromItemLink mit ContinueOnItemLoad Callback
  - Automatischer Retry wenn Item-Daten verfügbar werden
  - Dynamische Zentrierungs-Aktualisierung nach Item-Laden

### Technische Details
- Addon-Version: 1.4.0
- Interface-Version: 120001
- WoW-Erweiterung: Midnight (Patch 12.0.1)
- Veröffentlichungsdatum: 16. März 2026

### Code-Änderungen
- **DKPAuctioneer_Comm.lua**: Rekursive Serialisierung mit serializeTable Helper, balanciertes Klammer-Deserialisierung
- **DKPAuctioneer_Auction.lua**: PlaceBid gibt (success, errorMsg) Tupel zurück, Teilnehmerzahl-Tracking, Schlachtzugs-Nachrichten verbessert
- **DKPAuctioneer_UI.lua**: Komplette Neugestaltung von Pre-Auction und Bid-Fenstern, CenterItemDisplay() Funktion, Bieter-Anzahl Anzeige
- **DKPAuctioneer_Loot.lua**: Nachrichten-Bereinigung, Debug-Konvertierungen
- **DKPAuctioneer_Logs.lua**: DKP-Abzug Nachrichten zu Debug konvertiert
- **DKPAuctioneer_Roster.lua**: "DKP aktualisiert" → DKP:Debug
- **DKPAuctioneer_Lootmaster.lua**: "Lootmaster aktualisiert" → DKP:Debug

### Alle Features aus v1.3.0 enthalten
Diese Version enthält alle Features aus Version 1.3.0 und früheren Versionen.