Jump to content

Resto Shaman Healing bot (BETA) - Light Edition 1.0.54

   (0 reviews)

About This File

Restoration Shaman Fight Class v8.1 FINAL - BETA Documentation

⚠️ CRITICAL DISCLAIMERS

BETA STATUS

This fight class is in BETA testing phase. While functional, it may contain bugs or unexpected behavior. DO NOT rely on this as your only healing solution.

MANDATORY BACKUP REQUIREMENT

You MUST have a manual healing system running simultaneously:

  • HealBot (recommended)
  • VuhDo
  • Grid + Clique
  • Manual keybinds

The bot can fail, disconnect, or behave unexpectedly. Your party/raid depends on you having a backup.

CODE MODIFICATION WARNING

This system contains intentionally designed race conditions between threads to simulate human-like reaction delays and imperfect decision-making. The threading model creates non-deterministic behavior patterns that mimic human healers.

⚠️ MODIFYING THE CODE CAN BREAK THE HEURISTICS:

  • Thread timing adjustments may cause deadlocks or over-aggressive behavior
  • Changing priority systems can make healing completely non-functional
  • The multi-threaded architecture is fragile by design
  • Test ALL changes extensively in solo content first

If you modify anything, you're on your own. The threading system is tuned to create realistic human-like behavior patterns.


Expected Log Behavior

Thread Errors Are Normal

You will see occasional errors in the WRobot log such as:

 
 
[HEAL THREAD] Error: ...
[TOTEM THREAD] Error: ...
[UTILITY THREAD] Error: ...

These errors are expected and can be ignored in most cases. The multi-threaded architecture intentionally operates with race conditions that occasionally produce logged errors. This is part of the design to simulate human reaction variance.

When to Worry About Errors

  • Normal: 1-5 errors per minute scattered across threads
  • Acceptable: Brief error spikes during loading screens or zone transitions
  • Problem: Continuous error spam (10+ per second) that doesn't stop
  • Critical: Fight class stops functioning (no healing, no totems)

If errors spam continuously for more than 30 seconds, restart WRobot. Otherwise, ignore them and watch your in-game healing performance instead.

What To Monitor

Instead of watching the log, monitor:

  • Are party members being healed?
  • Are totems being placed when stationary?
  • Is mana management working?
  • Are emergency abilities firing when needed?

If yes to all = ignore the log errors.


Overview

This is a sophisticated multi-threaded Restoration Shaman fight class for WRobot (WotLK 3.3.5a). It features intelligent movement detection, smart totem management, predictive healing, and automatic interrupt/dispel systems.

Key Features

🔄 Multi-Threading Architecture

  • Healing Thread: 20ms tick rate (Highest priority)
  • Totem Thread: 250ms tick rate (Normal priority)
  • Utility Thread: 2000ms tick rate (Below normal priority)

Race conditions between threads create 50-200ms variance in reaction times, simulating human behavior.

🚶 Smart Movement System

  • Tracks player movement every 200ms
  • 2 second stationary requirement before placing normal totems
  • Emergency totems work while moving (Stoneclaw, Earthbind, Earth Elemental, Mana Tide, Grounding)
  • Automatic Totemic Recall when moving away from totems

🗿 Intelligent Totem Management

Normal Totems (Require Stationary):

  • Water: Healing Stream (high damage) / Mana Spring (low mana)
  • Earth: Stoneskin (high damage) / Strength of Earth (default)
  • Fire: Smart selection based on mana and enemy count
  • Air: Wrath of Air (default) / Resistance totems (boss-specific)

Emergency Totems (Work While Moving):

  • Stoneclaw: Healer under attack + <60% HP
  • Earthbind: 3+ enemies near healer
  • Earth Elemental: Party average <30% HP, 3+ enemies
  • Mana Tide: <30% mana (3 min cooldown)
  • Grounding: Enemy casting any spell within 30 yards (20s cooldown)

Fire Totem Logic:

  • <70% mana: Flametongue only (buff, no mana cost)
  • 70%+ mana: Searing Totem (attacks)
  • No enemies: Flametongue for buff
  • Auto-reposition: After 5 seconds out of range

💧 Advanced Healing System

Emergency Response:

  • Nature's Swiftness: Instant cast at <18% HP
  • Tidal Force: Critical heals at <25% HP
  • Emergency threshold: <35% HP

Smart Spell Selection:

  • Riptide: Always first, instant HoT
  • Chain Heal: 2+ targets below threshold
  • Healing Wave: Critical situations, tanks
  • Lesser Healing Wave: Quick response, moderate damage

Predictive Healing:

  • Tracks incoming damage patterns
  • Pre-applies Riptide to targets about to take damage
  • Anticipates group-wide damage

🛡️ Utility Features

  • Auto-interrupt: Wind Shear on priority casts (heals, CC, high damage)
  • Auto-dispel: Cure Toxins on poison/disease
  • Buff maintenance: Water Shield, Earth Shield on tank
  • Weapon enchant: Earthliving Weapon
  • Grounding Totem: Automatically cast when any enemy begins casting

Mana Management

The system has four mana thresholds:

 
Mana % Behavior
<30% CRITICAL: Mana Tide Totem emergency, Mana Spring priority
30-50% Mana Spring priority, conservative healing
50-70% Mana Spring priority, Flametongue only (no attack totems)
70%+ Full offensive totem setup allowed

Installation

  1. Download the .cs file
  2. Place in WRobot/FightClass/ directory
  3. Launch WRobot
  4. Select "Resto_Shaman_v8_Final" from fight class dropdown
  5. Configure your backup healing addon (HealBot, etc.)
  6. Start botting
  7. Ignore thread errors in the log (see section above)

Configuration

