Yes, I know people might want to block or spoof the versioning of SmartRes2, but seriously, what is the point of that? It isn't like there is mass quantities of data being sent, and it is better to be notified of upgrades.....Sure, most of the people reading these boards will check for updates regularly, but the vast, vast majority of WoW players only update addons when stuff breaks or they are told to update.
Wrong.
Push (non-buggy) full release versions to Curse (or wherever) whenever you upgrade LibResComm and/or otherwise and there will not be any "version problems". It simply isn't as much of an issue as you make it out to be.
Average people update full release versions (as opposed to alphas/betas) of mods from Curse all the time with Curse Client. And they are "notified of upgrades" all the time through that as well.
There is really no need to add mommy-notifications in the mod. If the mod can function in some/all respects as its designed to without annoying dependencies on everyone having identical versions, updating (and updating reminders) should be left to individual users and out-of-game programs like Curse Client.
If the mod doesn't functional optimally when different people have different versions running, well too bad. Redesign it not to be so dependent on what other people have. But as mentioned, push (non-buggy) release versions to Curse and the presumed "version problem" simply won't be a problem.
Speaking of non-buggy: r169 bugs out on load and has other problems. With the since-fixed r62 of LibResComm loading, errors at logon:
["message"] = "SmartRes2-r169\\SmartRes2.lua:174: attempt to call method 'OptionsTable' (a nil value)\n(tail call): ?:\n<in C code>: ?\n<string>:\"safecall Dispatcher[1]\":9: in function <[string \"safecall Dispatcher[1]\"]:5>\n(tail call): ?:\nAceAddon-3.0-10 (Ace3):514: in function `InitializeAddon'\nAceAddon-3.0-10 (Ace3):628: in function <Interface\\AddOns\\Ace3\\AceAddon-3.0\\AceAddon-3.0.lua:621>\n\n ---",
["type"] = "error",
["session"] = 391,
["counter"] = 1,
}, -- [998]
{
["message"] = "SmartRes2-r169\\SmartRes2.lua:257: attempt to index field 'res_bars' (a nil value)\n(tail call): ?:\n<in C code>: ?\n<string>:\"safecall Dispatcher[1]\":9: in function <[string \"safecall Dispatcher[1]\"]:5>\n(tail call): ?:\nAceAddon-3.0-10 (Ace3):543: in function `EnableAddon'\nAceAddon-3.0-10 (Ace3):635: in function <Interface\\AddOns\\Ace3\\AceAddon-3.0\\AceAddon-3.0.lua:621>\n<in C code>: in function `LoadAddOn'\nInterface\\FrameXML\\UIParent.lua:242: in function `UIParentLoadAddOn':\nInterface\\FrameXML\\UIParent.lua:265: in function `CombatLog_LoadUI':\nInterface\\FrameXML\\UIParent.lua:519: in function <Interface\\FrameXML\\UIParent.lua:492>:\n\n ---",
["type"] = "error",
["session"] = 391,
["counter"] = 1,
}, -- [999]
And you may have embedded LibChatThrottle with your custom LibVersionCheck, but its not going to load for those that don't have it disembedded. There is no reference to it in the TOC, LibVersionCheck's lib.xml files or otherwise.
Speaking of LibChatThrottle, the fact that LibVersionCheck is aware of it and can use it means that It isn't like there is mass quantities of data being sent is not necessarily the case. It all adds up.
LibVersionCheck should have bundled ChatThrottleLib, if it is going to use it. The author, however, decided not to include CTL, even though, like LibDataBroker, it cannot be opt-dep'd.
I still think you overestimate users' ability to check for updates. Sure, the Curse Client notifies of updates, as does checking Curse, but that requires users to run the CC or check the site. Most do not do that on a regular basis.
Whatever. I took the code out, and dropped LibVersionCheck.
Thank you for the bug report. I pushed an alpha right before going to work last night, so didn't have time to check it in game. Will check my local copy after sleep later today.
Tested in game, and r171 seems to work just fine. I added a few features, and for those late to the party, I just redesigned the main page to clearly delineate what has changed or been added since the original SmartRes.
To Do: a user requested a way to split whispers from party or raid chat, in order to send both. Get updated translations for non enUS locales. Then, if there is nothing else, I'm done for a while, and get back to LibGuildBankComm-1.0 which I have sorely neglected.
**EDIT** All this assumes Torhal, who is an author on this project, doesn't exercise his penchant for total code rewrites! :D
Hopefully somebody or a few somebodies can test the latest alpha in a party or raid environment before Cataclysm. I added a check to hopefully stop the situation where playerA with SmartRes2 auto resses on targetB, but playerC without any CTRA res monitor is already ressing targetB, thus making playerA's cast a collision. In this situation, what should happen is SR2 skips targetB, but that currently isn't the case.
If both playerA and playerC have CTRA broadcasting addons, the above never happens. This issue only occurs with the "guessed resses" turned on.
I am expecting bugs on this, because I haven't been in a raid in two weeks, and don't think I'm getting into one before Cat.
I forgot to mention in the patch notes that SetUserPlaced was changed from true to false on the res bars. That means the bar position is no longer stored in local-cache.txt and you should remove the following lines from that file:
I forgot to mention in the patch notes that SetUserPlaced was changed from true to false on the res bars. That means the bar position is no longer stored in local-cache.txt and you should remove the following lines from that file:
Your numbers may be different, but you get the idea.
Found these lines in the file "layout-local.txt", not "local-cache.txt".
Also, I noticed a bug or two last night after the latest alpha r175 went up. On my end, I fixed the activeRes = nil error, the test bars will no longer error with SR2 disabled, and I moved the Test Bars button to the top of the Res Bars Options, where you would expect. All that will be in r176, after I get into game and do my best to test.
I forgot to mention in the patch notes that SetUserPlaced was changed from true to false on the res bars. That means the bar position is no longer stored in local-cache.txt and you should remove the following lines from that file:
This change has the potential to cause positioning issues for casual mod users once the latest goes to release status. If in fact the layout-local.txt data conflicts with the new saved variable data doing the same thing.
Two options: revert and keep on using layout-local.txt for bar positioning data.
Or rename the SmartRes2_ResBars positioning name to something else in the saved variables (as well as in the mod on line 235 in r175's SmartRes.lua). So it looks for the new name instead of the old.
But then you are left with unused wasted space in layout-local.txt. What advantages have you found for storing that positioning in saved variables instead of that file?
I haven't looked at the implementation and if it does what it says it does.
But I can answer the part of "what's the difference of letting the cache handle it vs storing position in sv?"
Letting the cache handle it means that if a player logs in with the addon disabled
the layout cache entry is cleared and the next time it'll have reverted to default/initial placement.
Storing it in SV means that as long as the SV is not removed, disabling and re-enabling the addon does not reset its placement.
Going with the rename from res_bars to rez_bars, for the reason Dridzt explained. The whole disable/enable resetting position thing was driving me into a Gnome punting fury! Just be glad I didn't try to rob a Goblin...
I don't speak German, but is there something going on that I need to know? There has been three complete translations done for deDE in the last month by as many translators.
maybe a comparison of all 3 versions will shed light on it. Spelling mistakes, wrong translations, or ,maybe just "i didnt look if there was one that fits already".
Every now and then I get a comment on SmartRes2's Curse page saying the macro isn't working as intended. SR2 does not directly create a macro, but can be used in one to still fire the smart resurrection function.
#showtooltip Resurrection/Ancestral Spirit/etc
/sr cast or /smartres cast
I have no problems with using a macro, and it works fine for me. Does anyone get different, undesirable results?
Unless I'm missing something, it appears that smart-res may be broken as of the 4.2 patch.
Also, I have a macro that looks like this.
#showtooltip Resurrection
/sr cast
I click on it and nothing happens. No target is selected and rez doesn't go off. I select a target and click and still nothing actually happens. Using the regular spell on my quick bar works fine. Am I doing something wrong? Or do you think using the word "cast" may actually interfere with other add-ons etc?
The problem is with LibResComm-1.0, which got fixed in alpha. As for the macro not working, I will have to bug Morgalm, because I've moved from WoW to Rift.
Morgalm == awesome, and thank you to Nevcairiel for the LRC fix. I sent Morg a PM with a couple of other little tidbits, but thank you guys for the support!
For those using SmartRes2, or just want to test, there has been a long-standing report that the macro commands /sr cast or /smartres cast were not firing. I had Morgalm change the slash handler code. Before, after. The change is self:Resurrection() to SmartRes2:Resurrection()
[PHP]function SmartRes2:SlashHandler(input)
input = input:lower()
if input == "cast" then
self:Resurrection()
else
_G.InterfaceOptionsFrame_OpenToCategory(self.optionsFrame)
end
end[/PHP][PHP]function SmartRes2:SlashHandler(input)
input = input:lower()
if input == "cast" then
SmartRes2:Resurrection()
else
_G.InterfaceOptionsFrame_OpenToCategory(self.optionsFrame)
end
end[/PHP]Would someone please test to see if that gets the macro to work? For example:
[PHP]#showtooltip Resurrection
/sr cast[/PHP]Also, I suggested some tweaks that hopefully shows the bars for Mass Resurection, which it was not doing previously. Do the changes cause bars to show up, and populated appropriately?
Wrong.
Push (non-buggy) full release versions to Curse (or wherever) whenever you upgrade LibResComm and/or otherwise and there will not be any "version problems". It simply isn't as much of an issue as you make it out to be.
Average people update full release versions (as opposed to alphas/betas) of mods from Curse all the time with Curse Client. And they are "notified of upgrades" all the time through that as well.
There is really no need to add mommy-notifications in the mod. If the mod can function in some/all respects as its designed to without annoying dependencies on everyone having identical versions, updating (and updating reminders) should be left to individual users and out-of-game programs like Curse Client.
If the mod doesn't functional optimally when different people have different versions running, well too bad. Redesign it not to be so dependent on what other people have. But as mentioned, push (non-buggy) release versions to Curse and the presumed "version problem" simply won't be a problem.
Speaking of non-buggy: r169 bugs out on load and has other problems. With the since-fixed r62 of LibResComm loading, errors at logon:
And you may have embedded LibChatThrottle with your custom LibVersionCheck, but its not going to load for those that don't have it disembedded. There is no reference to it in the TOC, LibVersionCheck's lib.xml files or otherwise.
Speaking of LibChatThrottle, the fact that LibVersionCheck is aware of it and can use it means that It isn't like there is mass quantities of data being sent is not necessarily the case. It all adds up.
I still think you overestimate users' ability to check for updates. Sure, the Curse Client notifies of updates, as does checking Curse, but that requires users to run the CC or check the site. Most do not do that on a regular basis.
Whatever. I took the code out, and dropped LibVersionCheck.
Thank you for the bug report. I pushed an alpha right before going to work last night, so didn't have time to check it in game. Will check my local copy after sleep later today.
To Do: a user requested a way to split whispers from party or raid chat, in order to send both. Get updated translations for non enUS locales. Then, if there is nothing else, I'm done for a while, and get back to LibGuildBankComm-1.0 which I have sorely neglected.
**EDIT** All this assumes Torhal, who is an author on this project, doesn't exercise his penchant for total code rewrites! :D
I've been busy. :D
If both playerA and playerC have CTRA broadcasting addons, the above never happens. This issue only occurs with the "guessed resses" turned on.
I am expecting bugs on this, because I haven't been in a raid in two weeks, and don't think I'm getting into one before Cat.
Your numbers may be different, but you get the idea.
Found these lines in the file "layout-local.txt", not "local-cache.txt".
Also, I noticed a bug or two last night after the latest alpha r175 went up. On my end, I fixed the activeRes = nil error, the test bars will no longer error with SR2 disabled, and I moved the Test Bars button to the top of the Res Bars Options, where you would expect. All that will be in r176, after I get into game and do my best to test.
This change has the potential to cause positioning issues for casual mod users once the latest goes to release status. If in fact the layout-local.txt data conflicts with the new saved variable data doing the same thing.
Two options: revert and keep on using layout-local.txt for bar positioning data.
Or rename the SmartRes2_ResBars positioning name to something else in the saved variables (as well as in the mod on line 235 in r175's SmartRes.lua). So it looks for the new name instead of the old.
But then you are left with unused wasted space in layout-local.txt. What advantages have you found for storing that positioning in saved variables instead of that file?
But I can answer the part of "what's the difference of letting the cache handle it vs storing position in sv?"
Letting the cache handle it means that if a player logs in with the addon disabled
the layout cache entry is cleared and the next time it'll have reverted to default/initial placement.
Storing it in SV means that as long as the SV is not removed, disabling and re-enabling the addon does not reset its placement.
I have no problems with using a macro, and it works fine for me. Does anyone get different, undesirable results?
Also, I have a macro that looks like this.
#showtooltip Resurrection
/sr cast
I click on it and nothing happens. No target is selected and rez doesn't go off. I select a target and click and still nothing actually happens. Using the regular spell on my quick bar works fine. Am I doing something wrong? Or do you think using the word "cast" may actually interfere with other add-ons etc?
[PHP]function SmartRes2:SlashHandler(input)
input = input:lower()
if input == "cast" then
self:Resurrection()
else
_G.InterfaceOptionsFrame_OpenToCategory(self.optionsFrame)
end
end[/PHP][PHP]function SmartRes2:SlashHandler(input)
input = input:lower()
if input == "cast" then
SmartRes2:Resurrection()
else
_G.InterfaceOptionsFrame_OpenToCategory(self.optionsFrame)
end
end[/PHP]Would someone please test to see if that gets the macro to work? For example:
[PHP]#showtooltip Resurrection
/sr cast[/PHP]Also, I suggested some tweaks that hopefully shows the bars for Mass Resurection, which it was not doing previously. Do the changes cause bars to show up, and populated appropriately?
Thank you. :cool: