Execution: Custom Alert Mod (GUI now available)

All things /script related

Moderators: Fridmarr, Worldie, Aergis, _Chloe

Execution: Custom Alert Mod (GUI now available)

Postby moduspwnens » Thu Jul 16, 2009 1:40 am

This project is now officially available for testing in beta form throughout its development. Additional information is available later in the thread.

==============================================================================

So let me throw out this idea for an addon, and you guys can let me know what you think.

Essentially it would be similar to ThatJustHappened... with the powers of a boss mod and the addition of a few things neither currently do. The target would be to meet all of the standards below:

    1. User-defined announcement or warning rules that can read all variables of the combat log, as well check and do all the things that DBM does. One of the determining factors of success would be that I think I should be able to give you a list of rules (much like I do for TJH) that cover everything DBM does in Ulduar.

    2. Easy import and export of rules. Currently, though, TJH rules are mildly difficult to interpret by humans, but not too bad. With the additional variables I'm thinking of, though, that quality would probably be lost. It's not a major problem, though. The largest benefit is still there: Since these are user-defined, likely to be often strategy-specific announcements and warnings, this allows anyone who's got a good set of rules for a Freya+3 strategy to post them and help my raid to learn how it works.

    3. Ability to share rules easily in-game, especially with other raid or guild members. This is a really big deal, even if it doesn't seem like it. Let me explain.

      Consider the following practical example: Let's say I lead my 25 man raid and had everyone (who currently has DBM) get this new addon instead. I check up on Maintankadin and import the entire Ulduar DBM set, so for me, it's like I have DBM installed anyway. I can share these rules, though, so then let's say I do. Now my whole raid has the same alerts and warnings as they did with DBM. The cool part is next, though. Unlike popular boss mods, all of my methods are completely independent of the arguments. That means I don't have to transfer addon files specific to each encounter... just basically a set of TJH rules.
      But it doesn't end there. Now let's say my raid is having some trouble with XT-002's Hard mode. With an addon like this, I could add the following rules (in plain English):

        - 5 seconds before each Tantrum (it's on a fairly rigid timer), play a warning sound and message (probably just for healers) that alerts them that the tantrum is incoming.
        - When the heart is exposed, pester Shamans to Bloodlust if it's not up already.
        - When the heart is killed and XT resumes normal melee, alert DPSers that the next DPS targets are the Pummelers.
        - Mark the Pummelers with raid icons in the standard kill order as they are discovered (through the combat log or targeting).
        - If anyone is within 10 (or 15?) yards of a Bomb Bot, play a warning sound, display a message, and color screen borders red for him until he gets away.
        - Play a prompting sound for Deconstuctor's primary aggro target (the tank) when a Life Spark is dropped.
        - Play a warning sound for anyone who gets Light Bomb, show a message explaining where to go (for us, it'd be XT's left foot), and color screen borders red for him until he's not damaging any other raid members.
        - Play a warning sound for anyone who gets Gravity Bomb, show a message explaining where to go, and color screen borders red for him until he's safely away from all raid members.
      This is just a possible example, but do you see the power potential? This is stuff that normally you'd have to watch for and yell out on Vent! Instead, you could effectively create an in-game guide that walks each raid member through his roles to complete the encounter exactly according to strategy. They're also being prodded along in typical DBM style to avoid "tunnel vision."

    4. A GUI that simplifies the whole process enough that someone with no knowledge of how the combat log works can implement their announcements / warnings. This may be a little overambitious, but we'll see if doing a good GUI is as tough as it appears to be.

So, that's the idea. I'd like to get some feedback on it, though.
    More experienced programmers: Is anything I'm proposing impossible or significantly more difficult than I think it will be?

    Everyone: Any thoughts? Like the idea? Is there anything you'd like to see in a boss mod that isn't already done? Can you see yourself making use of something like this? What DBM-style warnings might you implement for your raid?
Last edited by moduspwnens on Thu Oct 15, 2009 10:52 am, edited 5 times in total.
I rule.
moduspwnens
Moderator
 
Posts: 3382
Joined: Tue Nov 06, 2007 12:28 pm
Location: Shattered Hand

Re: New Personal Project? Addon Idea

Postby _Chloe » Thu Jul 16, 2009 4:34 am

Easily doable, yet I'm stretched for time with Tankadin alone. Rules could be simplified using a 3rd or 4th gen style language system:
"rule add timer combat 'Tantrum Warning' in 30 alert sound 'bigassalert.wav' "
"rule add timer combat 'Tantrum Warning(Text)' in 30 alert text 'Tantrum in 5 seconds!' "

These could be parsed into something like TJH and execute it. These can be sent in-game between addons with the Addon channel and broadcast through the raid. They can also be displayed in a textbox so that they can be copied and pasted. Bars are easy enough to make. The GUI is what will make or break the mod, but if enough thought is put into it should be fine. The only thing that will be difficult is making a guide of all the functions etc. Hell people already don't know a ton about PP for example and it's cake. Imagine this one.
User avatar
_Chloe
Moderator
 
Posts: 831
Joined: Fri Dec 07, 2007 6:36 pm
Location: Santa Monica, CA

Re: New Personal Project? Addon Idea

Postby moduspwnens » Thu Jul 16, 2009 6:38 am

_Chloe wrote:Easily doable, yet I'm stretched for time with Tankadin alone. Rules could be simplified using a 3rd or 4th gen style language system:
"rule add timer combat 'Tantrum Warning' in 30 alert sound 'bigassalert.wav' "
"rule add timer combat 'Tantrum Warning(Text)' in 30 alert text 'Tantrum in 5 seconds!' "

These could be parsed into something like TJH and execute it. These can be sent in-game between addons with the Addon channel and broadcast through the raid. They can also be displayed in a textbox so that they can be copied and pasted. Bars are easy enough to make. The GUI is what will make or break the mod, but if enough thought is put into it should be fine. The only thing that will be difficult is making a guide of all the functions etc. Hell people already don't know a ton about PP for example and it's cake. Imagine this one.

Well I'm sure I'll be PMing you (and probably a few other regulars here) with any road blocks, but I've found that basically everything I want to do has already been done in different forms by TJH/DBM or others, so hopefully it shouldn't be too tough to figure out. That along with what seems to be a fairly simple debugging process (output to chat frame: "Test conditional hit" or "Test conditional missed" does pretty well) lead me to believe it's worth giving a shot. Plus if I can actually pull this off, I could probably list Lua on a resume. /shrug.

Another very helpful point is that DBM's licenses happen to be very permissive.
-- You are free:
-- * to Share ?to copy, distribute, display, and perform the work
-- * to Remix ?to make derivative works
-- Under the following conditions:
-- * Attribution. You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work).
-- * Noncommercial. You may not use this work for commercial purposes.
-- * Share Alike. If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.