No external configuration needed. All logic is automatic:

  • Movement detection: Automatic
  • Totem placement: Automatic based on combat situation
  • Healing priorities: Dynamic based on party health/damage
  • Mana management: Automatic threshold-based

Boss-Specific Features

Auto-detects dungeons and adjusts totems:

  • Loken (Halls of Lightning): Nature Resistance Totem
  • Garfrost (Pit of Saron): Frost Resistance Totem
  • Generic heroics: Standard totem setup

Performance Monitoring

The system logs status every 2 minutes:

  • Healing pulse rate (target: 45-55 pulses/sec)
  • Current mana percentage
  • Group DPS (damage taken)
  • Average party health
  • Movement status
  • Combat statistics

Check logs for "PERFORMANCE" entries.

Troubleshooting

Seeing Thread Errors in Log

Symptom: [HEAL THREAD] Error: messages appearing
Cause: Normal race conditions in multi-threaded design
Solution: Ignore them. Only worry if they spam non-stop or healing stops working.

Totems Not Placing

Symptom: No totems being cast
Cause: Movement detection thinks you're still moving
Solution: Stand completely still for 3+ seconds. Check logs for "MOVEMENT" entries.

Over-aggressive Grounding Totem

Symptom: Grounding every 20 seconds
Cause: Working as intended - blocks any enemy cast
Solution: This is normal behavior. Grounding has 20s cooldown built in.

Low Healing Rate

Symptom: <45 pulses/second in logs
Cause: High latency or CPU bottleneck
Solution: Close other programs, reduce WRobot settings, check your FPS/latency

Totems Recalled Immediately

Symptom: Places totems then recalls right away
Cause: Bot thinks you're moving away from them
Solution: Disable auto-follow, reduce movement speed during combat

Not Using Mana Tide

Symptom: Running OOM, no Mana Tide cast
Cause: 3 minute cooldown restriction
Solution: Working as intended. Mana Tide only every 3 minutes.

Healing Stopped Completely

Symptom: No heals being cast, party dying
Cause: Critical thread failure or API disconnect
Solution: Stop and restart WRobot immediately. This is why you need HealBot backup.

Known Issues

  1. Thread errors in log: Intentional race conditions create occasional logged errors (see above section)
  2. Occasional totem spam: When rapidly starting/stopping movement
  3. Tank detection heuristics: May misidentify tank in unusual group compositions
  4. Fire totem repositioning: May be aggressive in high-movement fights
  5. Grounding cooldown: Will not fire more than once per 20 seconds even if multiple enemies casting

Technical Details

Thread Safety

  • All shared data protected by locks
  • Cached data expires after 300-1000ms
  • Lua calls wrapped in try-catch blocks
  • Spell cooldown tracking prevents spam

Performance Optimization

  • Party/enemy data cached to reduce API calls
  • Buff/debuff checks cached 300-500ms
  • Movement checks throttled to 200ms intervals
  • Dungeon detection cached 30 seconds

Spell Priority System

 
 
Priority 0: Grounding Totem (enemy casting within 30yd)
Priority 1: Nature's Swiftness (<18% HP emergency)
Priority 2: Emergency healing (<35% HP)
Priority 3: Totemic Recall (totems out of range)
Priority 4: Emergency totems (danger situations)
Priority 5: Normal healing rotation
Priority 6: Normal totem placement (stationary only)
Priority 7: Utility (buffs, dispels, interrupts)

FAQ

Q: Should I worry about errors in the log?
A: No. Thread errors are expected. Only worry if healing stops working or errors spam continuously.

Q: Can I change healing thresholds?
A: Yes, but TEST THOROUGHLY. Modify GetCriticalThreshold(), GetPriorityThreshold(), etc. in EnhancedHealingEngine. Changing thresholds may break the heuristics.

Q: Can I disable Grounding auto-cast?
A: Comment out the HandleGroundingTotem() call in SmartTotemManager.PulseTotems().

Q: Why won't it place totems while moving?
A: By design. Only emergency totems work while moving. Stand still 2+ seconds for normal totems.

Q: Can I adjust the stationary timer?
A: Change STATIONARY_TIME_FOR_TOTEMS in MovementTracker class. Default: 2.0 seconds. May break totem placement behavior.

Q: Does this work in raids?
A: Designed for 5-man dungeons. May work in raids but untested. Healing logic caps at 5 party members.

Q: Why is my FPS dropping?
A: Three threads running constantly. Reduce tick rates or disable utility thread if needed.

Q: Is it normal for Grounding to cast constantly?
A: It casts whenever enemies cast spells, limited by 20s cooldown. This is intended behavior.

Q: The fight class stopped working completely, what do I do?
A: Stop WRobot, restart it, reload the fight class. Use your backup healing addon until bot is stable. If it keeps happening, disable the fight class and heal manually.


Safety Reminders

  1. Always have HealBot or similar running - This is not optional
  2. Watch your party's health bars - Don't blindly trust the bot
  3. Ignore thread errors in log - They're cosmetic unless healing stops
  4. Test in normal dungeons first - Don't jump straight into heroics
  5. Stay at keyboard - AFKing with a healing bot gets you reported
  6. Manual intervention required - Some mechanics need human response

Credits

This fight class uses intentionally designed race conditions and heuristic systems to simulate human healing patterns. The architecture is complex and fragile - modifications require understanding of multi-threaded programming and WRobot API behavior.

Use at your own risk. Always have manual backup healing ready.

Thread errors in the log are a feature, not a bug. They simulate human imperfection.


What's New in Version 1.0.1   See changelog

Released

No changelog available for this version.


User Feedback

You may only provide a review once you have downloaded the file.

There are no reviews to display.

×
×
  • Create New...