Commit Graph
109 Commits
Author SHA1 Message Date
Torio d902da371b Merge pull request #30 from jrc13245/claude/improve-combodurations-01GHh5y6dXtxNhoizDK8bSw3
Add learned combo duration system - saves actual durations per CP
2025-11-16 12:25:59 -05:00
Claude 1172e3377b Add learned combo duration system - saves actual durations per CP
Major enhancement: System now learns actual combo finisher durations and
saves them per combo point level (1-5 CP).

**New SavedVariable:**
- CleveRoids_ComboDurations[spellID][comboPoints] = duration
- Persists between sessions
- Uses learned durations before calculated formulas

**ComboPointTracker.lua:**
- Added GetLearnedComboDuration(spellID, cp) - fetch learned duration
- Updated CalculateComboScaledDurationByID to check learned first
- Falls back to formula if not learned yet

**Utility.lua (libdebuff):**
- UNIT_CASTEVENT handler stores combo points in learnCastTimers
- RAW_COMBATLOG fade handler learns combo durations when spells expire
- Stores learned duration keyed by [spellID][comboPoints]
- Debug message shows "Learned combo spell X at Y CP = Zs"

**Core.lua:**
- New command: /cleveroid combolearn - Show all learned combo durations
- Lists each spell with all learned CP levels (1-5)
- Shows which durations have been learned vs not yet

**Benefits:**
- Debuff conditionals like [debuff:Rip<4] now use ACTUAL max duration
- Accounts for talents that modify finisher durations
- Learns different durations per rank
- More accurate than formulas for edge cases

**Example:**
After casting Rip with 5 CP and letting it expire, system learns:
CleveRoids_ComboDurations[1079][5] = 28
Future casts use 28s instead of calculated 12+4*4
2025-11-16 16:49:30 +00:00
Torio 1c9d6f0505 Merge pull request #29 from jrc13245/claude/improve-combodurations-01GHh5y6dXtxNhoizDK8bSw3
Fix combo point tracking - capture CPs before they're consumed
2025-11-16 11:42:12 -05:00
Claude e07afa32d0 Fix combo point tracking - capture CPs before they're consumed
CRITICAL FIX: Combo points were showing as 0 because UNIT_CASTEVENT fires
AFTER the finisher consumes them.

Solution:
- Added CleveRoids.lastComboPoints to store the last known CP count
- UpdateComboPoints() continuously monitors and stores CP when > 0
- OnUpdate handler keeps lastComboPoints up-to-date every frame
- Also update on PLAYER_TARGET_CHANGED, UNIT_AURA, PLAYER_COMBO_POINTS
- TrackComboPointCastByID() uses stored value if current is 0
- Resets stored value after use to prevent reuse

Now correctly tracks: Rip at 5 CP = 28s, Rupture at 5 CP = 16s, etc.
2025-11-16 16:41:19 +00:00
Torio 9d2803dbd5 Merge pull request #28 from jrc13245/claude/improve-combodurations-01GHh5y6dXtxNhoizDK8bSw3
Add debug output to diagnose ShowComboTracking loading issue
2025-11-16 11:34:56 -05:00
Claude 3704ae0c23 Add debug output to diagnose ShowComboTracking loading issue
Added debug messages to confirm:
1. Whether ShowComboTracking is defined after being created
2. Whether it's successfully exported to global
3. Whether RegisterExtension exists when file loads

This will help identify why ShowComboTracking is nil at runtime.
2025-11-16 16:25:55 +00:00
Torio ea1dd9617c Merge pull request #27 from jrc13245/claude/improve-combodurations-01GHh5y6dXtxNhoizDK8bSw3
Fix ShowComboTracking not being defined - restructure file loading
2025-11-16 10:55:31 -05:00
Claude a14fe4ac74 Fix ShowComboTracking not being defined - restructure file loading
CRITICAL FIX: Moved all essential functions BEFORE Extension registration to
ensure they're always available even if Extension system fails.