So if I'm reading this correctly, that means I can use any part of their code I want as long as I show clearly that this part is theirs and share mine the same way. I can deal with that. That effectively knocks out some of the earlier stuff I worried about (like programming cooldown bars and boss health bars), which was one of my bigger hurdles.
I rule.
moduspwnens
Moderator
 
Posts: 3382
Joined: Tue Nov 06, 2007 12:28 pm
Location: Shattered Hand

Re: New Personal Project? Addon Idea

Postby moduspwnens » Thu Jul 16, 2009 7:20 pm

I have another possible feature to look into: How about a GTA Vice City-style arrow pointer? Cartographer already does it for quests. How about for constrictors on Yogg? Hm. I think that could be useful in other encounters, too. I'll look into it.
I rule.
moduspwnens
Moderator
 
Posts: 3382
Joined: Tue Nov 06, 2007 12:28 pm
Location: Shattered Hand

Re: New Personal Project? Addon Idea

Postby _Chloe » Thu Jul 16, 2009 11:22 pm

moduspwnens wrote:I have another possible feature to look into: How about a GTA Vice City-style arrow pointer? Cartographer already does it for quests. How about for constrictors on Yogg? Hm. I think that could be useful in other encounters, too. I'll look into it.


Specifically denied by Blizzard. You cannot get your referece direction to an enemy unit. This could lead to botting. There was a blue post on this same issue when 3.1 came out the the api call. Cartographer does it because it's based on coordinates.
User avatar
_Chloe
Moderator
 
Posts: 831
Joined: Fri Dec 07, 2007 6:36 pm
Location: Santa Monica, CA

Re: New Personal Project? Addon Idea

Postby _Chloe » Thu Jul 16, 2009 11:25 pm

moduspwnens wrote: but I've found that basically everything I want to do has already been done in different forms by TJH/DBM or others, so hopefully it shouldn't be too tough to figure out.


Yeah... that's what I thought too, lol. gl and god speed.
User avatar
_Chloe
Moderator
 
Posts: 831
Joined: Fri Dec 07, 2007 6:36 pm
Location: Santa Monica, CA

Re: New Personal Project? Addon Idea

Postby moduspwnens » Thu Jul 16, 2009 11:30 pm

_Chloe wrote:
moduspwnens wrote:I have another possible feature to look into: How about a GTA Vice City-style arrow pointer? Cartographer already does it for quests. How about for constrictors on Yogg? Hm. I think that could be useful in other encounters, too. I'll look into it.


