irclog2html for #wowi-lounge on 20060706

00:00.14ShadowedI believe they also said something like they'll make it so you want the 41 talent and not a 31 and a 21
00:00.20Endhah
00:00.30zespri_workCodayus, I'm not so sure. What Shadowed said sounds more likely
00:00.35CodayusYou'll be able to do a 31/30/0 build if you wanted...but...you're passing up so much...it won't be overpowered.
00:01.07Codayuszespri_work: <shrug>
00:02.58CodayusBliz has only talked about it in general terms, but AFAIK they haven't mentioned restrictions.  All they've said is they're adding two new tiers per tree, and people will get 10 addition talent points to play with...
00:06.40*** join/#wowi-lounge snurre (n=snurre@AVelizy-153-1-22-96.w83-199.abo.wanadoo.fr)
00:08.49Shadowd|Naxpretty sure they rsaid something about possibly restructing it a long time ago
00:12.50MentalPowercrud, neither Legorol nor Iriel are here
00:13.04*** join/#wowi-lounge Tem (n=tardmrr@ip70-177-40-169.br.br.cox.net)
00:13.05MentalPowerneeded to ask a question about Lua internals
00:14.29MiravlixWhat do you need MP?
00:15.29MentalPowerwell, I've been having reports of an error message "Constant table overflow", wanted to where it came from
00:15.59Mikk1Err. That sounds more WoW than Lua
00:16.09Mikk1My bad
00:16.10MentalPowerhttp://norganna.org/bb/index.php?showtopic=1875
00:16.11Mikk1It's in Lua
00:16.13MiravlixBlizzard messed with WoW lua saved data size
00:16.34MiravlixWe aren't sure yet in what way, but have lots of lost data reports
00:16.37MentalPowerfrom user posts I beleve theres a ~27MB limit
00:16.48MiravlixI have 100 MB
00:16.56MentalPoweron a single table?
00:17.08MiravlixOh, not sure about that.
00:17.13zespri_workMentalPower, yeah, I'm expiriencing this too
00:17.51MiravlixNaah not even close to that
00:18.04MiravlixJust 10 MB as the larges saved variables
00:18.10Miravlixlargest
00:18.25Mikk1Seems to be related to the number of variable names
00:18.30Mikk1google "constant table overflow" lua
00:18.45Miravlixpurl search constant table overflow
00:19.13MiravlixHmm, wrong syntax or purl can't do it
00:19.21*** join/#wowi-lounge Tem_ (i=tardmrr@ip70-177-39-212.br.br.cox.net)
00:23.20MiravlixI spend a fortune on a new computer and I've loged into wow once
00:23.41Mikk1From digging a little in Lua sources, I think restructuring the SavedVariables tables into fewer entries with more data in them might help
00:23.59MiravlixThat a serusly waist of 60 FPS in high populated areas
00:24.53AnduinLotharseems to me blizz should just fix it :P
00:25.19MiravlixOr give us a database saved variable
00:25.41MiravlixGetting a bit silly with those big databases in tables
00:26.56Mikk1Orly? =P
00:27.15MiravlixThough thats the usuall pipe dream, since it's something that requires work to implement and Blizzard has no need for it.
00:29.32*** join/#wowi-lounge tardmrr (n=tardmrr@ip70-177-40-169.br.br.cox.net)
00:54.30Mikk1Random idea: Maybe that's the error you get if you run out of RAM while a Lua file is loading?
00:54.39Mikk1As opposed to running out of ram "runtime"?
00:54.57Mikk1Just try upping the limit?
01:04.07AnduinLothari didn't know the editbox have tab completion of slash commands and emotes.. that's cool
01:04.48Kirov_the editbox has a lot of tab functionality actually
01:05.14Kirov_you can cycle forward and backward through your tell history
01:05.26AnduinLotharnah, that's it. jsut that and whisper target tabbing
01:05.42AnduinLotharright
01:05.51AnduinLotharbut that's not tab
01:05.58AnduinLotharthat's just alt -up/down
01:06.39Kirov_well, msg history and tell targets / receivers
01:06.56AnduinLotharmsg history isn't with tab... ?
01:07.12Kirov_msg history is alt + arrow keys
01:07.19AnduinLotharright...
01:07.28AnduinLothari'm jsut lookign at tab at
01:07.29AnduinLotharatm
01:07.58Kirov_If the editbox is in tell mode, tab will cycle through targets, alt+tab will cycle back through them, if I remember correctly
01:08.12Kirov_and I think shift+tab does targets you've sent tells to
01:08.29AnduinLothari dont see that in ChatEdit_OnTabPressed...
01:08.40Kirov_hmm
01:08.46AnduinLotharall i see is target cycling
01:08.48Kirov_maybe it's something I have
01:09.26Kirov_they added shift+r for last tell target, though I already use that for "send tell to my target / mouseover"
01:09.54AnduinLotharshift+r they stole from telltrack
01:10.13Kirov_i should move my stuff to shift+ctrl+r
01:10.13Kirov_heh
01:11.27Kirov_being able to send a tell to whomever you have selected, or who ever your mouse is hovering over (if it's a friendly and your target isn't or you don't have a target) is probably one of my most used mods.
01:11.27AnduinLotharwas thinkign about making a shift-right-click that hooks WorldFrame.OnMouseDown and gives you a 'mouseover' unit dropwdown
01:11.43Kirov_It works on party and ctraid frame hovers too
01:12.01Kirov_AnduinLothar - Gello wrote one
01:12.11AnduinLotharlink
01:12.19Kirov_not sure if he released it
01:12.44Kirov_nope
01:12.47AnduinLotharwhat good is that :P
01:12.59Kirov_Someone asked for it on the forums a while back, so gello posted it.
01:13.09Kirov_But I guess he never officially released it
01:15.34TemTHE LIVING ARE HERE
01:15.54AnduinLothar!
01:18.48zespri_workI'll probably post what I typed for MentalPower here, because he is afk and somebody else mught be interested. He copmlained about "constant table overflow" error being throen in one of his addons on load and here is what I found, here goes spam:
01:18.51zespri_workDo you remeber that once there was a talk that blizzard hand parsing the SV instead of just simly feeding to lua engine?
01:18.51zespri_workI don't remeber when or what for this was done, I guess it was done to overcome some subtle formating problems
01:18.51zespri_workThe thing is that they probably constract a new LUA based on the content of SV and feed this to the engine, and here is what makes me think so
01:19.05*** join/#wowi-lounge zespri_work (n=andrews@124.197.16.117)
01:19.47zespri_workdamn flood filter =)
01:20.03zespri_workthere are only two places in the lua sources that mention your specific error. I'll put one of the places aside for now and concentrated on the other
01:20.04zespri_workNamely this is happening when the parser is trying to allocate a entry on a function constant's table
01:20.13zespri_workEach function has a cosntant table when it's defined. if you write local blabla = 1 or local bla = "sdfsd" or local dfg=nil, the left sides of these expressions got stored in the function's constant table
01:20.13zespri_workthen when function executes it uses LOADK op code and the parameter is offset in the function's constant table.
01:20.17zespri_workeach instruction takes up 32 bits, opcode occupies 6 bits and the first parameter (where to load the constant to) takes up 8 bits. this leaves 18 bits for the constant index
01:20.17zespri_workso there is no way you can have more then 18bits worth of constants defined in a single function.
01:20.23zespri_workwhen there is more "Constant table overflow" is thrown
01:20.23zespri_workthis is not because of tight memory, this is because the engine limitation which can't have more then 18bit worth of constants in a function
01:20.31zespri_workso if you have for example the following code:
01:20.31zespri_workRegisterSV("aaa")
01:20.35zespri_workRegisterSV("bbb")
01:20.35zespri_workRegisterSV("ccc")
01:20.37zespri_workRegisterSV("ddd")
01:20.37zespri_workand this repeats more then 2^18 times you will get the error
01:20.40zespri_workSo what I'm thinking is that blizz internaly construct similar code to load your SV
01:20.41zespri_workand this breaks.
01:20.43zespri_workDoes it make sense?
01:20.43zespri_work2^18  =  262144, so this is the number of constants that you can have in your function
01:20.48zespri_workthat's it =)
01:22.18Mikk1I'd also point out that a "Lua file" is a "function" as far as Lua is concerned internally =)
01:24.04Mikk1purl, constant table is Lua's per-function list of constants. There can only be 2^18 = 262144 constants per function. Note that a Lua file is also a function, internally.
01:24.12purlokay, Mikk1
01:24.17Mikk1purl, constant table
01:24.18purlwell, constant table is Lua's per-function list of constants. There can only be 2^18 = 262144 constants per function. Note that a Lua file is also a function, internally.
01:24.24Mikk1~botsnack
01:24.24purlMikk1: aw, gee
01:33.34Kasothat bot owns
01:39.42KasoMikk1: waging war on empty stubs for the good of human-kind.
01:39.49*** join/#wowi-lounge Esamynn (n=jbcc@d207-216-176-153.bchsia.telus.net)
01:41.46EsamynnEvening all
01:42.06KasoI should do more for wowwiki, i re-wrote/tided the field duty article today, i might do some more of that.
01:44.01AnduinLotharSatellite should be beta testable ina  few min mikk
01:44.03Mikk1Category:Things to do!
01:44.42Mikk1AnduinLothar: oo. i was more interested in the sky lib with a minimum of extras
01:44.51Mikk1Haven't gotten around to fixing my comms lib =)
01:45.06AnduinLotharthat will take longer
01:45.09Mikk1ah
01:45.54AnduinLotharthe idea was actually to get Sky to use Satellite and have Satellite be the smaller part that other addons could sue
01:46.06Mikk1...
01:46.06Mikk1oh
01:46.10Mikk1so satellite is the comms lib?
01:46.29Mikk1ok, if so, that's the one i want =)
01:46.33AnduinLotharsatellite is the slash command lib
01:46.37Mikk1er
01:46.47AnduinLotharsky is the channel/whisper comm lib
01:46.59Shadowd|Naxyay!
01:47.00Mikk1why would other addons want to use Satellite? o.O
01:47.03Shadowd|Nax1.11.2 tomorrow
01:47.28AnduinLotharsame reason you wrote your howto and mroe
01:47.53Mikk1I don't think I understand what Satellite is =P
01:47.59KasoShadowd|Nax what does .2 bring us?
01:48.15Shadowedhttp://forums.worldofwarcraft.com/thread.aspx?fn=wow-general&t=8955273&p=1&tmp=1#post8955273 I guess it goes to PTR first
01:48.50AnduinLotharhttp://pastebin.ca/80094
01:49.19KasoFixed an issue where it was possible to place special bags inside one another. hmm i have to try this out and see what happens when i leave them in one-another then log for patch.
01:49.28Mikk1AnduinLothar: aaaahhhhhh
01:49.35Mikk1Ok, utilities to CREATE slash commands
01:49.40Mikk1I thought it was sky's slash commands
01:50.30AnduinLotharwell Sky has had Sky.registerSlahsCommand forever.. but if you wanted to use it you would have to opt dep it cause no one wanted to req ALL of Sky just for that
01:51.47AnduinLotharso satellite lets you register slash commands or whole chat types
01:52.30AnduinLotharbut even without it Sky is still some 3k lines long...
01:54.54ShadowedSo has anyone tried resetting a secret question before for there WoW account?
01:58.13ShadowedGuess not. I guess they probably have something to prevent you trying to guess your secret question too.
02:01.09Kasowoot ive got 5 herb pouches in my herb pouch, wonder what'll happen when then patch 1.11.2
02:11.38AnduinLotharwell mikk, you wanna play with this?
02:12.01Mikk1aeuhuhhhh no not really. Sky is still what I need =/
02:12.11AnduinLothark
02:25.51*** join/#wowi-lounge Wobin (n=Wobin@221.221.19.150)
02:30.07*** join/#wowi-lounge Iriel (n=daniel@adsl-71-158-244-138.dsl.pltn13.sbcglobal.net)
02:30.18*** mode/#wowi-lounge [+o Iriel] by ChanServ
03:08.58MentalPowerquiet night...
03:09.02Cairennaye
03:09.56Cairennlot of those lately
03:10.51Irielsummer and all that
03:11.03Cairennmust be
03:11.52MentalPoweroh Iriel you're here
03:12.05MentalPoweryou missed our "constant table overflow" conversation
03:13.08Mikk1purl, constant table?
03:13.11purli guess constant table is Lua's per-function list of constants. There can only be 2^18 = 262144 constants per function. Note that a Lua file is also a function, internally.
03:13.11IrielApparently so, my dsl crapped out earlier and since I was at work I couldn't fix it
03:13.21Cairennugh Iriel
03:13.45Irieland I can only get here via my VPN to home, which is why I vanished earlier.
03:14.08IrielYou'd have to try pretty hard to overflow THAT
03:14.40MentalPowertell that to my users
03:14.54IrielOooh,, saved variables. yeah
03:14.56Irieltricky
03:15.12Mikk1Table index = consant
03:15.13MentalPowerhttp://norganna.org/bb/index.php?showtopic=1875
03:16.14IrielI would expect you could reduce the problem by restructuring data
03:16.27IrielBut that'd probably push up memory use
03:16.27MentalPoweralso behold in that thread, my noobishness concerning Lua internals
03:16.42Mikk1MentalPower: Example of your savedvariables file?
03:17.27MentalPowerhttp://rapidshare.de/files/21249661/Auctioneer.lua.html
03:17.27MentalPowerthats not mine
03:17.27IrielI wasn't aware of this particular restriction, but was aware something like this had to exist
03:17.27MentalPowerI personally don't have this issue
03:17.44MentalPowerthink slouken can fix it?
03:17.54Mikk1doubt it
03:18.06IrielNo
03:18.10Irielit's not broken
03:18.12Irielit just 'is'
03:18.22Mikk1Well actually
03:18.25Mikk1It's sort of fixable
03:18.27MentalPowerMikk1: http://endareth.fastmail.fm/Auctioneer.rar  <---thats another
03:18.34IrielUnless he wants to change the constant representation of the lua compiler
03:18.40Mikk1You just need to create parts of tables in different functions
03:18.45Irielbut that's not exactly a trivial undertaking, or, for that matter, worthwhile
03:19.05IrielNorganna can fix it by changing the data format of the saved variables, encode multiple things into single strings, etc.
03:19.06MentalPowerwell, theres a different way to fix it
03:19.08IrielIt'll have a runtime overhead
03:19.10Irielbut it'll work
03:19.18IrielOr spread the data across multiple addons
03:19.18MentalPowerSavedVariablesPerServer
03:19.30MentalPowerand we've already serialized our dataformat
03:20.20IrielThis IS probably the most compelling argument for SavedVariablesPerRealm to date, tho
03:20.24Mikk1wouldn't something like myTable = { [1] = function() return { a=1,b=2,c=3 }, 2 = function() ... } solve it tho?
03:20.31Mikk1That's true
03:21.11IrielWell, in a way the irony is that serialization may well be the cause of the issue
03:21.27Irielif you use an unserialized format where most of the data is numeric, I THINK you get away with it
03:22.06Cairennwell, he (Slouken) is supposed to be back tonight, so I think you can hope to see a presence by him on the forums tomorrow
03:22.26Mikk1Possibly, Iriel. And you could probably replace the numbers runtime.
03:22.37MentalPowerif I may ask, where was he?
03:22.39Mikk1Unless I misinterpret what the constant table is
03:23.00IrielThe constant table is the lookup table of constant strings and things that's tacked onto a function/file
03:23.02Mikk1Hrm.. "Make a lookup table" btw
03:23.13Irielreferenced by the runtime
03:23.13Mikk1Otherwise you can't save :D
03:23.21Irielsorry, bytecode, not runtime
03:23.32Mikk1Sounds like integer index would work then
03:23.46Iriellookup tables dont help too much though, you can use string constants as long as they have low cardinality
03:24.02Iriel75,000 ocurrences of "Mikk1" is still only one constant table entry
03:24.18Mikk1Owait
03:24.22Mikk1The values are constants too
03:24.29Iriel(at least, it should be, unless the compiler is retarded)
03:24.31IrielYes, but no.
03:24.48IrielIIRC
03:24.48MentalPowerthey are?
03:24.51IrielBut that's why I said 'I THINK you can get away with it'
03:24.53IrielI'llt est that now
03:24.56Mikk1foo["bar"] = "baz" <- 3 constants?
03:25.06Mikk1"bar" and "baz" are constants anyway
03:26.00IrielNumbers are constants too, ah well 8-)
03:27.11Mikk1O
03:27.53Mikk1Anyway, it'd be pretty easy to combine big chunks of auctioneer's tables into larger strings
03:28.05Mikk1The format would be a little clunkier but...
03:31.00IrielThe eternal challenge of compromise 8-)
03:31.39MentalPowersigh
03:32.06IrielOr force users to throw stuff away sometimes 8-)
03:33.01MentalPowerthese are the hardcore users that all they do is play the AH on many different servers all day long
03:33.48IrielMaybe they need a 'save this for my character' option?
03:33.51Mikk1The quick-n-dirty solution: Keep only a single entry for each item. Embed all values related for that item across all servers in a single string.
03:34.16Mikk1This includes lots of entries that are now split away to other subtables
03:34.26Mikk1(counts, medians, ...)
03:36.34Mikk1Huhu. There's a lot of data duplication going on it seems
03:37.28MentalPowerfor cache purposes
03:37.52MentalPowerI guess those are the first to go
03:38.09Mikk1they can be recreated runtime
03:38.15Mikk1they just can't be saved
03:39.10*** join/#wowi-lounge ckknight_ (n=ckknight@rrcs-67-53-204-251.west.biz.rr.com)
03:42.43IrielWell, that's a good practice for memory use if nothing else
03:43.07Mikk1Actually, I did it so it'd be easier to do online sync of the daya =)
03:43.09Mikk1data*
03:43.58Mikk1And, yeah, good for mem use too. It's historical data so doesn't get accessed that often
03:46.21ThraeIriel: Hey, I've been mulling around a problem with TinyTip, a unit tooltip mod I've been working on. People want to be able to offset the anchor when the tooltip is stuck to the cursor, and you can't do that with ANCHOR_CURSOR.
03:46.40IrielOnUpdate and explicit positioning
03:47.09ThraeIriel: My hack was to create a blank tooltip with ANCHOR_CURSOR, then anchor GameTooltip to this tooltip. This works, but then other problems arose.
03:47.14IrielThough MAYBE you can do it with ANCHOR_CURSOR
03:47.32IrielHm, I was going to suggest mostly that, but instead of 2 tooltips, just anchor all the fonts inside the tooltip at an offset
03:47.39IrielBut that may screw with the auto resize
03:47.55ThraeHmmm.
03:48.18Mikk1Explicit positioning sounds easiest tbqph
03:48.23ThraeThat's a very good idea though.
03:48.37Mikk1Even allows you to avoid certain areas of the screen if you like
03:48.51Mikk1Or explicitly push it towards edges rather than at a static offset
03:49.17IrielIt's non-painful and works well
03:49.35ThraeWhat, explicit positioning with an OnUpdate timer?
03:49.51IrielYou wont want any kind of timer tho
03:49.59Irieljust a simple grab-cursor-re-anchor-tooltip
03:50.35Mikk1<OnUpdate> GetCursorPosition() ... MyTT:SetPoint() ... </OnUpdate>
03:50.37ThraeHow would I know when to re-position the tooltip? Or are you saying do this WITH ANCHOR_CURSOR?
03:50.47Irielwhat mikk just said, basically
03:50.50Mikk1Anchor it to the screen
03:50.55Irieluse nil for the parent in your SetPoint
03:51.03ThraeYeah, BOTTOMLEFT.
03:51.10Irielyou may need a MyTT:ClearAllPoints() also
03:51.22Mikk1Yeah at least when first shown
03:51.25IrielAnd use one of the fixed anchor settings on the tooltip
03:52.25Mikk1<OnUpdate> x,y = GetCursorPosition() ... MyTT:SetPoint("BOTTOMLEFT", nil, x+foo, y+bar) ... </OnUpdate>
03:52.26Mikk1there =)
03:52.58IrielIn fact
03:53.04IrielPut the OnUpdate *ON* your tooltip, and use this:
03:53.05Irielthen it
03:53.11IrielThen it only runs when your tooltip is visible
03:53.17Mikk1haha
03:53.18Mikk1true
03:53.56ThraeYeah, I was just thinking of hooking GameTooltip's OnUpdate script.
03:54.13Mikk1OOOOHHHHHH
03:54.34Mikk1That's another way of telling that GameTooltip is visible =)
03:54.35ThraeI was hoping if I did my hooking correctly, I wouldn't have to create a duplicate tooltip.
03:54.41IrielWell, do your handler as your own then calls the normal OnUpdate
03:55.04Irielrather than hooking the function that ALL of the tooltips call
03:56.25Mikk1So... aeurhm...
03:56.40Mikk1The GameTooltip is actually the class definition also
03:56.46Mikk1I didn't think of that >.<
03:56.51Mikk1Gawd how ugly
03:58.04IrielHm, as it happens GameTooltip doesn't have an OnUpdate
03:58.04Iriel8-)
03:58.20Mikk1Well ok that solves that problem then =P
03:58.39ThraeIt doesn't use it, but you never know if it might be there or not from another mod.
03:59.27IrielOh, no, it's valid on all Frame objects
04:00.17Mikk1Actually though...
04:00.27Mikk1How often do handlers chain back to the same handler in a base class?
04:00.29IrielHeh, I just realized my mage hadn't re-specced 8-)
04:00.34Mikk1... mostly like .. um.. never?
04:00.43Irielhandlers are instance specific
04:00.46Endwhat level is your mage?
04:01.10IrielGameTooltips are confusing because it's a class and an object and logically a template (though that's GameTooltipTemplate)
04:01.13IrielEnd: 25
04:01.22Endoh, that's forgivable
04:01.41Endmine is 23 or 24, and I don't think I've respecced him either
04:01.53WobinIriel: I was talking to a level 52 rogue the other night, that had 31 points free.
04:02.01Endwell...you can spec a level 9 anyways
04:02.14ThraeHmmm. If I WERE to use my own tooltip, that would fix some other problems as well, but then there's the resource usage to consider. Maybe if I didn't use GameTooltipTemplate and instead did a totally dynamic solution.
04:02.32IrielI forgiot about the talent reset
04:02.42Enderm
04:02.44Endcan't I mean
04:02.47Endyou know what I meant
04:02.52Mikk1aye =)
04:02.59IrielThrae : That may fix other things, but it wouldn't really help here
04:04.37ThraeIriel: Yeah, that was more just thinking out loud.
04:05.59ThraeNow if I create my own tooltip, this will interfere with other mods that add information to the tooltip.
04:06.53Thraes/interfere/lose support for/
04:07.15*** part/#wowi-lounge Mikk1 (i=bofh@81-233-236-26-no19.tbcn.telia.com)
04:07.20*** join/#wowi-lounge Mikk1 (i=bofh@81-233-236-26-no19.tbcn.telia.com)
04:07.33Mikk1Thrae: I still think you should have two tips
04:07.44Mikk1One minitip at cursor, and one big one at the bottom
04:07.53Mikk1I.e. leave the good old GameTooltip down at the bottom
04:08.12KemayoI like that suggestion.
04:08.39ThraeI can't see a way around support for other tooltip-altering mods other then parsing extra line at OnShow.
04:08.39Kemayo(I'm enjoying TinyTip, but find myself missing my MobInfo2 stats.)
04:08.54ThraeMikk1: Yeah, that's one idea too ;)
04:09.02Mikk1It's the one I prefer =P
04:09.13Mikk1Not just from a programming standpoint I mean
04:09.35Mikk1Minimum of bloat covering chars. Maximum of info where it doesn't bother me.
04:09.51Mikk1If I need to read lots, it doesn't matter that I need to look in the corner. It'll take time either way.
04:10.48ThraeYeah, but then you also have tiny mods like HunterTamer or whatever which may just add 1-2 lines to the tooltip.
04:11.04Mikk1That's still 2 lines I don't need when mousing over 99.99% of mobs
04:11.19Mikk1Covering the mobs themselves I mean
04:11.23Mikk1Don't mind it much down in the corner
04:11.50ThraeI never said I wouldn't implement your suggestion Mikk1, but I'm trying to think of all users here. Hmmm.
04:11.50*** join/#wowi-lounge zespri (n=andrews@202.180.98.138)
04:11.54Mikk1Ah =)
04:12.12zespriwhat is the function for getting target's target?
04:12.26Mikk1UnitWhatever("targettarget")
04:12.39ThraeHow about an option to stick GameTooltip to my tooltip, and hide the normal GameTooltip text? Then if you WANT the extra information from other mods sticking to your tooltip, that could be arranged.
04:12.47Mikk1UnitSomethingElse("raid39pettargettarget"
04:12.55Wobinzespri: just tack on 'target' to any other unitname
04:13.04WobinMikk1: Not gettarget
04:13.09Wobinoops
04:13.12Wobinhehe
04:13.18Wobin*facepalm*
04:13.29WobinThat's me reading backwards again =P
04:13.34Mikk1Thrae: How about hooking AddDoubleLine?
04:13.41Mikk1Only addon crapola comes in that way
04:13.46Mikk1No actual game info
04:14.00ThraeBoth AddLine and AddDoubleLine you mean?
04:14.03Mikk1ofc
04:14.11ThraeOFC?
04:14.25IrielHooking the add functions doesn't help much
04:14.27Mikk1"of course"
04:14.29Irielthe game engine doesn't use them
04:14.33Mikk1That was my point
04:14.45Mikk1He just wanted an option to grab hold of stuff that addons add to the tooltip
04:14.47ThraeIriel: We're talking about only information from other addons.
04:15.08IrielAh, I must have been dealing with some polymorphing when that scrolled by 8-)
04:15.19Mikk1Of course, it won't help with addons that add new UI objects around the tooltip
04:15.31Wobin'ofc' is the most confusing non acronym acronym around =P
04:15.31ThraeRight.
04:15.39Mikk1Then again, that's 99% likely to screw with your little icons anyway
04:15.45Mikk1So perhaps they're just better off down in the corner
04:16.11Mikk1Wobin: It's not an acronym, it's an abbreviation =)
04:16.47Thrae"apologizes profusely" has no 'c' in it?
04:17.17Mikk1Thrae: "ofc"="of course"
04:17.22Mikk1the apology was for USING it =)
04:17.23WobinMikk1: It's a lousy abbreviation =P
04:17.39Mikk1I'm not going to argue against that =)
04:17.40IrielI agree, it's a pretty bad abbreviation
04:17.43Wobinbecause it's -used- like an acronym
04:18.05ThraeWait, why are my English skills subpar?
04:18.17Kaeltengods bank support is driving me crazy
04:18.32ThraeThat reminds me, Kaelten.
04:18.34Kaelten?
04:18.39WobinKaelten: Hehe, I feel your pain =)
04:18.48Mikk1Thrae: Dunno. Perhaps you never had the cash to get past 225? =)
04:18.53WobinPLAYER_BANKSLOT_UPDATED
04:19.24Kaeltenactually its  supporting trading the bags around
04:20.01zespriDid I say 'thank you' Mikk1?
04:20.15ThraeMikk1: Was it my grammar, or did I misspell?
04:20.58WobinKaelten: I've noticed that while using CTMailMod with OneBag, it greys out odd slots, ie not the slots I was using, would that be CTMM or OneBag?
04:21.34*** join/#wowi-lounge zespri|home (i=andrew@202.180.98.138)
04:23.49Mikk1Thrae: No, it was calling an abbreviation an acronym. But, seriously, that's where you just slap me one upside the head and we get back to talking tooltips =)
04:24.14ThraeWait, but Wobin said that :D
04:24.28Mikk1Oh
04:24.33Mikk1Pardon Thrae =)
04:25.13ThraeAnyway. Instead of hooking AddLine and AddDoubleLine, I was thinking of just parsing extra lines at OnShow.
04:25.34zespriSo do you think UnitIsUnit("player", "targettarget") will work for checking if my target is attacking me or someone else?
04:25.42Kaeltenwobin I honestly have no idea
04:26.06Wobinzespri: yes
04:26.10Thraezespri: Works for me, but also check for UnitExists("target") and UnitExists("targettarget")
04:26.30ThraeI seem to recall an error from "target" and/or "targettarget" not existing if you do UnitIsUnit
04:26.30zespriThrae: why?
04:26.38Mikk1Try it
04:26.43Mikk1Might not be necessary any more
04:27.13Endarg
04:27.14ThraeThis was when I was testing TinyTip, which is post 1.11, but my memory might be mistaken.
04:27.21Mikk1o
04:27.21zespriok thanks guys
04:27.23Endit costed my priest 2g to train level 20 skills
04:27.57WobinIt costed my rogue 20g to train level 52 skills =(
04:28.09Mikk1Thrae: That might work too I suppose... Just please make it optional =)
04:28.16Mikk1(Cause I for one don't even want it up there)
04:28.21Endit costed my shaman like 8g to train level 54 skills
04:28.25ThraeI costed my Druid 10g to learn Level 44 skills.
04:28.27Mikk1Or POSSIBLY make it pattern based so I can select what goes up there.
04:28.41End(there was like 4 totems to learn for level 54, all around 2g)
04:28.49ThraeMikk1: Hmmm, good idea.
04:29.18IrielThrae: The issue would have been around comparing 2 units that didn't exist with one another.
04:29.51ThraeIriel: Ah, so if one unit exists, it won't error and just return false, right?
04:30.02IrielYes
04:30.15IrielWhich is to say, it wont error, and it will return false.
04:30.28IrielIt didn't error either way, it just returned true at unexpected moments
04:31.03Irielnull == null, I think, but something like that
04:31.06Mikk1aye
04:31.21Mikk1was just going to say ;)
04:31.32IrielI think we had it changed so that a null unit never compares equal to another one
04:32.14IrielOther than itself
04:32.29ThraeI don't suppose there is any way other then OptionalDeps to make sure I hook a function before any other non-Blizzard addon, right?
04:32.44IrielRight, and even then you have no guarantees
04:33.01Mikk1Hooking loadtime increases the chances
04:33.07Irielyou can just guarantee the order W.R.T. addons you list as depdendencies
04:33.26Mikk1But what is it that you need to hook so early? o.O
04:33.46*** join/#wowi-lounge zespri (n=andrews@202.180.98.138)
04:33.49Mikk1Oh.. OnShow
04:33.51zespriI can use pcall instead of calling UnitExist I guess
04:33.59Mikk1Just hook Add*() =)
04:34.06IrielWhy would you do that?
04:34.19IrielUnitExists doesn't throw errors unless you pass it garbage
04:34.21ThraeGameTooltip_SetDefaultAnchor has been screwy for me lately with other mods that hook it too.
04:34.35Mikk1But you wouldn't need to hook it?
04:35.10ThraeMikk1: I need to hook it to update the position of the original GameTooltip.
04:35.23zespriThrae said that UnitIsUnit throws a error if you or your target don;t have a target so you have to call UnitExist to checl this. it seems to me that it's simpler to just wrap UnitIsUnit in a pcall
04:35.26Mikk1Force it back in the corner you mean?
04:35.39Irielzespri: I'm pretty sure he's mistaken.
04:35.43Thraezespri: I was wrong on that one, Iriel corrected me.
04:35.47Mikk1zespri: just test it
04:35.53ThraeMikk1: Right, exactly.
04:36.01Mikk1Ah. Just move it there in your OnUpdate =)
04:36.37zespriThank you guys
04:37.08ThraeWell, I would still need to at least hook GameTooltip:Show or OnShow or SetUnit.
04:37.33ThraeOtherwise I wouldn't be able to tell when someone's mousing over a unit frame.
04:37.34Mikk1<OnShow> if you want to do scanning, definitely
04:37.44Mikk1But again you have the problem of order-of-adding
04:37.54Mikk1If some other tip adds stuff in his onshow and you  hook after ...
04:38.05Mikk1Just hook Add[Double]Line() already =)
04:39.48ThraeMikk1: That doesn't solve the problem of oddly coded addons which do ("GameTooltipTextLeft" .. GameTooltip:GetNumLines() ) stuff, but I guess I could just fix that when I encounter it.
04:40.33zespriIf it can't be more then 262000 something constants in a function, I don't understand how huge SV's work then
04:40.34Mikk1Those addons are so broken it's not even funny though.
04:40.38zesprior they don;t?
04:40.59Mikk1Thrae: Two of those can't both add new lines
04:41.34Mikk1(And I don't see it as a huge problem that their texts can't pop up in your overhead tip. They'll still show?)
04:41.41Irielzespri: it's distinct values in one file
04:42.26Mikk1All instances of "foo" is a single constant. All instances of "bar" is one more.
04:43.15zespriIriel, so you think that even huge addons like Auctioneer never have more then 262 thouand values in their SV?
04:43.16Wobins/is/are/
04:43.17Wobin=)
04:43.24IrielNot until now, absolutely 8-)
04:43.34IrielWe'd have heard of this error before now otherwise
04:43.41MentalPowerzespri: we do, hence why I brought it up
04:43.43Mikk1Looking at files that recently broke, they have ~600k lines
04:43.51Mikk1And there's plenty of duplicate data in them
04:43.54IrielThe other approach would be for slouken to load the addon SV's the way the 'core' SV file is loaded
04:43.59Mikk1I'd say it's pretty likely that they just hit 262k unique values
04:44.28MentalPowerIriel: and how is that?
04:44.37zespriIriel, did you discuss this problem today already, when I was absent?
04:44.42IrielProgramatically rather than via Lua's loadfile
04:44.47Irielthough it's slower and more limited
04:45.03zespriIriel, what is 'core' SV file?
04:45.12MentalPowerSavedVariables.lua
04:45.18Mikk1that's tiny? o.O
04:45.19zesprihuh?
04:45.40zespriI thought they nuked SavedVariables.lua?
04:45.44Mikk1it exists
04:45.50Mikk1but it only has framexml stuff in it
04:46.15zesprithen why does it matter how this SV is parsed if no addon can add anything there?
04:46.38IrielThe problem is only with PARSING of the file
04:46.43Irielit has nothing to do with runtime storage
04:46.58IrielThe files are executed as lua code, not parsed with some kind of loader.
04:47.10Irielthus they are subject to the Lua function definition restrictions
04:47.18Mikk1But the original SavedVariables.lua is/was loaded with something else?
04:47.29Irielthe one exception, these days, is the main SavedVariables.lua file, which is now parsed via code, not executed.
04:47.39Iriel(To stop us loading arbitrary code along with FrameXML, I suspect)
04:47.50zespriIriel, I guess my question is why sv.lua is parsed diferently the all addons sv's?
04:48.00IrielThe change went in when the code signing did
04:48.07IrielSee my previous comment for my guess on why
04:48.15zespriok thanks
04:48.25IrielThe data it loads is quite possibly considered 'blessed'
04:48.36Iriel(or untainted, if you prefer)
04:48.44zespriIriel, so you have any idea how the addon's sv files are created?
04:48.50Mikk1That's easy
04:48.57WobinunTainTed
04:48.59Mikk1I could even code a Lua function to do it
04:49.01IrielA bunch of code slouken wrote that just iterates over them and writes things out
04:49.14Mikk1And that's not even the problem
04:49.15IrielI think it's just C++ using the standard LUA API's
04:49.25zespriIriel , ah ok. So there is no way to partition data to several functions
04:49.27IrielAnd indeed, that works for ANY size file
04:49.32Mikk1Yeah it'd have to since WoW doesn't have the io lib ;)
04:49.40Irielzespri: Save it into multiple files (i.e. over multiple addons)
04:49.50zespriunless you create extra addons with the sole purpose of breaking the 2^18 limit
04:50.00zespriIriel, exactly
04:50.04Mikk1The loader could possibly also be changed to write out functions
04:50.07Mikk1err
04:50.08Mikk1the saver
04:50.12IrielNo, that doesn't help
04:50.15Irielthe FILE is a function
04:50.20Irielloadfile creates a function from the file
04:50.24IrielYou need multiple files
04:50.29Mikk1Ah. And constants of functions inside the function use the same constant table?
04:50.50IrielI believe so.
04:50.52zespriIriel if you have a function difined in a function, then each function has it's own table
04:51.05zespriIriel, so this *should* help
04:51.15Mikk1Except we can't change how the files are saved
04:51.30zespriIriel, I can quickly test this
04:51.40IrielYes, they do.
04:51.55Irielshare, that is..
04:51.58Mikk1Ah okay
04:52.01Mikk1Multiple files then
04:52.56Mikk1Or just make the table formats more efficient, which is a good thing for RAM too
04:52.58IrielBut even that's tricky
04:53.07Mikk1(Which IS an issue when we're talking files that are 30+ MB)
04:53.10IrielBecause a single table may need to be split across files
04:53.20zespriIriel, it works. Give me a few seconds to paste
04:53.22IrielReally the problem is using the 'UI' for more than it's really intended for.
04:53.56Mikk1It's also quite possible that we'll never see a fix for this
04:53.59Mikk1For policy reasons
04:54.10Mikk1For that exact reason
04:54.20Mikk1Time wil tell =)
04:54.21zespriIriel, this last point I agree with
04:54.49Irielzespri: ACtually, I agree with you for non-nested functions
04:55.18Mikk1Yeah that makes sense
04:55.18IrielMy original test was flawed
04:55.23Mikk1You just used nested huh?
04:55.25zespriIriel, aha! So it can be a single file
04:55.29IrielSome of my constants existed at the file level
04:55.38IrielIt could be, but you still run into the splitting-large-tables problem
04:55.44Irielthough even that's solveable
04:55.46Irielit's just ugly
04:56.08Iriel["subtable"] = (function() return { more = "data" })()
04:56.47zespriyeah
04:56.50Mikk1I don't particularily want to know how long that'd take to execute
04:57.06Mikk1And still only works if there's subtables
04:57.12Mikk1A loooooong array would still break
04:57.13IrielI wonder how long a 28MB Saved Variable takes to load
04:57.19Mikk1mmhh
04:57.34zespriIriel, and I don't really think that Soluken can be bothered supporting this. As you ahve pointed out, this is beyound the scope
04:57.41Mikk1If it looks like Auctioneer's: A lot longer than one restructured to use bit strings would =)
04:57.48IrielNo, I agree, the only thing we can ask for (again) is SavedVariablesPerRealm
04:57.50Mikk1s/bit/big/
04:58.02IrielAnd even that's tenuous
04:58.45IrielIf you're going to store ridiculous amounts of data, you likely need to think about these things.
04:59.04Mikk1And the answer in general is "bloody forever". I've stopped using database addons. By loading times were slashed down to like 25%
04:59.07Mikk1By=My
04:59.34ThraeString compression is fun.
05:00.29zespriI'd like to have a way to measure somehow, how long my sv will end up
05:00.41zespriin kbs as well as in unique constants =)
05:00.56Mikk1You can compute it
05:00.56IrielThat's calculable
05:01.09Mikk1Can do both in one big recursive function
05:01.24zespriyeah, but basically you have to write yorself what Soluken alreasy written - the dump function
05:01.31Mikk1it's a oneliner
05:01.51zesprionly if you know *for sure* how soluke is doing this
05:01.56Mikk1i do =P
05:02.09zespriyou do, don;t you?
05:02.13Mikk1because i see how the SV files end up
05:03.21*** join/#wowi-lounge KarlKFI (n=karl@ppp-67-126-241-122.dsl.irvnca.pacbell.net)
05:03.28Mikk1Bah. Computing KB size is boring
05:03.31IrielI dont think there's any doubt what format a given input would end up
05:03.44Mikk1Need to take nesting and  stuff into account
05:03.50Mikk1Ok, I'm not going to do this just now =)
05:04.11IrielIndeed, but recursion is filtered out, and strange value types are prohibited
05:04.43Mikk1That comment was to my own comment
05:04.56Mikk1"Computing KB is boring -- need to take nesting into account.."
05:05.54Mikk1zespri: A function to mimic Slouken's code (sans error checking) is only like 15 lines of Lua
05:06.06Mikk1And I do mean actually output the results too
05:06.31IrielIt's a bit bigger than that, because you have to catch recursion cleanly, and you need to print helpful messages for things like function values and the like
05:06.44IrielUnless your 15 lines are arbitrarily long
05:06.49IrielBut it's not complicated by any means
05:06.56Mikk1tostring(value) for all non-tables = still a oneliner
05:07.03Mikk1But yeah only 15 without error checking
05:07.16IrielBut slouken's doesn't do that 8-)
05:07.23Mikk1gah
05:07.43Mikk1Putting functions in savedvariables is pointless either way =P
05:07.53IrielYou did say 'mimic' not 'vaguelly approximate'
05:07.55Mikk1haha
05:08.06IrielIndeed, though it 'worked' *cough* for a while, until I asked for it to be removed
05:09.06Mikk1Erhm, arf, they were actually parsed back as function pointers too?
05:09.30IrielNo, it tried to pick the appropriate global name and emitted that into the file
05:09.43Mikk1Ah
05:09.48Mikk1Horrible =)
05:09.51Irielbut there are too many ways that can break in new and interesting ways
05:09.58Mikk1Uh huh
05:10.05*** join/#wowi-lounge chuckg (i=chuckg@66-237-5-116.starstream.net)
05:10.05IrielSo now it just puts a nil and a comment, I think
05:10.09Mikk1Like SV getting loaded before hooks
05:10.13Mikk1But saved after hooks
05:10.40IrielYes, and people aliasing global functions and it picking the wrong one
05:10.52Mikk1Good riddance. Thanks =)
05:11.33ThraeHmmm. Instead of _G.Var, doing local Var if not Var then GetSingleInstanceOf("Var") end -- branch vs hash, a few milliseconds saved?
05:12.01IrielIt's microseconds
05:12.19Mikk1Several thousand clock cycles!
05:12.43ThraeWell, then you don't have to add more global variables too.
05:12.46IrielThough I suspect the overhead of the if outweighs any benefit in that case
05:13.18ThraeLua Ifs aren't necessarily just a branch?
05:14.16Irielthey're lua opcodes, which have to get executed by the VM
05:14.43ThraeAh, so there's the overhead of that vs a hash.
05:14.52IrielAnd lua hash lookups are damn fast
05:15.45IrielOne of those things which is fun to determine is whether it's worth localizing frequently used globals in a function, for example
05:16.41ThraeI do it anyway, don't know if it saves much if anything. Stuff like strfind = string.find, strformat = string.format, etc.
05:18.10ThraeYeah, you also have to consider the average frequency of the function. Like I won't bother with doing it in slash commands, because I guess people don't compartively use them very often.
05:18.26Thraes/compartively/comparitively/.
05:18.50IrielThe biggest saving is frame methods
05:19.07Irielthough you have to make some assumptions there, which may not always be safe.
05:19.14Thraelocal GTShow = GameTooltip.Show ?
05:19.59IrielWell, more something you'd call a lot
05:20.01Irielsay, SetPoint
05:20.11ThraeRight, just giving an example.
05:20.16Mikk1Mm.. Frame methods result in a metatable __index lookup, which is a function, not just a pointer to another table. Oops.
05:20.27Irielyes, it's a particularly slow function too
05:20.49IrielI wrote a whole addon to demonstrate various techniques to speed it up
05:20.53Mikk1I dunno.. I just did straight copy for multiple inheritance in winbench
05:20.56IrielThe results were interesting (It's called SecretSauce, you can find it on my website somewhere, I have notes on the results)
05:21.01Mikk1Didn't seem like I cared about changes to base classes
05:21.03Mikk1Since they don't get changed
05:21.23IrielBut unforytunately it taints everything, so it's not practical for normal use
05:22.20Mikk1What? You stored local references to everything in the classes?
05:22.26IrielThat was one of the sauces
05:22.27Irieltehre
05:22.33IrielThere are several
05:22.43Irielsome were better than others, they all had tradeoffs
05:23.15IrielIt partly depends on what you're willing to do for the sake of transparency
05:23.31IrielThe fact that all frame objects have the SAME metatable is a liability or a blessing, from different perspectives
05:23.31Mikk1Not being able to hook stuff in UIObject and expect it to occur in all other classes isn't a major tradeoff in my book =P
05:24.01IrielThe inheritence model isn't really exposed to us, and that wasn't a tradeoff I cared about
05:24.45IrielBreaking the one-metatable-for-all rule was
05:25.13Mikk1Oh, even instanced objects of different classes use the same metatable? o.O
05:25.26IrielEVERY UI OBJECT SHARES THE SAME METATABLE
05:25.31Mikk1Eek
05:25.33Iriel(Emphasis deliberate, because it's important)
05:25.44IrielThe magic is all in the [0] index'ed userdata
05:25.51Mikk1That sounds slightly evil to me
05:25.58Irielwell, the interaction between that and the metafunction
05:26.00Irielit's clever, and clean
05:26.04Irielvery low overhead in LUA space
05:26.10Irielruntime typing in C++ space
05:26.24Irielit's unfortunately (relatively) slow
05:26.36IrielNot slow enough that /most/ folks need to worry about it
05:26.58Mikk1Seriously though.. wouldn't just making UI object __indexes point to their respective classes have the same RAM overhead and execute helluvalot faster?
05:27.07IrielBut if you're going to be fiddling with hundreds of frames in an OnUpdate, it's worth knowing how :GetText() and .savedText are different.
05:27.36IrielMikk1: That certainly would be one implementation that would have advantages
05:27.50IrielMikk1: Even using one of my per-type memoizing versions would speed up the base UI
05:28.22IrielMikk1: But I suspect one of the reasons that it's the way it is, is that the C++ and Lua pieces are kept nicely decoupled
05:28.35IrielAnd it's not _that_ slow, it's just slow relative to other approaches
05:29.02Irielpersonally i'd have given each frame type it's own memoizing metatable
05:29.15Mikk1Granted, with a purpose-written function, you can't just plop something into the base class and have it pop up in 90% of the UI objects suddenly
05:29.17Irielall pointing back to the same function they use now
05:29.45Mikk1that works
05:30.00ThraeHmm, I wonder how much it'll break GameTooltip:AddLine if I don't inherit from GameTooltipTemplate.
05:30.20IrielNot at al, as long as you set up the lines right
05:30.48Mikk1And certainly not in any way whatsoever if it's a dynamically created object that you never tell the game client about having any lines
05:31.13ThraeSo AddLine dynamically creates its FontStrings?
05:31.24IrielNo, if you dont add lines you break it completely
05:31.45IrielYou need to dynamically register your font strings if you create the GameTooltip object with CreateFrame
05:31.49Mikk1Ohwait you'll be doing SetUnit and stuff on it
05:31.50Mikk1nm me
05:32.12Mikk1yeah you need to tell the game engine about your strings just like iriel is saying
05:33.08zespriSo what blizzard did in the last patch with SV size?
05:33.19zespriWas there some limit implsed or what?
05:33.27Mikk1Something with very very large strings
05:33.29Mikk1iirc
05:33.37IrielThere seemed to be, I think it was related tot eh working buffer it uses for output
05:33.56zesprido you know any more details?
05:34.08Mikk1It's not related to the 262k constant problem at all
05:34.09zesprisuch as what this limit applies to and how big is it
05:34.11Mikk1If that's what you're wondering
05:34.14zesprino it's not
05:34.19IrielThere should be no limit
05:34.27zespriNo I'm not wondering, I know this for sure =)
05:34.30IrielI dont think there was a limit, per se
05:34.44Irielit was just a buffer handling bug, as far as I can tell
05:34.52ThraeWhere are the rest of GameTooltip's templates? They're not all in GameTooltipTemplate.xml.
05:34.57zespriWell, what I personally can tell is that my "big" addons don't wont to load their SV's now
05:35.10MentalPowerThrae: they are
05:35.16Irielzespri: With what error?
05:35.21zesprithey thriw a error on load that looks as if sv was cut at some point
05:35.26ThraeNot the templates for the FontStrings
05:35.32zespriwell not closed string and such
05:35.32ThraeMaybe they're in GameFont.xml.
05:35.46Irielzespri: Hm, and you haven't edited them outside of wow?
05:35.50zesprino
05:35.59Irielzespri: I suppose it's possible there's a bug somewhere in the writer
05:36.09ThraeYeah, they're just simple Font objects.
05:36.16zespriit happend to three addons already Auctioneer REcap and Lootlink - the addons that have biggest SV's
05:36.39Mikk1Ouch
05:36.48IrielDid the game crash during exit at some point?
05:36.53zesprino
05:37.07IrielI believe that was the symptom, you'd get a crash during exit and the SV would be truncated partway through
05:37.32IrielIf you can find the place where the file is wrong, we can work on a test case for it
05:37.43IrielI have a a BreakSV addon which I add things to
05:37.51zespriI'm positive I didn;t crash during exit, because I was troubleshooting problem with a cosmos addon that causes crashes on exit, so I would remember
05:37.53Irielthough all of the ones I know of to date have been fixed
05:38.20zesprifor these three addons that a mentioned it happened not at the same time. there was a couple of days interval between each occurance
05:38.32IrielAll since 1.11?
05:38.47IrielThat would make me think the crash fix isn't quite right
05:38.54Irielbut you'd need to find the exact cause so we could report it
05:38.55zespriyrs
05:39.32zesprihang on I have an idea. May be I saved one of the problem sv's
05:40.29zespriyeah I have a save of Auctioner.lua sv
05:41.03zespriit's only 8MB
05:42.29Cairennslouken's home :p
05:42.34IrielCan you upload it somewhere?
05:43.23zespriI will in a sec, but I'm not at home, so I'm not positive that this is the right save. I'm 90% sure, but there is a chanse it's not the save that crashed the game for me
05:43.54zespricrashed is a wrong word, but you understand
05:46.04ThraeInstead of dynamically making FontStrings for a tooltip, why not just have everything on one line, with each line delimited by '\n'? Hmm...
05:46.30Thraes/on one line/in one FontString/.
05:48.38MentalPowerI don't think purl likes you Thrae
05:48.57ThraeNo, it's I don't like purl ;)
05:49.18ThraeI purposedly added the . at the end of my regex so purl doesn't needlessly copy me.
05:49.18MentalPoweroh, you have a dot after the trailing /
05:49.54Wobinhm
05:50.03WobinI can't seem to work Get/SetHighlightTexture properly
05:50.23Wobinie, GetHT is not returning what I SetHT to
05:50.46Wobinand setting GetHT to nil, does not remove what I previously Set it to
05:50.48IrielWell, SetHt and GetHt dont act the same if the thing has anchors on opposite sides
05:51.02ThraeWobin: Take a look at GooeyFigs up on Ace SVN, I have stuff like OptionsButtonTemplate implemented in dynamic code.
05:51.14WobinIriel: How do you mean?
05:51.53ThraeDynamic code without inheritance, I mean.
05:52.28Esamynnyawn, evening all
05:52.34Irielhttp://www.wowwiki.com/UI_Coordinates has some details on GetHeight and GetWidth (which may or may not be your problem here)
05:52.34Wobin(incidentally, the button only has one anchor point)
05:52.53IrielEvening Esamynn
05:53.13Esamynnoh, and may I just say that those people who ran into the Constants limit with their SV files are _nuts_
05:53.48IrielYou'll get no disagreement from me 8-)
05:53.57Esamynnthat converstaion was an interesting read though
05:54.13Esamynnnah, Mental just "supports" the _nuts_
05:54.16ThraeHehe, AceDB will hopefully have dynamic string compression/decompression at some point in the future :D
05:54.17Cairennhi Esamynn :)
05:54.26MentalPowerlol
05:54.58WobinIriel: I'm still not understanding how it would effect Get/SetHighlightTexture on a button
05:55.03MentalPowerthese people scan 8 or 9 servers every single day
05:55.07zespriIt's not completely true, it's auctioner's "fault" that it files break the constatn limit. As a user I have no way of preventing this nutness
05:55.12Wobins/effect/affect/
05:55.26ThraeWobin:  Can I see part of the code?
05:55.37IrielWobin: OOH.. I misread HT as Height 8-)
05:55.57IrielWobin: What are you passing to SetHighlighTexture? A Texture object or a texture path string?
05:55.58WobinIriel:  =)
05:56.05WobinA texture path stirng
05:56.16Esamynnzespri: the _nut_ part comes in because you are using the UI engine as a database system!!!! and storing ridiculous amounts of data to boot :P
05:56.20Wobin"Interface\\Buttons\\ButtonHilight-Square"
05:56.22Wobinto be precise
05:56.48Esamynnzespri: Pack Rat!
05:57.03zespriEsamynn, so it's not a user to blame and an addon author. so that'w why I rightfuly pointed to MentalPower =)
05:57.40*** join/#wowi-lounge s|loup (n=loup@exch01.berlinheart.de)
05:57.46s|louphi
05:57.47EsamynnI just think you're nuts for storing that much data, regardless of whether it breaks stuff or not :P
05:57.51Cairennhey s|loup
05:58.03ShadowedQuick question about tomorrows patch. I'm guessing that sound will be fixed, it just wasn't mentioned in the main notes posted?
05:58.14WobinThrae: No code as such, I'm using GetMouseFocus():SetHighlightTexture("Interface\\Buttons\\ButtonHilight-Square") then GetMouseFocus():GetHighlightTexture()
05:58.19Wobinon a lua generated button
05:58.51WobinNormalTexture works as advertisde
05:59.05EsamynnShadowed: likely will be, but you'll have to check on the PTR
05:59.23Wobinbut I'm having issues that when I'm recycling uiobjects, the Highlight texture stacks up
05:59.32WobinSince the 'nil'ing doesn't actually do anything
05:59.59IrielSo it's like when you call SetHighlighTexture, instead of resetting the texture file on the existing Texture, it creates a new one?
06:00.09Wobinyeah
06:00.26WobinI'm -thinking- that it's using GetHightlightTexture to see if there's one there already
06:00.32IrielSounds like a cause for a "Slouken: Strange SetHighlightTexture results" post on the forum
06:00.34WobinBut as that returns nil, it just piles it on top
06:00.37IrielYeah
06:00.46IrielI suspect that's related (at least to how it works internally)
06:00.58WobinSlouken's back soonish, isn't he?
06:01.02IrielTomorrow
06:01.09WobinI'll wait til then to post then.
06:01.11IrielOr so Cairenn says (or implies)
06:01.28Cairennhe's home now, will be back to work tomorrow
06:01.32Cairennjust got home
06:01.37ThraeHmm, I usually do local tx = frame:CreateTexture() tx:SetTexture(path) tx:SetAllPoints(frame) frame:SetHighlightTexture( tx )
06:01.44MentalPowerwas he on vacation?
06:01.49Cairennyup
06:01.52IrielDoes it work properly if you do what Thrae suggests?
06:01.53Cairennleft on Friday
06:02.14WobinThrae I'll try
06:02.24*** join/#wowi-lounge Karl (n=karl@adsl-67-125-156-77.dsl.irvnca.pacbell.net)
06:02.43ThraeSince Set..Texture claims ownership of the texture object you send, the local isn't collected.
06:03.50EsamynnIriel: feeling overworked?
06:05.56WobinThrae: That works fine
06:06.03Wobin(I'll still post about it though =))
06:06.45ThraeWobin: Yeah, probably what happens is that if you give Set...Texture a path, it creates a new object regardless of if its current object has the same path.
06:07.13Esamynnoh wow, it's been a long time since I checked by unread books on BookWorm
06:07.16WobinThrae: Problem still occurs that GetHighlightTexture returns a nil
06:07.17Esamynn91 unread books ;)
06:07.29WobinEsamynn: Get to reading!
06:07.35Esamynnlol
06:07.43ThraeWobin: Oh, even if you do it via CreateTexture ?
06:09.37Wobinhm
06:09.54Wobinno, that works
06:10.39WobinNo, I meant, that using SetHT with a path, the subsequent GetHT returns nil
06:11.25ThraeMaybe SetHT with a path doesn't actually create a new Texture object, and just stores the path for use by the game engine.
06:12.07IrielEsamynn : Overworked: yes.. Bookworm: Notice how scrolling is fixed 8-)
06:12.10ThraeBut GetHT shouldn't return nil, regardless.
06:12.33IrielBut if GetHT doesn't return nil, you can do:
06:12.40IrielGetHY:SetTexture("path")
06:12.51EsamynnIriel: ahh cool, I hadn't actually noticed the bug :D
06:13.34Esamynnbtw, AfterCast is still giving me unexpected event messages for SPELLCAST_INTERRUPTED some times
06:14.02IrielThe latest version?
06:14.14EsamynnI think so, I will double check
06:14.27IrielIf so, can you email me the exact message next time it happens (and if you happen to remember, what you were doing at the time)
06:14.45IrielIt may be like the SPELLCAST_FAILED problems I was having
06:15.22ThraeYeah, in Iriel's 1.11 documentation it says GetHighlightTexture returns a texture object, so it's possible SetHighlightTexture(path) doesn't make a texture object to get.
06:15.25Esamynnyes, its the latest, I think its the Normal Cast state that I'm getting them in
06:15.58EsamynnThrae: the game should generate one if it doesn't exist in the UI Environment yet
06:16.14Esamynnwhen you do the Get
06:16.25ThraeIt *should*, yes.
06:16.42Mikk1Unless you're giving it a bad path
06:16.53Mikk1i.e. forgetting to replace "\" with "\\" or something like that =)
06:17.09Esamynnlol
06:17.20Mikk1Front slashes for all!
06:17.58zespriIriel, is it difficult writing an addon that would tell you the frame name you are mousing over? And if there is more the one frame at a given location probably display all the frames that is under cursor?
06:18.09WobinEsamynn: It does for Normal texture, but not for Highlight
06:18.16EsamynnMikk1: that would be FAR too _simple_ and it would make far too much _sense_
06:18.17IrielI've done that already
06:18.17Mr_Rabies2wow
06:18.24Wobinzespri: dtstackframe
06:18.26Mr_Rabies2don't use the CSS style "orc" on the new wow site
06:18.29Mr_Rabies2things...break.
06:18.39zesprioO
06:18.41WobinMr_Rabies2: Zugzug?
06:18.44zesprithank you
06:18.58IrielIt's key bindable
06:19.00Mikk1Which reminds me
06:19.03WobinIt's great! =)
06:19.05IrielI usually bind a press-to-show key to it
06:19.07Mikk1I always forget the devtools slash commands
06:19.19WobinMikk1: Agreed
06:19.29WobinWe need a dt slashcommand that lists the various tools
06:19.31Mr_Rabies2i've seen better site designs on myspaces than the abomination "orc" is in currently
06:19.38IrielYou could just read the readme 8-)
06:19.44Mikk1Iriel: Would you mind if I mail you a small update? =)
06:19.50Wobinwell, yes. but /dt is so much faster =)
06:20.01IrielNot at all, though as others will note, i'm a bit behind on incorporating them
06:20.04WobinIriel: How are you going with that table browser?
06:20.14IrielSome day, when, perhaps I dont have to work holidays, I'll get to them.
06:20.17ThraeMikk1 and Iriel should use one of the SVNs out there :)
06:20.21IrielWobin: it's waiting for me to have a life again
06:20.25WobinIriel:*nods*
06:20.27Mikk1Then again I'm half minded to integrate it into myDebug(Mikk) o.O
06:20.37Mikk1UI clickety ftw!
06:22.06Mikk1Iriel: Would you mind if I did that (with proper attribution in the dialog itself of course... "Iriel's DevTools" box or something?)
06:22.17Mikk1I would change the prefix though so it wouldn't clash
06:23.17IrielI suppose not, I mean, it's essentially open source. Try not to mangle it too much so you can use updates later
06:23.56Mikk1Of course
06:24.39*** join/#wowi-lounge MoonWolf (n=MoonWolf@a80-127-128-193.adsl.xs4all.nl)
06:29.18MoonWolfgood day everybody
06:29.26Cairennhey MoonWolf
06:30.28*** join/#wowi-lounge chuckg_ (i=chuckg@66-237-5-116.starstream.net)
06:31.05MentalPowergnight folks
06:31.11Cairennnight MentalPower
06:31.50Esamynnnight Mental :)
06:33.07MoonWolfnight
06:34.02*** join/#wowi-lounge chuckg__ (n=chuckg@66-237-5-116.starstream.net)
06:36.30zespriYou know, what would be cool? If it was possible to have a tool that put all of the addons files into one file, and that this file can be loaded by WoW just as normal addon
06:37.15IrielWhat would that gain you?
06:37.21IrielOther than one huge ass file?
06:37.31Cairenn*boggle*
06:37.37CairennIriel said ass!
06:37.37Mikk1It's 100% possible
06:37.44Mikk1It's even easy
06:37.52CairennIriel never uses words like that!
06:37.55Mikk1Well, ok, a bit of work with fixing dependencies
06:38.00IrielBah, you know me better than that dear
06:38.09Cairenn*smooch*
06:38.15IrielSaved variables and ADDON_LOADED would be a trick
06:38.16zespriCairenn, I absolutely agree that ass is a wrong spelling. the right would be arse
06:38.19Irielas would load on demand
06:38.24Cairennzespri ;)
06:38.39Irielthough you could simulate much of that (other than ADDON_LOADED)
06:38.47Mikk1ADDON_LOADED is easily simulated
06:38.54Mikk1Though you'll get them all at the end
06:38.57IrielHow?
06:39.02IrielHow do you know who registered for it?
06:39.05IrielHow do you dispatch it to them all?
06:39.10Mikk1By hooking RegisterEvent?
06:39.24IrielSo you're assuming that the standard UI doesn't register it, and no other addons are loading?
06:39.30IrielSeems a bit shortsighted
06:39.50Mikk1Hm?
06:40.11IrielWhat if my addon loads (outside of the huge ass file) and registers it on an anonymous frame
06:40.15zespriIriel many people find it more convinient to operated (install, copy, delete) with a single file, and not with a dozen files scattered in different subfolders. On the other hand for programmers it's most convinient to separate logic in different files and graphics should always go to a separate file too
06:40.17IrielAnd it loads before yours
06:40.42zespriIriel, so this way it would be good bot for programmers and for user that don't want zillion files they need to care about
06:40.58zespriit would be simple for them then - one file, one addon
06:41.09IrielWell, you also assume your addon has no sounds or graphics or xml assets
06:41.15Irielwhich also is a bit shortsighted
06:41.21Mikk1Yea
06:41.28IrielReally, what we need, is for wow to be able to read addon files out of .zip files
06:41.37Mikk1That'd be neat
06:41.47Mikk1Or, hell, .mpq files
06:41.53Mikk1(ooooo wait)
06:42.06IrielWe can't create .mpq files
06:42.07Cairennokay, time for me to pass out, night all
06:42.10IrielWe can create .zip files
06:42.20Mikk1We can't create .mpq files? o.O
06:42.30Mikk1I'm 99% certain I've seen mpq packers
06:42.31zespriI didn't suggested comperssion because I wasn't sure that it's proper thing in terms of loading time
06:42.46IrielI'm thinking .zip as a bundling mechanism
06:42.48zespriIf the loading time is not an issue then I'd support zip files with both hands
06:42.50Mikk1Decompression is fairly cheap
06:42.51IrielCompression is largely irrelevant
06:43.00IrielDisk is slower than CPI
06:43.02IrielCPU
06:43.09Irielso compressed files often load FASTER than uncompressed ones
06:43.28zespriin that case, yes =)
06:43.38IrielI've not run across a widely supported mpq packer with a command line interface that works on linux
06:43.41IrielIf you find one, let me know
06:43.48Mikk1Bah. Linux =)
06:43.51zespriwidely supported?
06:43.57zespriyou have to be kidding
06:44.05IrielThus my 'Zip is better' mentality
06:44.11Mikk1But, yeah, plopping a dezip lib is done in like 3 full minutes
06:44.52Mikk1Cool idea
06:45.06Mikk1Does Slouken like swedish cookies? =)
06:45.25zespriI wonder if there is a tool that allows to sign MPQs at all. Granted that we don't know the blizzard private key, but at least in thepry
06:45.56Mikk1I'd give up on that theory
06:46.02Mikk1Cheaper to just hack the exes
06:46.05Mikk1Takes a lot less time
06:46.13IrielWe dont know the key, or the algorithm.
06:46.16Mikk1Cracking 1024 bit RSA still takes a wee little while ;)
06:46.24IrielAssuming they did it right, we'll never be able to fake the signature
06:46.32IrielAs mikk1 notes, youd want to hack the exe
06:46.40IrielThe signing isn't to protect the client from the developer
06:46.56Irielit's to protect users clients from other developers' code
06:47.39IrielIf you're trying to subvert the wow client there are easier ways than through lua
06:47.55Irielbut you can't possibly claim to have done so 'accidently' or 'only with blizzard supported tools'
06:48.07Irielreplace 'supported' with 'endorsed' if you prefer
06:53.59Karlnight iriel
06:54.51*** join/#wowi-lounge hyperChipmunk (n=staharaj@d14-69-214-77.try.wideopenwest.com)
06:56.41*** join/#wowi-lounge krka|work (n=kristofe@66.217.181.62.in-addr.dgcsystems.net)
06:58.16Esamynndamnit, no more errors now, but no data being output either :(
06:58.58Esamynnoh well, enough for tonight
06:59.01Esamynngood night all
06:59.03Mikk1Nothing beats not running your code to make it error free =)
06:59.15Mikk1g'nite ;)
06:59.45krka|workhttp://dilbert.com/comics/dilbert/archive/images/dilbert2006261730706.gif
07:00.07EsamynnMikk1: the problem is, it's not my code, its Gatherer code that i'm "upgrading"
07:01.01Esamynnahh well
07:01.08Esamynnlol, nice comiv krka
07:01.11Esamynncomic*
07:07.25*** join/#wowi-lounge zespri_work (n=andrews@124.197.8.92)
07:07.44*** join/#wowi-lounge ckknight (n=ckknight@rrcs-67-53-204-251.west.biz.rr.com)
07:08.17zespri_workMikk1, do you know that wowwiki doesn't look good in IE7?
07:11.48MikmaMikk1: btw, nice piece of code that MSBT, I did replace sct with that one and haven't regret it. But, you really should do 2 default positions, by swapping the left and right positions :)
07:13.42Mikk1zespri_work: O?
07:13.48Mikk1Mikma: MSBT? o.O
07:13.53*** join/#wowi-lounge ckknight (n=ckknight@rrcs-67-53-204-251.west.biz.rr.com)
07:14.09MikmaMikk1: well ain't you the one who did mikscrollingbattletext?
07:14.13Mikk1nope
07:14.25Mikmaoh someone said you are
07:14.25*** join/#wowi-lounge zespri (i=andrew@124.197.8.92)
07:14.58Mikk1purl, slap someone
07:15.00purlACTION slaps someone, keep your grubby fingers to yourself!
07:15.10Mikmasorry, my bad :)
07:15.35Mikk1zespri: What'd MS break this time?
07:16.38Thrae|AwayHmmm. :Show() doesn't like my custom tooltip with only 2 FontStrings.
07:17.35Mikk1I'd guess that the game engine gets very cranky if there aren't enough fontstrings to hold the few things it does want to put in it
07:17.36zespri_workMikk1 http://brutsoft.com/tmp/wikiie7.JPG Basicaly the left part of wowwiki topbar is not clickable
07:17.36zespri_workon all pages
07:18.12Thrae|AwayPut nothing, this is just a dynamic instantiation of the GameTooltip object with 2 FontStrings, one of which is set to the text "Foo".
07:18.40Mikk1zespri: Grats, that's the stylesheet. Only Rustak can touch that still.
07:19.08Mikk1I'll poke him some more about it now though.
07:19.17Mikk1He keeps saying he'll make it available for editing via the wiki
07:19.21Mikk1(Locked for admins only)
07:19.22zespri_workcheers =)
08:07.26*** join/#wowi-lounge Cairenn (n=Cairenn@CPE001217452e29-CM014500004571.cpe.net.cable.rogers.com)
08:07.26*** mode/#wowi-lounge [+o Cairenn] by ChanServ
08:12.43*** join/#wowi-lounge wereHamster (n=tomc@gw.ptr-62-65-141-13.customer.ch.netstream.com)
08:30.18Wobinwhat timezone +/-Xhours is PST?
08:31.00Karlit's 1:30am atm
08:32.20Wobinso minus 15 hours from me
08:34.32*** join/#wowi-lounge Elkano (i=Elkano@client0865.vpn.uni-saarland.de)
08:52.08Karlhttp://www.wowwiki.com/Satellite
08:56.49Karluploaded to wowi
08:57.19*** join/#wowi-lounge Depherios (n=Deph@67.189.88.161)
08:58.09Karler.. lol forgot to make it embeddable.. quick fix
09:02.27wereHamsterI need to spread my raid-progress website a bit more..http://dbservice.com:58026
09:08.14Wobinhm, StickyFrames is acting oddly
09:09.21MoonWolfwereHamster, looks nice.
09:11.34Karlok there, 1.1 is embeddable
09:11.37Karlwell
09:11.40Karldoh..
09:11.49Karli should just sleep eh..
09:18.07Elkanook, EBB 1.2 gone live :)
09:19.21Karlthere we go 1.11 has SeaHooks and SeaPrint correctly embedded
09:20.46Karllol.. i suck at spelling
09:20.59KarlSatellite ~= Satelite
09:21.32ElkanoDolby-wowi, are you there?
09:28.16Dolby-wowiwhats up Elkano
09:28.57Elkanothere's a small graphical bug on the page. on the list of an authors interfaces, a divider is missing between pending and active addons
09:29.49Dolby-wowiahh ok thanks for the heads up. :)
09:30.20Elkanoknow what I mean or need a screenshot?
09:30.35Dolby-wowii know what you mean
09:31.30Dolby-wowifixed. :)
09:32.41Elkano:)
09:47.47Elkanobtw: would it be possible to have the page not inform you about your own comments to bug reports/feature requests?
09:48.18*** join/#wowi-lounge XLVII (n=XLVII@CPE-58-162-91-73.qld.bigpond.net.au)
09:48.23*** part/#wowi-lounge XLVII (n=XLVII@CPE-58-162-91-73.qld.bigpond.net.au)
10:09.59wereHamsterwould be nice if someone could post the link to my website in the US forum..
10:43.02Industrialwhats your website? (im EU though :|)
10:50.16s|loupgratz to alle french fans ;)
10:56.55Elkanodoom to all French!
11:04.02IndustrialWho knows the names of the bag frames?
11:05.04ElkanoContainerFrame1 - ContainerFrame12
11:05.59wereHamsterIndustrial, http://dbservice.com:58026
11:06.26Industrialdjango!
11:06.26Industrial:P
11:06.31Industrialoh heh, it says so
11:06.32Industrial:P
11:10.49*** join/#wowi-lounge Elessdy (n=no@d26-185.rb.lax.centurytel.net)
11:12.22*** join/#wowi-lounge SinePi (i=sinus@dsz187.neoplus.adsl.tpnet.pl)
11:20.59*** join/#wowi-lounge Atog (n=Atog@195-144-094-012.stat.adsl.xs4all.be)
11:29.35*** join/#wowi-lounge zespri|home (i=andrew@124.197.16.50)
11:45.35Mikk1Ok, um... So.. My mod is listening to whisper commands via registering CHAT_MSG_WHISPER... And ones it recognizes as commands get registered in a "hide this please" table  that chatframe hooks take care of.
11:45.48Mikk1Then let's assume the user is being a turd, and goes and disables Whispers in his frame
11:45.53Mikk1And then he re-enables them
11:46.01Mikk1Suddenly, the chatframe gets events before I do
11:46.12Mikk1Is there a clear-cut painless solution to this? =)
11:46.35zenzelezzprevent the user from disabling whispers! ;)
11:46.37Mikk1(And I don't really like the fact that I'm relying on events being delivered in a certain order of registration to begin with)
11:50.31Mikk1Bleh. I'm going to end up hooking ChatFrame_OnEvent as well as doing my own event handler.
11:50.41Mikk1And trying to detect duplicate messages
11:50.45Mikk1I can feel it coming =(
11:52.54*** join/#wowi-lounge ckknight_ (n=ckknight@rrcs-67-53-204-251.west.biz.rr.com)
12:36.17*** join/#wowi-lounge Kaso (n=Jonathan@host81-159-0-248.range81-159.btcentralplus.com)
13:02.08AtogMikk1: ugh, that does sound like a pain
13:02.08AtogI have the same problem with doing /who polls
13:02.08Atogit works. sometimes.
13:04.42*** join/#wowi-lounge MentalPower_ (n=MentalPo@host-70-45-81-230.onelinkpr.net)
13:11.04Kasoany WoWWikians around?
13:18.16*** join/#wowi-lounge kaso| (n=Jonathan@host81-159-2-92.range81-159.btcentralplus.com)
13:26.13Mikk1Me
13:29.43Mikk1Kaso: I'd slam him in the vandals list and let admins decide what to do
13:29.50Mikk1If you're talking about Tefal that is
13:36.35*** join/#wowi-lounge Kaso (n=Jonathan@host81-159-2-216.range81-159.btcentralplus.com)
13:36.44Mikk1Kaso: I'd slam him in the vandals list and let admins decide what to do
13:36.45Mikk1If you're talking about Tefal that is
13:37.29Elkanolink looks like they are running some affiliate programm... so I vote for correct way to handle this :)
13:37.59Kasoah, well i removed his links and left a message in his Talk already
13:38.10Mikk1Still not too late to dump him in vandal list =)
13:38.16Mikk1All his additions sans one is pasting that damn link of his
13:40.38Mikk1I'll rephrase: If you won't, I will =)
13:44.04*** join/#wowi-lounge kaso| (n=Jonathan@host81-159-128-145.range81-159.btcentralplus.com)
13:45.18kaso|correct me if im wrong, but its better to have an Empty page than an empty stub?
13:45.30Mikk1a nonexistant page you mean?
13:45.39Mikk1or just a page with 0 bytes in it?
13:46.41Mikk1I prefer to simply not have the page at all if there's no info to go in it.  If I come across an empty page, I try to determine wtf it's about and slap the right stub tag on it; that way it at least shows up in the right stub category.
13:47.06Mikk1(And users that come across it are at least told that it's an NPC or an Ability rather than ... well.. whatever)
13:47.50Mikk1In that above sentence, "empty page" means "link is blue, but there's not a single byte in the page"
13:56.07*** join/#wowi-lounge dreamss (i=dreamss@0wn3d.vcdquality.com)
14:14.59*** join/#wowi-lounge zinor (n=mirc@dslb-088-064-185-181.pools.arcor-ip.net)
14:19.49Atoghmm
14:20.03Atogmy addon currently removes all messages from the chatframe.
14:20.08Atogas in: you don't get anything.
14:20.14Atogin any channel, or any frame.
14:20.28AtogI guess it needs work.
14:23.19zenzelezzwho needs communication in an MMO anyway
14:28.56Atogtrue, true
14:29.08Atoganyway, I'm doing /who queries to obtain class of the player that whispered me
14:29.18Atogwhich works, unless multiple people do it at the same time
14:29.34Atogsince you can't do consecutive /who commands
14:29.44Atogany idea of how long that cooldown period is?
14:31.22*** join/#wowi-lounge Calamitous (n=Miranda@213.235.243.226)
14:31.35Calamitoushallo
14:31.57Calamitousjemand aktiv hier?
14:33.03krka|workenglisch bitte
14:33.17Calamitousoh sorry
14:33.24Calamitousexcuse me, didn't know
14:33.52Calamitousbut I could have guessed it as I read the channel from wowwiki.com ;)
14:34.08krka|worknot much activity in any case
14:34.29s|loupdoes anyone know how to use the TitleRegion element of frame?
14:35.00Calamitousdamn, I'm trying to find some help or links to get used to UI (expecially the xml possibilitys)- no problems with lua so far...
14:35.30s|louphttp://www.wowwiki.com/Main_Page
14:35.44s|loupwidget API or XML User Interface
14:36.13krka|workpretty sure he/she already knew about wowwiki :P
14:36.30Calamitousof course ;)
14:36.41s|loupmaybe he didnt found the correct link for widgets ^^
14:37.00s|loupwhat you need?
14:37.01krka|worki suck at ui... i suggest reading other peoples (simple) addons / reading the wiki, experimenting with simple stuff
14:37.12Calamitousproblem ist: I find enough tutorials for writing scripts and docus for the functions, but few descriptions or examples for a ui- xml file
14:37.31Calamitousah reading others ui maybe an idea
14:38.02Endthe ui kit thingy of blizzard's has (two I think?) simple addons that come with it
14:38.11Endas examples
14:38.37Calamitousi downloaded unfortunately i can't use it without an installed wow... so far im @work and can't install wow :D
14:38.43Endah
14:38.50Endwell, that would slow you down a bit
14:39.04Atogpretty much
14:39.12zenzelezzyou should tell your boss that not having WoW on your  work computer slows down your work
14:39.14Atoghow are you going to debug something without wow? :)
14:39.31Atogcorrection: something UI-like.
14:39.35s|louplooking simply at code ^^
14:39.38Calamitouswell I planed it this way: make the mani part @work and debugging @home ;)
14:39.39Atoganyway, there's no real good resource
14:39.54s|louplook at qury Calamitous
14:40.05Atogbut I can help you with a small addon that I just wrote
14:40.29Atogwhich is relatively simple, and does a few nifty things which you can use.
14:41.08Calamitousthat would be nice, is it working, so i can be sure it states as functinal?
14:41.17*** join/#wowi-lounge Kaso (n=Jonathan@host81-159-0-112.range81-159.btcentralplus.com)
14:48.24Atogyes, it works.
14:53.39*** join/#wowi-lounge Andalia (n=xx@p54AD861A.dip0.t-ipconnect.de)
14:56.15Calamitousthat sounds nice, can I download it somewhere ot something?
14:58.25*** join/#wowi-lounge kaso| (n=Jonathan@host81-159-0-42.range81-159.btcentralplus.com)
14:59.08*** part/#wowi-lounge Atog (n=Atog@195-144-094-012.stat.adsl.xs4all.be)
15:13.56*** join/#wowi-lounge MoonWolf (n=moonwolf@f176182.upc-f.chello.nl)
15:14.45*** join/#wowi-lounge Kaso (n=Jonathan@host81-159-1-21.range81-159.btcentralplus.com)
15:17.02*** join/#wowi-lounge SB1 (n=Death@c-67-186-244-23.hsd1.ut.comcast.net)
15:17.56*** part/#wowi-lounge SB1 (n=Death@c-67-186-244-23.hsd1.ut.comcast.net)
15:18.56*** join/#wowi-lounge ScytheBlade1 (n=Death@about/pxe/ScytheBlade1)
15:21.19*** join/#wowi-lounge net\afk (n=net@dslb-088-064-189-005.pools.arcor-ip.net)
15:21.44*** join/#wowi-lounge zinor` (n=mirc@dslb-088-064-189-005.pools.arcor-ip.net)
15:22.49Industriala={} a.b={} a.c='foo' a=nil
15:22.56Industrialwill a.b and a.c be GC'ed?
15:23.02MoonWolfyes
15:23.05MoonWolfi think so
15:23.05Industrialok good
15:23.35IndustrialSo I can put a whole table of constants and stuff that i need in my addon and erase/fill it on enable/disable
15:23.39Industrial\o/
15:27.48krka|workfill it? how
15:30.53zenzelezzmagic
15:49.25*** join/#wowi-lounge zespri (i=andrew@124.197.5.7)
15:50.17*** join/#wowi-lounge dukeku_ (i=dukeku@c-67-160-162-146.hsd1.or.comcast.net)
15:50.35*** join/#wowi-lounge Shadowed (n=outlaw@c-67-161-0-166.hsd1.ca.comcast.net)
16:11.17ThraeMikk, Iriel?
16:18.55*** join/#wowi-lounge Tem (n=tardmrr@204.90.50.252)
16:36.19*** join/#wowi-lounge [Wobin] (n=Wobin@221.221.19.150)
16:40.21*** join/#wowi-lounge Elkano (n=elkano@ip-213-135-2-166.handshake.de)
16:41.23*** join/#wowi-lounge Borik (n=SirLutho@194-144-96-135.du.xdsl.is)
16:41.42BorikYarr, anyone here that can help me with a small problem of mine?
16:42.30CairennPossibly.  Tell us what the problem is.
16:43.18BorikWell, all items have IDs, do they not?
16:44.35BorikAssuming that this is so, and that these item IDs correspond to the IDs they have on item databases such as the Allakhazam one, I need a method to extract said ID from an item link in-game
16:45.20*** join/#wowi-lounge Osagasu (n=Kronus@208.104.133.240)
16:45.50zenzelezzI can't remember the format of item links, but the ID is part of it of course
16:47.02BorikWell, then I have a problem :D
16:47.13Cairennhave you checked the wiki for info?
16:47.54BorikI looked around, and googled, but, seeing as I don't know what exactly to look FOR, it didn't bear much fruit
16:48.02Cairenn*nod*
16:48.21Cairennwell, hang around if you have time, seems most aren't actually at keys right now
16:48.53Cairenntry asking again in a while when the channel is a bit more active
16:48.56BorikGot a raid to run in 12 minutes or so, and a quick hack to make in my DKP addon before then, so the sooner the better :)
16:49.08zenzelezzyou're a bit brief in explaining what you want to do though... but something like http://www.wowwiki.com/API_GetItemInfo ?
16:49.34BorikFound that function, but it assumes you already have the item ID
16:50.48BorikAnyway, here's sort of what I need:  Assuming I input a slash command of /bitem [ITEMLINK], I need to know what format the [ITEMLINK] would be in when parsing it, that's really all
16:50.50zenzelezzI wouldn't know the answer anyhow; but you're not explaining where you expect to get the item name/link/... from
16:51.25BorikSorry, C++ is my native programming language, and LUA and Blizzard's API don't make things very easy for me :)
16:54.38Elkano|cXXXXXXXX|Hitem:x:x:x:x|h[bla]|h|r
16:54.57[Wobin]~16*3
16:54.58purl48
16:55.17JoshBorkehello :-)
16:55.27BorikUhm, it might be my ignorance, but would you mind elaborating on that Elkano?
16:55.31[Wobin]Just abusing purl =)
16:55.41*** join/#wowi-lounge Kirov (n=Kirov@adsl-64-161-16-97.dsl.sntc01.pacbell.net)
16:55.42[Wobin]I need 48 Dust of Deteriation
16:55.55JoshBorkethe first x after Hitem is th item id
16:56.08Elkano|cXXXXXXXX -> color code of the link as hex alpha red green blue
16:56.23Borikwhich would correspond to it's rarity?
16:56.51JoshBorkelocal _,_, item, name = string.find(param, "|c%x+|H(item:%d+:%d+:%d+:%d+)|h%[(.-)%]|h|r")
16:57.08JoshBorkelocal _,_, itemID, name = string.find(param, "|c%x+|Hitem:(%d+):%d+:%d+:%d+|h%[(.-)%]|h|r")
16:57.19JoshBorkeerm, but you don't need the name and what not
16:57.21Elkano|Hitem:x:x:x:x actual link in form item:a:b:c:d with a = base item, b = temp buff, c = suffix, d = id coresponding to other data like crafter, charges, ...
16:57.41BorikOh god, going too deep here, I'm not at home with this language :D
16:57.42[Wobin]or local _,_,itemID = string.find(link, "item(.-):"
16:57.43zenzelezzis the name a "%d" form?
16:57.50Elkanoin order to get the rarity, catch the item:x:x:x:x part and use GetItemInfo
16:58.09JoshBorkewobin's is cleaner
16:58.20JoshBorke( zenzelezz ): no
16:58.31JoshBorke( Borik ): basically it's some regex to extract information from the link
16:58.32Borikand in his example, itemID will then be the ID of the item linked?
16:58.36[Wobin]yes
16:58.42Elkanowobin, item:(.-): would be better, wouldn't it?
16:58.43BorikWell, I'm not terribly fond of regular expressions either ;D
16:58.46[Wobin]with a closing bracket
16:58.49[Wobin]oh yes
16:58.51[Wobin]very true
16:58.55[Wobin]I missed a :
16:59.45Borikso the proper line would be..?
16:59.48BorikI'm feeling quite dense here
17:00.41JoshBorke( Borik ): as wobin said: 'local _,_,itemID = string.find(link,"item:(.-):")'
17:00.44TemElkano, that may be too greedy even though you've used -
17:00.52JoshBorkewait
17:00.56JoshBorkewhy use . instead of %d?
17:01.04JoshBorkeitemID has to be a number, no?
17:01.08TemI'd suggest string.find(link,"item:%d+")
17:01.16ElkanoBorik, look at the examples here: http://www.wowwiki.com/API_GetItemInfo
17:01.17[Wobin]Yes, but - matches the shortest 'match'
17:01.23[Wobin]so it does the same
17:01.33[Wobin]you'd still have to tonumber the itemID anyway
17:01.36Temyes, but it can give you problems
17:01.53BorikWell, I have to bail now, got a raid to run.  Thanks a lot for the assistance, appreciate it!
17:02.08JoshBorkenp borik
17:02.15Temfor example: "I have no idea what kind of context I'd say this in but:iitem:12b123s."
17:02.16Elkanowell, but matching the whole pattern is better since then it's less likely to be spoofed (in case you are matching chat)
17:02.36Temyes
17:02.47BorikCheers
17:02.48Temthat was totally the next thing I was gonna say
17:02.53KirovIt's also faster
17:03.01[Wobin]Again, depends on what you're doing
17:03.08Elkanomatching the ful syntax means that you only match links that thus have been validated by the server
17:03.32Temright
17:03.40KirovMatching larger patterns is faster than smaller ones since the find process can exit out earlier.
17:03.46Temif you already know you have a valid link, the the whole thing is moot
17:03.59[Wobin]Kirov: Well that's why .- is faster than .*
17:04.57KirovWobin - but by only doing a search for item:(.-). the find can't exit until there are only 7 characters left in the string.
17:05.45KirovDoing a full pattern search it can exit out with ~20 characters remaining, and completely ignore any strings that aren't long enough.
17:06.05[Wobin]ah, rightio
17:21.29TainHas anyone done a paid character transfer?
17:23.10Cairennnot I
17:24.08TainAh never mind!  I was doing one and there was a problem with the process on the blizzard website.  I emailed support about it and it looks like they fixed it.  I'll take full credit.
17:25.28Temoh piss
17:25.42TainAlthough the support help URLs they sent in the email still resolve to 404 not found pages.  Crazy people.
17:25.46Temthe realm I wanted to transfer to isn't eligible
17:34.24Cairenn=/
17:36.35XCIXSharp thinking, 99!
17:36.44zenzelezzthough IC would probably have been simpler
17:36.45XCIX</nasel voice>
17:36.49Endhmm
17:37.00XCIXAlthough not really legal?
17:37.05Endtransfers off of my realm just opened
17:37.16XCIXRats deserting the ship, End?
17:37.24Endprobably
17:37.41EndI've lost interest in my character on there though
17:38.01Endwe stopped raiding bwl because we stopped getting 40 people suddenly
17:38.14End(we are still very capable of doing ragnaros though....)
17:38.17XCIXEnd: Transfer out to another server =)
17:38.22Endmaybe I dunno
17:38.27EndI'm leveling an alliance character now
17:38.39Endconsidering I haven't played alliance it's actually interesting
17:38.49Endquests I've never seen before :P
17:38.52KirovWhat race?
17:38.57Endnight elf
17:39.04End(priest)
17:39.22KirovTip #1 for leveling an alliance character.  Get the fuck out of Darkshore and head to Westfall
17:39.30EndI did that already
17:39.32End:P
17:39.32Kirovhehe
17:39.46EndI did a few quests in darkshore, and decided it sucked a lot
17:40.05XCIXKirov: So. True.
17:40.06Endincidently...I create this char like...over a year ago
17:40.09KirovDarkshore has some fairly interesting quests, but you run 3-4 times as much to get to them, and some of them are a real pain to find
17:40.10ThraeWhen looking for both speed and memory usage, we want to avoid too much GC, right?
17:40.10XCIXDarkshore sapped my will to live
17:40.21Endbut it was still a level 14ish character until last week
17:40.26Endit's level 20 now
17:40.28KirovThrae - avoiding gc is good, yes
17:41.27ThraeI'm trying to figure out if using one string with lines delimited by '\n' is more efficient then using multiple FontString objects with a psuedo-tooltip.
17:42.53KirovAnd what does that have to do with gc?
17:43.11KirovAnd yes, I believe it is more efficient
17:43.42ThraeSay we have 5 lines in the tooltip, that's a 5-line string we're setting up for GC upon mousing over a different entity. Compare that to the overhead of using multiple FontStrings instead of just 1 and just hiding unused FontString lines instead of setting up their strings for GC.
17:44.12Kirovwell, technically those don't get gced as far as I know
17:44.22Endstrings -do- get GC'd, but not like tables
17:44.32Kirovwell
17:45.11Endwell...kinda like tables
17:45.22Endyou don't really control strings though
17:45.26ThraeYeah I know that, but I want to avoid putting too much stress on GC. What if I had 10 unique entities on my screen and I moved my mouse over each one of them in the span of 2 seconds.
17:45.41EndFontStrings don't get GC'd though
17:46.14ThraeEnd: Are you talking about the text of the FontString or the FontString object itself?
17:46.37Endthe object itself...I'm not sure how the text is stored
17:46.51Kirova font string always has text
17:46.55Kirovit never gets gced
17:46.56Endlikely it's just C/C++ style string
17:47.20Kirovif you change the text on a fontstring it's just changing the existing string.
17:47.32Mikmaanyone remembers a name for addon which doesn't allow you to stealth/prowl if you have DoT/Poison on you?
17:47.47Wobinrarar
17:47.49Wobinpoison
17:47.52Wobinrarar
17:47.57ThraeSo what happens if I do local fs = frame:CreateFontstring() fs:SetText("Foo") fs:SetText("Fooooo2")
17:47.57Endwhen you pull the string out, it just creates a lua-side string
17:48.03End"Foo
17:48.04Ender
17:48.17WobinI spent two hours in Felwood trying to get the toxic horror drops for the quest
17:48.29ThraeAre you saying "Foo" isn't stored as a Lua string object and therefore not subject to Lua GC?
17:48.33End"Foo" is
17:48.37Endit's a lua string
17:48.47Endhowever, fs copies itr
17:48.47WobinI was one and 3/4ths hours in with not a single drop before I realised I was still in a raid group
17:48.58WobinNext four kills got me the three drops
17:48.59Kirovit's not subject to lua GC because it's never unreferenced
17:49.03Wobinrarar
17:49.04Wobinpoison
17:49.06Wobinrarara
17:50.40Kirovhmm ... where's iriel when you need him
17:50.42ThraeOK, what if I had a loop that did for i=1,100,1 do fs:SetText(string.format("%s %d", "Foo", i)) end <-- this would be 99 GCs, right?
17:50.55Thrae99 strings added for GC, I mean
17:51.17KirovThrae - no, because you're constantly editing the same string
17:51.33krkayes, 99 gcs
17:51.49Kirovor am I completely off my rocker
17:51.50Endactually
17:51.55krkayes :)
17:51.56ThraeI thought string.format worked the same way as concatonation in this case?
17:52.00krkastring.format creates a lua sring
17:52.04Kirovah
17:52.13Kirovbut not the SetText() itself
17:52.34krkacorrect
17:52.42krkai believe it would just hold a reference to the lua string
17:52.48krkaor maybe it makes a copy into c-space
17:53.17KirovI'm guessing a copy, since changes to the string does not effect the FontString object
17:53.38Endhmm
17:53.41ThraeHmmm. So if I need to do a string.format every frame, how can I avoid putting tons of strings on the string pool for GC?
17:53.43Endit could just copy the reference
17:53.49krkaKirov i am not sure you understand
17:53.54wereHamsterevery frame?
17:53.54Endyou can't edit lua strings
17:53.58krkayou can't change a string in lua
17:53.58krkathey are immutable
17:54.02Endyeah
17:54.04krkaevery time you "change" a string a new one is created
17:54.14End"xxx".."vvv" is an ENTIRELY new string
17:54.18Endjust like
17:54.19Kirovalso, in the case of the string.format(), it would create a local scope string that gets destroyed as soon as it leaves the scope?
17:54.20Endv = "xxx"
17:54.23Endv.."vvv"
17:54.25Ender
17:54.29Endv = v.."vvv"
17:54.33Kirovlol
17:54.33krkastrings are never in the local scope
17:54.40krkaonly references and primitives are
17:54.42wereHamsterThrae, what will your addon display?
17:54.48Kirovhmm
17:54.48krkasuch as nil, boolean, number
17:54.49ThraewereHamster: TinyTip
17:55.07MikmatinyTip <3
17:55.08wereHamsterand what does change every frame?
17:55.50ThraeWell, say someone has parkison's disease and mouses-over a different unit every 200 milliseconds.
17:56.04ThraeThat's not every frame, but it's still a lot of string.format calls.
17:56.21krkastring.format is fast
17:56.51ThraeIt isn't about the speed of string.format, it's about all the strings being placed on the pool.
17:57.03krkaall the strings?
17:57.09krkawhat strings?
17:57.36ThraeWell each new entity that is moused over, 3-40 new lines of strings need be generated.
17:57.52krkayou realize that if the string "Example" is in the string pool, there can never be another string in the pool called "Example"
17:58.06Endyea, they're shared, aren't they?
17:58.16krkawhich explains why a string comparison in lua is simple an address comparison
17:58.25ThraeWell, let's consider each entity unique.
17:59.12krkaimo, strings aren't a problem at all... as long as their fairly short anyway. it's tables and function closures that fill up the memory
17:59.28Thraekrka: That was my original question, about string length
18:00.01ThraeIE, with a dynamic tooltip, should I use 1 FontString per line or JUST 1 FontString delimited by '\n' for each line
18:00.35krkai would choose one per line
18:00.42ThraeBy what we've been talking about, it seems the first would be more efficient now.
18:02.40krkadepends really...
18:02.47ThraeWhile I've been doing a dynamic tooltip, I've found that the GameTooltip object and GameTooltipTemplate pretty much go hand-in-hand. I found it's easier just to make a Frame and dynamically size it myself.
18:02.50krkaon the chance that the smaller strings would likely be used again
18:03.01Thraekrka: Exactly
18:03.29krkaand how you create the big string
18:03.38krkaif you create the big string from the smaller strings, then obviously it won't help
18:03.57ThraeWhat I don't like about GameTooltipTemplate is all the crap it adds in about the money frame (not needed for unit tooltips) and 30 static font strings instantiated
18:04.43ThraeActually, make that 60 fontstrings (left and right)
18:05.32*** join/#wowi-lounge Cairenn (n=Karen@CPE00045a2bfcbc-CM000f212f84be.cpe.net.cable.rogers.com)
18:05.32*** mode/#wowi-lounge [+o Cairenn] by ChanServ
18:06.14ThraeEven if they don't contain any text, I'm sure having at least 57 unused fontstrings sitting in memory isn't helping.
18:07.03krkamight hurt memory, but speed is probably unaffected
18:07.38ThraeYeah I was thinking of memory, not speed in that case.
18:11.18Thraekrka: Would there really be anything to gain for using GameTooltip + GameTooltipTemplate vs just a Frame object, if you're dealing with units?
18:13.26ThraeA GameTooltip object has all kinds of extra functions which I'd never use.
18:18.56WobinHard Gay! Fuuuuuuuuuuuuuuuu!
18:19.13zenzelezzsomehow that sounds kinky
18:24.17Wobinhttp://www.youtube.com/watch?v=igC4bPDp6cU
18:36.20*** join/#wowi-lounge ckknight (n=ckknight@rrcs-67-53-204-251.west.biz.rr.com)
18:37.11*** join/#wowi-lounge chuckg (i=chuckg@66-237-5-116.starstream.net)
18:39.14*** join/#wowi-lounge [Wobin] (n=Wobin@221.221.19.150)
18:43.33*** join/#wowi-lounge ComicSansMS (n=der_weih@p5497E653.dip.t-dialin.net)
18:43.44ComicSansMSgreetings everyone!
18:48.22*** join/#wowi-lounge Kaso (n=Jonathan@host81-159-1-109.range81-159.btcentralplus.com)
18:55.30[Wobin]Does anyone know how to implement sending attachments in php from a form? Like for example, I have a form that takes a file from the users hard drive, and I want to attach that file and email it.
19:01.13*** join/#wowi-lounge Miravlix (i=dragon@arcdraco.net)
19:05.42*** join/#wowi-lounge Miravlix (i=dragon@arcdraco.net)
19:07.11*** join/#wowi-lounge Shadowed (n=outlaw@c-67-161-0-166.hsd1.ca.comcast.net)
19:07.47Shadowedso has anyone made it onto the 1.11.2 PTR yet?
19:08.21*** join/#wowi-lounge Miravlix (i=dragon@arcdraco.net)
19:13.21Elkanothere's a 1.11.2 PTR?
19:13.29Shadowedyeah
19:14.16Shadowedhttp://forums.worldofwarcraft.com/thread.aspx?fn=wow-general&t=8955273&p=1&tmp=1#post8955273
19:18.35Shadowedwell, it *should* be up  but apparently it's not
19:23.51Industrialhow do i chack IF i have a target?
19:23.59Industrialcheck*
19:24.05ShadowedUnitExists( "target" )
19:24.11krkaUnitExists ... damn
19:24.17Shadowedhehe
19:28.12Industrialoh right
19:28.12Industrial:p
19:31.40krkaor you can bind a key to your own function, which performs an attack, and then you check for an error message and parse that to see if you have a target
19:32.23Shadowedthat doesn't as sound as complicated as it could get
19:32.32krkagive me some more time :)
19:33.05Industrialwellll
19:33.22Industrialhttp://pastebin.ca/80733
19:33.42IndustrialidUnitframes.lua:143: attempt to index field `?' (a nil value)
19:33.54Industrial:S
19:34.05ShadowedDoesn't UnitClass return nil if you have no target?
19:34.13Industrialah duh
19:34.13Industrial:P
19:34.49chuckgAce2 scares me.
19:34.52chuckgEmbedded libraries? :|
19:35.07WobinAce2 is niftier than it seems
19:35.21WobinEmbedded libraries are the way of the future!
19:35.35*** join/#wowi-lounge Iriel (n=daniel@adsl-71-158-244-138.dsl.pltn13.sbcglobal.net)
19:35.35*** mode/#wowi-lounge [+o Iriel] by ChanServ
19:36.11Industrialchuckg: well does sea/earth scare you?
19:36.12Industrial:P
19:36.41chuckgI don't use those!
19:37.00krkabecause they scare you?
19:37.05chuckgWas hoping that Ace2 would have a library for building dynamic frame though.
19:37.46Wobinchuckg: You can always write one!
19:37.49krkaCreateFrame isn't enough?
19:38.00WobinAlthough I think Thrae is working on Gooeyfigs
19:38.10WobinWhich could be what you want
19:38.26krkanow we can create dynamic from xml templates, right?
19:38.27WobinAnd Tem is still working on AceGUI
19:38.31TainI never have embedded a librarian.
19:38.31chuckgI don't have the first clue how to even make a dynamic frame.
19:38.32krkaor is that soon?
19:38.33chuckgI want someone to make one for me!
19:38.34chuckg=D
19:38.46WobinTain: Some of those librarians are the hottest =P
19:38.56TainYou speak the truth, Wobin!
19:39.28Temkrka, yes, you can use XML templates with CreateFrame now
19:39.35TemI personally don't like it
19:40.14Industrialchuckg: whats a dynamic frame?
19:40.20chuckg<PROTECTED>
19:40.30chuckgI'm using dynamic frame to describe the ones that are created via lua.
19:40.39chuckgSince they're "dynamic" in the sense that they're not static xml.
19:40.53chuckgTerminilogy isn't my strong point.
19:40.58chuckg..but I guess writing LUA isn't either.
19:41.33Industrialace just does stuff for you so you wont have to worry about it :P
19:41.50Wobinchat commands, db, events, hooking, etc etc etc
19:41.50Industrialnot really at a price
19:42.29chuckgSo the AceOO is what I need to include to do MyPlugin:Function() stuff?
19:42.30chuckgRight?
19:42.51Temnot really
19:42.55Wobinnot really
19:43.00krkaorly?
19:43.01chuckgI'm still hazy on where the plugin registration goes on now that the new new( {} ) is gone.
19:43.03TemAceOO is an object model that we use
19:43.06WobinAceOO just allows for an easy method of OO
19:43.13Temallows for some pretty interesting constructs
19:43.34WobinIt does the inheritance/mixins/etc for us
19:43.37krkaOO is for overrated, the extra O is for overly
19:43.40Wobin(well the code behind it)
19:43.56Wobinkrka: OO is great =P
19:44.08WobinIt makes for managable code =P
19:44.13krka^O.O^
19:44.38krkayou could write a "verifier" in lua that checks the semantics
19:44.42kergothTem: aceoo enforces the interfaces the class defines, at instance creation time
19:44.45Wobinwhere is it bugging, Industrial ?
19:44.47Industrialoh
19:44.52Industrialnow i do
19:44.53Industrial:|
19:45.00Industrialarg1 isnt a unit ofcource
19:45.01Industrial:
19:45.02Industrial:P
19:45.04kergoths/defines/uses/
19:45.11kergoth~dance
19:45.13purlrumour has it, dance is ah, ah, ah, ah, stayin' elive, stayin' elive..
19:45.31Tems/info/enfo/
19:45.44Industrialbadabang baby! a target frame is born
19:45.52Industrial:)
19:46.12End~unproductivity
19:46.13purlyay!
19:46.25kergoth~productivity
19:46.26purlyay! i mean.. boo.
19:53.27Industrialdeath to comic sans!
19:57.38Endstone
19:57.45End~stone
19:57.47purlpaper, I win.
19:57.53End~dynamite
19:58.08Elkanosticks and stones ;)
19:58.47Endbleh, gotta fix scissors too
19:58.54End~scissors
19:58.55purlscissors, play again. | <reply> rock, I win. | <reply> paper, you win.
19:58.58Endsee, it's done wrong
19:59.45End~scissors
19:59.47purlrock, I win.
20:00.30*** join/#wowi-lounge ckknight_ (n=ckknight@rrcs-67-53-204-251.west.biz.rr.com)
20:00.32End~paper
20:00.33purlpaper, play again.
20:00.38Elkano~scissors
20:00.39purlscissors, play again.
20:00.56Elkano~knife
20:00.57purli guess knife is a tool used to control the network via SNIP
20:01.06End~scissors
20:01.07purlscissors, play again.
20:01.22Endoh, silly 6 second rule
20:01.26End~scissors
20:01.27purlrock, I win.
20:01.32End~botsnack
20:01.32purlEnd: :)
20:02.42Endabout comm channel: didn't slouken already say not gonna happen a fair while ago?
20:02.48IrielI'd imagine he did
20:02.51End(of course, that could change)
20:03.10End(I think it is a game design decision more than anything else)
20:03.12IrielIndeed, it's happened before, but still, I think people should spend more time writing an implementation and less time whining
20:03.30Endyeah
20:04.28Thrae|AwayIriel: Before I set down the wrong path, do you know of any reason why I should use the GameTooltip object class instead of Frame if I'm making my FontStrings dynamically?
20:04.31IrielThe 'whining' isn't directed at those who're contributing valuable thoughts and suggestions 8-)
20:04.44IrielThrae|Away | Do you intend to call :SetBlah(X) on it?
20:04.48Endoh
20:04.53Thrae|AwayIriel: Nope.
20:04.54Endhe responded to my setcursor thread
20:05.03IrielThrae|Away | Or are you just making an informational popup?
20:05.51IrielThrae|Away | If it's just a popup, I think you're better off going with a Frame and making your own methods for managing its content (though implementing AddLine would likely be handy for others who want to abuse your object)
20:06.31Thrae|AwayIriel: In my case I'd be hooking SetX anyway so I can grab some information that the game engine sends to GameTooltip.
20:06.41Endoh neat, someone update wowwiki already
20:06.44Thrae|AwayYeah, that's what I thought.
20:06.52IrielI did, already
20:06.52Endoh, Iriel updated wowwiki already
20:06.54Endhehe
20:07.04*** join/#wowi-lounge ckknight_ (n=ckknight@rrcs-67-53-204-251.west.biz.rr.com)
20:07.22Endincidently, now I have a problem
20:07.46Endthe blp convertor utility I use will not do
20:08.00Endunless there are some flags I can send it that I don't know about it
20:08.25End(I suppose...I could write one...but that sounds like work)
20:16.38Industrialhmmm, TargetFrame keeps showing. How Do i get i from going away forever?
20:16.53*** join/#wowi-lounge Cide (i=Cide@81-226-233-5-no60.tbcn.telia.com)
20:17.04Industrials/from(.+)going/to\2go
20:17.17Industrial\1 :P
20:17.57zenzelezzstop targetting stuff :-p
20:18.27Industrialhehe
20:19.08*** part/#wowi-lounge juan|bob (n=juanvald@c-24-18-221-35.hsd1.wa.comcast.net)
20:45.10ShadowedSo has anyone gotten on the 1.11.2 PTR yet? Still don't see the server up
20:45.22Industrialno but really... how do i get the targetframe never to show
20:46.15Industrialhttp://www.wowwiki.com/API_Frame_SetScript
20:46.16Industrialoh
20:46.16Industrial:P
20:48.38ShadowedWouldn't it be better to hook TargetFrame_Update and just send it to a blank function?
20:49.50Industrialnah, i dont know what other addons wanna do with it, i just hide it
21:02.24*** join/#wowi-lounge Ratbert_CP (n=KCummins@proxy-ce5.disney.com)
21:03.26Iriel<PROTECTED>
21:03.35EndI agree?
21:12.17haste_Industrial, they unregister it's events, then hide it
21:16.56*** join/#wowi-lounge ScytheBlade1 (n=Death@about/pxe/ScytheBlade1)
21:28.08*** join/#wowi-lounge MentalPower_ (n=MentalPo@host-70-45-81-230.onelinkpr.net)
21:31.47ShadowedSo I guess Blizzard broke account management for the new site
21:32.21Endit worked for me when I tried it earlier today
21:32.28Shadowedyeah same
21:32.29Endbut it was the same old account management when I tried
21:32.35Shadowed404 page not found when i try now
21:32.38Endah
21:32.39Endhmm
21:55.02*** join/#wowi-lounge AnduinLothar (n=karl@adsl-67-125-158-108.dsl.irvnca.pacbell.net)
21:59.07Industrialhttp://img513.imageshack.us/img513/7927/wowscrnshot0706062314413te.jpg
22:05.20*** join/#wowi-lounge snurre (n=snurre@AVelizy-153-1-27-108.w83-199.abo.wanadoo.fr)
22:10.19*** part/#wowi-lounge Cairenn (n=Karen@CPE00045a2bfcbc-CM000f212f84be.cpe.net.cable.rogers.com)
22:25.09*** join/#wowi-lounge zespri_work (n=andrews@124.197.5.7)
22:25.32zespri_workmorning boys and girls
22:31.06*** join/#wowi-lounge ScytheBlade1 (n=Death@about/pxe/ScytheBlade1)
22:31.56zespri_work10:30 in auckland, 02:30 in moscow, 15:30 in seattle
22:32.41*** join/#wowi-lounge Grumpey (n=Owner@dialup-4.152.210.44.Dial1.Atlanta1.Level3.net)
22:33.45AnduinLotharthat doesn't mean anyone is awake :P
22:36.08zespri_workAt least you Karl could have said something like 'Morning, zespri, glad to see you, missed you heaps'
22:36.17zespri_work=)
22:36.45AnduinLothari would have to be awake for that, no?
22:36.55AnduinLotharwell.. I'M NOT!
22:37.06End:O
22:40.01AnduinLotharFor those that missed it: http://www.wowinterface.com/downloads/fileinfo.php?s=&id=5130
22:41.23TainOdd name for a slash command addon.
22:42.19AnduinLotharyeah well... it was kinda predestined
22:42.56Cidenice
22:43.14Cideonly other addon I've seen that does what I did for ctra messages
22:43.58AnduinLotharyeah, well we had msot of it in Sky, but the code was super sloppy and no one wanted to req sky just to use them..
22:44.06AnduinLotharso i took it out and rewrote it
22:44.47*** join/#wowi-lounge Swimming_Bird (i=sbird@pool-72-75-107-153.washdc.east.verizon.net)
22:44.57AnduinLotharoh, need to put GenerateChatEvent in the docs too
22:45.15zespri_workwhat is the new name for pastebin?
22:45.29AnduinLotharthere isn't one... but you can use pastebin.ca
22:45.37CideI'm guessing you're thinking of pastecode.com
22:45.58zespri_workyeah, Cide that's what I meant
22:46.08zespri_workwhat happened with good old pastebin?
22:46.55*** join/#wowi-lounge Thrae (n=generalm@c-68-48-83-98.hsd1.md.comcast.net)
22:47.06Cideno idea
22:48.14*** join/#wowi-lounge MentalPower_ (n=MentalPo@host-70-45-81-230.onelinkpr.net)
22:49.17*** join/#wowi-lounge SBird (n=skynet@pool-72-75-107-153.washdc.east.verizon.net)
22:51.39*** join/#wowi-lounge snurre- (n=snurre@AVelizy-153-1-37-141.w81-249.abo.wanadoo.fr)
22:52.01Wobinpastebin.com is really slow =(
22:52.14Thraepastebin.ca ftw
22:52.17Wobinaye
22:55.20zinor`ya it is :s
22:55.25zinor`paste.djangosource.com ! :D
22:55.45zinor`his site is so ugly :x
22:58.23clad|gymAnduinLothar: Any particular reason you named Satellite Satellite?
22:59.03clad|gym=(
22:59.33AnduinLotharit was the orig name we schemed up a year ago when we first decided to split up Sky.. It just took me a year to get around to doing. Am I stepping on toes?
22:59.41KasoWhich XML file is the readycheck frame in, i cant find the bugger
23:00.01cladhaireSatellite has been talked about for about the same amount of time, as a communications library
23:00.08cladhairenot really stepping on toes-- but i had to choose another name now :P
23:00.23AnduinLotharWhy are you writing a comm lib?
23:00.31cladhairebecause i want to
23:00.39TainGood answer!  Good answer!
23:00.43cladhairei didn't realize i needed a reason =)
23:00.44AnduinLotharWell, I'm in the middle of redoign Sky
23:01.05cladhairewell then its right on time.. it seems you and I like to write/rewrite things together
23:01.06cladhairelol
23:01.21AnduinLotharcompetition is motivating
23:01.47ThraeWe should gain PvP ranks for making addons.
23:01.52AnduinLothardefinitely
23:01.59AnduinLothari want my epics
23:02.09GrandMarshalThraBehold the power of THRA
23:02.18cladhairei'd get mid-level blues.
23:02.48AnduinLotharI'm debating moving Sky.registerHostess to another mini lib
23:02.49PrivateKirovI killed like 3 horde yesterday
23:02.59PrivateKirovThat's more pvp than I've done in the last 4 months
23:03.12PrivateKirov<- pve carebear on a pvp server
23:03.58AnduinLotharregisterHostess is used for chat event registration. so it calls your callback whenever the event is called..
23:05.26AnduinLotharmostly used to track join/leaves and lists
23:05.31TainRegisterHotness!  Excelles!
23:07.29*** join/#wowi-lounge MentalPower_ (n=MentalPo@host-70-45-81-230.onelinkpr.net)
23:07.38Cidebut when would you register?
23:07.55Endhot...ness..things
23:07.58Endoh when
23:08.14EndI thought you were asking what about hotness
23:10.26*** part/#wowi-lounge Grumpey (n=Owner@dialup-4.152.210.44.Dial1.Atlanta1.Level3.net)
23:12.41AnduinLotharyeah, maybe I'll nuke that and make it a lib for trackign channel users
23:15.55Shadowedwhere are you test server!
23:16.22*** join/#wowi-lounge kaso| (n=Jonathan@host81-151-106-185.range81-151.btcentralplus.com)
23:16.26WobinMikk1! Is Mik's Scrolling Battle Text yours?
23:16.37Wobinoh nm
23:16.42Wobin=)
23:18.42*** join/#wowi-lounge Parak (i=PROFI@user-0cev737.cable.mindspring.com)
23:19.06CideIriel: do you happen to be alive?
23:19.20IrielApparently so
23:19.28Cideah, amazing!
23:20.18Cidejust wondering; any news on the "table explorer"? I just thought of it since I'm in dire need of one right now :)
23:20.18AnduinLothardidn't mik make one
23:20.24AnduinLotharor modify one
23:20.28IrielNot really, I need work to get off my back so I have time to play with it more
23:20.31AnduinLotharit's on wowi
23:20.45Cidedunno, I haven't been here in a while so I don't know
23:20.47WobinWhat's Mikk's handle on WoWI?
23:20.59KirovI don't suppose anyone here is familiar with mel?
23:21.00IrielThere are some similarish addons around, I think, but I haven't seen the same thing done yet
23:21.11AnduinLotharhttp://www.wowinterface.com/downloads/fileinfo.php?id=5116
23:21.16WobinKirov: That's my sister's name....
23:21.22WobinThanks AL
23:21.27Kirovmel?
23:21.32CideIriel: alright, thanks - let me know when/if you have any news, if you remember!
23:21.40KirovI'm refering to MEL scripting, ie: Maya's scripting language
23:22.02WobinKirov: Melinda =)
23:22.24CideAnduinLothar: seems kind of complex for what I could use it for, but I'll check it out still. thanks!
23:22.42TemMikk1, you here?
23:54.47cladhaireSo my guild is largely canadian
23:54.51cladhaireand we're ST
23:54.56cladhaireso we're having STCon this august
23:55.07cladhaireEstie d con in french is "&$#&(* idiot"
23:55.26cladhaireso I have to call this hotel in ottawa and ask for the group rate for #$$%@% idiot.

Generated by irclog2html.pl by Jeff Waugh - find it at freshmeat.net! Modified by Tim Riker to work with blootbot logs, split per channel, etc.