Changes:
- Moved ShowComboTracking() definition to line 240 (before Extension)
- Moved slash command registration to before Extension
- Export CleveRoids to global BEFORE Extension.RegisterExtension()
- Added safety check: return early if RegisterExtension doesn't exist
- Removed duplicate function definitions at end of file
- Added helpful message when no combo data tracked yet

This ensures /cleveroid combotrack works even if Extension system fails.
2025-11-16 15:53:45 +00:00
Torio 491321d666 Merge pull request #26 from jrc13245/claude/improve-combodurations-01GHh5y6dXtxNhoizDK8bSw3
merge
2025-11-16 10:51:02 -05:00
Claude 18c11eb8b3 Show all available commands when typing /cleveroid
When typing /cleveroid with no arguments, now displays:
1. Current settings (realtime, refresh, debug)
2. All available commands organized by category:
   - Basic commands (realtime, refresh, learn, forget, debug)
   - Immunity tracking commands
   - Combo point tracking commands

Makes it easier for users to discover all available functionality.
2025-11-16 15:49:55 +00:00
Claude 318292854c Fix loading order: ComboPointTracker must load after ExtensionsManager
ComboPointTracker.lua calls CleveRoids.RegisterExtension() but was loading
before ExtensionsManager.lua where that function is defined.

Moved ComboPointTracker.lua to load after ExtensionsManager.lua.

This fixes the 'attempt to call field ShowComboTracking (a nil value)' error.
2025-11-16 15:48:42 +00:00
Torio 0a7ee4dcc0 Merge pull request #25 from jrc13245/claude/improve-combodurations-01GHh5y6dXtxNhoizDK8bSw3
Fix combo tracking commands - remove load-time existence checks
2025-11-16 10:45:52 -05:00
Claude 3d6f03336c Fix combo tracking commands - remove load-time existence checks
The combotrack/comboclear commands were checking if functions existed at
file load time, but ComboPointTracker.lua loads after Core.lua, so the
checks always failed. Removed the checks since by runtime (when the user
executes the command) all files will be loaded and functions will exist.

Fixes "Combo point tracking not available" message.
2025-11-16 15:44:24 +00:00
Torio 2ca5113108 Merge pull request #24 from jrc13245/claude/improve-combodurations-01GHh5y6dXtxNhoizDK8bSw3
Improve combo point duration tracking system
2025-11-16 10:33:43 -05:00
Claude 4cf8e07a17 Improve combo point duration tracking system
Major enhancements to the combo point finisher tracking system:

**ComboPointTracker.lua:**
- Added spell ID-based tracking (ComboScalingSpellsByID table)
- All Rupture ranks (1943, 8639, 8640, 11273, 11274, 11275): 8s + 2s per CP
- Kidney Shot ranks (408, 8643): Rank 1: 1s + 1s per CP, Rank 2: 2s + 1s per CP
- Druid Rip ranks (1079, 9492, 9493, 9752, 9894, 9896): 12s + 4s per CP (corrected from 10s + 2s)
- New TrackComboPointCastByID() function for UNIT_CASTEVENT integration
- Initialize spell_tracking table to prevent nil errors
- Consistent debug output using CleveRoids.debug flag