Specifically denied by Blizzard. You cannot get your referece direction to an enemy unit. This could lead to botting. There was a blue post on this same issue when 3.1 came out the the api call. Cartographer does it because it's based on coordinates.


There may be a misunderstanding. I assumed there's no way to point to enemy units directly, but in the case of Yogg's constrictors, they're always gripping a player. Since there are mods that can easily get your coordinates, shouldn't it be possible to point an arrow to the player in need of help? Or am I missing something?
I rule.
moduspwnens
Moderator
 
Posts: 3382
Joined: Tue Nov 06, 2007 12:28 pm
Location: Shattered Hand

Re: New Personal Project? Addon Idea

Postby Aubade » Thu Jul 16, 2009 11:40 pm

Hmm, I think this would do wonders for a lot of people's raids, and I'm sad I cannot help you, as I have NO EFFIN CLUE how to script anything. But Good luck!
Image
- Awbade Level 85 Human Paladin - <Tsunami> Frostmourne - Retired.
Deliriously wrote:I prefer the, "Lonely Hand Approach" (trademark pending)
User avatar
Aubade
Moderator
 
Posts: 4030
Joined: Sun Jan 18, 2009 12:51 am
Location: Tacoma, WA

Re: New Personal Project? Addon Idea

Postby _Chloe » Fri Jul 17, 2009 2:33 am

moduspwnens wrote:
_Chloe wrote:
moduspwnens wrote:I have another possible feature to look into: How about a GTA Vice City-style arrow pointer? Cartographer already does it for quests. How about for constrictors on Yogg? Hm. I think that could be useful in other encounters, too. I'll look into it.


Specifically denied by Blizzard. You cannot get your referece direction to an enemy unit. This could lead to botting. There was a blue post on this same issue when 3.1 came out the the api call. Cartographer does it because it's based on coordinates.


There may be a misunderstanding. I assumed there's no way to point to enemy units directly, but in the case of Yogg's constrictors, they're always gripping a player. Since there are mods that can easily get your coordinates, shouldn't it be possible to point an arrow to the player in need of help? Or am I missing something?


Yes. Look at a coordinate mod in an instance. What does it read? 0,0. That function returns nil when inside an instance.
User avatar
_Chloe
Moderator
 
Posts: 831
Joined: Fri Dec 07, 2007 6:36 pm
Location: Santa Monica, CA

Re: New Personal Project? Addon Idea

Postby _Chloe » Fri Jul 17, 2009 2:34 am

Aubade wrote:Hmm, I think this would do wonders for a lot of people's raids, and I'm sad I cannot help you, as I have NO EFFIN CLUE how to script anything. But Good luck!


No but you can beta test!
User avatar
_Chloe
Moderator
 
Posts: 831
Joined: Fri Dec 07, 2007 6:36 pm
Location: Santa Monica, CA

Re: New Personal Project? Addon Idea

Postby Aubade » Fri Jul 17, 2009 2:42 am

_Chloe wrote:
Aubade wrote:Hmm, I think this would do wonders for a lot of people's raids, and I'm sad I cannot help you, as I have NO EFFIN CLUE how to script anything. But Good luck!


No but you can beta test!


Hmm, that might be a problem, y'see.

<SOULJA BOY TELL EM> Isn't currently raiding any content, since i told <Hardmode> to Eff off.

So i could beta-test some BG's, or if it's got an AH module i could beta-test the HELL outta it, but raiding, not so much, hopefully one of my apps get accepted, then i will. Gladly =]
Image
- Awbade Level 85 Human Paladin - <Tsunami> Frostmourne - Retired.
Deliriously wrote:I prefer the, "Lonely Hand Approach" (trademark pending)
User avatar
Aubade
Moderator
 
Posts: 4030
Joined: Sun Jan 18, 2009 12:51 am
Location: Tacoma, WA

Re: New Personal Project? Addon Idea

Postby fafhrd » Fri Jul 17, 2009 7:35 am

_Chloe wrote:
moduspwnens wrote:
There may be a misunderstanding. I assumed there's no way to point to enemy units directly, but in the case of Yogg's constrictors, they're always gripping a player. Since there are mods that can easily get your coordinates, shouldn't it be possible to point an arrow to the player in need of help? Or am I missing something?


Yes. Look at a coordinate mod in an instance. What does it read? 0,0. That function returns nil when inside an instance.



You *can* currently work out where a player in your raid is even inside instances, but it requires you target him first. I'm unsure if this is via a coordinate readout or triangulation of interact distances from multiple players, but I suspect the former since triangulation shouldn't have a targetting requirement (maybe that requirement is just a display limitation of the mod, dunno) - see http://www.wowace.com/addons/tomtomtargetarrow/

