NameplateEnhancer

English
Advanced nameplate customization addon for World of Warcraft.
About
This addon builds upon the built-in Nameplate infrastructure introduced with World of Warcraft's 12.0.0 (The War Within / Midnight) update, rather than creating a new nameplate system from scratch. It aims to extend the existing system with visual improvements and additional features.
Important Note
Some basic settings such as nameplate sizing, name display/hiding, buff/debuff icons and configurations, and health info format should be configured from the game's own settings menu rather than this addon.
ESC > Settings > Gameplay > Nameplates
This design choice is intentional. Due to data security restrictions in the World of Warcraft API, direct access to some nameplate data is limited. Using the game's built-in settings system is the most reliable and sustainable way to work within these restrictions. This approach ensures the addon is minimally affected by future API changes and continues to function reliably.
Features
General Settings
- Global Scale: Adjust the size of all nameplates
- Target Scale: Enlarge the targeted unit's nameplate
Health Bar
- Customizable height
- Texture selection with LibSharedMedia support
- Option to hide Blizzard borders
Cast Bar
- Customizable height and texture
- Interruptible spell color
- Non-interruptible spell color
- Custom spell icon
- Seamless connection with health bar
Target Arrows
- Multiple arrow styles:
- Blizzard Map Arrow
- Simple Arrow
- Goblin Big Arrow
- Double Triangle
- Plunderstorm Upgrade
- Corpse Arrow
- Plunderstorm
- Delve Big Arrow
- Renown Double Arrow
- Position options:
- Horizontal (left and right)
- Top
- Hidden
- Customizable size and color
- Glow effect support
- Automatic glow transition when castbar is active
Background & Border
- Health bar background
- Cast bar background
- Customizable border size
- Separate background and border colors
- Opacity setting
- 3D shadow effect
Quest Icon
- Icon display on active quest targets
- Progress percentage display
- Customizable size and position
- Font size setting
- Tooltip scanning for quest detection (Plater-style)
- Automatic bonus objective detection
Objective Icon
- Flag/cart/bounty icons on PVP objective carriers
- Customizable size and position
Player Resource Bar
- Shows class resources (combo points, runes, etc.) on target nameplate
- Class-based settings (each class has independent configuration)
- Supported resources:
- Death Knight Runes with cooldown display
- Evoker Essence with spinner animation
- Rogue/Druid Combo Points
- Paladin Holy Power
- Monk Chi
- Warlock Soul Shards
- Arcane Mage Charges
- Customizable size, position, color, and texture
- Option to use class textures or custom bar style
Text Outline
- Name text outline
- Health text outline
- Spell name outline
- Timer outline
CVar Settings
- Horizontal Overlap (nameplateOverlapH): Horizontal overlap amount of nameplates
- Vertical Overlap (nameplateOverlapV): Vertical overlap amount of nameplates
- Motion Speed (nameplateMotionSpeed): Nameplate movement smoothness
Installation
- Copy the addon folder to
World of Warcraft\_retail_\Interface\AddOns\
- Restart the game or use
/reload
- Go to the "NameplateEnhancer" tab in the settings menu
Settings Panel
To access settings in-game:
- ESC > Settings > AddOns > NameplateEnhancer
- or use the
/npe command
Commands
| Command |
Description |
/npe |
Open config panel |
/npe toggle |
Enable/disable addon |
/npe reload |
Reload UI |
/npe reset |
Reset to defaults |
/npe debug |
Toggle debug mode |
/npe test |
Test cast bar on target |
/npe icons |
Test role/objective icons on target |
/npe questcache |
Show quest cache contents |
/npe questinfo |
Show quest data for target |
/npe questdump |
Debug quest detection on target |
/npe cachestats |
Show tooltip cache performance stats |
/npe testobj |
Debug objective icon on target |
/npe dump |
Show nameplate structure for target |
/npe showwidgets |
Restore Blizzard widgets (unhide) |
Dependencies
Required
Optional
- LibSharedMedia-3.0: For additional texture and font support
Localization
Overview
- Dynamic language selection (changeable from settings panel)
- English (default), German, French, Spanish (esES/esMX), Portuguese Brazil, Italian, Korean, Simplified Chinese, Traditional Chinese, Russian and Turkish support
- Easy to add new languages (modular structure)
- Automatic client language detection
How It Works
The addon uses a dynamic localization system with __index metamethod:
- English text is used as the key (
L["Health Bar Settings"])
- If the active language is Turkish, translations from
trTR.lua are used
- Keys without translations automatically fall back to English
- Lookup results are cached via
rawset for performance
Changing Language
- Open the settings panel by typing
/npe in-game
- Find the "Language" dropdown at the top
- Select your preferred language:
- Auto (Client Language): Uses the game client's language
- English: Always English
- Turkce: Always Turkish
- Reload the UI with
/reload
Adding a New Language
Detailed instructions for adding a new language can be found in Locales/LOCALIZATION.md (English) and Locales/LOCALIZATION_TR.md (Turkish).
Module Structure
NameplateEnhancer/
├── Locales/
│ ├── enUS.lua # English base language (fallback system)
│ ├── trTR.lua # Turkish translation
│ ├── LOCALIZATION.md # Localization instructions (English)
│ └── LOCALIZATION_TR.md # Localization instructions (Turkish)
├── Core/
│ ├── Init.lua # Main initialization and module system
│ ├── Defaults.lua # Default settings
│ ├── Database.lua # Database management
│ ├── Commands.lua # Slash commands
│ └── Events.lua # Event handling
├── Modules/
│ ├── HealthBar.lua # Health bar module
│ ├── CastBar.lua # Cast bar module
│ ├── NameText.lua # Name text module
│ ├── TextOutline.lua # Text outline module
│ ├── TargetArrows.lua # Target arrows module
│ ├── Background.lua # Background module
│ ├── ObjectiveIcon.lua # Objective icon module (PVP)
│ ├── QuestIcon.lua # Quest icon module
│ └── ResourceBar.lua # Player resource bar module
├── Config/
│ ├── ConfigPanel.lua # Settings panel
│ ├── DropdownHelper.lua # Dropdown menu helper
│ └── SliderHelper.lua # Slider helper
└── NameplateEnhancer.toc # Addon definition file
Frequently Asked Questions (FAQ)
Why aren't nameplate frames created from scratch?
This addon works by building on Blizzard's built-in nameplate frames rather than recreating them from scratch. The primary reason is World of Warcraft's security model. Blizzard restricts access to certain nameplate-related data (such as unit information) to only its own protected frames. Frames created by addons are often blocked from accessing this protected data. Additionally, using the built-in frames allows us to automatically benefit from Blizzard's improvements with each update and minimizes compatibility issues.
Why are role icons (tank/healer/DPS) not implemented?
Role icon display on nameplates cannot be reliably implemented due to numerous data restrictions in World of Warcraft and has been disabled due to causing serious issues.
ESC > Settings > Gameplay > Nameplates
Enable the relevant option from this menu. This addon does not block or modify Blizzard's built-in role icons.
Why are some settings configured from game settings?
The World of Warcraft API marks some nameplate data as protected (restricted/secret) for security purposes. This data can only be read by Blizzard's own UI components. Settings like nameplate sizing, name display, and buff/debuff configuration are part of this protected area. Using the game's built-in settings menu provides the most reliable and stable solution within these restrictions.
Known Issues
- Some setting changes may require a UI reload (
/reload)
- Language changes require a UI reload (
/reload)
License
This addon is distributed free of charge.
Contact
For bug reports and suggestions, use GitHub Issues. In-game contact: Miyashi#21903
Türkçe
World of Warcraft icin gelismis nameplate ozellestirme eklentisi.
Hakkinda
Bu eklenti, yeni bir nameplate sistemi olusturmak yerine World of Warcraft'in 12.0.0 (The War Within / Midnight) guncellemesiyle birlikte sunulan yerlesik Nameplate altyapisini temel alarak calisir. Mevcut sistemi gorsel iyilestirmeler ve ek ozelliklerle genisletmeyi amaclar.
Onemli Not
Nameplate boyutlandirmasi, isim gosterimi/gizleme, buff/debuff ikonlari ve yapilandirmalari, saglik bilgisi formati gibi bazi temel ayarlar bu eklenti yerine oyunun kendi ayarlar menusunden yapilandirilmalidir
ESC > Ayarlar > Oynanis > Nameplates
Bu tasarim tercihi bilincli olarak yapilmistir. World of Warcraft API'sinde veri guvenligi amaciyla uygulanan kisitlamalar nedeniyle bazi nameplate verilerine dogrudan erisim sinirlandirilmistir. Oyunun yerlesik ayar sistemini kullanmak, bu kisitlamalari asmanin en guvenilir ve surdurulebilir yontemidir. Bu yaklasim sayesinde eklenti, gelecekteki API degisikliklerinden minimum duzeyde etkilenir ve kararli bir sekilde calismaya devam eder.
Ozellikler
Genel Ayarlar
- Global Olcek: Tum nameplate'lerin boyutunu ayarlama
- Hedef Olcegi: Hedeflenen birimin nameplate'ini buyutme
Saglik Cubugu (Health Bar)
- Ozellestirilebilir yukseklik
- LibSharedMedia destegi ile doku secimi
- Blizzard kenarliklarini gizleme secenegi
Buyu Cubugu (Cast Bar)
- Ozellestirilebilir yukseklik ve doku
- Interrupt edilebilir buyu rengi
- Interrupt edilemez buyu rengi
- Ozel buyu ikonu
- Saglik cubugu ile seamless baglanti
Hedef Oklari (Target Arrows)
- Coklu ok stilleri:
- Blizzard Harita Oku
- Basit Ok
- Goblin Buyuk Ok
- Cift Ucgen
- Plunderstorm Yukseltme
- Ceset Oku
- Plunderstorm
- Delve Buyuk Ok
- Un Cift Oku
- Konumlandirma secenekleri:
- Yatay (sol ve sag)
- Ust
- Gizli
- Ozellestirilebilir boyut ve renk
- Isilti efekti (glow) destegi
- Castbar aktifken glow otomatik gecis
Arka Plan ve Kenarlik
- Saglik cubugu arka plani
- Buyu cubugu arka plani
- Ozellestirilebilir kenarlik boyutu
- Ayri arka plan ve kenarlik renkleri
- Opaklik ayari
- 3D golge efekti
Gorev Ikonu (Quest Icon)
- Aktif gorev hedeflerinde ikon gosterimi
- Ilerleme yuzdesi gosterimi
- Ozellestirilebilir boyut ve konum
- Yazi tipi boyutu ayari
- Tooltip tarama ile quest tespiti (Plater tarzi)
- Bonus objective otomatik algilama
Hedef Ikonu (Objective Icon)
- PVP hedef tasiyicilarinda bayrak/araba/odul ikonlari
- Ozellestirilebilir boyut ve konum
Oyuncu Kaynak Cubugu (Resource Bar)
- Hedef nameplate'inde sinif kaynaklarini (combo points, runes, vb.) gosterir
- Sinif bazli ayarlar (her sinifin bagimsiz yapilandirmasi)
- Desteklenen kaynaklar:
- Death Knight Rune'lari bekleme suresi gosterimi ile
- Evoker Essence donme animasyonu ile
- Rogue/Druid Combo Points
- Paladin Holy Power
- Monk Chi
- Warlock Soul Shards
- Arcane Mage Charges
- Ozellestirilebilir boyut, konum, renk ve doku
- Sinif dokularini veya ozel cubuk stilini kullanma secenegi
Metin Anahat (Text Outline)
- Isim metni anahat
- Saglik metni anahat
- Buyu adi anahat
- Zamanlayici anahat
CVar Ayarlari
- Yatay Ortusme (nameplateOverlapH): Nameplate'lerin yatay ortusme miktari
- Dikey Ortusme (nameplateOverlapV): Nameplate'lerin dikey ortusme miktari
- Hareket Hizi (nameplateMotionSpeed): Nameplate hareket yumusakligi
Kurulum
- Eklenti klasorunu
World of Warcraft\_retail_\Interface\AddOns\ dizinine kopyalayin
- Oyunu yeniden baslatin veya
/reload komutunu kullanin
- Ayarlar menusunden "NameplateEnhancer" sekmesine gidin
Ayarlar Paneli
Oyun icinde ayarlara erismek icin:
- ESC > Ayarlar > Eklentiler > NameplateEnhancer
- veya
/npe komutunu kullanin
Komutlar
| Komut |
Aciklama |
/npe |
Ayarlar panelini ac |
/npe toggle |
Eklentiyi etkinlestir/devre disi birak |
/npe reload |
Arayuzu yeniden yukle |
/npe reset |
Varsayilanlara sifirla |
/npe debug |
Hata ayiklama modunu ac/kapat |
/npe test |
Hedefteki buyu cubugunu test et |
/npe icons |
Hedefteki rol/hedef ikonlarini test et |
/npe questcache |
Gorev onbellek icerigini goster |
/npe questinfo |
Hedefin gorev verisini goster |
/npe questdump |
Hedefteki gorev tespitini hata ayikla |
/npe cachestats |
Ipucu onbellek performans istatistiklerini goster |
/npe testobj |
Hedefteki hedef ikonunu hata ayikla |
/npe dump |
Hedefin nameplate yapisini goster |
/npe showwidgets |
Blizzard widget'larini geri yukle (goster) |
Bagimliliklar
Zorunlu
Opsiyonel
- LibSharedMedia-3.0: Ek doku ve yazi tipi destegi icin
Dil Destegi (Localization)
Genel Bakis
- Dinamik dil secimi (ayarlar panelinden degistirilebilir)
- Ingilizce (varsayilan) ve Turkce destegi
- Yeni dil ekleme kolayligi (moduler yapi)
- Otomatik istemci dili algilama
Nasil Calisir
Eklenti, __index metamethod kullanan dinamik bir yerellestirme sistemi kullanir:
- Ingilizce metinler anahtar olarak kullanilir (
L["Health Bar Settings"])
- Aktif dil Turkce ise,
trTR.lua dosyasindaki ceviriler kullanilir
- Cevirisi olmayan anahtarlar otomatik olarak Ingilizce'ye doner (fallback)
- Arama sonuclari
rawset ile onbelleklenir (performans icin)
Dil Degistirme
- Oyun icinde
/npe yazarak ayarlar panelini acin
- Ust kisimda "Language" / "Dil" acilir menusunu bulun
- Istediginiz dili secin:
- Auto (Client Language): Oyun istemcisinin dilini kullanir
- English: Her zaman Ingilizce
- Turkce: Her zaman Turkce
/reload komutu ile arayuzu yeniden yukleyin
Yeni Dil Ekleme
Yeni bir dil eklemek icin detayli talimatlar Locales/LOCALIZATION_TR.md (Turkce) ve Locales/LOCALIZATION.md (Ingilizce) dosyalarinda bulunabilir.
Modul Yapisi
NameplateEnhancer/
├── Locales/
│ ├── enUS.lua # Ingilizce temel dil (fallback sistemi)
│ ├── trTR.lua # Turkce ceviri
│ ├── LOCALIZATION.md # Yerellestirme icin Ingilizce talimatlar
│ └── LOCALIZATION_TR.md # Yerellestirme icin Turkce talimatlar
├── Core/
│ ├── Init.lua # Ana baslatma ve modul sistemi
│ ├── Defaults.lua # Varsayilan ayarlar
│ ├── Database.lua # Veritabani yonetimi
│ ├── Commands.lua # Slash komutlari
│ └── Events.lua # Olay yonetimi
├── Modules/
│ ├── HealthBar.lua # Saglik cubugu modulu
│ ├── CastBar.lua # Buyu cubugu modulu
│ ├── NameText.lua # Isim metni modulu
│ ├── TextOutline.lua # Metin anahat modulu
│ ├── TargetArrows.lua # Hedef oklari modulu
│ ├── Background.lua # Arka plan modulu
│ ├── ObjectiveIcon.lua # Hedef ikonu modulu (PVP)
│ ├── QuestIcon.lua # Gorev ikonu modulu
│ └── ResourceBar.lua # Oyuncu kaynak cubugu modulu
├── Config/
│ ├── ConfigPanel.lua # Ayarlar paneli
│ ├── DropdownHelper.lua # Acilir menu yardimcisi
│ └── SliderHelper.lua # Kaydirici yardimcisi
└── NameplateEnhancer.toc # Eklenti tanim dosyasi
Sikca Sorulan Sorular (SSS)
Neden nameplate frame'leri sifirdan olusturulmuyor?
Bu eklenti, Blizzard'in yerlesik nameplate frame'lerini temel alarak calisir ve bunlari sifirdan yeniden olusturmaz. Bunun baslica sebebi, World of Warcraft'in guvenlik modelidir. Blizzard, nameplate'lerle iliskili bazi verileri (ornegin birim bilgileri) yalnizca kendi olusturdugu korumali frame'ler araciligiyla erisime acmaktadir. Eklenti tarafindan sifirdan olusturulan frame'ler bu korumali verilere erismek cogu zaman engellenmekte. Ayrica yerlesik frame'leri kullanmak, Blizzard'in her guncellemeyle yaptigi iyilestirmelerden otomatik olarak faydalanmamizi saglar ve uyumluluk sorunlarini en aza indirir.
Role ikonu (tank/healer/DPS) neden yapilmadi?
Nameplate'lerde rol ikonu gosterimi, World of Warcraft'in yine bir cok veri kisitlamasindan dolayi gercek anlamda yapilamamakta ve ciddi sorunlara neden olmasindan aktif edilmemistir.
ESC > Ayarlar > Oynanis > Nameplates
menusunden ilgili secenegi aktif hale getirin. Bu eklenti, Blizzard'in gosterdigi rol ikonlarini engellemez veya degistirmez.
Neden bazi ayarlar oyun ayarlarindan yapiliyor?
World of Warcraft API'si, guvenlik amaciyla nameplate verilerinin bir kismini korumali (restricted/secret) olarak isaretler. Bu veriler yalnizca Blizzard'in kendi UI bilesenleri tarafindan okunabilir. Nameplate boyutlandirmasi, isim gosterimi, buff/debuff yapilandirmasi gibi ayarlar bu korumali alana dahildir. Oyunun yerlesik ayar menusunu kullanmak, bu kisitlamalar dahilinde en guvenilir ve kararli cozumu sunmaktadir.
Bilinen Sorunlar
- Bazi ayar degisiklikleri icin UI yeniden yuklenmesi gerekebilir (
/reload)
- Dil degisikligi icin UI yeniden yuklenmesi gerekir (
/reload)
Lisans
Bu eklenti ucretsiz olarak dagitilmaktadir.
Iletisim
Hata bildirimleri ve oneriler icin GitHub Issues kullanabilirsiniz. Oyun ici iletisim: Miyashi#21903