CasterWeaponSwapper
| Last Update: | July 16, 2008 (1 month ago) |
|---|---|
| Category: | Combat |
| Tags: | caster, combat, mana, staff, and swap |
| Project Manager: | Wikwocket |
| Website: | visit |
| Current Version: | CasterWeaponSwapper Version 2.4 (for World of Warcraft 2.4.3) |
| Downloads Today: | 32 |
| Downloads Total: | 24,544 |
| Favorites: | 187 |
| Comments: | 219 |
- Screenshot
- More
- More Information
| Created On: | Nov. 2, 2006 |
|---|---|
| Compatible: |
|
| Localized: |
|
- About CasterWeaponSwapper
CasterWeaponSwapper 2.4
by Wikwocket (wikwocket@gmail.com)
This AddOn swaps weapons based on your current amount of mana, to maximize mana efficiency. With this mod, you can start fights with a high intellect staff equipped, then switch to a +damage/healing weapon for most of the fight, and then switch to a spirit-heavy staff when your mana is low.
This AddOn is unique because is does this automatically, without interrupting you with a weapon-swap cooldown. When you equip weapons in combat, it cancels current spellcasts, and causes a 1.5-second global cooldown. CasterWeaponSwapper gets around this by swapping weapons right after you cast instant spells, so the cooldowns overlap and you don't experience any interruption. It also will let you know when it wants to swap weapons with a little popup, so you can cast an instant spell or trigger the swap manually. When out of combat, there is an option to swap weapons whenever necessary, since there is no swap cooldown.
The AddOn supports 1- and 2-handed weapons, off hand items, and wands/librams/idols/totems. You can set up weapon sets for high mana, casting, low mana, and sets for Druid forms. The casting set will only be used when in combat. The Druid sets will be used while you are shapeshifted into a bear or cat. There is also an option to use the low-mana set while you have spirit boosting buffs (Spirit Tap, Evocation, Innervate, and Aura of the Blue Dragon), and an option to swap between a secondary casting set to proc the Spellsurge enchant each time it is available in combat.
(For more information on Spellsurge, check out the excellent "A Guide to Spellsurge in Endgame PVE" at http://forums.worldofwarcraft.com/thread.html?topicId=3547729521 by Aredia/Aeix).
This AddOn will work in any language version of WoW. The user controls are in English.
To use the AddOn, type /cws or /casterweaponswapper to open the config window.
- You can set up the weapon sets by dragging and dropping weapons to the icons.
- You can pick the mana threshold values used for swapping via the sliders.
- You can turn the mod, and some features, on and off via the checkboxes.
- Settings are saved for each character that uses the AddOn.
Once set up, you can type /cws on|off|toggle to turn weapon swapping on or off.
I hope you find this mod useful. Feedback and suggestions are always welcome!
Website: http://wikwocket.wowinterface.com/portal.php Contact info: Please contact me by email (wikwocket@gmail.com), PM, or by leaving comments on an AddOn site. This is much preferable to trying to contact me in-game.
Version history:
CasterWeaponSwapper 2.4 (WoW 2.4.3):
- Updated to accomodate 2.4.3's change, where swapping weapons cancels spellcasts:
- In combat, the mod now only swaps after instant-cast and channeled spells, which are not interrupted.
- When the mod needs to swap in combat, if it doesn't see an instant-cast spell, it will pop up a little notifier, so you can trigger the swap (and the resulting cooldown) when it's most convenient.
- To trigger the swap, you can cast any instant-cast or channeled spell, or click the button on the notifier, or use a macro that says "/cws swap", or use the keybinding available in the keybindings menu.
- The popup notifier can be moved anywhere on the screen by dragging it.
- This is a quick fix version, which I hope to refine over time. I know the popup may be a little annoying for now and that the mod may still interrupt casts out of combat; I plan to work on this.
CasterWeaponSwapper 2.3 (WoW 2.4.2):
- Updated localization code to use GetSpellInfo() and GetItemInfo(). This should allow the mod to work in all locales without further translation!
- Added Divine Illumination to the list of spells not to swap after, since it does not cause a global cooldown.
- Fixed a bug in Spellsurge detection that occurred in special cases.
CasterWeaponSwapper 2.2 (WoW 2.4.1):
- Updated code to not swap weapons when casting non-cooldown spells, like Inner Focus, Divine Favor, and Natures's Swiftness. This should avoid unnecessary cooldowns. For a full spell list, look in localization.lua.
- Updated Spellsurge detection to be more reliable, by checking COMBAT_LOG_EVENT_UNFILTERED directly instead of using CombatLogGetCurrentEntry().
- Removed old 2.3 Spellsurge support.
- Improved empty bag slot detection by using new 2.4 function GetContainerNumFreeSlots().
- Improved icon code by using new 2.4 function GetItemIcon().
CasterWeaponSwapper 2.1 (WoW 2.3.3):
- Updated Spellsurge detection to continue to work after patch 2.4.
- Reinstated Evocation support: Although it's is no longer spirit-based, swapping to regen weapons does increase base regen while channelling, especially due to one regen tick outside the 5-second rule (Thanks Samasnier). To disable swapping, you can uncheck "Swap to low mana set for spirit boosts."
- Added localization for Spanish WoW client. Spellsurge support is not localized yet, and after 2.4 won't need to be.
- Updated swapping messages and error messages so they will not spam the chat log.
- Updated to not swap weapons when you have an item on the cursor, so you can move items without interruption.
CasterWeaponSwapper 2.0 (WoW 2.3.3):
- Updated to use item links instead of item names! This means that:
- You can now swap between two items with the same name but different enchants/gems.
- Old settings are preserved; existing weapon selections will be equipped by name. If you reconfigure the weapons, then item links will be used.
- All new weapons configured will show full tooltips in the config panel, instead of just their names.
- There is also a new chat notification when you add a weapon to a set.
- Updated Druid support to recognize cross-form shapeshifts (bear to cat, etc) and swap weapons appropriately.
- Updated Druid support to not swap weapons immediately after unshifting, and to wait for the next spellcast, to avoid causing an extra cooldown.
- Updated spirit boost code: now after a spirit boost is over, the code waits for the next spellcast to swap away from regen weapons, to avoid causing an extra cooldown.
- Removed Evocation spirit boost support, since Evocation is no longer based on spirit.
- Updated to use ClearCursor(), to prevent leaving a weapon on the cursor, and resolve some UI taint issues.
- Update reports to include percentage of time spent with High Mana set.
- Added French and German localization for Spellsurge ticks (thanks Nightdruid, Singura, and others).
- Made many small optimizations to the code.
CasterWeaponSwapper 1.91 (WoW 2.2.2):
- Added ability to distinguish your Spellsurge procs from other procs.
- The mod now tracks your own Spellsurges, so it should not unequip your Spellsurge weapon when someone else's procs.
- Post-fight reports now list the number of your own Spellsurges, as well as all Spellsurges.
- This is not yet localized; I need to know what the French and German clients say when you gain 10 mana from Spellsurge.
- Made the color of post-fight reports customizable. To change it, open CasterWeaponSwapper.lua in a text editor and look for the variable "REPORTCOLOR" near the top.
- Reduce memory usage for reports via small fix.
- Fixed typo in French localization for gaining Spellsurge.
CasterWeaponSwapper 1.9 (WoW 2.1.3):
- Localized Spellsurge support into French and German (thanks Zwiebelchen and Krakoukass).
- Fixed localization for Druid bear form detection in French (thanks Krakoukass).
- Added reporting on mana usage after long fights.
- After a fight of more than 2 minutes, you will see:
- Time spent inside and outside the five second rule.
- Time spent with various weapon sets equipped.
- Number of times Spellsurge procced.
- Reporting defaults to "on" but can be turned off by checkbox.
- Note: five second rule detection is approximate.
- Fixed a bug where the mod would not re-try failed swaps.
CasterWeaponSwapper 1.8 (WoW 2.1.1):
- Added recognition of Swift Flight Form for Druids (The low-mana set is used for all travel forms).
- Added a Spellsurge set, for the Spellsurge weapon enchant:
- The Spellsurge enchant has a 50 second cooldown; while it cools down after a proc, another weapon can be used.
- A main hand (with Spellsurge) and off hand can be entered in this new set (the casting ranged weapon is used).
- In combat, the mod will swap from the casting set to this set (if enabled) until Spellsurge procs.
- After each Spellsurge proc, the mod will swap to the casting set until Spellsurge has cooled down.
- Note that it may take several casts to proc Spellsurge each time the set is activated.
- Spellsurge support is not yet localized. To do so, I need to know what the combat log says when it procs.
CasterWeaponSwapper 1.7 (WoW 2.1.0):
- Rewrote buff scanning code to be more efficient, by using UnitBuff instead of tooltips.
- Added code to swap from one offhand to another more reliably, by working around item slot locking caused by unequipping offhands to specific bag slots.
- Fixed a checkbox's tooltip text.
CasterWeaponSwapper 1.6 (WoW 2.0.12):
- Updated swapping code to remember which bag slot it picks up offhand items from, and try to place them back there when swapping them out. (Suggested by Wickwrackrum at curse-gaming.com)
- Updated swapping code to not swap weapons after dying as a Priest and becoming a Spirit of Redemption, to avoid wasting 1.5 seconds of your posthumous healing with a global cooldown.
- Updated swapping code to not swap due to mana changes if experiencing a spirit boost. So during an out-of-combat Evocate or Innervate, the low mana weapons should stay equipped for the duration. (Suggested by Myrddin)
- Added recognition of Flight Form for Druids (The low-mana set is used for all travel forms).
CasterWeaponSwapper 1.51 (WoW 2.0.2):
- Fixed small bug with empty bag slot detection.
CasterWeaponSwapper 1.5 (WoW 2.0.2):
- Updated for WoW 2.0.2.
- Due to how events are handled in the expansion, in-combat swap checks will also be made when you fire a wand or use an item, since they also trigger the global cooldown.
- Removed Soul Siphon from list of spirit-boosting buffs, since the talent Improved Drain Soul was changed.
CasterWeaponSwapper 1.4 (WoW 1.12.1):
- Added another Druid weapon set: now there are separate sets for bear form and cat form. Moonkin form will be treated the same as caster form, and travel forms will use the low mana set for regen.
- Updated combat-swapping event support, so that the mod will once again check for weapon swaps when you use an instant-cast spell.
- Added a checkbox option for turning the swap messages on or off.
CasterWeaponSwapper 1.32 (WoW 1.12.1):
- Localized support for druid forms, spirit buffs, and other minor fields for French and German WoW. Please let me know if these features work in the foreign-language clients.
- Updated Druid support: Druid set will be used for bear and cat forms, and Moonkin form will be treated as caster form (so swaps will still occur in that form).
- Fixed a bug with picking items up from character sheet.
- Updated buff detection code to be more robust.
CasterWeaponSwapper 1.31 (WoW 1.12):
- Fixed a bug with picking items up from bank slots.
CasterWeaponSwapper 1.3 (WoW 1.12):
- Redesigned the interface to use icon buttons instead of text - now you can drag and drop items into the sets! Existing item sets will be preserved, but weapons will use a default icon until you drag the actual item into the set.
- Added a fourth item set, for Druid forms. Added an option to swap to this set while in any form.
- Added an option to swap to the low mana set while you have a spirit-boosting buff (Evocation, Innervate, Spirit Tap, Improved Drain Soul, or the Blue Dragon card proc).
- Rewrote all of the swapping status code - this allows for better detection of conditions like Druid forms, spirit boosts, death, etc, as well as choosing the right item set to use in a given case. This will also allow me to add support for Spirit of Redemption form and battlegrounds.
CasterWeaponSwapper 1.2 (WoW 1.12):
- Added support for recognizing Benediction/Anathema regardless of which state it's in.
- Rewrote all of the weapon swapping code - this should remove the possibility of failed swaps and conflicting swaps.
- Changed the event used for combat-swapping to SPELLCAST_START. This should prevent the bug where a swap would occur on the completion of a spell instead of at the beginning. Note that this means the mod will no longer swap when you cast an instant-cast spell.
CasterWeaponSwapper 1.11 (WoW 1.10):
- Fixed small bugs in weapon swap code.
- Added checks to clear cursor after a failed swap.
- Added more error messages for debugging.
CasterWeaponSwapper 1.1 (WoW 1.10):
- Updated TOC number.
- When out of combat, the casting set is now ignored. Only the low mana (regen) and high mana sets will be used.
- Added an option to perform swaps automatically based on mana level when out of combat. While in combat, swaps will still only be performed when you start to cast a spell. (Suggested by ThantiK at curse-gaming.com)
- Added code to not swap weapons while shapeshifted (when you have no mana). Hopefully this will work better for Druids. (Suggested by emb at curse-gaming.com)
- Incorporated WeaponQuickSwap fixes to prevent stack overflows and wait for complete item unlocking.
- Improved weapon swapping code's detection of bags that can't hold weapons (quivers etc).
- Disabled event handling while zoning, to improve loading times.
CasterWeaponSwapper 1.0 (WoW 1.9.4):
- Initial release.
- Special thanks go to CapnBry for writing WeaponQuickSwap and releasing it in the public domain.
- Downloads (20)
- Screenshots (2)
- Tickets
- Comments
- RSS
You need to login or register to post comments.
Benefits of Registration
- Interact with hundreds of thousands of other gamers on an open social network.
- Post your stories, news, images, videos, and other content to share.
- Create a network with your fellow gamers or join an existing one.
- Gain reputation for everything you do.
- Recommended Addons
- RSS
Users who liked CasterWeaponSwapper also liked these.
- 464 ChatMOD Chat & Communication and Audio
- 1,976 HealBot Continued Buffs & Debuffs, Action Bars, ...
- 555 WIM (WoW Instant ... Chat & Communication
- 1,935 Preform AV Enabler PvP
- 138 Recap (Hawksy) Combat
- Similar Addons
- 2,077 DamageMeters Combat
- 2,023 Natur EnemyCastBar PvP, Buffs & Debuffs, Raids & ...
- 1,926 Recount ... Combat
- 1,373 Decursive 2.0 ... Buffs & Debuffs and Combat
- 1,372 BigWigs Bossmods Raids & Encounters, Other, ...
- 8,089 QuestHelper Map and Quest & Leveling
- 4,279 Atlasloot Enhanced PvP, Map, Tradeskill, and ...
- 3,969 Omen Threat Meter Raids & Encounters
- 3,889 GroupCalendar Group/Guild Management, Quest ...
- 3,231 Atlas Map





- +0
- Thumbs Down
- Thumbs Up
DoubleA saidSorry for the delay - had some time off. Here is my idea in detail:
As for a Feral you usually carry two weaponsets with you: 1 for casterform (to maximize your +heal) and 1 for feral forms. If I am in feral form and want to cast a heal directly, the weaponswitch (as I automatically shift out of the form) can't be fast enough to affect the first spell. Therefore it is not a loss if CWS waits until the first spell is completed before it switchs the weapons. E.g:
STANCE: Catform -> Healing Touch button is hit
-> STANCE: Casterform (CWS would now usually switch to affect the next spell but now waits) -> casting healing touch -> healing touch is completed (As CWS has recognized spellcasting and waited until now cws may now switch the gear without interruption)
The other way around shouldnt be a problem, since no spell is cast when shifting into feral forms. Would be awesome if you could make it that way (at least for a feral :P ).
- +0
- Thumbs Down
- Thumbs Up
vaithe saidHere's an idea for ya. I have yet to try the new CWS yet...but a popup I'm sure isn't going to be fun to work with. What about a color hue (kinda like solarian alarm) indicating when to switch weapons. If I had something like that I would just keybind the weapon switch.
- +0
- Thumbs Down
- Thumbs Up
Wikwocket saidA color hue is a good idea, I'll add it to the idea list. :)
- +0
- Thumbs Down
- Thumbs Up
Midnighte saidAfter the latest update I am no longer a Fan of CWS, That annonying button popping up on my screen is killer, I hate it with a passion, Until there is an option to disable that and it to continue to operate with like the old one this is just not the mod for me. Atleast the updated one. As an Resto Shaman I spam Chain heals, and having to click swap all the time is useless, I reverted to the old Version as it still works. I button mash chain heal during Sunwell and BT and having having a spell cancel and a new one cast right away isnt an issue.
- +0
- Thumbs Down
- Thumbs Up
Wikwocket saidSorry for the inconvenience. I am working on ways of making it less annoying, and disableable. By all means, if the old version works for you, go for it. :)
- +0
- Thumbs Down
- Thumbs Up
Midnighte saidI'll keep watching for a new release ty
- +0
- Thumbs Down
- Thumbs Up
DoubleA saidHey I'm a feral and your addon is a must-have! But its essential that it changes the weaponslots as fast as possible after a shift. Henceforth i'd suggest that your addon waits until the spell is casted (as the spell itself is probably responsible for breaking the form) to go change them right away. I guess this should be easy work to code. *g* sry but i dont appreciate the notifier :P
- +0
- Thumbs Down
- Thumbs Up
Wikwocket saidI realize that the popup can be annoying, I'll try to make a way to hide it if you're primarily feral etc.
As for your other suggestions, can you explain them a little more? Can you give an example timeline so I can make sure I understand what you mean? I don't have a Druid character so I'm not sure I follow. Thank you.
- +0
- Thumbs Down
- Thumbs Up
Wikwocket saidVersion 2.4 is out but Curse's site hates me. Please check out the new version from WoWI: http://www.wowinterface.com/downloads/info4749-CasterWeaponSwapper.html
- +0
- Thumbs Down
- Thumbs Up
Wikwocket saidJust a note that I am aware CWS will not work very well in 2.4.3, due to the change that swapping gear will interrupt spellcasts. I have some good ideas on addresisng this and am half-way through coding them up. Hope to have an update out soon!
- +0
- Thumbs Down
- Thumbs Up
bliedel saidHave you considered adding "profiles" to this mod? I play a priest and on weekends I respec smite. I use this mod for both Healing and Smite DPS, but have to swap everything out each time I re-spec. Profiling of some sort would be awesome for this.
- +0
- Thumbs Down
- Thumbs Up
Mandrax saidHello and thanks for an excellent addon!
I have a small problem though: whenever combat ends, CWS equips my Low Mana Set weapon instead of my High Mana Set to start the next fight with the highest mana possible while I get the following message:
"Swapping for mana regen: [my current Low Mana Set 2H], Keep offhand, Keep ranged"
As I understand from the guide you recommended, after combat the addon should equip the High Mana Set as this is the set you wear out of combat and will start combat with. What am I doing wrong?
My settings are as follows:
High Mana Set: Main Hand A & Offhand A
Casting Set: Main Hand A & Offhand A
Low Mana Set: 2H A
Spellsurge Set: Main Hand B & Offhand A
High to Cast: 100%
Cast to High: 100%
Cast to Low: 20%
Low to Cast: 25%
Enable Swaps: Enabled
Print Swaps: Enabled
Post-fight reports: Enabled
Swap whenever needed when Out of Combat: Enabled
Swap to low mana set for spirit boosts: Enabled
- +0
- Thumbs Down
- Thumbs Up
Wikwocket saidWhat the mod should do when combat ends is swap to your low mana set, since you mana is low, and then when you pass the "casting to high" threshold, swap to that since now you're at ~full mana.
What I would do is first of all check whether you have "Swap when needed out of combat" checked, otherwise you need to cast a spell or use an item to swap to the high mana set, even when out of combat.
If you already had that checked, try tweaking your thresholds:
High to Cast: 90%
Cast to High: 100%
This shouldn't affect you in combat since your high mana and casting sets are the same, but may help the mod to distinguish the thresholds better.
- +0
- Thumbs Down
- Thumbs Up
solfolango saidI would like to know if this addon violates against the TOS of Blizzard since it automates something without the user needing to press a key to explicitely do a specific task (i.e. switching the weapon to gain spellsurge procc). Anyone got information about that? My guild leader advised to not use this addon because of that and I would like to verify. Thanks for your information.
- +0
- Thumbs Down
- Thumbs Up
Wikwocket saidIn general, anything that a mod can do in the AddOn API is allowed. Specifically, if a mod automates something that Blizzard doesn't want automated, they change the API to disallow it. For example Decursive was allowed until Blizzard changed the API to require keypresses/clicks to target spells, after which Decursive did not work.
Now for this mod: Blizzard allows weapons to be swapped in combat, and specifically allows them to be swapped by macro or AddOn. Swapping was changed to cause a global cooldown, so Blizzard is aware of it and considers swapping (with a cooldown) to be a fair tradeoff. If they decide they do not want mods to swap weapons in combat, they can protect the functions so they require keypresses/clicks, or they could make it cause a longer cooldown, etc.
To my knowledge no Blizzard staff or GM or CM has commented on CasterWeaponSwapper. But all signs indicate that CWS is fine to use, completely within the TOS, and as harmless a way to maximize you mana usage as doing mathcraft on gear choices.
For more information, see these threads:
"Legal?" section of "Mods FAQ (aka AddOns, UIs, Interfaces)" by Cairenn, webmaster of wowinterface.com
http://forums.worldofwarcraft.com/thread.html?topicId=11381215#5
"Comprehensive list of banned/illegal addons"
http://forums.worldofwarcraft.com/thread.html?topicId=59491413
- +0
- Thumbs Down
- Thumbs Up
Tashin saidI would be interested to see a feature that would disable the swapping on a Bloodlust/Heroism. Seeing as how with 2.4 those buffs can lower your gcd below the 1.5 limit that was in the past. Unless I am mistaken to believe that Bloodlust effects the GCD of item swaps and not just casts.
- +0
- Thumbs Down
- Thumbs Up
Wikwocket saidThat is a good point. It was tested and confirmed that haste/spell haste does not decrease the item-swap cooldown, just the global ability cooldown. Therefore this may be a good idea, let me look into it. My only worry is that if you have a suboptimal weapon equipped when it starts, you'd have it equipped for 40 seconds, which is kind of a long time.
- +0
- Thumbs Down
- Thumbs Up
Tashin saidCouldn't you just make it switch to the optimal set upon Bloodlust similar to it switching to Spirit set for Innervate and such.
- +0
- Thumbs Down
- Thumbs Up
klur saidThe spellsurge swap does still have issues it wasn't working for me but after reading this and you mentioning the logs I tried different settings on my log and was able to get it working.
If you right click on the Combat Log tab then select settings then in the window click on the Formatting tabs you can see all the options for Combat log formats. I was not including the timestamp when spellsurge swap would not detect spellsurges. I added timestamp and it now seems to pick them up but seems a little slow to detect it. From this tab you should be able to experiment with all the different possible log forms.
Something else I have noticed that I may just not understand but for me what I would like to see happen is to always have my spellsurge weapon equipped except when it has procked both inside and out of combat. So I thought if I set High and Low to the same set as my spellsurge then the combat set would only be used in combat when I have spellsurge. However this doesn't seem to work out. I still end up with the combat set being equipped after combat. For this I have also set the transitions for High and Low to 100%.
Thanks for the great add-on.
- +0
- Thumbs Down
- Thumbs Up
Wikwocket saidI have tested the mod on the base UI with the "Timestamps" setting both on and off, and it does swap for Spellsurges, and detect them, both ways. There may be some other setting that is interfering with CWS's detection but I am not sure what it might be. I am using the unfiltered combatlog functions, that should see all events regardless of filter settings.
The reason it seems to detect Spellsurges late is that it watches for the first tick of mana, not the gaining of the buff. This is because in the combatlog, the buff message does not say whose Spellsurge it is (it might be a party mate's), but the mana regen message does.
The Spellsurge and casting sets are not used outside of combat, just the high and low mana sets are. I mean to add a feature where you can disable certain sets if you just want to use a casting and Spellsurge set for example.