As for modus' mod idea, RDX could do all those things 3 years ago, and probably still can. It has a fair bit of overhead though (since you'd ideally replace dbm/grid/unitframes/omen/everything else with rdx), and while most things can be done via the gui and transmitted to people in your raid, the gui itself is made for a programmer more than the average WoW player.
ImageImage
1/1 Lore pre-nerf.
User avatar
fafhrd
 
Posts: 3156
Joined: Fri Aug 31, 2007 2:31 pm

Re: New Personal Project? Addon Idea

Postby moduspwnens » Fri Jul 17, 2009 10:08 am

fafhrd wrote:You *can* currently work out where a player in your raid is even inside instances, but it requires you target him first. I'm unsure if this is via a coordinate readout or triangulation of interact distances from multiple players, but I suspect the former since triangulation shouldn't have a targetting requirement (maybe that requirement is just a display limitation of the mod, dunno) - see http://www.wowace.com/addons/tomtomtargetarrow/


I just pulled out the code for that one, and it looks like the targeting requirement is enforced by the mod (good news for me).
Here's what it's calling to get coordinates, though.
Code: Select all
tc,tz,tx,ty = Astrolabe:GetUnitPosition(target, true)

It uses the same function to get the position of the player to determine direction and distance. Astrolabe is defined at the top:
Code: Select all
local Astrolabe = DongleStub("Astrolabe-0.4")

Astrolabe is a library packaged with TomTom. The code for that function is here:

Code: Select all
function Astrolabe:GetUnitPosition( unit, noMapChange )
   local x, y = GetPlayerMapPosition(unit);
   if ( x <= 0 and y <= 0 ) then
      if ( noMapChange ) then
         -- no valid position on the current map, and we aren't allowed
         -- to change map zoom, so return
         return;
      end
      local lastCont, lastZone = GetCurrentMapContinent(), GetCurrentMapZone();
      SetMapToCurrentZone();
      x, y = GetPlayerMapPosition(unit);
      if ( x <= 0 and y <= 0 ) then
         SetMapZoom(GetCurrentMapContinent());
         x, y = GetPlayerMapPosition(unit);
         if ( x <= 0 and y <= 0 ) then
            -- we are in an instance or otherwise off the continent map
            return;
         end
      end
      local C, Z = GetCurrentMapContinent(), GetCurrentMapZone();
      if ( C ~= lastCont or Z ~= lastZone ) then
         SetMapZoom(lastCont, lastZone); -- set map zoom back to what it was before
      end
      return C, Z, x, y;
   end
   return GetCurrentMapContinent(), GetCurrentMapZone(), x, y;
end

That commented line in the middle leads me to believe that it won't work in instances, but aren't battlegrounds instances? The addon even lists proportions (coordinates to distance) for all battlegrounds AND Azjol-Nerub and Ulduar. Hmm.

Actually, via WoWWiki:
    The player is inside an instance: the game will never return coordinates inside an instance. (CHANGED AS OF 3.0.1 - coordinates are returned within instances)
Looks like it's potentially possible then?

As for modus' mod idea, RDX could do all those things 3 years ago, and probably still can. It has a fair bit of overhead though (since you'd ideally replace dbm/grid/unitframes/omen/everything else with rdx), and while most things can be done via the gui and transmitted to people in your raid, the gui itself is made for a programmer more than the average WoW player.

Yeah. I did read up on this addon and it appears to me to kind of defeat its own purpose (except addon consolidation). I'm not a master of Lua, but it sure doesn't look like it's that tough of a language. At least, not tough enough that something like RDX's features would have much practical value. Here are the things the developer claims it can do:

- singleframes
- raidframes
- artframes
- action bars, rune bar
- bossmods
- tools, decursive, thread, dpsmeters, totems, prayer of mending watch, warrior shout etc

That's just way too much customizable stuff. I certainly plan for this addon to be much more reasonable and geared toward easier sharing of, well, "settings." I want it to be essentially as simple as TJH in terms of sharing and getting new "rules."

Even if RDX completely covered everything I wanted to, though, I'd still probably try to implement this. Being able to do something is rarely good enough to become widely useful. It's really the convenience in doing it that makes, well, virtually any new technology become popular. Heck, look at the iPhone. My old Treo 650 (well, with a few accessories) can do just about everything it can, and I had it for 2 1/2 years. Why wasn't it nearly as popular though? It wasn't as convenient.

Look at friggin GoToMyPC! Netmeeting has been on every PC since, what, Windows 95? And proxies have been around since probably the beginning of time. So what does some genius somewhere do? He develops software to do what you could have been doing for probably a decade, only easily. Bam. Millionaire. It's probably got some other add-on features now, but you get my point.
I rule.
moduspwnens
Moderator
 
