File Details
HCRoleplay v1.8.2
- R
- Feb 25, 2026
- 127.44 KB
- 4
- 1.15.8
- Classic
File Name
HCRoleplay.zip
Supported Versions
- 1.15.8
## [1.8.2] – 2026-02-25
### Fixed / Improved
- **Wut-Ressource korrekt bewertet** (`BUILDUP_POWER_TYPES`-System):
- Krieger und Druide (Bärenform) nutzen **PowerType 1 (Rage/Wut)** – diese baut sich auf, nicht ab
- `GetResourceStateKey()`: Für Wut **umgekehrte Logik** – 0 Wut = frisch/bereit (`full_res`), viel Wut = noch aufgewühlt (`low_res`)
- `GetCombatStateKey()`: Krieger mit >65% Wut nach Kampf = viele Treffer kassiert → HP-Wert um 20% schlechter gewichtet (State rutscht eine Stufe härter)
- Verhindert: Krieger mit 0 Wut (normaler Kampfstart) bekommt "erschöpft"-Emote
- Verhindert: Krieger nach langer Kampfserie mit voller Wut bekommt "mühelos"-Emote
- Spezifische `low_res`-Texte für Wut-Aufbau-Klassen ergänzt:
- "die Wut tobt noch von gerade eben – kein Atem, keine Pause, sofort weiter"
- "die Wut ersetzt alles, was dem Körper fehlt"
### Technical
- `BUILDUP_POWER_TYPES = { [1]=true }` – leicht erweiterbar für zukünftige Ressourcen-Typen
- Architektur erlaubt spätere Erweiterung (z.B. Runenenergie des Death Knights in WotLK wäre auch Aufbau-Typ)
## [1.8.1] – 2026-02-25
### Added
- **GATHER_NODE** – Mining & Herbalism-Emotes beim Abbauen/Sammeln an Knoten (Erzadern, Kräuter)
- Erkennung via `LOOT_OPENED` + GUID-Check (`GameObject-...`) → nur Knoten, keine Monster
- `{item}` Token zeigt was gesammelt wurde (z.B. "Kupfererz", "Friedensblüte")
- Eigene Texte für alle 9 Klassen und alle 10 Rassen
- Chance: 30% (konfigurierbar im Menü)
- **GATHER_SKIN** – Skinning-Emotes nach dem Häuten
- Erkennung via `UNIT_SPELLCAST_SUCCEEDED` (Skinning Spell IDs 8613/8617-8620/26989/31481/50305)
- `{item}` Token zeigt was gehäutet wurde
- Eigene Texte für Hunter, Rogue, Warrior, Druid, Shaman und alle 10 Rassen
- Chance: 40% (konfigurierbar)
- `pendingSkinLoot` State-Variable: Skinning-Cast markiert nächstes Loot als Häutung
- `LOOT_OPENED` Event registriert (Core.lua)
## [1.8.0] – 2026-02-25
### Added
- **Kampfzustand-Erkennung** (`GetCombatStateKey()`): HP-Prozent bestimmt nach jedem Kampf den emotionalen Ton der Emotes
- `flawless` (>85% HP) → locker/gelangweilt/triumphierend
- `solid` (60–85% HP) → professionell/sachlich
- `rough` (30–60% HP) → erschöpft/kämpferisch/zerwühlt
- `critical` (<30% HP) → kaum überlebt/zitternd/nachdenklich
- **Ressourcen-Zustand-Erkennung** (`GetResourceStateKey()`): Mana/Energie/Wut beim Kampfbeginn beeinflusst ENTER_COMBAT-Emotes
- `full_res` → entschlossen und frisch
- `mid_res` → normal/routiniert
- `low_res` → erschöpft/risikoreich
- **State-Aware Textkomposition**: Mittlere/Outro-Chancen dynamisch angepasst je nach Zustand (Critical: 70%/80%, Flawless: 10%/60%)
- **Rassen-Mentalitätssystem** – alle 10 Rassen (Classic + TBC) mit eigenem Charakter:
- **Troll**: "mon"-Sprache, Loa-Referenzen, entspannt-spirituell
- **Orc**: "Lok'tar!", Ehre, Blut, Kriegsgebrüll
- **Undead**: Nihilistischer Humor, "technisch gesehen schon tot"
- **Tauren**: Erdmutter, Weisheit, Büffelstärke
- **Zwerg**: Khaz Modan, Bier, Ahnen, hartnäckig
- **Gnom**: Effizienz-Prozente, Kalkulation, technisch
- **Nachtelfe**: 10.000 Jahre Geschichte, Elune, melancholisch-poetisch
- **Mensch**: Pflicht, Sturmwind, König, Ehre
- **Blutelf** (TBC): Arrogant, magiesüchtig, elegant, Silbermond
- **Draenei** (TBC): Naaru/Licht, jahrtausende Kampferfahrung, würdevoll
- **BloodElf + Draenei** zu `RACE_MAP` in Core.lua hinzugefügt (TBC 2.5.5 Kompatibilität)
- `state_parts` Textpools für: LEAVE_COMBAT, ENTER_COMBAT, NORMAL_KILL, ELITE_KILL (deDE + enUS)
- `race_parts` für alle Events massiv erweitert (LEAVE_COMBAT, ENTER_COMBAT, NORMAL_KILL, ELITE_KILL)
### Changed
- `PickFromPartPool()`: Neuer Parameter `stateP`/`stateKey` – wenn `state_parts` Einträge hat, werden generische Texte ersetzt (Rassen/Klassen-Flavor bleibt additiv)
- `BuildDynamicText()`: Ermittelt automatisch `stateKey` für kampfbezogene Events, passt Middle/Outro-Chancen per `STATE_COMPOSITION` an
## [1.7.2] – 2026-02-25
### Fixed
- **CAVE_ENTER feuert nicht mehr bei Tavernen/Innkeepern**: `CheckZoneChange()` wartet jetzt 0.5s via `C_Timer.After()` bevor `CAVE_ENTER` ausgelöst wird. WoW setzt den Ruhe-Status (IsResting) leicht verzögert – mit dem Delay ist er verlässlich gesetzt, sodass Tavernen, Inns und Stadtzentren korrekt übersprungen werden.
- Zusätzlicher Fallback: Subzone-Name wird auf typische Gasthaus-Begriffe geprüft (`inn`, `tavern`, `lodge`, `gasthaus`, `wirtshaus`, `schenke`, `kneipe`, `auberge`, `posada`, `taberna`) – greift auch wenn `IsResting()` in Randfällen noch nicht gesetzt ist.
## [1.7.1] – 2026-02-25
### Added
- **PROFESSION_CRAFT**: Emote beim Herstellen von Items via Handwerksberufe (25% Chance, global-CD beachtet)
- Erkennt **alle Berufe**: Schmiedekunst, Kürschnerei, Schneiderei, Ingenieurskunst, Alchemie, Kochkunst, Erste Hilfe, Bergbau (Schmelzen) – via `hooksecurefunc("DoTradeSkill", ...)`
- Erkennt **Verzauberung** separat – via `hooksecurefunc("DoCraft", ...)`
- `{item}` Token zeigt den Namen des hergestellten Items
- Klassen-spezifische Parts für alle 9 Klassen (z.B. Magier prueft auf arkane Spuren, Druide spuert Naturmagie im Werk)
- Hooks werden einmalig bei `PLAYER_ENTERING_WORLD` installiert (kein Doppel-Hook)
- `pendingCraftItem` / `pendingProfession` State-System: Hook setzt Item-Name, `UNIT_SPELLCAST_SUCCEEDED` feuert Emote
- `UNIT_SPELLCAST_SUCCEEDED` Event jetzt in Core.lua registriert
## [1.7.0] – 2026-02-25
### Added
- **LOOT_ITEM**: Emote beim Looten von normalen/guten Items – erwähnt den Itemname via `{item}` Token. Quality 2 (Uncommon) 20% Chance, Quality 1 (Common) 5% Chance.
- **BUFF_RECEIVED**: Emote wenn ein anderer Spieler den Char bufft – nennt Buffgeber (`{target}`) und Buffname (`{spell}`). Erkennt nur externe Buffs (nicht self-cast) mit Dauer > 0.
- **ABILITY_USE**: Emote bei prägenden Klassentalenten/Fähigkeiten (z.B. Charge, Mortal Strike, Vanish, Ice Block etc.). 240s Pro-Spell-Cooldown verhindert Spam. Spell-IDs für alle Ranks, alle 9 Klassen hinterlegt.
- Neues `{spell}` Token in `ReplaceTokens()` für Spell-/Buff-Namen in Emotes
- `HandleBuffTracking()`: scannt UnitBuff nach neuen externen Buffs bei UNIT_AURA
- `HandleCombatLog()`: erkennt jetzt zusätzlich `SPELL_CAST_SUCCESS` für ABILITY_USE
- `ABILITY_SPELL_IDS` Tabelle: vollständige Spell-ID-Listen für alle Klassen (Battle Shout, Charge, Execute, Mortal Strike, Divine Shield, Lay on Hands, Rapid Fire, Feign Death, Vanish, Cold Blood, Polymorph, Blink, Ice Block, Arcane Power, Drain Soul, Hellfire, Mind Control, Prayer of Healing, Barkskin, Innervate, Tranquility, Ghost Wolf, Chain Heal …)
- Locale deDE + enUS: Texte für LOOT_ITEM, BUFF_RECEIVED, ABILITY_USE mit klassen-spezifischen Parts
## [1.6.2] – 2026-02-25
### Changed
- Texte kürzer: Middle-Chance 0.65 → 0.35, Outro-Chance 0.55/0.70 → 0.40/0.50
- Locale deDE/enUS: Lange Middle-Phrasen mit eingebetteten Sub-Clauses gestrafft
- ENTER_COMBAT, LEAVE_COMBAT, LOW_HEALTH, CRITICAL_HEALTH, PLAYER_DEATH: Kürzere Kompositionen
## [1.6.1] – 2026-02-25
### Fixed
- UI: Frame auf 900×700 vergrößert (war 760×580 → Inhalte waren zu gedrängt)
- UI: Event-Rows von 58px auf 72px vergrößert, besseres Spacing
- UI: Farbiger Kategorie-Akzentstreifen links an jeder Event-Row (Narcissus-Style)
- UI: `SetGradientAlpha` entfernt (Classic 1.15.x API existiert nicht) → `SetColorTexture`
- UI: Alle Layout-Konstanten zentralisiert (HEADER_H, TAB_Y, CONTENT_Y etc.)
- UI: Menü schließt sich nicht mehr sofort (Animation-Alpha-Revert-Bug → ScaleLerp)
- Minimap: Button parent auf `Minimap` geändert (GuildDeathLog-Ansatz), korrekte Border-Positionierung
- Minimap: `isDragging`-Flag korrekt implementiert, frei auf dem Bildschirm ziehbar
- Minimap: Position wird in HCRoleplayDB gespeichert und geladen
## [1.6.0] – 2026-02-25
### Added
- Config.lua: Zentrales Settings-Backend mit EVENT_INFO Metadaten
- Config.lua: Individuelle Auftrittswahrscheinlichkeit pro Event (0–100%)
- Minimap.lua: Minimap-Button mit Tooltip, Drag-Support, Rechtsklick-Toggle
- UI.lua: Vollständiges Settings-UI (DialogueUI/Narcissus-Style)
- UI.lua: Tab-Navigation (Allgemein / Events / Info)
- UI.lua: Events-Tab mit Scroll-Liste, Filter-Buttons, AN/AUS-Toggle + Chance-Slider
- Core.lua: Chance-System ersetzt hardcodierte EVENT_CHANCE-Tabelle
## [1.5.0] – Initial
- Erste Version mit RP-Emotes basierend auf Spielereignissen