Mercurial > wow > ouroloot
comparison verbage.lua @ 1:822b6ca3ef89
Import of 2.15, moving to wowace svn.
author | Farmbuyer of US-Kilrogg <farmbuyer@gmail.com> |
---|---|
date | Sat, 16 Apr 2011 06:03:29 +0000 |
parents | |
children | 9a37bd40eb5e |
comparison
equal
deleted
inserted
replaced
0:0f14a1e5364d | 1:822b6ca3ef89 |
---|---|
1 | |
2 local todo = [[ | |
3 - broadcasted entries triggering auto-shard don't have "shard" text | |
4 | |
5 - [DONE,TEST,comm] releasing before DBM signals wipe results in outdoor location | |
6 | |
7 - implement ack, then fallback to recording if not ack'd | |
8 | |
9 - special treatment for recipes / BoE items? default to guild vault? | |
10 | |
11 - rebroadcasting entire boss sections, entire days. maybe only whisper | |
12 to specific people rather than broadcast. | |
13 | |
14 - signpost a potential boss kill, pipeline loot until the cache clears | |
15 | |
16 - Being able to drag rows up and down the main loot grid would be awesome. Coding | |
17 that would be likely to drive me batshiat insane. | |
18 ]] | |
19 | |
20 local addon = select(2,...) | |
21 | |
22 addon.helptree = { | |
23 { | |
24 value = "about", | |
25 text = "About", | |
26 }, | |
27 { | |
28 value = "basic", | |
29 text = "Basics", | |
30 children = { | |
31 { | |
32 value = "loot", | |
33 text = "Loot Entries", | |
34 }, | |
35 { | |
36 value = "boss", | |
37 text = "Boss Entries", | |
38 }, | |
39 }, | |
40 }, | |
41 { | |
42 value = "tracking", | |
43 text = "Tracking Loot", | |
44 children = { | |
45 { | |
46 value = "enabled", | |
47 text = "Full Tracking", | |
48 }, | |
49 { | |
50 value = "bcast", | |
51 text = "Rebroadcasting", | |
52 }, | |
53 }, | |
54 }, | |
55 { | |
56 value = "texts", | |
57 text = "Generated Texts", | |
58 children = { | |
59 { | |
60 value = "forum", | |
61 text = "Forum Markup", | |
62 }, | |
63 { | |
64 value = "other", | |
65 text = "Other Texts", | |
66 }, | |
67 { | |
68 value = "saved", | |
69 text = "Saved Texts", | |
70 }, | |
71 }, | |
72 }, | |
73 { | |
74 value = "tips", | |
75 text = "Handy Tips", | |
76 children = { | |
77 { | |
78 value = "slashies", | |
79 text = "Slash Commands", | |
80 }, | |
81 }, | |
82 }, | |
83 { | |
84 value = "todo", | |
85 text = "TODOs, Bugs, etc", | |
86 children = { | |
87 { | |
88 value = "gotchas", | |
89 text = "Gotchas", | |
90 }, | |
91 { | |
92 value = "todolist", | |
93 text = "TODO/knownbugs", | |
94 }, | |
95 }, | |
96 }, | |
97 } | |
98 | |
99 -- Help text. Formatting doesn't matter, but use a blank line to split | |
100 -- paragraphs. This file needs to be edited with a text editor that doesn't | |
101 -- do anything stupid by placing extra spaces at the end of lines. | |
102 do | |
103 local replacement_colors = { ["+"]="|cff30adff", ["<"]="|cff00ff00", [">"]="|r" } | |
104 local T={} | |
105 T.about = [[ | |
106 Ouro Loot is the fault of Farmbuyer of Ouroboros on US-Kilrogg. Bug reports, | |
107 comments, and suggestions are welcome at the project page at curse.com or send | |
108 them to <farmbuyer@gmail.com>. | |
109 ]] | |
110 | |
111 T.basic = [[ | |
112 The </ouroloot> (and </loot> by default) command opens this display. The buttons | |
113 on the right side control operation and are mostly self-explanatory. Hovering over | |
114 things will usually display some additional text in the gray line at the bottom. | |
115 | |
116 Each tab on the left side can additionally create extra contols in the lower-right | |
117 section of the display. | |
118 | |
119 The first tab on the left side, <Loot>, is where everything goes to and comes | |
120 from. Looting events and Deadly Boss Mods notifications go to the <Loot> tab; the | |
121 other tabs are all generated from the information in the <Loot> tab. | |
122 ]] | |
123 | |
124 T.basic_loot = [[ | |
125 A "loot row" in the first tab has three columns: the item, the recipient, and any | |
126 extra notes. The recipient's class icon is displayed by their names, if class | |
127 information is available at the time. | |
128 | |
129 <Mouse Hover> | |
130 | |
131 Hovering the mouse over the first column will display the item in a tooltip. | |
132 | |
133 Hovering over the second column will display a tooltip with the loot that person | |
134 has received. If they've won more than 10 items, the list is cut off with '...' | |
135 at the end; to see the full list, use the right-click +Show only this player> option | |
136 instead. | |
137 | |
138 <Right-Click> | |
139 | |
140 Right-clicking a loot row shows a dropdown menu. | |
141 | |
142 Right-clicking in the first or third columns will display options for special | |
143 treatment of that loot entry (marking as offspec, etcetera). Using any of those | |
144 options will change the text in the third column (which will then affect the text | |
145 in the generated tabs, such as forum markup). | |
146 | |
147 Right-clicking in the second column allows you to temporarily remove all other | |
148 players from the loot display. Use the reset button in the lower-right corner to | |
149 restore the display to normal. The menu also allows you to +reassign> loot from | |
150 one player to another; if the new recipient is not in the raid group at the time, | |
151 use the +Enter name...> option at the bottom of the list of names to type the | |
152 name into a text box. If your raid takes advantage of the new ability to trade | |
153 soulbound items, you will need to reassign the item here for the generated text | |
154 to be factually correct. | |
155 | |
156 See the help screen on "Boss Entries" for the +Insert new boss kill event> option. | |
157 | |
158 <Double-Click> | |
159 | |
160 Double-clicking a loot row in the third ("Notes") column allows you to edit that | |
161 field directly. The color of the text will still depend on any +Mark as ___> | |
162 actions done to that loot row, whether automatically or by hand. | |
163 ]] | |
164 | |
165 T.basic_boss = [[ | |
166 Boss wipe/kill entries are entirely dependant on Deadly Boss Mods being enabled and | |
167 up-to-date. The typical sequence of events for our usual raids goes like this: | |
168 | |
169 We make four or five attempts on Baron Steamroller. As DBM registers that combat | |
170 ends, a <wipe> event is entered on the loot display along with the duration of the | |
171 fight. If the loot display is opened, the wipes will be visible with a light gray | |
172 background. | |
173 | |
174 After reminding the dps classes to watch the threat meters, we manage to kill | |
175 Steamroller. When DBM registers the win, a <kill> event is entered on the display | |
176 with a dark gray background. | |
177 All previous <wipe>s are removed and collapsed into the <kill> event. The final | |
178 <kill> event shows the duration of the successful fight and the number of attempts | |
179 needed (or "one-shot" if we manage to be competent). | |
180 | |
181 Sometimes this goes wrong, when DBM misses its own triggers. If DBM does not catch | |
182 the start of the boss fight, it can't register the end, so nothing at all is | |
183 recorded. If the fight was a win but DBM does not catch the victory conditions, | |
184 then DBM will (after several seconds) decide that it was a wipe instead. And | |
185 sometimes useful loot will drop from trash mobs, which DBM knows nothing about. | |
186 | |
187 For all those reasons, right-clicking on a "boss row" will display options for | |
188 +Insert new boss kill event>, and for toggling a <wipe> into a <kill>. We often | |
189 insert bosses named "trash" to break up the display and correct the forum markup | |
190 listing. | |
191 ]] | |
192 | |
193 T.tracking = [[ | |
194 The first button underneath +Main> in the right-hand column displays the current | |
195 status of the addon. If it is disabled, then no recording, rebroadcasting, or | |
196 listening for rebroadcasts is performed. Any loot already recorded will be restored | |
197 across login sessions no matter the status. | |
198 | |
199 You can turn on tracking/broadcasting before joining a raid. If you join a raid | |
200 and the addon has not been turned on, then (by default) a popup dialog will ask for | |
201 instructions. (This can be turned off in the advanced <Options>.) | |
202 | |
203 The addon tries to be smart about logging on during a raid (due to a disconnect or | |
204 relog). If you log in, are already in a raid group, and loot has already been | |
205 stored from tracking, it will re-enable itself automatically. It will not (as of | |
206 this writing) restore ancillary settings such as the tracking threshold. | |
207 | |
208 The intent of the addon design is that, after the end of a raid, all the generated | |
209 markup text is done, optionally saved (see "Generated Texts - Saved Texts"), and | |
210 then cleared from | |
211 storage altogether. As a result, if you login with restored loot information but | |
212 are not in a raid, the addon will do nothing on its own -- but will assume that | |
213 you've forgotten to finish those steps and will yammer about it in the chat window | |
214 as a reminder. | |
215 | |
216 The +Threshold> drop-down has no connection at all with any current loot threshold | |
217 set by you or a master looter. | |
218 ]] | |
219 | |
220 T.tracking_enabled = [[ | |
221 Full tracking records all loot events that fulfill these criteria: | |
222 | |
223 1) The loot quality is equal to or better than what you have selected in the | |
224 +Threshold> drop-down. | |
225 | |
226 2) The loot is not one of the few items hardcoded to not be tracked (badges, | |
227 emblems, Stone Keeper Shards, etc). | |
228 | |
229 3) <You can see the loot event.> More precisely, you need to be close enough | |
230 to the recipient of the loot to be able to see "So-And-So receives loot: [Stuff]" | |
231 in your chat window, even if you have those actual loot messages turned off. | |
232 | |
233 It is (3) that causes complications. A master looter can assign loot to anybody | |
234 anywhere in a raid instance, but the range on detecting loot events is much | |
235 smaller. If your raid does not use master looting then you merely need to be | |
236 close enough to the boss corpse, presuming that the winners will need to walk | |
237 over to get their phat epix. | |
238 | |
239 If you do use master looter, then you have two options: first, you can | |
240 require players | |
241 who might get loot to stay near the boss. You would then also need to stay near | |
242 the boss to detect the loot event. (This can be less hassle if you are also | |
243 the loot master.) The downside is that other players moving on to fight to the | |
244 next boss are doing so without the help of their teammates. | |
245 | |
246 The other option is to ask other players to also install Ouro Loot, and for | |
247 them to turn on the "Rebroadcasting" feature. Any loot events which they can | |
248 see will be communicated to you. Then it only becomes necessary for at least | |
249 one person to be close enough to the loot recipient to see the item awarded, | |
250 and you will record it no matter how far away you are -- even back in Dalaran. | |
251 | |
252 If you have Full Tracking enabled, then you are also automatically rebroadcasting. | |
253 Having more than one player with Full Tracking turned on is probably a good | |
254 idea, in case one of the trackers experiences a game crash or is suddenly kidnapped | |
255 by robot ninja monkeys. | |
256 ]] | |
257 | |
258 T.tracking_bcast = [[ | |
259 The simplest method of operation is only rebroadcasting the loot events that you | |
260 see, as you see them. Nothing is recorded in your local copy of the addon. | |
261 | |
262 If you logout for any reason, the addon will not reactivate when you log back in. | |
263 | |
264 You can use </loot bcast> or </loot broadcast> to turn on rebroadcasting without | |
265 opening the GUI. | |
266 ]] | |
267 | |
268 T.texts = [[ | |
269 The middle tabs are just large editboxes. Their text is initially generated from | |
270 the information stored on the main <Loot> tab, at the time you click on the tab. | |
271 Not every bit of information that | |
272 we want in the generated text is always available, or depends on things that the | |
273 game itself can't know. So you can edit the text in the tabs and your edits will | |
274 be preserved. | |
275 | |
276 Each time you click one of the text tabs, every new entry on the <Loot> tab | |
277 since the last time this tab was shown will be turned into text. | |
278 | |
279 Clicking the +Regenerate> button will throw away all the text on that tab, including | |
280 any edits you've made, and recreate all of it from scratch. If you've accidentally | |
281 deleted the text from the editbox, or you've made manual changes to the <Loot> tab, | |
282 you can use this button to start over. | |
283 | |
284 You can click in an editbox and use Control-A to select all text, then Control-C | |
285 to copy it to the system clipboard for subsequent pasting into a web browser or | |
286 whatever. If you're on a Mac, you probably already know the equivalent keys. | |
287 ]] | |
288 | |
289 T.texts_forum = [[ | |
290 The <Forum Markup> tab creates text as used by the guild forums for Ouroboros | |
291 of Kilrogg. By default this is fairly standard BBcode. The format of the | |
292 individual loot items can be adjusted via the dropdown menu on the lower right | |
293 of the tab. | |
294 | |
295 The [url] choice defaults to using Wowhead. If you have the [item] extension | |
296 for your BBcode installed, you can use either of those choices too. The "by ID" | |
297 variant is good for heroic ToC/ICC items that share names with nonheroic items, | |
298 but is harder to read in the text tab. | |
299 | |
300 You can also specify a custom string. Formatting is done with these replacements: | |
301 | |
302 +$N>: item name|r | |
303 | |
304 +$I>: (capital "eye", not "ell") numeric item ID|r | |
305 | |
306 +$T>: loot recipient and any additional notes|r | |
307 | |
308 +$X>: if more than one of the item was looted, this is the "x2", "x3", etc | |
309 | |
310 | |
311 Pro tip #1: if something has happened on the main <Loot> tab which cannot be | |
312 changed directly but would generate incorrect text, you can click this tab to | |
313 generate the text right away. Then edit/move the text as needed. When you | |
314 close the display or click back on the <Loot> tab, your edited text will be | |
315 preserved for later. | |
316 | |
317 Pro tip #2: Barring things like pro tip #1, the author typically does not | |
318 generate any text until the end of the raid. | |
319 ]] | |
320 | |
321 T.texts_other = [[ | |
322 So far the only other generated text is the <Attendance> tab, an alphabetized list | |
323 on a per-boss basis. | |
324 | |
325 Other addons can register their own text tabs and corresponding generation | |
326 functions. If you want to be able to feed text into an offline program (for | |
327 example, a spreadsheet or DKP tracker), then this may be of use to you. | |
328 | |
329 Ideas for more tabs? Tell me! | |
330 ]] | |
331 | |
332 T.texts_saved = [[ | |
333 The contents of the <Forum Markup> and <Attendance> tabs can be saved, so that they | |
334 will not be lost when you use the +Clear> button. | |
335 | |
336 Do any edits you want to the generated text tabs, then click the +Save Current As...> | |
337 button on the right-hand side. Enter a short descriptive reminder (for example, | |
338 "thursday hardmodes") in the popup dialog. The texts will remain in their tabs, | |
339 but clearing loot information will not lose them now. | |
340 | |
341 All saved texts are listed on the right-hand side. There is no technical limit to | |
342 the number of saved texts, but the graphical display will begin to overflow after | |
343 about half a dozen saved sets. (And I don't care.) | |
344 | |
345 Clicking a saved text name lets you +Load> or +Delete> that saved set. The primary | |
346 <Loot> tab is not saved and restored by this process, only the generated texts. | |
347 This also means you cannot +Regenerate> the texts. | |
348 ]] | |
349 | |
350 T.tips = [[ | |
351 Shift-clicking an item in the <Loot> display will paste it into an open chat editbox. | |
352 | |
353 The |cffff8000[Ouro Loot]|r "legendary item" link displayed at the start of all | |
354 chat messages is a clickable link. Clicking opens the main display. An option | |
355 on the <Options> tab will cause a message to be printed after a boss kill, | |
356 mostly for lazy loot trackers who don't like typing slash commands to open windows. | |
357 | |
358 If you are broadcasting to somebody else who is tracking, you should probably be | |
359 using the same threshold. If yours is lower, then some of the loot you broadcast | |
360 to him will be ignored. If yours is higher, then you will not be sending information | |
361 that he would have recorded. The "correct" setting depends on what your guild wants | |
362 to track. | |
363 | |
364 Ticking the "notraid" box in advanced debugging <Options>, before enabling tracking, | |
365 will make the tracking work outside of a raid group. Communication functions | |
366 will behave a little strangely when doing this. Be sure to check the threshold! | |
367 You can also use <"/ouroloot debug notraid"> instead. | |
368 | |
369 Using the "Saved Texts" feature plus the +Clear> button is a great way of putting | |
370 off pasting loot into your guild's website until a more convenient time. | |
371 ]] | |
372 | |
373 T.tips_slashies = [[ | |
374 The </ouroloot> command can take arguments to do things without going through | |
375 the UI. Parts given in *(angle brackets)* are required, parts in [square brackets] | |
376 are optional: | |
377 | |
378 +broadcast>/+bcast>: turns on rebroadcasting|r | |
379 | |
380 +on [T]>: turns on full tracking, optionally setting threshold to T|r | |
381 | |
382 +off>: turns off everything|r | |
383 | |
384 +thre[shold] T>: sets tracking threshold to T|r | |
385 | |
386 +list>: prints saved text names and numbers|r | |
387 | |
388 +save *(your set name)*>: saves texts as "your set name"|r | |
389 | |
390 +restore *(N)*>: restores set number N|r | |
391 | |
392 +delete *(N)*>: deletes set number N|r | |
393 | |
394 +help>: opens the UI to the help tab|r | |
395 | |
396 +toggle>: opens or closes the UI (used mostly in automated wrappers)|r | |
397 | |
398 | |
399 If you use the slash commands to enable tracking or set loot thresholds, you can | |
400 give numbers or common names for the threshold. For example, "0", "poor", "trash", | |
401 "gray"/"grey" are all the same, "4", "epic", "purple" are the same, and so on. | |
402 | |
403 If you give an unrecognized argument to the </ouroloot> slash command, it will | |
404 search the tab titles left to right for a title beginning with the same letters as | |
405 the argument, and open the display to that tab. For example, <"/loot a"> would | |
406 open the <Attendance> tab, and <"/loot ad"> would open the <Advanced> tab. If | |
407 you had added a theoretical <EQDKP> tab, then <"/loot eq"> would be the fastest | |
408 way to see it. | |
409 ]] | |
410 | |
411 T.todo = [[ | |
412 If you have ideas or complaints or bug reports, first check the Bugs subcategories | |
413 to see if they're already being worked on. Bug reports are especially helpful | |
414 if you can include a screenshot (in whatever image format you find convenient). | |
415 | |
416 Click the "About" line on the left for contact information. | |
417 ]] | |
418 | |
419 T.todo_gotchas = [[ | |
420 <Things Which Might Surprise You> (and things I'm not sure I like in the | |
421 current design): | |
422 | |
423 If you relog (or get disconnected) while in a raid group, behavior when you log | |
424 back in can be surprising. If you have already recorded loot (and therefore | |
425 the loot list is restored), then OL assumes it's from the current raid and should | |
426 reactivate automatically in full tracking mode. If you were tracking but no | |
427 loot had dropped yet (and therefore there was nothing *to* restore), then OL | |
428 will pop up its reminder and ask again. Either way, if you were only broadcasting | |
429 then OL will *not* go back to only broadcasting. This is probably a bug. | |
430 | |
431 The saved texts feature does exactly that: only saves the generated texts, not | |
432 the full loot list. Restoring will get you a blank first tab and whatever you | |
433 previously had in the various generated text tabs. | |
434 | |
435 Using the right-click menu to change an item's treatment (shard, offspec, etc) | |
436 does not broadcast that change to anyone else who is also tracking. Changing | |
437 the item and then selecting "rebroadcast this item" *does* include that extra | |
438 info. Doing that on the initial "mark as xxx" action is... tricky. | |
439 | |
440 The generated text tries to only list the name of the instance if it has not | |
441 already been listed, or if it is different than the instance of the previous | |
442 boss. If you relog, the "last printed instance name" will be forgotten, and | |
443 you'll see redundant raid instance names appearing in the text. | |
444 | |
445 After a boss wipe, multiple broadcasting players releasing spirit more than | |
446 several seconds apart can cause spurious "wipe" entries (of zero duration) on | |
447 the loot grid. The surefire way to avoid this is to not release spirit until | |
448 DBM announces the wipe, but the problem isn't serious enough to really worry | |
449 about. (Right-click the spurious entries and delete them.) | |
450 ]] | |
451 | |
452 T.todo_todolist = todo | |
453 | |
454 | |
455 -- Fill out the table that will actually be used. Join adjacent lines here so | |
456 -- that they'll wrap properly. | |
457 addon.helptext = {} | |
458 for k,text in pairs(T) do | |
459 local funkykey = k:gsub('_','\001') -- this is how TreeGroup makes unique keys | |
460 local wrapped = text | |
461 wrapped = wrapped:gsub ("[%+<>]", replacement_colors) | |
462 wrapped = wrapped:gsub ("([^\n])\n([^\n])", "%1 %2") | |
463 wrapped = wrapped:gsub ("|r\n\n", "|r\n") | |
464 wrapped = wrapped:gsub ("Ouroboros", "|cffa335ee<Ouroboros>|r") | |
465 wrapped = wrapped:gsub ("%*%(", "<") :gsub("%)%*", ">") | |
466 addon.helptext[funkykey] = wrapped | |
467 end | |
468 end -- do scope | |
469 todo = nil | |
470 | |
471 | |
472 -- Don't bother recording any of this loot: | |
473 addon.default_itemfilter = { | |
474 [29434] = true, -- Badge of Justice | |
475 [40752] = true, -- Emblem of Heroism | |
476 [40753] = true, -- Emblem of Valor | |
477 [45624] = true, -- Emblem of Conquest | |
478 -- could probably remove the above now | |
479 [43228] = true, -- Stone Keeper's Shard | |
480 [47241] = true, -- Emblem of Triumph | |
481 [49426] = true, -- Emblem of Frost | |
482 } | |
483 | |
484 -- vim:noet |