Posts: 3382
Joined: Tue Nov 06, 2007 12:28 pm
Location: Shattered Hand

Re: New Personal Project? Addon Idea

Postby moduspwnens » Fri Jul 17, 2009 12:02 pm

I have something to shoot for (somewhat) when doing the GUI, too. If you have Outlook, it has its own "rules" and "filters" system for mail. I certainly don't consider Microsoft to be some bastion of great design, nor is this a feature the vast majority of users probably use anyway, but it at least provides a way for humans to do with email what I'm trying to get humans to be able to do with combat and chat log events. In fact, it's basically the only thing that I think limits me from getting into what RDX appears to be doing.

Here are some screenshots of me walking through creating a rule for those who don't have Outlook:

Image
Sorry they're kinda bad, I'm at my work PC using Paint to save JPEGs. I don't use Outlook on my Mac anyway.

This is the window where you can view all the rules you've made.

Image

This kinda gives you a set of halfway-started rules, which is less intimidating than listing all possible filters. You can see at the bottom how it says in plain English what it's going to do and even has an example.

Image

This is what you see if you choose to start with a completely blank rule. I didn't show it, but I chose to apply this "when a message arrives" rather than "after a message is sent." For this addon, I don't think I'd have a similar option for events... at least not as one of the first criteria. You can see that it would probably be somewhat intimidating to a new user, though, which is probably why they started out with a few practical examples you could choose from.

Image

You just check the boxes, then you click the underlined words at the bottom where it says "specified words" or "specified people" and add in your own, right into the human translation of the filter.

Image

This page shows you what you can do after the rule is triggered. You can't see that I checked "delete it" toward the top of the list, but you can see that I checked "play a sound" and chose tada.wav. This kind of page is probably something similar to what I'd have in the addon, except I'd have options like "announce this to chat" or (hopefully) "point an arrow" or "color screen border red", etc.

Image

This one shows exceptions, but I probably won't do it like Outlook does. My current line of thought is to use logical constructors, and that would probably make more sense when asking what the user wants to do.

For example, maybe it'd show something like:

Human translation:
When any enemy casts Mana Burn on anyone (except Warriors and Rogues), turn screen border red.

It just seems more cohesive for my situation to ask them when they're telling the mod who should be accepted as a target about also who they don't want to be a target. /shrug. I guess that's something I'll explore later.

Image

...and this is just basically the final options and human language summary. If I could implement something like this (with perhaps a few minor improvements), I think that would make it sufficiently convenient to create rules.
I rule.
moduspwnens
Moderator
 
Posts: 3382
Joined: Tue Nov 06, 2007 12:28 pm
Location: Shattered Hand

Re: New Personal Project? Addon Idea

Postby fafhrd » Fri Jul 17, 2009 12:35 pm

Well, the parts of RDX intented for common use are as simple to use as outlook - for instance if you just want to make a window that shows or counts all priests and druids within 10 yards of you in group 1 and 3 who have a silence debuff on them and no incoming heals, you do it by clicking through some templates then dragging and dropping a bunch of conditions into boxes for logical operations (AND, OR etc).

