promotional bannermobile promotional banner

RC Party Orbs

I took the power of the Diablo Orbs and created party frames with it!

File Details

RCPartyOrbs_1.14.zip

  • R
  • Feb 7, 2026
  • 12.46 MB
  • 43
  • 12.0.1+4
  • Classic + 2

File Name

RCPartyOrbs_1.14.zip

Supported Versions

  • 12.0.1
  • 4.4.2
  • 3.4.5
  • 2.5.5
  • 1.15.8

# RCPartyOrbs v1.14 FIXED - Performance Fix (Corrected)

## What Was Wrong With The First Version

I got too aggressive with the optimization and broke the event flow. The original code had `UpdateAllOrbs()` at the END of the event handler, which meant ALL events triggered it - even events that didn't have explicit handlers.

When I removed that final `UpdateAllOrbs()` call and added specific handlers for some events, I broke events like:
- UNIT_THREAT_SITUATION_UPDATE
- And potentially others that weren't explicitly handled

This caused side effects including the WeakAuras issue you experienced.

## The Corrected Fix

This version keeps things MUCH simpler:

### 1. Optimized UpdateAllOrbs() - ONLY processes visible orbs
```lua
function UpdateAllOrbs()
    if not RCPartyOrbsDB or not RCPartyOrbsDB.enabled then return end
    
    -- PERFORMANCE: Only update orbs that are actually shown
    for i = 1, 10 do
        if orbFrames[i] and orbFrames[i]:IsShown() then
            UpdateOrbHealth(orbFrames[i])
            UpdateOrbThreat(orbFrames[i])
        end
    end
end
```

### 2. Optimized OnUpdate Animation Handler - ONLY processes visible orbs
```lua
animFrame:SetScript("OnUpdate", function(self, delta)
    for _, orb in ipairs(orbFrames) do
        if orb and orb:IsShown() then  -- Check visibility first
            -- Animate fire border only for visible orbs
            if orb.fireBorder and orb.fireBorder:IsShown() then
                -- animation code
            end
        end
    end
end)
```

### 3. Event Handler - UNCHANGED from original
- Kept the final `UpdateAllOrbs()` call
- No changes to event flow
- No added handlers that could break other addons

## What This Fixes

**In Raids:**
- UpdateAllOrbs() now skips 9 hidden orbs = 90% reduction
- OnUpdate skips 9 hidden orbs = 90% reduction  
- **Still gives massive performance improvement**
- **Doesn't break anything**

**Performance Math:**
- Before: 10 orbs updated every event × 60+ FPS
- After: 1 orb updated every event × 60+ FPS
- Result: 90% less processing in raids

## Why This Version Works

By ONLY changing the update functions to skip hidden orbs, we get:
- ✅ 90% performance improvement in raids
- ✅ All events work exactly as before
- ✅ No interference with other addons
- ✅ Same functionality
- ✅ No WeakAuras issues

The key insight: **You don't need to change the event structure to get massive performance gains - just skip the hidden orbs in the update functions.**

## Installation
Replace your RCPartyOrbs folder with this version and /reload.