X-Perl UnitFrames
Patch 6.0.3 compatibility and future of X-Perl
Use latest alpha from WoWAce for using in Patch 6.0.3
http://www.wowace.com/addons/xperl/files/
May still has problems but for most cases it should be working(at least was tested on beta), if not, clearing old setting by killing(and backup) XPerlxxxxxxx.lua in the WTF directory of your WoW installlation and try again with fresh new default setting, thanks your patience.
If still someone want to help Zeksie for he earns his donates from X-Perl then that's fine for Zek and X-Perl, but seems like it's time to cut him out as no one want to help X-Perl anymore (as many of users already heard about the mess of this poor addon), I guess.
I don't know X-Perl will still be continue or not(it's highly possible it won't be, as the new maintainer Resike continued the developing and forked to Z-Perl, and he said he won't abandon his addons), I won't force everyone should must to use Resike's one at this point, as his Z-Perl isn't stable yet, and for some reasons, I don't think he want to port his fixes back to X-Perl as he knows about how Zek did about his addons and everyone who helped Zek to maintaining this poor addon...and, of course...X-Perl may broken again when next time Blizzard's patches released..... /sigh
(At this point, I won't force everyone who used X-Perl to go Z-Perl until it's more stable than now, feel free to use Z-Perl or other Unitframe addons if you want, and do NOT hold your breathe about X-Perl too much, too. I already lost my hope on X-Perl, at least I can trust Resike and Z-Perl now...)
Sincerely,
PlayerLin - Maintainer of X-Perl but not a proper skilled coder, just a locale translator and do some shitty PRs. :(
Bug Reporting
Please use the Ticketing System on WoWAce Here and avoid posting bugs using comments on Curse because they're difficult to track and they will probably get lost.
Use a good error catcher (like BugSack from files.wowace.com) and provide the full error text, and give as much information as possible to recreate the problem. Don't assume We know what you're talking about with some three word report.
Introduction
Perl, with Extra stuff. Much enchanced from Nymbia's Perl UnitFrames, and a complete replacement for Blizzard's default unit frames, including raid frames and raid tools, with little remaining of the original Nymbia code.
- Range Finder (combined with optional health check and/or debuff check) for all frames based on spell or item range test.
- HoT Monitor will highlight units clearly that have ''your own'' active Heal over Time spells. Regardless of how many other heal over time buffs are on the raid members, you can keep track of your own ones and when they expire.
- Debuff Highlighting in standard debuff colours on all friendly frames. Priority given to show debuffs that ''you'' can cure first.
- Raid Frames, buff icons, MT list units and some other portions or X-Perl are Created on demand. Saving a lot of time and memory at system startup. Defering the creation of many parts of X-Perl to when they are actually required. And of course, most often outside of raids they are never required and are never created.
- Raid Target icon support for Target, Target's Target, MT Targets.
- Raid Tooltip will show combat rezzers available (druids with Rebirth ready (or very soon available) and any normal rezzers out of combat) if you bring up tooltip of a dead person.
- In-combat indicators for all units.
- 3D Portraits for player, pet, target, focus, party. Optional. Of course this may degrade your framerate somewhat because you are displaying more 3D character models that without this option. But some like it pretty, and it does look cool.
- Red and Green combat flashes for frames when player, pet, target, party, partypets, raid take damage/heals. Useful indication of things happening.
- Added '''time left''' on party member/target buffs/debuffs when in a raid, these depend somewhat on CTRA sending appropriate information over the addon channel, although some of it can be determined at run time by X-Perl, when a player gets a buff for example, we know how long it should last, and therefor when it should expire.
- Totally new options window including all X-Perl options and access via minimap icon and the /xperl splash command.
- Configurable colours for borders and backgrounds. Including class coloured names, and configurable reaction colours.
Much care has been taken with code size, memory load, memory usage per cycle and so on. LuaProfiler/OnEvent mods used extensively and regularly to ensure that X-Perl does not do more work than is absolutely necessary.
Assists View
Will show anyone from raid assising you with your target, and can also show healers or all plus known enemies targetting you.
Tooltips for the same also available (on player and target frames) if you prefer to not use the main window.
MT Targets
Replaces CTRA MT Targets window, and doubles as a replacement for the Perl RaidFrames warrior targets.
Indicator shows which target you are on.
Frames will be coloured to show if tanks have duplicate targets.
Casting Monitor
(WORK IN PROGRESS)
Shows selected classes (defaults to healer classes) in a list (much like the MT List), but with some differences.
Shows mana bars and cast bars on left. Their targets on right. Health bar as normal, but a secondary small red bar on targets which shows the maximum single hit this unit has received since entering combat. The secondary bar will extend downwards from their current HP level down to as far as zero.
A green name on the targets indicates this is the same target that you have. You can click on casters or their targets as expected.
For druids, right clicking on a caster will cast Innervate on them.
For shamans, right clicking on a caster will cast Mana Tide Totem. Check the * indicator to see if they're in your group.
All bars can be re-sized in X-Perl main options (Monitor section).
Totals can be toggled (from the 'T' minibutton at top of frame) which gives overview of raid mana status.
Raid Admin
(WORK IN PROGRESS)
Save/Load raid roster setups Only does direct save and load for the moment, but more to come (templates and such).
Item Check
Replacement for /raitem /radur /raresist /rareg. Use the old commands before, or drop items in the left item list.
Query button will perform /raitem on all ticked items (query always includes dur and resists) and you can then view and review all the results whenever, without having to re-query each item.
Includes everyone in raid, so you don't have to work out who doesn't have items, it'll list them with 0 instead of no entry.
Active Scanner to check raid member's equipment for the item selected. So you can be sure that people actually have the item worn (Onyxia Cloak for example), without having to go round single target inspecting everyone who 'forgot' to install CTRA for the 50th raid in a row.
Grim Reaper
Removed from X-Perl, but continues as it's own standalone Ace mod.
[http://www.wowace.com/projects/grim-reaper/]
More Buffing Features
Can be found in my new universal buffing mod, ZOMGBuffs
Having the same problem with special bar. Turn it off, but it stays up..
Today I updated to the newest version 3.5.0 and the combo points that show on my target (not the little dots, but the name bar of the target that shows CP's) don't update a lot of the time, making it very hard for my little rogue to use finishers at the correct time, since a false amount of CP's are shown. Not all the time, but say 30% of the time. "The little dot"-combo point panel seems to work fine, but I've grown used to the big one.
It's as if there's a delay to the CP updates, and sometimes there are no updates at all (like when I get a proc from a talent , on a finisher, to grant me 1 CP).
i have x-perl downloaded and it says its in my addons on my character screen, but when i enter into a character it doesnt show up on my interface pages. the slidebar has the icon for it but it doesnt work. would really like this to be fixed, because there are things i need to move when in raid.
i can not get it to go away i updated and it is now stuck on my screen! i have disabled the special bar but its still there how do i make it go away again?
never mind i got an older xperl DL and it works fine now
I don't know why I still want Zek's Holy Power Bar, instead the Bilzzard one for some reasons. But whatever, it looks like the 4/5th one with Zek's needed some works on it.
Like, make portrait frame have more width value or something like that to fits extra ones, but...
Yeah, I'm still have enough "compatibility" and fine with Blizzard one but...whatever, just suggested it and I don't have time to do it myself...just feel I'm silly.
(Also, I guess the rune bar option in X-Perl option UI needed some works to make it still "disable-able" with non-DK bars...unless I missed something? I checked that with 3.5.0 release(r666/r667......!?), it's never works with non-DK, their special bar still appears when I try uncheck the option...only DK only works. It's minor but thinking maybe some users want use other mods have supported Paladin/Warlock/Durid special bar, so it should can be disabled with a option.)
Pointless bullshit from silly me: For many examples from a lot of open source programs, I knows a thing, shitty but true... "Forked projects have big chance to failed and ruined whole that program community/userbase whatever the reasons to fork.", yeah...WoW addons are not such thing like those programs but, it always a bad sign, even it has possibility or selectively if there are many forked projects based on a project...that's just my feel, it doesn't matter anything at all.
Ok so you're whining at each other and reporting each others posts, it's a bit immature frankly.
I suggest you both have some coffee, relax, and focus on working together to improve the addon. The whole point you're spending time on it is to improve it, right?
Being able to collaborate on a project with others is a sign of a good coder. Liking each other isn't a requirement.
he has his own branch, Player, and it even packages. Users can choose to use his branch or mainline if they want. there is even a 3rd perl rewrite from scratch going on over here from those who like xperl but prefer a clean slate and less bloat http://www.wowace.com/addons/perl-lite/
Everyone has different idea's for perl/xperl and are pursuing their ideas individually, that's fine. I thought xperl would just die in MoP and instead it's seeing enough interest to continue with ability to even choose a preference. Whle i don't always understand zek's code, it was usually done for a specific reason and sweeping changes aren't usually nessessary at all to existing fine code unless those apis radically changed (ie, for example, since xperl was writen, blizz introduced the _FREQUENT methods and steered unit frames away from onupdate calls, however, zeks code wasn't bad for using on update, in BC, everything did back then.) It's just a sign of the addons age. Code that's not out of date is usually still pretty solid like Tharai says. it's just the depricated methods that need redoing. The game has evolved a lot and xperl has fallen quite behind.
i was herbing on my lv 60 rogue twink and i got abit rested as my exp is locked it wont ever update the unitframe.. but when herbing or mining the exp that should be gained does go off the rested bonus and sooner or later rested will fade and the character will feel normal again. but the unitframe wont update this and still pretend that the player is rested. had this on my pala aswell but wasnt sure of it as i had 150%lvl rested (took some time to get it done) this rogue does verify this effect tho.
hope it will be fixed someday :)
To be honest, you two guys both assuming and attacking each other because the other one don't like one's code style or doing something.
Sontix, you can suggest something but you cannot forcing someone to accept your shit.
If Tharai don't want to give your fixes a try, and that's it...even you acting like this...no, it doesn't works.
Try to do something better, like...make a new forked project of X-Perl with your modified X-Perl shit, and you have full control with it.
.......
(OK, it may not a good idea......I just acting like an asshole for no reasons... /facepalm)
"you were clearly attacking me " said the person that treated me like an idiot and feels entitled to bash my work after having been logged into the beta for 15 minutes and without having tried the addon.
seems legit
I haven't even touched druids on the ptr/beta. Go try any other class and let me know how it works; probably pretty good.
I deleted your other post cause you were clearly attacking me based on the assumption that those functions were meant to remain uncommented.
My main focus is ensuring stability and performance in live. I played around for about 15 minutes with my second account trying to get any issue to arise relating to the afk flag, but I could never. The only "issue" I could see was that target of target and tot+, don't display afk status, but it has been this way since BC so I am pretty sure this is intended.
What the hell are you talking about i've just moved the health / power events to XPerl.lua
It's strange that my comment is deleted and you magically "redisable onupdate that were enabled during testing." you'e forgot to "re enable the unitID check for focus and pet target that were disabled during testing" ...
How can you say that the way I've rewritten target and party modules is heavier than what you actually have ? Do you try to sometimes printout what a function is doing or you just suppose that everything is fine? (like the target onevent "exception")
Have you tried to actually login in the beta and try the addon ?
Have you tried your addon on other classes like druids ? it throws a shitload of errors because of the druid mana bar.
Try to login in the ptr or beta and test your code before telling to other people that they can't modify an addon, because actually, what you did is not working (while i'm playing fine with what i did)
By my pala i have x-perl and since the updates the Holy Power display from the standart will not turn on with x-perl this is form me a big bug pls fix this big bug
The quality of your comments is about the same as the quality of your commits. Large and annoying. I've looked at your mop tree, and I can see is sweeping changes that yield little or no benefit. A lot of the code I looked at, looked like it would produce a bigger performance hit then what we are already using.
First off, that never ever gets called for target of target. ONLY target of target of target, which only updates its health/mana etc, VIA that update call, and that ONLY happens when its health has changed, or the unit has changed.
Seriously, look at the code, who cares if has to be redrawn, theres edge cases that are important to be taken care of where the units health are the same and they are different id'd ie in raids.
"better"? explanation above
You should give http://www.wowace.com/addons/xperl/repositories/sontixmop/files/51-r656/ a shot in mop beta...
You have to use the onUpdate for targettarget, because if you register
events = {"UNIT_HEALTH_FREQUENT","UNIT_POWER","UNIT_AURA"}
if the target life does not change value (attack a mob and stand still without attacking it) the game will fire the event UNIT_UPDATE_HEALTH_FREQUENT with source unit = player
and line 344
will fail
----------------In my opinion checking if currhealth or maxhealth is dirrent is better than checking for the unitGUID because if if i alt-tab in a room with 100 targets all with 1/1 hp, using unitGUID makes the addon refresh the healthbar, while cheking for the changed value does not.
Why would you redraw something that is already drawn with the same values ?
----------------You will see a bugged greyed out afk bar if you target something that is afk and it decide to remove the afk tag without changing his life (not triggering unit_health_frequent)
@mysticalos
Actually, I needed them all in my play time. Yeah, it's a lot.
If I don't needed something then I'll disable them, but still a lot of them I needed... :\