RDX wasn't really designed with the goal of replacing all the parts of your UI, it's just a mod that presents information. People figured out that you can represent most information displayed in things like unitframes, buff frames etc using the ui elements and info RDX had so people made replacements them everything with it. The parts of it that deal with that kind of stuff are the tech-heavy ones, and I guess over the years it's drifted more into supporting that than supporting its original purpose of collecting info about a boss you're on and letting you use it to make the best possible boss mod without writing code and reloading mods. With how quickly and freely people share boss strats and mods post-vanilla, effort going into RDX boss mods is somewhat unnecessary unless your guild is really on the absolute bleeding edge and wants to push it that much further (in which case I'm sure RDX for your whole raid is still a lot better than DBM/BigWigs).

If you keep your mod simpler and more focussed (imo as soon as you start trying for UI more complicated than some text messages and a timer bar or two things start losing focus quickly) it should be a fair bit easier to get your whole raid using it than using RDX (although the latter isn't particularly hard either, we just told people "run this or don't come").
ImageImage
1/1 Lore pre-nerf.
User avatar
fafhrd
 
Posts: 3156
Joined: Fri Aug 31, 2007 2:31 pm

Re: New Personal Project? Addon Idea

Postby moduspwnens » Fri Jul 17, 2009 12:52 pm

fafhrd wrote:If you keep your mod simpler and more focussed (imo as soon as you start trying for UI more complicated than some text messages and a timer bar or two things start losing focus quickly) it should be a fair bit easier to get your whole raid using it than using RDX (although the latter isn't particularly hard either, we just told people "run this or don't come").


That's what I'm hoping to do. I don't feel I have any reason to offer anything more to the UI than what boss mods already do (occasionally multiple health bars, timer bars, etc.) and hopefully the arrow feature. I also am considering including code to tag a rule as one designed to "replace" something done by DBM or BigWigs (and code to not do those while DBM or BigWigs is running) so that users could migrate slowly rather than potentially ruining a raid night due to issues or something and dropping it completely.
I rule.
moduspwnens
Moderator
 
Posts: 3382
Joined: Tue Nov 06, 2007 12:28 pm
Location: Shattered Hand

Re: New Personal Project? Addon Idea

Postby Sabindeus » Sun Jul 19, 2009 10:13 pm

Since I am more of a code guy than a layout guy, I find the hardest part of making addons work well is the whole UI part. I'd be happy to help with the whole combat log filtration and communication part if you get someone else to write the UI. And from your references to Outlook it seems to me you want a whole bunch of UI.
Image
Turn In, an NPC interaction automator - http://wow.curse.com/downloads/wow-addo ... rn-in.aspx
User avatar
Sabindeus
Moderator
 
Posts: 6040
Joined: Mon May 14, 2007 9:24 am

Re: New Personal Project? Addon Idea

Postby fafhrd » Mon Jul 20, 2009 7:17 am

tjh ui is fine, use that >.>
ImageImage
1/1 Lore pre-nerf.
User avatar
fafhrd
 
Posts: 3156
Joined: Fri Aug 31, 2007 2:31 pm

Re: New Personal Project? Addon Idea

Postby moduspwnens » Mon Jul 20, 2009 8:26 am

Sabindeus wrote:Since I am more of a code guy than a layout guy, I find the hardest part of making addons work well is the whole UI part. I'd be happy to help with the whole combat log filtration and communication part if you get someone else to write the UI. And from your references to Outlook it seems to me you want a whole bunch of UI.

I'm sure I'll be bugging people like you, Chloe, and fafhrd throughout this whole process, but I am pretty much the same way. I expect to have an in-game GUI-less command line interface with an out-of-game PHP interface on my website before I actually have something in-game that I like, simply for design purposes. I know how to do the GUI I want in PHP, so I figure it'll be simpler to do it that way and transpose rather than figure out addon GUIs and exactly what I want it to look like at the same time.

I think the hardest part of the GUI will be the rule viewer, though. That's probably the worst part about TJH... that the only way to view what rules you're using is by printing all of them in the same order you put them in. I'd like to have something more reasonable, but I'm not sure what. At least I have a model for the rule adding interface.

fafhrd wrote:tjh ui is fine, use that >.>


I'm looking for something that does a little more and is a little more user friendly than that. The gap between Joe Six-Pack who says, "I want an emote that says I drink a Red Bull when I pop Wings!" and that actually happening is a little too steep, imo. You really have to know how the combat log works to get that done.

Image

Here's a picture of the TJH UI from Curse's site. There are no clear explanations what a "rule" or "event" is. The user would have to actually click that dropdown and read those, and assume that they're intuitive (most simple ones are, but many aren't). Assuming the user has figured out what an "event" is, source and target should be self-explanatory. Well, somewhat. As listed on the TJH sticky, if I HoJ a mob and wanted to make a rule for that, I wouldn't use SPELL_AURA_APPLIED because that won't list me as the source. Why? I don't know, but that's something I had to find out myself. Whether it's because of the UI itself or the combat log's ambiguity, it wasn't in any way user-friendly.

The Spellname box isn't bad, but isn't applicable for all event types, like SWING_DAMAGE. Even if I choose SWING_DAMAGE, the spellname box isn't grayed out or disabled, and the mod even allows me to create a rule for something it could easily tell is invalid. It also creates a bit of confusion for events like SPELL_INTERRUPT and SPELL_DISPEL_FAIL. Chances are, nobody really cares what spell was used to interrupt something (like Kick!), or what spell failed to dispel something else (like Cleanse). That's what this box is for, though, and there isn't currently a way to filter by the "target" or "secondary" spell or even announce what it is (like Fusion Punch or Searing Flames).

The next box down is affiliation, which is moderately confusing as well. The options self, party, raid, friend, enemy, target, and focus are available. Target and focus are probably fine, but the rest might be a little confusing to your average user simply because there's already an Event Target field. I know that personally I'd always just list my character name as the event target and ignore the affiliation field while I was still learning because I didn't know what would happen if I also listed it as SELF affiliation, and it would occasionally announce in a way I had not intended. This is the other problem with this field, even if it's also a problem with the addon functionality, too. It doesn't differentiate between source and target affiliations, and doesn't tell you that. That's something you just have to figure out yourself. That means if I made a rule for SPELL_CAST_SUCCESS with name Hammer of Justice with affiliation SELF, it'd announce when I HoJ someone, but also when someone else HoJ's me. This puts a limit on what I can do while also being unclear to the user and certainly confusing new users, and potentially creating heavy unwanted spam (in some other situation) that would easily lead the user to drop the addon completely.

That brings up another point, though. With any addon that has spam potential, I believe it has an added requirement that it be more clear than normal addons when establishing what it does. It's much more likely to be dropped at the first sign of trouble, especially if that unintended spam happens in a raid setting before the usefulness of the addon has been accepted. My raid generally appreciates the rules I use, so they just chuckle when I make a mistake and write a rule that bombards the raid with spam until I can frantically turn it off. Not everyone will have this luxury, though.

Next is the output box, which probably should have a drop-down from a user-accessibility standpoint but doesn't to allow for custom input (player names for whispers). Most are fairly intuitive and the same as can be used from a standard /command (SAY, YELL, GUILD, RAID, PARTY, RAID_WARNING, RW) but some aren't (WARN, *TARGET, *SOURCE). I just learned recently that WARN even exists. This should almost definitely be a drop-down box with "pretty" translations rather than intimidating-looking CAPS with sometimes underscores or references to things that aren't well-known (WARN).

Display text isn't bad, but it doesn't tell you that it'll use a standard announcement if you don't put one in yourself. You'd also have to whip out the ReadMe if you wanted to know what variables you could use in your spam (*target, *source, *spell, etc.).

Spam delay is pretty self-explanatory, and I already mentioned the problem with viewing rules already added.

The TJH UI will be a fair place to start from, but I certainly hope to have something much better.
I rule.
moduspwnens
Moderator
 
Posts: 3382
Joined: Tue Nov 06, 2007 12:28 pm
Location: Shattered Hand

Re: New Personal Project? Addon Idea

Postby Dimitry » Mon Jul 20, 2009 9:37 am

I just glanced over everything, so I may have missed it if you said this, but... The ability to look through the combat log and just pick an event and say "Make a rule for this" would be nice. Just a skeleton of the rule with "text goes here" would be fine.

I don't do GUI very well either, especially in LUA. If I had any free time, I'd offer to help. :)
Image
Dimitry
 
Posts: 121
Joined: Tue Jun 17, 2008 8:40 am

Re: New Personal Project? Addon Idea

Postby moduspwnens » Mon Jul 20, 2009 10:20 am

Dimitry wrote:I just glanced over everything, so I may have missed it if you said this, but... The ability to look through the combat log and just pick an event and say "Make a rule for this" would be nice. Just a skeleton of the rule with "text goes here" would be fine.

I don't do GUI very well either, especially in LUA. If I had any free time, I'd offer to help. :)