**Utility.lua (libdebuff integration):**
- UNIT_CASTEVENT handler now checks combo scaling spells first
- Calls TrackComboPointCastByID() before normal duration lookup
- Learning system skips combo spells (they're dynamically calculated)
- Improved debug messages distinguish combo spells from regular spells

**Core.lua (console commands):**
- Added /cleveroid combotrack - Display recent combo finisher casts
- Added /cleveroid comboclear - Clear combo tracking data
- Updated help text with combo point tracking section

**README.md:**
- New "Combo Point Scaling" section with examples
- Updated settings documentation with new commands
- Added /cleveroid debug to settings list
- Example macros showing combo point-aware debuff conditionals

This system ensures accurate duration tracking for:
- Rogue: Rupture (8-16s), Kidney Shot (1-6s)
- Druid: Rip (12-28s)

All durations are now calculated based on actual combo points used at cast time.
2025-11-16 15:31:38 +00:00
Torio 4d288cd482 Merge pull request #23 from jrc13245/main
merge
2025-11-16 10:23:13 -05:00
Jrc13245 edfb44edd7 another fix 2025-11-16 10:03:56 -05:00
Jrc13245 68ea467e1a fix gitignore 2025-11-16 10:02:38 -05:00
Jrc13245 03bfa82d87 update readme 2025-11-16 09:59:59 -05:00
Jrc13245 93c73e8d93 update readme 2025-11-16 09:56:54 -05:00
Jrc13245 1610920dda immunity tracking system 2025-11-16 09:46:51 -05:00
Torio 96e3c9b90e Delete .gitignore 2025-11-16 09:46:37 -05:00
Torio 8449dd3382 Merge pull request #21 from AdmiralFrijoles/main
New conditionals level and mylevel
2025-11-14 07:18:30 -05:00
Jrc13245 122fc0a908 no longer require abilities on actionbar to get icon 2025-11-13 16:40:37 -05:00
Jrc13245 92562ab1a4 Fix macro icons with syntax not using conditionals and fix imbue conditionals 2025-11-13 15:46:00 -05:00
Torio 9431ddcd7a Merge pull request #20 from jrc13245/main
pr
2025-11-12 16:55:41 -05:00
Jrc13245 c65642a129 fix compatibility with pfui macrotweak 2025-11-12 16:33:54 -05:00
Jrc13245 642e58598a fix item macros icons when swapped 2025-11-12 16:19:08 -05:00
Jrc13245 a3b8848449 fix conditionals icons when used with slot numbers 2025-11-11 15:14:06 -05:00
Jrc13245 b9cd6a8802 make buff and debuff validations exact buff names and not string parts 2025-11-11 11:08:37 -05:00
Torio 7b4c530c92 Merge pull request #15 from jrc13245/main
pull request
2025-11-11 07:03:56 -05:00
Jrc13245 1b1d4fe94b revert some changes 2025-11-10 19:59:13 -05:00
Jrc13245 914d9ab916 fix errors ddue to missing comma 2025-11-10 19:45:44 -05:00
Jrc13245 4920675a3a fix errors 2025-11-10 19:38:44 -05:00
Jrc13245 84f5d63be8 fix new conditionals 2025-11-10 19:09:01 -05:00
Jrc13245 b18ad521de readme update 2025-11-10 18:05:23 -05:00
Jrc13245 e088ae4029 new weapon imbue check conditionals 2025-11-10 18:02:59 -05:00
Jrc13245 665b6c52e7 initial combo point duration checker 2025-11-10 17:35:33 -05:00
Jrc13245 4661f0f924 more equip fixes 2025-11-09 13:09:16 -05:00
Jrc13245 1427c4481f fix equip errors 2025-11-09 12:48:56 -05:00
Jrc13245 5845e811b4 update reactive and add usable conditionals 2025-11-08 18:13:24 -05:00
Jrc13245 19be3b70d7 fix equipmh and equipoh errors 2025-11-08 17:53:19 -05:00
Jrc13245 37490c5af6 fix accidentally removed mybuffcount 2025-11-08 17:41:22 -05:00
Jrc13245 c8017c5485 implement UnitXP functions and update nampower and superwow functions 2025-11-08 17:38:35 -05:00
Jrc13245 b43f71df2d gitignore 2025-11-08 11:26:21 -05:00
Jrc13245 af872faa58 update readme add mybuffcount conditional 2025-11-08 11:15:33 -05:00
Jrc13245 ca62efec2a fix cooldown conditional with no argument 2025-11-08 11:11:26 -05:00
Jrc13245 5b416765da fix more equip errors 2025-10-30 14:08:41 -04:00
Jrc13245 a7e6ee88ad fix equip race conditions 2025-10-29 18:59:59 -04:00
Jrc13245 f4aed363b6 update readme 2025-10-29 13:49:31 -04:00