From d06e150fd3e9878110c841acf91f52c29210dd36 Mon Sep 17 00:00:00 2001 From: Jrc13245 Date: Fri, 13 Mar 2026 08:28:54 -0400 Subject: [PATCH] updates --- Conditionals.md | 23 +++++++++++++++++++++-- Features.md | 21 +++++++++++++++++++++ Home.md | 2 +- Supported-Addons.md | 2 +- 4 files changed, 44 insertions(+), 4 deletions(-) diff --git a/Conditionals.md b/Conditionals.md index 0df9239..a275800 100644 --- a/Conditionals.md +++ b/Conditionals.md @@ -50,6 +50,7 @@ These always evaluate against the player. Cannot be redirected with `@unit`. | `myrawhp` | Player raw HP value | — | ✅ | `[myrawhp:>1000]` | | | | `myrawpower` | Player raw power value | — | ✅ | `[myrawpower:>=40]` | | | | `nextslamclip` / `nonextslamclip` | Instant now will/won't cause next Slam to clip | ✅ | — | `[nonextslamclip]` | | SP_SwingTimer | +| `rangedclip` / `norangedclip` | Action cast will/won't clip ranged auto-shot | ✅ | — | `[norangedclip]` | | SP_SwingTimer | | `notarget` | Player has no target | — | — | `[notarget]` | | | | `ohimbue` | Off hand has temporary imbue | ✅ | ✅ | `[noohimbue]` `[ohimbue:Crippling_Poison]` | | | | `onswingpending` | On-swing spell pending | ✅ | — | `[onswingpending]` | v2.12 | | @@ -77,7 +78,7 @@ These default to checking the current target. Most can be redirected with `@unit |-------------|-------------|:--:|:-----:|---------|:--:|-------| | `alive` | Unit is alive | ✅ | — | `[alive]` | | | | `behind` | Behind target / count behind | ✅ | ✅ | `[behind]` `[behind:>=2]` | | UnitXP_SP3 | -| `buff` | Target has buff (with time/stacks) | ✅ | ✅ | `[buff:Shield>#3]` `[nobuff:Renew/Rejuv]` | | | +| `buff` | Target has buff (with time/stacks/rank) | ✅ | ✅ | `[buff:Shield>#3]` `[nobuff:Renew/Rejuv]` `[buff:Regrowth(Rank_9)]` | | | | `buffcapped` | Target buff bar full (32) | ✅ | — | `[nobuffcapped]` | v2.20 | | | `casting` | Target is casting (specific spell) | ✅ | ✅ | `[casting]` `[casting:Heal]` | | | | `casttime` | Target cast time remaining (seconds) | ✅ | ✅ | `[casttime:<0.5]` | | | @@ -86,7 +87,7 @@ These default to checking the current target. Most can be redirected with `@unit | `class` | Target class (players only) | ✅ | ✅ | `[class:Warrior/Priest]` | | | | `cursive` | GUID-based debuff tracking (time remaining) | ✅ | ✅ | `[cursive:Rake<3]` `[nocursive:Rip]` | | Cursive | | `dead` | Unit is dead | ✅ | — | `[dead]` | | | -| `debuff` | Target has debuff (with time/stacks) | ✅ | ✅ | `[debuff:Moonfire<4]` `[nodebuff:Rake]` | | | +| `debuff` | Target has debuff (with time/stacks/rank) | ✅ | ✅ | `[debuff:Moonfire<4]` `[nodebuff:Rake]` `[debuff:Moonfire(Rank_10)]` | | | | `debuffcapped` | Target debuff bar full | ✅ | — | `[nodebuffcapped]` | v2.20 | | | `distance` | Distance in yards | ✅ | ✅ | `[distance:<40]` | | UnitXP_SP3 | | `exists` | Unit exists | ✅ | — | `[@mouseover,exists]` | | | @@ -171,3 +172,21 @@ Scans enemies and soft-casts without changing your target. Requires UnitXP_SP3. /cast [multiscan:skull,harm] Eviscerate /cast [multiscan:nearest,notargeting:tank,harm] Taunt ``` + +## Modifiers + +Modifiers are special keywords used inside `[...]` that change how the action is performed rather than gating execution. They are evaluated after the spell is cast or item is used. + +| Modifier | Description | Example | +|----------|-------------|---------| +| `mouseuse` | Auto-clicks the AOE targeting circle at the current cursor position | `/cast [mouseuse] Flamestrike` | + +### mouseuse + +When a spell or item brings up the ground-targeting circle (e.g., Flamestrike, Blizzard, Stratholme Holy Water), `[mouseuse]` automatically places it at the mouse cursor position. If the spell fails to cast (cooldown, missing item, etc.), no click occurs. + +```lua +/cast [mouseuse] Flamestrike -- Cast Flamestrike at cursor +/use [mouseuse] Stratholme Holy Water -- Use Holy Water at cursor +/cast [mouseuse,mod:shift] Blizzard; Frostbolt -- Shift: Blizzard at cursor, otherwise Frostbolt +``` diff --git a/Features.md b/Features.md index d9da13f..70a0831 100644 --- a/Features.md +++ b/Features.md @@ -10,12 +10,33 @@ Auto-learns debuff durations from your casts. 335+ spells pre-configured. /cast Wrath -- Filler ``` +**Rank-specific matching:** +```lua +/cast [nodebuff:Moonfire(Rank_10)] Moonfire(Rank 10) -- Only recast if YOUR rank is missing +/cast [nodebuff:Moonfire] Moonfire -- Any rank (backwards compatible) +``` + **Notes:** - Existence checks (`[nodebuff]`, `[debuff]`) detect ANY debuff on target - Time-remaining checks (`[debuff:X<5]`) use internal tracking from your casts +- Stack checks (`[debuff:Fire_Vulnerability<#5]`) check debuff stack count +- Rank-specific checks (`[debuff:Moonfire(Rank_10)]`) match only the specified rank - Shared debuffs (Sunder, Faerie Fire) are detected from any source - [Cursive](https://github.com/pepopo978/Cursive) provides GUID-based tracking with better accuracy (handles target switching, pending casts, debuff cap) +## Ranged Clip Prevention + +Prevents cast-time spells from delaying your next ranged auto-shot. Requires SP_SwingTimer. + +```lua +/cast [norangedclip] Aimed Shot -- Only cast if it won't clip auto-shot +/cast Auto Shot -- Fall back to auto +``` + +`[norangedclip]` compares the action's cast time against the time remaining on the ranged auto-shot timer. Returns true when there is enough time for the cast to complete before the next auto-shot fires. Works with any cast-time spell — the cast time is read dynamically from the spell tooltip. + +`[rangedclip]` is the negated form (true when casting WOULD clip). + ## Combo Point Tracking Tracks finisher durations (Rip, Rupture, Kidney Shot) accounting for combo points spent. diff --git a/Home.md b/Home.md index ce3acd9..a9851ef 100644 --- a/Home.md +++ b/Home.md @@ -7,7 +7,7 @@ Enhanced macro addon for World of Warcraft 1.12.1 (Vanilla/Turtle WoW) with dyna | Mod | Required | Purpose | |-----|:--------:|---------| | [Nampower](https://gitea.com/avitasia/nampower/releases) (v3.0.0+) | ✅ | Spell queueing, DBC data, auto-attack events | -| [UnitXP_SP3](https://codeberg.org/konaka/UnitXP_SP3/releases) | ❌ | Distance checks, `[multiscan]` enemy scanning | +| [UnitXP_SP3](https://codeberg.org/konaka/UnitXP_SP3/releases) | ✅ | Distance checks, `[multiscan]` enemy scanning | ## Installation diff --git a/Supported-Addons.md b/Supported-Addons.md index a4155e5..b32b864 100644 --- a/Supported-Addons.md +++ b/Supported-Addons.md @@ -12,7 +12,7 @@ Blizzard, [pfUI](https://github.com/me0wg4ming/pfUI), Bongos, Discord Action Bar | Addon | Conditional/Command | Notes | |-------|---------------------|-------| -| [SP_SwingTimer](https://github.com/jrc13245/SP_SwingTimer) | `[swingtimer:>80]` | Swing % elapsed | +| [SP_SwingTimer](https://github.com/jrc13245/SP_SwingTimer) | `[swingtimer:>80]`, `[noslamclip]`, `[norangedclip]` | Swing % elapsed, slam/ranged clip prevention | | [TWThreat](https://github.com/MarcelineVQ/TWThreat) | `[threat:>90]` | Elite targets in party/raid only | | [TimeToKill](https://github.com/jrc13245/TimeToKill) | `[ttk:<10]`, `[tte:<5]` | Time to kill/execute | | [QuickHeal](https://github.com/jrc13245/QuickHeal) | `/quickheal`, `/qh` | Smart healing |