That is a very interesting idea that I hadn't thought of. I think one of my addons currently adds an icon to the default combat log window in-game that just opens it into a selectable copy/paste window. I'd bet that's definitely doable and would help new users quite a bit. It's on the list, for sure.
I rule.
moduspwnens
Moderator
 
Posts: 3382
Joined: Tue Nov 06, 2007 12:28 pm
Location: Shattered Hand

Re: New Personal Project? Addon Idea

Postby Sabindeus » Mon Jul 20, 2009 10:30 am

moduspwnens wrote:
Dimitry wrote:I just glanced over everything, so I may have missed it if you said this, but... The ability to look through the combat log and just pick an event and say "Make a rule for this" would be nice. Just a skeleton of the rule with "text goes here" would be fine.

I don't do GUI very well either, especially in LUA. If I had any free time, I'd offer to help. :)

That is a very interesting idea that I hadn't thought of. I think one of my addons currently adds an icon to the default combat log window in-game that just opens it into a selectable copy/paste window. I'd bet that's definitely doable and would help new users quite a bit. It's on the list, for sure.


Tangentially, I have a quick and dirty addon that searches the combat log and prints it to the default chat frame....
http://sabin.nfshost.com/wowaddons/CombatLogSearch.zip
Image
Turn In, an NPC interaction automator - http://wow.curse.com/downloads/wow-addo ... rn-in.aspx
User avatar
Sabindeus
Moderator
 
Posts: 6040
Joined: Mon May 14, 2007 9:24 am

Re: New Personal Project? Addon Idea

Postby Mert » Mon Aug 03, 2009 8:33 am

I have very little knowledge in terms of programming or addon writing myself but I'll happily volunteer my guild to beta test it when you get to that stage - feel free to PM me here as you get closer to the time with the kind of information you'd need to get back from my guys etc. In the meantime, best of luck, sounds like it could be awesome :)
User avatar
Mert
 
