Go to Page... |
Updated: | 06-26-08 08:47 AM |
Created: | unknown |
Downloads: | 3,064 |
Favorites: | 11 |
MD5: |
Comment Options |
VagrantEsha |
View Public Profile |
Send a private message to VagrantEsha |
Find More Posts by VagrantEsha |
Add VagrantEsha to Your Buddy List |
Sojik |
View Public Profile |
Send a private message to Sojik |
Find More Posts by Sojik |
Add Sojik to Your Buddy List |
06-13-08, 01:12 PM | |
|
I actually only just found out about other non-combat pets not having any states firing for them this morning, i was most disappointed.
I investigated this and found that only the Worg Pup pet has a state fired for it, and I can see why. The thing is, the Worg Pup (unlike other pets) actually comes in many different kinds. When the cage is activated, there's a chance of five different worg types spawning, this is handled via some 'spell' code (Summon Worg Pup). Imagine having all of the Alliance cats in one Cat Carrier, it's sort of like that. The unique nature of the Worg Pup pet(s) allows for Spelling to actually trigger for them. It seems that only items that actually have some spell code tied into them actually send states, and it's a matter of trial and error to find out which (as is always the case with Blizz stuffs and the overall lack of documentation). What I can guarantee you though is that if you get a Worg Pup, you'll be able to use that Spelling too, at least. And the Worg Pup can be obtained at level 50~ even if you have some form of stealth (and it sounds like Mages do, invisibility?). It starts with Kibbler in the Burning Steppes and it'll take you to Blackrock Spire. In fact, here's a guide explaining the whole process, which pretty much makes the whole run pretty painless. The only time I died was when I had to activate the cage, because I had to unstealth for that, but by that time I'd completed the quest. I know this likely isn't what you wanted to hear, but I'll do some research to see if I can't figure out a way to get that functionality in Spelling for all pets, or perhaps even into a separate project. Regardless, I will investigate. I do have my theories about why most pets work silently though, it's probably so that it makes it easier for Blizzard to help to prevent automatic pet activation, which they get pretty snippy about (though I can't imagine why). As for invisibility, I'm happy to hear it. If you're using PLAYERISDEST though, my hopes are high. Mostly because it shouldn't fire unless you're the destination, and if you are using that and it's already succeeded, then that's already very promising. The only thing I can't really do now (and it's mildly annoying, but my hands are tied) is Hunter traps and Paladin Auras. Sure, Spelling can be setup for when a trap is laid or an aura is activated, but it can't be setup to say stuff when other players have auras, or when a mob activates the trap. (I'm not sure with auras, I am sure of this with traps because I tested it.) The reason for this is because of the way the CLEU works. There was a big topic on it at WoWAce that pretty much explained it. Apparently the code underneath the CLEU that handles auras/traps server side is pretty messy and it's not designed to keep track of certain things after they've left the player. It's not even designed to track spells (and similar) after they've left one entity. It's sort of like... Spell fired by Source > Spell is activated and doing its thing, discard Source > Spell has landed on a Destination, note Destination. For Hunters, this is... SPELL_CAST_START (has source) > SPELL_CREATE (trap now exists) > SPELL_AURA_APPLIED (has Destination) This behaviour carries over through all the events I've tested, and everything i've read supports this. So the only thing I can do is perform the horrible little cheat I did with applied, in that case (because it's a self--buff), I make sure that the destination is the player. If it were a spell that could be cast on other players, and you received the spell from another player, it would likely fubar. The only exception to this is debuffs. I've explained all this so that you guys know what I've been up to, I don't doubt that you'll be able to grasp this, so that's why I'm sharing it. It's also an explanation and an apology for what I can and what I can't do with Spelling. With Invisibility and spells of that ilk, I just got a lucky idea. For those wondering why SOURCE still exists, that's there for debuffs. For when a debuf is cast on a player, things are reversed. In fact, a success can be coupled with SOURCE to deal with a debuff (I think). But I digress, I've rambled too much on this already. I just hope the information was insightful! |
|
VagrantEsha |
View Public Profile |
Send a private message to VagrantEsha |
Find More Posts by VagrantEsha |
Add VagrantEsha to Your Buddy List |
06-13-08, 12:36 PM | |
|
Initial testing shows Invisibility working. I'll know everything is AOK on Sunday at raid when I'll be with other mages using it (making sure it truly only fires when player is destination).
Now, I have a question about one of your spellings: summonworgpup # id:15999 # start # say # 1 # I miss my little dog so much... Oh! There he is. Now, is that a non-combat pet? When I use one of my non-combat pets, debug doesn't show anything firing. Maybe it's not, though? Maybe it's your hunter pet? |
|
Sojik |
View Public Profile |
Send a private message to Sojik |
Find More Posts by Sojik |
Add Sojik to Your Buddy List |
06-13-08, 12:00 AM | |
|
Oh, applied does work, it just doesn't work when it isn't supposed to. Moreover, success has been... how can I put this? Empowered.
So, in your first test, use success for both parts. If the second part doesn't work, then use success for the first part, and applied for the second. Edit- Lfd, if applied/success doesn't work for you with the second part of Invisibility, try using applied but with PLAYERISDEST somewhere in the text. The thing is, source/applied are actually working correctly now, and that's fortunate and unfortunate in some ways. AURA_APPLIED doesn't supply a source, so only guesses can be made as to the source, this is why it was firing for other players. Considering that the handling of a source is now very stringent, removing the guesswork, it means that applied-based stuff won't fire due to the lack of a source. However... With the new PLAYERISDEST system, we can at least check to see whether the player him or herself is the destination. So I hope that the second part of Invisibility cites the player as the destination, because if it does then I've finally managed to sort out the last part of Spelling that was bugging me. Edit- I've put an example up on the wiki about how I'm hoping PLAYERISDEST will work. I've used invisibility as my basis. The idea is that the first part of invisibility uses success, we know that works. The second part uses applied, now normally applied wouldn't get through because it doesn't have a source, but defining PLAYERISDEST stops it looking for a source, and disregarding the source it instead checks to make sure that the player is the destination. Considering that it's a self-buff, that should work. The use of PLAYERISDEST is similar to SOURCE, except unlike SOURCE it doesn't require a source, and it doesn't add anything extra to the string.
Last edited by VagrantEsha : 06-13-08 at 02:36 AM.
|
|
VagrantEsha |
View Public Profile |
Send a private message to VagrantEsha |
Find More Posts by VagrantEsha |
Add VagrantEsha to Your Buddy List |
06-12-08, 08:08 PM | |
|
Hmm.. If applied no longer works, how do I do the second Invisibility since it doesn't fire a success?
|
|
Sojik |
View Public Profile |
Send a private message to Sojik |
Find More Posts by Sojik |
Add Sojik to Your Buddy List |
06-12-08, 04:50 PM | |
|
Okay, try invisibility with the new version!
I had a really great idea earlier on how I could completely redo the way Spelling handles source. Hell, the spelling_handler function (the main part of the mod) even looks quite different now, and I removed some redundant if work in the process, tying things together into bigger if trees, thus reducing the need to... well, if. I did a hell of a lot of testing with this one too, and the results were eminently pleasing. So I'll leave it to whomever wants to test it so they can see the fruits of my labour. I felt good about the last release, the one that almost had everything working except for a few quirks. I feel really good about this one. Edit- Oh, I've also added a wiki, it's linked from the states information section of the front page. If anyone would like to, you can add whichever of your Spellings that you like, there. The more the merrier, as it'll likely provide a buffer zone for new users of Spelling, who might otherwise find it too intimidating.
Last edited by VagrantEsha : 06-12-08 at 05:10 PM.
|
|
VagrantEsha |
View Public Profile |
Send a private message to VagrantEsha |
Find More Posts by VagrantEsha |
Add VagrantEsha to Your Buddy List |
06-12-08, 10:29 AM | |
|
Hm, due to the nature of Invisibility, I'd be half willing to bet that you could use success for the first, and then applied for the second, just as long as you don't use applied for the first, or both. My own experimentation seems to lend credence to that theory, I'm almost willing to bet money on it! Let me know if that actually works, and if it does I'll add it to the documentation.
|
|
VagrantEsha |
View Public Profile |
Send a private message to VagrantEsha |
Find More Posts by VagrantEsha |
Add VagrantEsha to Your Buddy List |
06-12-08, 09:04 AM | ||
|
Oh, and that sure was nice of you to put me in the credits text file! I'm glad I could help. This has become one of my favorite addons. EDIT: One down side to having to use success is the second Invisibility buff doesn't fire a success. Only an applied.
Last edited by Sojik : 06-12-08 at 10:12 AM.
|
|
|
Sojik |
View Public Profile |
Send a private message to Sojik |
Find More Posts by Sojik |
Add Sojik to Your Buddy List |
06-11-08, 11:42 PM | |
|
Yup, success really is the way to go for buffs.
My thanks to both you and Sjak for reporting back. I'm acutally gathering data and soon I'm going to add a 'Recommended States' section to the front page, listing which states would likely be best for which situation, and explaining what to do if one doesn't work. It seems Spelling is finally coming together. Let me know if it still fires for other players, but the current version really shouldn't anymore if the right state is used (I hope!). That said, thanks lfd, and thanks to everyone who tested. This mod was far too ambitious for me, I think, and without the help of everyone who tested I really couldn't have pulled it off. Everyone who tested and reported back, either with general info, debug logs, or whatever else, it was all invaluable. Edit- Okay, I've updated the front page and included a section on states. I think I've got it all right. If anything differs from anyone's personal experiences though, or if I've said something there which is simply wrong, let me know. I'm asking this because I feel that, quite frankly, those who've tested Spelling are just as much of an authority on the mod now as I am. Edit- Oh and I just spotted your edit, lfd. I've updated the Polymorph examples on the front page. I keep forgetting too that the name of that spell is Polymorph. <.< That's what happens when one's never played a Mage. Regardless, it now reads as polymorph # missed, which I believe is right for those examples?
Last edited by VagrantEsha : 06-12-08 at 12:50 AM.
|
|
VagrantEsha |
View Public Profile |
Send a private message to VagrantEsha |
Find More Posts by VagrantEsha |
Add VagrantEsha to Your Buddy List |
06-11-08, 07:26 PM | |
|
Ice Block just fired when another mage used it. I'm still using applied, though. I'm going to try switching it to something else (success maybe).
Edit: That fixed it. It's firing for Icy Veins still for other mages but I'm sure when I get a chance to switch that over, it'll fix that too. Edit2: That did it. Edit3: Invisibility too! I'm using success on all of my spellings now, aside from my polymorph one that is missed (fail would fire, I believe, when you use it out of range and whatnot, probably spamming it everytime you miss click the spell whereas missed only fires on resists and immunes).
Last edited by Sojik : 06-12-08 at 12:35 AM.
|
|
Sojik |
View Public Profile |
Send a private message to Sojik |
Find More Posts by Sojik |
Add Sojik to Your Buddy List |
06-11-08, 04:08 PM | |
|
- Wow, it works fine now! Thank you so much for the help!
I'm glad to hear it! It really is a bugger setting up Spelling, but it really is all about finding the right states. You get the right state, you've got it sorted. - Your addon also made me grind my way from 18 to 19 1/2 because of all the testing I was doing :P This made my day. I was war weary after too many Battleground runs (I'm really not a PvP person, I'm not good at it, but Gods damn it, I want my Frostwolf Howler!), and that's just brightened me up. I know it's not right to laugh at other people's suffering, but in this case, the suffering was beneficial to you, so I think it's okay. Still though, a level and a half... ye Gods. - I'm all out of wit and poisoned bread jokes. <3 Spelling <3 ! Poisoned bread jokes, eh? |
|
VagrantEsha |
View Public Profile |
Send a private message to VagrantEsha |
Find More Posts by VagrantEsha |
Add VagrantEsha to Your Buddy List |
06-11-08, 03:07 PM | |
|
Wow, it works fine now! Thank you so much for the help!
Your addon also made me grind my way from 18 to 19 1/2 because of all the testing I was doing :P I'm all out of wit and poisoned bread jokes. <3 Spelling <3 !
Last edited by Sjak : 06-11-08 at 03:53 PM.
|
|
Sjak |
View Public Profile |
Send a private message to Sjak |
Find More Posts by Sjak |
Add Sjak to Your Buddy List |
06-11-08, 02:28 PM | |
|
I hear you, Spelling really isn't for the faint of heart, and it takes even me, the addon dev, a bit of setting up sometimes.
The best advice I can give you is to try spell_damage instead of applied, because applied isn't ideal, applied follows some spells -- such as Entangling Roots -- but other spells have their own states. With debug I found that all the Mage spells I tried were followed by spell_damage. As for the rate, that actually sounds about right. 10 is very rare, I actually have my Mangle (Cat) set to 6 and I only see it now and again (which is a good thing, considering). It's not something I can do anything about really because I just use the lua math.random() function. All I could do is half the given player amounts and give an illusion, but that'd be cheating. I'd just say to set it to 1 in 3 or 1 in 5. 1 in 10 you'll hardly ever see, and I've never seen a 1 in 50 fire once (I have one in there for testing purposes). Edit- I'm sorry if the description on the front page doesn't match that. It's just that I'm learning these things as I test. It's really based on what the COMBAT_LOG_EVENT lets me do, and everything that Spelling does is based round the capabilities of that, including all the quirkiness and unexpected behaviour that come with it. Unfortunately, the CLEU is also the most resource efficient way of making this kind of mod (buff-scanners use so much CPU time by comparison), and that's why I went down this particular path. It's not ideal, not by a long shot. But it's really a matter of run-time efficiency at the expense of ease of use setting up.
Last edited by VagrantEsha : 06-11-08 at 02:35 PM.
|
|
VagrantEsha |
View Public Profile |
Send a private message to VagrantEsha |
Find More Posts by VagrantEsha |
Add VagrantEsha to Your Buddy List |
06-11-08, 01:38 PM | |
|
After ages trying to get this to work, I finally managed it with my buffs. Then I got Fireball to work. Try as I might, I can't get Frostbolt, Arcane Missiles or Fire Blast to work at all. Even on 1 in 1 chance of saying something, my character doesn't say or emote anything. I've tried as many of the events that relate to spells as I could find but none of them work. Is it something I'm doing wrong?
Here's a small sample from the /spelling list: [08:37]Spelling List: [testing] Frostbolt # applied # say # 1 # test [08:37]Spelling List: [fireball5] Fireball # applied # say # 10 # Die! Die! Die! [08:37]Spelling List: [frostbolt1] Frostbolt # applied # say # 10 # Die! Die! Die! Like I said, fireball works, frostbolt doesn't. I've also tried success etc.. and there was no change. Thanks for the help! EDIT: Okay, this is weird. Now at least one of the frostbolt things is working. They look like this: ["frostbolt3"] = "Frostbolt # applied # say # 10 # Freeze!", ["frostbolt4"] = "Frostbolt # applied # say # 10 # Freeze! *laughs*", ["frostbolt2"] = "Frostbolt # applied # say # 10 # Die!", ["frostbolt5"] = "Frostbolt # applied # say # 10 # Oh no, don't worry about running to me. I have plenty of time!", ["frostbolt1"] = "Frostbolt # applied # say # 10 # Die! Die! Die!", I thought that they didn't work because, with a chance of 1 in 10, I had cast more than 50 (no exaggeration - I counted) frostbolts with nothing happening. It could have been me being unlucky but it seems odd that with a 500% chance of it happening, nothing did. I'll test it further tomorrow (unless I've made a glaringly obvious mistake xD).
Last edited by Sjak : 06-11-08 at 01:59 PM.
|
|
Sjak |
View Public Profile |
Send a private message to Sjak |
Find More Posts by Sjak |
Add Sjak to Your Buddy List |