SmartRes2
SmartRes2
The ultimate addon for party and raid recovery after a partial or total wipe. There is a plethora of features, most functional, some are for roleplay.
A Short List of Features
Not every feature exits for every WoW version. For example, settings for mass resurrection spells are not available in Classic Era or Season of Discovery. I am still writing the code, which means there are features which are not done.
- SmartRes2 is lightweight and modular. You can enable or disable almost everything, up to and including entire plugins.
- Create your own random messages for printing to chat to entertain your group.
- Disable or remove chat messages you do not wish to use. There is a recycle bin to restore deleted messages.
- Customize the bar frame with borders, fonts, and more. Future ideas include supporting themes.
- Bind keys for one-click casting of your class resurrection spells, including Hunter pet spells (requires retail, crane and moth pets).
- Non-combat spells intelligently parse your group for dead characters, prioritizing healers, tanks, then DPS. The option to change the priority is being investigated.
- Non-combat resurrection spells, including mass resurrections, check if your cast is the fastest, and if anyone's spell is not the fastest, SmartRes2 can inform them of a collision.
- A frame of colour-coded bars provides a visual display of resurrections. (Not ready as of June, 2024).
- If you have a combat res spell, there is an option to switch the manual target key bind to the spell during combat, and back to your regular res spell out of combat.
- SmartRes2 supports all WoW versions that have been released as of June, 2024. The War Within is planned, but I do not have access to the beta.
Translating
People can start localizing SmartRes2 via the Wowace web portal. As of June 6, 2024, the current words and phrases are set; however, there will be more added and those added later may change as development progresses.
API
Addon authors are welcome to write their own modules and plug their options into SmartRes2. There is a Public API which has the basics. More instructions will be added as development advances.
Preview Screenshots
These are not final, and are subject to change, especially as I add features.
Also, in your Addons button on character select, is LibVersionCheck-1.0 enabled?
Is there something to set that I don't get, or is the addon unable to switch? (when I'm in a raid and res someone, it says in /p instead of /raid...)
@Baurge & Sara_a180: try r157
Date: 2010-08-03 14:38:24
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\SmartRes2\SmartRes2.lua line 54:
attempt to compare nil with number
Debug:
[C]: ?
SmartRes2\SmartRes2.lua:54: in main chunk
AddOns:
Swatter, v5.8.4723 (CreepyKangaroo)
Ace2, v
Ace3, v
ACP, v3.3.4
Align, v
Atlas, v1.16.1
AtlasBattlegrounds, v1.16.1
AtlasDungeonLocs, v1.16.1
AtlasOutdoorRaids, v1.16.1
AtlasTransportation, v1.16.1
AtlasLoot, vv5.11.03
AtlasLootFu, vv5.11.03
AucAdvanced, v5.8.4723 (CreepyKangaroo)
AucFilterBasic, v5.8.4723 (CreepyKangaroo)
AucFilterOutlier, v5.8.4723.2531
AucMatchUndercut, v5.8.4723.2531
AucStatHistogram, v5.8.4723 (CreepyKangaroo)
AucStatiLevel, v5.8.4723 (CreepyKangaroo)
AucStatPurchased, v5.8.4723 (CreepyKangaroo)
AucStatSales, v5.8.4723.2842
AucStatSimple, v5.8.4723 (CreepyKangaroo)
AucStatStdDev, v5.8.4723 (CreepyKangaroo)
AucStatWOWEcon, v5.8.4723.2530
AucUtilAHWindowControl, v5.8.4723.3311
AucUtilAppraiser, v5.8.4723.2530
AucUtilAskPrice, v5.8.4723.3175
AucUtilAutoMagic, v5.8.4723.3142
AucUtilCompactUI, v5.8.4723.2530
AucUtilEasyBuyout, v5.8.4723.3583
AucUtilFixAH, v5.8.4723 (CreepyKangaroo)
AucUtilGlypher, v5.8.4723.2545
AucUtilItemSuggest, v5.8.4723.3108
AucUtilPriceLevel, v5.8.4723.2545
AucUtilScanButton, v5.8.4723.2530
AucUtilScanFinish, v5.8.4723.3576
AucUtilScanProgress, v5.8.4723.2530
AucUtilScanStart, v5.8.4723.2530
AucUtilSearchUI, v5.8.4723.3655
AucUtilSimpleAuction, v5.8.4723.4546
AucUtilVendMarkup, v5.8.4723.2530
AutoBar, vv3.2.0.798
Bagnon, v2.13.3
BagnonForever, v1.1.2
BagnonTooltips, v
BankStack, vr156
Bartender4, v4.4.2-12-g94f3b58
BonusScanner, v5.3
BrokerCashflow, v
BrokerGarbage, v3.3v28
BrokerGarbageLootManager, v3.3v28
Chatter, v1.0
Chinchilla, vv2.1.4
ChocolateBar, vv2.0.2
Clique, vwowi:revision
DocsUINameplates, v4.0
DXE, v
DXELoader, v
EnsidiaFails, v
epgp, v5.5.19
epgplootmaster, v0.4.9
epgplootmasterml, v0.4.9
GearScore, v3.1.17 - Release
GhostPulse3, v3.0.16
GhostPulseBasics, v3.0.16
Grid, v1.30300.1304
GridAutoFrameSize, v2.3.11
GridDynamicZoneSwitch, v1.0
GridManaBars, v1.02
GridSideIndicators, v1.0-30300
GridStatusAFK, v3.2.0.40
GridStatusHots, v3.31
GridStatusRaidDebuff, vv3.01
GridStatusRaidIcons, v30200-4
GridStatusRDBC, v1.0
GridStatusRDWotLK, v1.0
HudMap, v
KeepFollowing, v01.10.03.15
LibJostle30, v
LibResComm10, vr51
LoggerHead, v3.3.5.106
Mapster, v1.3.9
MobileVault, vr134
Omen, v3.0.9
OmniCC, v3.0
OPie, v
Outfitter, v5.0b8
PallyPower, vv3.2.19
Parrot, vv1.10.17-13-g729ab5b
PoMTracker, v2.63
Postal, v3.3.2
Quartz, v3.0.3.1
RaidAchievement, v1.035
RaidBuffStatus, v3.263
RatingBuster, v
ShadowedUnitFrames, vv3.2.12-3-g95f6dea
shPerformance, v4.0
Skada, vr300
SkadaAbsorbs, v1.0
SkadaCC, v1.0
SkadaDamage, v1.0
SkadaDamageTaken, v1.0
SkadaDeaths, v1.0
SkadaDebuffs, v1.0
SkadaDispels, v1.0
SkadaEnemies, v1.0
SkadaFailbot, v1.0
SkadaHealing, v1.0
SkadaPower, v1.0
SkadaThreat, v1.0
SlideBar, v5.8.4723 (CreepyKangaroo)
SmartRes2, vr156
Stubby, v5.8.4723 (CreepyKangaroo)
BlizRuntimeLib_enUS v3.3.5.30300 <us>
(ck=bcc)
Message: Interface\AddOns\SmartRes2\SmartRes2.lua:54: attempt to compare nil with number
Time: Mon Aug 2 12:20:53 2010
Count: 1
Stack: Interface\AddOns\SmartRes2\SmartRes2.lua:54: in main chunk
Locals: _G =
ContainerFrame5Item7 = ContainerFrame5Item7 {
}
PowaDropDownAnim1ButtonHighlightTexture = PowaDropDownAnim1ButtonHighlightTexture {
}
MultiCastActionButton6Cooldown = MultiCastActionButton6Cooldown {
}
MerchantItem9ItemButtonStock = MerchantItem9ItemButtonStock {
}
GetTrainerServiceTypeFilter = <function> defined =[C]:-1
UNIT_NAMES_COMBATLOG_TOOLTIP = "Color unit names."
KBASE_NUM_FAKE_CATEGORIES = 1
SetTrainerServiceTypeFilter = <function> defined =[C]:-1
MerchantItem6AltCurrencyFrameHonorTexture = MerchantItem6AltCurrencyFrameHonorTexture {
}
PallyPowerC8P7BuffIcon = PallyPowerC8P7BuffIcon {
}
SmartBuffOptionsFrame_cbBuffS6 = SmartBuffOptionsFrame_cbBuffS6 {
}
AltoholicAccountSharingOptionsIconNever = AltoholicAccountSharingOptionsIconNever {
}
TutorialFrameLeft19 = TutorialFrameLeft19 {
}
MultiCastActionButton2Cooldown = MultiCastActionButton2Cooldown {
}
ERR_TRADE_EQUIPPED_BAG = "You can't trade equipped bags."
PVP_RANK_6_1 = "Corporal"
MultiBarLeftButton7 = MultiBarLeftButton7 {
}
AudioOptionsVoicePanelOutputDeviceDropDownButtonHighlightTexture = AudioOptionsVoicePanelOutputDeviceDropDownButtonHighlightTexture {
}
InterfaceOptionsDisplayPanelShowAggroPercentageText = InterfaceOptionsDisplayPanelShowAggroPercentageText {
}
VideoOptionsFrameCategoryFrameButton17ToggleHighlightTexture = VideoOptionsFrameCategoryFrameButton17ToggleHighlightTexture {
}
MerchantItem5AltCurrencyFrameItem1Text = MerchantItem5AltCurrencyFrameItem1Text {
}
BINDING_NAME_NAMEPLATES = "Show Enemy Name Plates"
IsReferAFriendLinked = <function> defined =[C]:-1
MAIL_LETTER_TOOLTIP = "Click to make a permanent
copy of this letter."
AudioOptionsVoicePanelMicrophoneVolumeThumb = AudioOptionsVoicePanelMicrophoneVolumeThumb {
}
MANA = "Mana"
CHAT_CONFIG_OTHER_COMBAT =
}
CONSOLIDATED_BUFFS_PER_ROW = 4
TutorialFrameRight19 = TutorialFrameRight19 {
}
MoneyFrame_OnEvent = <function> defined @Interface\FrameXML\MoneyFrame.lua:184
BN_UNABLE_TO_RESOLVE_NAME = "Unable to whisper '%s'. Battle.net may be unavailable."
WatchFrameItem_OnEvent = <function> defined @Interface\FrameXML\WatchFrame.lua:1206
InterfaceOptionsCombatTextPanelFCTDropDown_OnClick = <function> defined @Interface\FrameXML\InterfaceOptionsPanels.lua:1349
TradeSkillInputBoxLeft = TradeSkillInputBoxLeft {
}
LFGTeleport = <function> defined =[C]:-1
INT_SPELL_DURATION_HOURS = "%d |4hour:hrs;"
ChannelMemberButton10Name = ChannelMemberButton10Name {
}
PetStableMoneyFrameGoldButtonText = PetStableMoneyFrameGoldButtonText {
}
AltoGuildBankEntry7Item7 = AltoGuildBankEntry7Item7 {
}
VOICEMACRO_4_Sc_1_FEMALE = "Help me attack!"
PoMOptionFrame_CheckButton5Text = PoMOptionFrame_CheckButton5Text {
}
ACTION_SPELL_MISSED_POSSESSIVE = "1"
PetPaperDollFrameTab3Right = PetPaperDollFrameTab3Right {
}
ChannelMemberButton10SpeakerFrameOn = ChannelMemberButton10SpeakerFrameOn {
}
EventTraceFrameTitleButton = EventTraceFrameTitleButton {
}
SecureCmdItemParse = <function> defined @Interface\FrameXML\ChatFrame.lua:987
SLASH_STOPATTACK1 = "/stopattack"
AltoholicTabCharacters_Prof1Shine = AltoholicTabCharacters_Prof1Shine {
}
MultiCastActionButton4HotKey = MultiCastActionButton4HotKey {
}
GemHelper_CheckButton35Text = GemHelper_CheckButton35Text {
}
InterfaceOptionsCombatTextPanelRepChanges = InterfaceOptionsCombatTextPanelRepChanges {
}
SortQuestWatches = <function> defined =[C]:-1
ContainerFrame4Item16Cooldown = ContainerFrame4Item16Cooldown {
}
MINIMAP_TRACKING_TRAINER_CLASS = "Class Trainer"
SLASH_DISMOUNT2 = "/dismount"
TokenFrameContainerButton15Stripe = TokenFrameContainerButton15Stripe {
}
PowaBarAuraDeformSliderText = PowaBarAuraDeformSliderText {
}
AudioOptionsVoicePanel_OnShow = <function> defined @Inter
Message: Interface\AddOns\SmartRes2\SmartRes2.lua:1121: attempt to index field '?' (a nil value)
Time: Mon Jul 26 20:35:01 2010
Count: 1
Stack: (tail call): ?
Interface\AddOns\SmartRes2\SmartRes2.lua:1121: in function `DeleteResBar'
Interface\AddOns\SmartRes2\SmartRes2.lua:836: in function `?'
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:146: in function <...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:146>
[string "safecall Dispatcher[3]"]:4: in function <[string "safecall Dispatcher[3]"]:4>
[C]: ?
[string "safecall Dispatcher[3]"]:13: in function `?'
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:91: in function `Fire'
...Ons\LibResComm-1.0\LibResComm-1.0\LibResComm-1.0.lua:213: in function `?'
...Ons\LibResComm-1.0\LibResComm-1.0\LibResComm-1.0.lua:48: in function <...Ons\LibResComm-1.0\LibResComm-1.0\LibResComm-1.0.lua:47>
[C]: in function `MoveBackwardStart'
[string "MOVEBACKWARD"]:2: in function <[string "MOVEBACKWARD"]:1>
Locals: Sometimes debuglocals() returns nothing, it's one of those times... (FYI: This last sentence (only) is a HotFix from Decursive to prevent a C stack overflow in the new Blizzard error handler and thus giving you the opportunity to send this debug report to the author of the problematic add-on so he/she can fix it)
OK, uploaded r152 with the dry code for non-CTRA casts, got into a group. SR2 threw errors, and I thought I would look at them after the run. Sadly WoW crashed just as I opened BugSack, so all the errors are gone!
GRRRRRR. Yeah, so I know there are bugs, but I can't get into another group until way later tonight. Please post bugs to the tracker, or in the forum as a second option.
Already handled that one Highend. There are other issues afoot however.
Working on it; and have asked for feedback from smarter persons.
1x SmartRes2-r149\SmartRes2.lua:522: unexpected symbol near 'if'
Locals:
-@DaemonSambe I will see if I can force both issues. There is a :SetPoint() in OnInit(), perhaps I need to duplicate it in the bar creation. Will check. Same with the :ShowIcon()
@Creepy_Inc Just use the custom message option.