Posts: 152
Joined: Tue Feb 24, 2009 8:38 pm

Re: New Personal Project? Addon Idea

Postby moduspwnens » Mon Aug 03, 2009 9:20 am

Mert wrote:I have very little knowledge in terms of programming or addon writing myself but I'll happily volunteer my guild to beta test it when you get to that stage - feel free to PM me here as you get closer to the time with the kind of information you'd need to get back from my guys etc. In the meantime, best of luck, sounds like it could be awesome :)


Thanks! I appreciate the offer, and I'll probably take you up on that once it gets to that stage.

I guess it's worth posting with a status update as far as how it's coming along. The excitement of having WoW, a new programming language, and this particular idea's possibilities has really got me hooked, and I've been working on this add-on in virtually all of my free time (and a lot of time at work, too, but shh! Don't tell!) since I made this original post. Right now, it can do the following:

    Register any event and any event's parameters as rules. I specifically tested with combat log events (obviously) and MINIMAP_PING. It lets you specify its arguments as filters if you want, or use them as variables to announce something. For example, I set up one that just filters for MINIMAP_PING and announces "*sourceName pinged the map at *x, *y." The add-on knows what events return what, so it knows how to format that.

    You can also register other parameters as filters that have nothing to do with the event. Some things I have implemented are: what stance you're in, what class you are, whether or not you're resting, what the player's name is (for use in a kind of "profiles"), whether or not you're in a raid, whether or not you're in a battleground, whether or not you're in an arena and much, much, more. What this means is that you can make a rule that only triggers if you're in an arena. Or only in HEROIC Ulduar, etc. This should cut down on spam and make rules more easily filterable, which should increase framerate and efficiency.

    Its algorithm is much, much better than TJH's. TJH compares each and every combat event (tons) to each and every rule you have (can be quite a few). This add-on will be able to filter out most easily, and although currently it checks event parameters first, I am changing it to check non-event parameters first soon. What this means is that it would greatly increase efficiency by assigning tags to rules that are obvious to you and will help with filtering (like, that rules for Yogg should only trigger if you're in Yogg's room, so ignore them outside Yogg's room).

    The idea was that chat alerts aren't all it should be able to do, though, and I've made progress toward that. It does chat things just like TJH (with a few "buffs"), but also currently does timer bars, the red screen border flashing (technically called LowHealthFrame), plays sounds, and takes screenshots. This is just a start, though. In the future I'll be adding things like starting and stopping video capture for the Mac client since that will be built in (should be awesome), raid target assignment, spell casting (if out of combat), "action button" assignment (mentioned in the other thread), and much, much more.

    All this is being done while keeping distinctly in mind that I want to be absolutely sure to keep as low of a memory footprint as possible and only load as much code as is necessary. That means that if you don't have a rule that uses bars, it will not load the bar timer code and save you 250K, and likewise with some of the other cool features (like hopefully "Crazy Taxi" arrows and such). I'm also still keeping in mind that I'm hoping for this add-on to be able to update itself based on someone else in your guild or raid updating to a later version, although I haven't made direct progress toward that goal yet.

I'm still quite excited about it and will be continuing work on it. Both Ulduars (10 and 25) are clear for my guild, so tonight will probably be completely dedicated to development.
I rule.
moduspwnens
Moderator
 
Posts: 3382
Joined: Tue Nov 06, 2007 12:28 pm
Location: Shattered Hand

Re: New Personal Project? Addon Idea

Postby moduspwnens » Mon Aug 03, 2009 9:26 am

Some recent ideas I've come up with include:

    Updating the frame that normally shows things like Algalon's timer, who has the flag, or how many waves are remaining in BM/VC to show encounter-specific counters, like how many of Freya's add waves are left or how many Saronite gases remain (for General).

    Tacking on a "buff check" to the ready check frame that tells you what buffs you're missing based on the group's make up and possibly who is missing your buffs. This is probably beyond the scope of this particular add-on, though.

Feel free to post your own idea. Basically anything that you'd like to happen on the UI when something else happens.
I rule.
moduspwnens
Moderator
 
Posts: 3382
Joined: Tue Nov 06, 2007 12:28 pm
Location: Shattered Hand

Next

Return to Add-ons, UI, and Macros

Who is online

Users browsing this forum: No registered users and 1 guest

Who is online

In total there is 1 user online :: 0 registered, 0 hidden and 1 guest (based on users active over the past 5 minutes)
Most users ever online was 380 on Tue Oct 14, 2008 6:28 pm

Users browsing this forum: No registered users and 1 guest