Create README.md for HealerProtection addon
Add detailed README for HealerProtection addon.
This commit is contained in:
@@ -0,0 +1,198 @@
|
|||||||
|
# 🩺 HealerProtection
|
||||||
|
|
||||||
|
A lightweight healer alert addon for **Octo WoW / Vanilla WoW 1.12.1**.
|
||||||
|
|
||||||
|
HealerProtection automatically warns your group when you are:
|
||||||
|
|
||||||
|
* 💧 Running low on mana
|
||||||
|
* 🫗 Out of mana
|
||||||
|
* ❤️ Close to death
|
||||||
|
* 💀 Dead
|
||||||
|
* 👹 Taking aggro
|
||||||
|
|
||||||
|
The addon was adapted and optimized specifically for the **Vanilla 1.12.1 client used by Octo WoW**.
|
||||||
|
|
||||||
|
## ✨ Features
|
||||||
|
|
||||||
|
* 💧 Low Mana warning
|
||||||
|
* 🫗 Out of Mana warning
|
||||||
|
* ❤️ Near Death warning
|
||||||
|
* 💀 Death notification
|
||||||
|
* 👹 Aggro warning
|
||||||
|
* 💬 Optional chat messages
|
||||||
|
* 🎭 Optional emotes
|
||||||
|
* 🎚️ Configurable mana and health thresholds
|
||||||
|
* 📢 Configurable announcement channel
|
||||||
|
* 👀 Optional Line of Sight warning
|
||||||
|
* 🌍 Optional announcements outside instances
|
||||||
|
* ⚔️ Battleground filtering
|
||||||
|
* 🛡️ Raid filtering
|
||||||
|
* ✏️ Custom message prefix and suffix
|
||||||
|
|
||||||
|
Open the settings panel with:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/hp
|
||||||
|
```
|
||||||
|
|
||||||
|
or:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/healerprotection
|
||||||
|
```
|
||||||
|
|
||||||
|
## 🐙 Octo WoW Compatibility
|
||||||
|
|
||||||
|
HealerProtection is designed for:
|
||||||
|
|
||||||
|
```text
|
||||||
|
World of Warcraft 1.12.1
|
||||||
|
Octo WoW
|
||||||
|
```
|
||||||
|
|
||||||
|
The addon does **not require** ClassicAPI, SuperWoW or Nampower.
|
||||||
|
|
||||||
|
If additional APIs such as `UnitThreatSituation()` are available through the client or another extension, HealerProtection can automatically use them to improve aggro detection.
|
||||||
|
|
||||||
|
## 👹 Aggro Detection
|
||||||
|
|
||||||
|
Vanilla WoW does not provide the same threat API available in modern versions of the game.
|
||||||
|
|
||||||
|
HealerProtection therefore uses several methods:
|
||||||
|
|
||||||
|
* `UnitThreatSituation()` when available
|
||||||
|
* Your current hostile target
|
||||||
|
* The hostile targets selected by party members
|
||||||
|
* The hostile targets selected by raid members
|
||||||
|
|
||||||
|
This improves aggro detection while keeping the addon compatible with the Vanilla 1.12.1 client.
|
||||||
|
|
||||||
|
## ⚡ Performance
|
||||||
|
|
||||||
|
HealerProtection is designed to be extremely lightweight.
|
||||||
|
|
||||||
|
Mana, health and death monitoring are **event-driven**, which means the addon only reacts when the relevant game state changes.
|
||||||
|
|
||||||
|
Aggro detection uses a small periodic check because Vanilla does not provide a reliable native threat event.
|
||||||
|
|
||||||
|
When Aggro alerts are disabled, the aggro check is effectively skipped.
|
||||||
|
|
||||||
|
## 📦 Installation
|
||||||
|
|
||||||
|
1. Download the addon.
|
||||||
|
2. Extract the archive.
|
||||||
|
3. Place the `HealerProtection` folder inside:
|
||||||
|
|
||||||
|
```text
|
||||||
|
World of Warcraft\Interface\AddOns\
|
||||||
|
```
|
||||||
|
|
||||||
|
Your folder structure should look like:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Interface
|
||||||
|
└── AddOns
|
||||||
|
└── HealerProtection
|
||||||
|
├── HealerProtection.toc
|
||||||
|
└── core.lua
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Restart the game.
|
||||||
|
5. Enable **HealerProtection** in the AddOns menu.
|
||||||
|
6. Type `/hp` to configure the addon.
|
||||||
|
|
||||||
|
## ⚙️ Default Settings
|
||||||
|
|
||||||
|
```text
|
||||||
|
Out of Mana: Enabled
|
||||||
|
OOM threshold: 10%
|
||||||
|
|
||||||
|
Low Mana: Enabled
|
||||||
|
Low Mana threshold: 30%
|
||||||
|
|
||||||
|
Near Death: Enabled
|
||||||
|
Near Death threshold: 30%
|
||||||
|
|
||||||
|
Death message: Enabled
|
||||||
|
|
||||||
|
Aggro warning: Disabled
|
||||||
|
|
||||||
|
Show in raids: Enabled
|
||||||
|
Show outside instances: Disabled
|
||||||
|
Show in battlegrounds: Disabled
|
||||||
|
|
||||||
|
Announcement channel: AUTO
|
||||||
|
```
|
||||||
|
|
||||||
|
`AUTO` automatically selects the most appropriate group channel:
|
||||||
|
|
||||||
|
```text
|
||||||
|
PARTY → while in a party
|
||||||
|
RAID → while in a raid
|
||||||
|
```
|
||||||
|
|
||||||
|
The addon will not attempt to send invalid PARTY, RAID or GUILD messages when the corresponding channel is unavailable.
|
||||||
|
|
||||||
|
## 🔇 Anti-Spam
|
||||||
|
|
||||||
|
Mana and health alerts include a reset margin.
|
||||||
|
|
||||||
|
For example, after triggering a Low Mana warning, your mana must recover above the configured threshold before the warning can trigger again.
|
||||||
|
|
||||||
|
This prevents repeated messages when your mana or health constantly moves around the alert threshold.
|
||||||
|
|
||||||
|
## 🆕 Version 1.1
|
||||||
|
|
||||||
|
### Improvements
|
||||||
|
|
||||||
|
* ❤️ Restored the Near Death alert
|
||||||
|
* 🎚️ Added configurable Near Death threshold
|
||||||
|
* 👹 Improved aggro detection
|
||||||
|
* 👥 Added party and raid target scanning
|
||||||
|
* ⚡ Converted mana and health monitoring to event-driven checks
|
||||||
|
* 🧹 Reduced unnecessary polling
|
||||||
|
* 🔇 Added anti-spam logic for mana and health alerts
|
||||||
|
* 💬 Centralized chat channel validation
|
||||||
|
* 🐙 Improved Octo WoW / Vanilla 1.12.1 compatibility
|
||||||
|
* 🔓 Removed unnecessary `InCombatLockdown()` dependency
|
||||||
|
* 🧽 Removed obsolete setup and bootstrap code
|
||||||
|
* 🗑️ Removed obsolete `SETOOMP` handling
|
||||||
|
* 🔌 Removed unnecessary ClassicAPI, SuperWoW and Nampower dependencies
|
||||||
|
* 👀 Added Line of Sight warning to the settings menu
|
||||||
|
* 🧠 Improved Lua 5.0 / Vanilla event compatibility
|
||||||
|
* 💾 Preserved compatibility with existing `HPTABPC` saved variables
|
||||||
|
|
||||||
|
## ⌨️ Commands
|
||||||
|
|
||||||
|
```text
|
||||||
|
/hp
|
||||||
|
/healerprotection
|
||||||
|
```
|
||||||
|
|
||||||
|
Both commands open or close the configuration window.
|
||||||
|
|
||||||
|
## 💾 Saved Variables
|
||||||
|
|
||||||
|
Settings are stored per character using:
|
||||||
|
|
||||||
|
```text
|
||||||
|
HPTABPC
|
||||||
|
```
|
||||||
|
|
||||||
|
Existing settings from older versions are preserved whenever possible.
|
||||||
|
|
||||||
|
## 👤 Author
|
||||||
|
|
||||||
|
HealerProtection is maintained by **Dusk92** and adapted for the **Octo WoW / Vanilla 1.12.1** environment.
|
||||||
|
|
||||||
|
## 🐛 Bug Reports
|
||||||
|
|
||||||
|
If you encounter a bug or unexpected behavior on Octo WoW, feel free to open an issue on GitHub.
|
||||||
|
|
||||||
|
Please include:
|
||||||
|
|
||||||
|
* 📝 What happened
|
||||||
|
* 🎯 What you expected to happen
|
||||||
|
* ⚙️ Your enabled HealerProtection settings
|
||||||
|
* 🔌 Whether you use SuperWoW / ClassicAPI
|
||||||
|
* ❗ Any Lua error message you received
|
||||||
Reference in New Issue
Block a user