Repository navigation
Expand file tree
/
Copy pathHints.lua
More file actions
1297 lines (1287 loc) · 37 KB
/
Copy pathHints.lua
File metadata and controls
1297 lines (1287 loc) · 37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
-- Approved player-facing copy. Stable IDs keep the saved pool independent of wording and locale.
local QT = _G.QuestTogether
local L = QT.Translate
-- Link payloads name fixed navigation actions, never commands, method names or
-- setting values. Recheck the current client and restrictions on every click.
local function SettingsAction(label, category)
return {
label = label,
run = function(addon)
return addon:OpenSettingsCategory(category)
end,
}
end
local hintActions = {
settings = SettingsAction(function()
return L("Settings")
end, "general"),
announcements = SettingsAction(function()
return L("What to Announce")
end, "announcements"),
where_to_announce = SettingsAction(function()
return L("Where to Announce")
end, "whereToAnnounce"),
quest_plates = SettingsAction(function()
return L("Quest Plates")
end, "questPlates"),
player_plates = SettingsAction(function()
return L("Player Plates")
end, "playerPlates"),
player_locations = SettingsAction(function()
return L("Player Locations")
end, "playerLocations"),
groups = SettingsAction(function()
return L("Groups & Sharing")
end, "groups"),
accessibility = SettingsAction(function()
return L("Accessibility")
end, "accessibility"),
profiles = SettingsAction(function()
return L("Profiles")
end, "profiles"),
developer = SettingsAction(function()
return L("Developer")
end, "developer"),
experimental = SettingsAction(function()
return L("Experimental")
end, "experimental"),
party_log = {
label = function()
return L("Party Quest Log")
end,
run = function(addon)
return addon:OpenPartyQuestCompare()
end,
},
patch_notes = {
label = function()
return L("Patch Notes")
end,
run = function(addon)
return addon:OpenReleaseNotes()
end,
},
support = {
label = function()
return L("Discord — Feedback & Support")
end,
run = function(addon)
return addon:OpenDiscordSupport()
end,
},
debug = {
label = function()
return L("Open Debug Window")
end,
run = function(addon)
return addon:ShowDebugWindow()
end,
},
hud_edit = {
label = function()
return L("Open HUD Edit Mode")
end,
feature = "hud",
run = function(addon)
return addon:OpenHudEditMode()
end,
},
keybindings = {
label = function()
return L("Key Bindings")
end,
run = function(addon)
return addon.API.OpenKeyBindings()
end,
},
}
local function HintAction(addon, actionID)
if not addon:CanAccessValue(actionID) or type(actionID) ~= "string" or #actionID > 32 then
return nil
end
return hintActions[actionID]
end
function QT:GetHintActionInfo(actionID)
local action = HintAction(self, actionID)
if not action then
return nil
end
if action.feature then
local capabilities = self.API.GetHintCapabilities and self.API.GetHintCapabilities()
if type(capabilities) ~= "table" or capabilities[action.feature] ~= true then
return nil
end
end
return { id = actionID, label = action.label(), tooltip = L("Click to open.") }
end
function QT:ParseHintActionLink(link)
if not self:CanAccessValue(link) or type(link) ~= "string" or #link > 64 then
return nil
end
local actionID = link:match("^questtogethertip:([a-z_]+)$")
return HintAction(self, actionID) and actionID or nil
end
function QT:HandleHintActionLink(actionID)
local action = HintAction(self, actionID)
if
not action
or not self:GetHintActionInfo(actionID)
or not self.hasLoggedIn
or self.isLoggingOut
or self:IsRuntimeRestricted()
then
return false
end
local ok, opened = pcall(action.run, self)
return ok and opened ~= false
end
function QT:FormatHintEntry(hint)
local text = self:FormatHint(hint.text)
for _, actionID in ipairs(hint.actions or {}) do
local action = self:GetHintActionInfo(actionID)
if action then
text = text .. " |cffffd100|Hquesttogethertip:" .. action.id .. "|h[" .. action.label .. "]|h|r"
end
end
return text
end
function QT:GetHintCatalog()
return {
{
id = "hint001",
actions = { "settings" },
text = L("Type /qt to open QuestTogether's settings, or /qt help to see its commands."),
},
{
id = "hint002",
actions = { "party_log" },
text = L(
"Left-click the QT minimap button to open or close Party Quest Log. Right-click it for the quick menu."
),
menu = true,
},
{
id = "hint003",
actions = { "groups" },
text = L("Shift-click the QT minimap button to toggle Looking for Questing Partners."),
},
{
id = "hint004",
actions = { "groups" },
text = L("A glowing QT minimap button is a reminder that you are currently looking for questing partners."),
},
{
id = "hint005",
text = L("Drag the QT minimap button around the minimap to put it somewhere more convenient."),
},
{
id = "hint006",
text = L(
"Hover over the QT minimap button to check your partner status, chat scope, nearby range, and location-sharing setting."
),
},
{
id = "hint007",
actions = { "settings" },
text = L("Hidden your QT minimap button? Open /qt options and enable Show Minimap Icon to bring it back."),
},
{
id = "hint008",
actions = { "keybindings" },
text = L(
"Find QuestTogether in WoW's Key Bindings to assign shortcuts for its windows, menu, chat, and questing-partner status."
),
},
{
id = "hint009",
actions = { "keybindings" },
text = L("Bind Toggle Party Quest Log to open or close your party's quest comparison with one key."),
},
{
id = "hint010",
actions = { "keybindings" },
text = L("Bind Open QuestTogether Menu to reach the quick menu even when the minimap button is hidden."),
menu = true,
},
{
id = "hint011",
actions = { "keybindings" },
text = L("Bind Open QuestTogether Chat to start typing a QT message without entering /qt first."),
},
{
id = "hint012",
actions = { "settings" },
text = L(
"QT's settings home page summarizes your current preferences and links to the relevant settings pages."
),
},
{ id = "hint013", actions = { "settings" }, text = L("Hover over QT settings to see what each option does.") },
{
id = "hint014",
actions = { "party_log" },
text = L("Type /qt pql to see your party's quests side by side."),
},
{
id = "hint015",
actions = { "party_log" },
text = L(
"Party Quest Log includes quests your companions have even when those quests are missing from your own log."
),
},
{
id = "hint016",
actions = { "party_log" },
text = L(
"Click a quest row in Party Quest Log to expand everyone's objectives and progress. Click again to collapse it."
),
},
{
id = "hint017",
actions = { "party_log" },
text = L(
"You can keep several quests expanded in Party Quest Log to compare their objectives at the same time."
),
},
{ id = "hint018", actions = { "party_log" }, text = L("Search Party Quest Log by quest name or quest ID.") },
{
id = "hint019",
actions = { "party_log" },
text = L("Party Quest Log can search quest names received from players using another language, too."),
},
{
id = "hint020",
actions = { "party_log" },
text = L(
"Combine quest ownership, party progress, and available-action filters to find what your group should do next."
),
menu = true,
},
{
id = "hint021",
actions = { "party_log" },
text = L("Use the Everyone has the quest filter to find quests you can work on together."),
menu = true,
},
{
id = "hint022",
actions = { "party_log" },
text = L(
"Use the Someone is missing the quest filter to check that everyone has picked up a quest before heading out."
),
menu = true,
},
{
id = "hint023",
actions = { "party_log" },
text = L("Use the Quests I don't have filter to find quests your companions have picked up without you."),
menu = true,
},
{
id = "hint024",
actions = { "party_log" },
text = L("Use the Everyone ready filter to find quests the whole group can turn in."),
menu = true,
},
{
id = "hint025",
actions = { "party_log" },
text = L("Use the Someone is ready filter to spot quests where part of the group may still need help."),
menu = true,
},
{
id = "hint026",
actions = { "party_log" },
text = L("Use the Can share and Can request share filters to find quests your party can exchange."),
feature = "sharing",
menu = true,
},
{
id = "hint027",
actions = { "party_log" },
text = L(
"Party Quest Log remembers your filters per profile. Press Reset to clear both the filters and the search."
),
},
{
id = "hint028",
actions = { "party_log" },
text = L(
"Loading or Unknown in Party Quest Log does not mean a player is missing the quest; QT does not have their answer yet."
),
},
{
id = "hint029",
actions = { "party_log" },
text = L(
"Your own Party Quest Log column updates as you quest. Refresh requests updated quest lists from the other players."
),
},
{
id = "hint030",
actions = { "party_log" },
text = L(
"Click a player's heading in Party Quest Log and choose Refresh this player to update just their column."
),
menu = true,
},
{
id = "hint031",
actions = { "party_log" },
text = L(
"Enable Auto-refresh while open in Party Quest Log's Filters menu to request updated quest lists periodically."
),
menu = true,
},
{
id = "hint032",
actions = { "party_log" },
text = L(
"Check the update time beneath a player's name in Party Quest Log before relying on their last reported progress."
),
},
{
id = "hint033",
text = L(
"Choose Compare Quests from a player's QT name or map-dot menu to compare your quest lists before grouping up."
),
menu = true,
},
{
id = "hint034",
actions = { "party_log" },
text = L(
"Drag Party Quest Log's bottom-right corner to resize it. Widen the window to show more columns at once."
),
},
{
id = "hint035",
actions = { "party_log" },
text = L("Party Quest Log can scroll sideways when your group's columns do not fit in the window."),
},
{
id = "hint036",
actions = { "party_log" },
text = L("Use Share in Party Quest Log to offer an eligible quest to party members who are missing it."),
feature = "sharing",
},
{
id = "hint037",
actions = { "party_log" },
text = L("Use Request Share in Party Quest Log to ask a party member for a quest you do not have."),
feature = "sharing",
},
{
id = "hint038",
text = L("You can also share an eligible quest from its quest-name menu in QT chat."),
feature = "sharing",
menu = true,
},
{
id = "hint039",
actions = { "party_log" },
text = L("You can compare quests before grouping up, but sharing quests requires being in the same party."),
feature = "sharing",
},
{
id = "hint040",
actions = { "groups" },
text = L(
"A party share request asks the quest owner for permission unless they have enabled Always allow party share requests."
),
feature = "sharing",
},
{
id = "hint041",
actions = { "groups" },
text = L(
"Always allow party share requests automatically approves eligible requests from your party. Recipients still accept quests through WoW's normal prompt."
),
feature = "sharing",
},
{
id = "hint042",
actions = { "party_log" },
text = L(
"QT follows WoW's quest-sharing rules. A quest may be unshareable, or its recipient may need to meet prerequisites first."
),
feature = "sharing",
},
{
id = "hint043",
actions = { "groups" },
text = L("Type /qt lfg to toggle Looking for Questing Partners, or use the checkbox in the minimap menu."),
menu = true,
},
{
id = "hint044",
actions = { "groups" },
text = L(
"Use /qt lfg on or /qt lfg off to set your partner-seeking status explicitly. Use /qt lfg status to check it."
),
},
{
id = "hint045",
text = L("A gold glow on a QT player dot or logo means that player is looking for questing partners."),
},
{
id = "hint046",
actions = { "player_locations" },
text = L(
"Set Players shown on maps to Players looking for questing partners to focus on people who want company."
),
},
{
id = "hint047",
actions = { "player_locations" },
text = L(
"Looking for Questing Partners does not turn on location sharing. Enable Share my location as well if you want others to find your map dot."
),
},
{
id = "hint048",
actions = { "groups" },
text = L(
"Looking for Questing Partners is saved in your profile, so it can remain on when you next load that character."
),
},
{
id = "hint049",
actions = { "groups" },
text = L(
"Enable Stop looking for partners when joining a group to clear your recruiting status when you join or form a group."
),
},
{
id = "hint050",
actions = { "groups" },
text = L("Still recruiting after joining a group? You can turn Looking for Questing Partners back on."),
},
{
id = "hint051",
text = L("Click a QT player name or right-click a world-map dot to whisper, invite, add a friend, or compare quests. Left-click a world-map dot to open its most detailed map, or the player menu if already there."),
menu = true,
},
{
id = "hint052",
text = L(
"A grouped player's menu can offer Request to Join, letting you ask for an invitation without first writing a whisper."
),
menu = true,
},
{
id = "hint053",
text = L(
"If the player you contact cannot invite, QT can pass your join request to their party leader when the leader also supports QT join requests."
),
},
{
id = "hint054",
actions = { "groups" },
text = L(
"Automatically invite friends who request to join applies to your character friends list, not every Battle.net friend."
),
},
{
id = "hint055",
actions = { "groups" },
text = L(
"You can automatically approve join requests while Looking for Questing Partners is on. You still need permission and room to invite."
),
},
{
id = "hint056",
actions = { "groups" },
text = L(
"QT's automatic join-request approvals do not accept invitations for you or leave your current group."
),
},
{
id = "hint057",
text = L(
"QT's player dots are class-colored. Hover a dot for the player's level, class, and other available details."
),
},
{
id = "hint058",
text = L(
"Left-click a QT minimap dot to try to target that player while out of combat. Right-click it for the player menu, with Target first."
),
menu = true,
},
{ id = "hint059", text = L("A small party badge on a QT player dot means that player is grouped.") },
{ id = "hint060", text = L("Hover a player's QT dot to check their addon version when it is known.") },
{
id = "hint061",
text = L("QT leaves your own party's location markers to WoW instead of drawing duplicate player dots."),
},
{
id = "hint062",
actions = { "player_locations" },
text = L(
"Players shown on maps controls which QT dots you see. It does not change who can see your location."
),
},
{
id = "hint063",
actions = { "player_locations" },
text = L("You can view other players' public dots while keeping Share my location turned off."),
},
{
id = "hint064",
actions = { "player_locations" },
text = L(
"Choose None under Players shown on maps to hide QT's player dots while keeping WoW's own party markers."
),
},
{
id = "hint065",
actions = { "player_locations" },
text = L(
"Missing dots? Check Players shown on maps: the questing-partners filter hides players who are not currently looking for partners."
),
},
{
id = "hint066",
actions = { "announcements" },
text = L(
"Nearby Range controls nearby quest announcements. Players shown on maps is the separate control for which player dots you see."
),
},
{
id = "hint067",
text = L(
"Map dots show recently reported locations. Hover an older dot to see how old its location information is."
),
},
{
id = "hint068",
text = L(
"QT updates distant locations less frequently than locations in your current zone or the zone you are viewing."
),
},
{
id = "hint069",
text = L(
"Keep a zone open on your world map for a few seconds to let QT discover players and receive updates there."
),
},
{
id = "hint070",
text = L(
"A dot at your location does not guarantee that you can see its player in the world; they may be in another phase or layer."
),
},
{
id = "hint071",
text = L(
"Hover a grouped player's QT dot to highlight the visible dots belonging to their party and identify their leader with a crown."
),
},
{
id = "hint072",
text = L("Player tooltips can show the hovered player's party roster, with the leader listed first."),
},
{
id = "hint073",
text = L(
"Hover a player name in QT chat to see the same available player details used by map-dot tooltips."
),
},
{
id = "hint074",
text = L("A glowing QT logo in a party roster identifies a member who is looking for questing partners."),
},
{
id = "hint075",
text = L(
"Ignoring someone in WoW also hides their new QT messages, bubbles, player dots, and player logos. Existing chat history stays in your log."
),
},
{
id = "hint076",
actions = { "announcements", "where_to_announce" },
text = L(
"Use What to Announce to choose which event announcements you see, and Where to Announce to choose how they appear."
),
},
{
id = "hint077",
actions = { "announcements" },
text = L("Set Show Announcements For to Party Only if you want quest updates just from your group."),
},
{
id = "hint078",
actions = { "announcements" },
text = L("Choose Party & Nearby Players to include quest updates from other QT players around you."),
},
{
id = "hint079",
actions = { "announcements" },
text = L(
"Adjust Nearby Range in What to Announce to change how far away nearby players' quest updates are shown."
),
},
{
id = "hint080",
actions = { "announcements" },
text = L(
"With Party & Nearby Players selected, set Nearby Range to Entire Zone if you want announcements from across your current zone."
),
},
{
id = "hint081",
actions = { "announcements" },
text = L(
"Ready To Turn In means the objectives are finished; Quest Completion means the quest has been turned in."
),
},
{
id = "hint082",
actions = { "announcements" },
text = L(
"You can hide objective-progress announcements while keeping quest acceptance, ready-to-turn-in, or completion announcements."
),
},
{
id = "hint083",
actions = { "announcements" },
text = L("Quest-removal announcements can help you notice when a companion abandons a quest."),
},
{
id = "hint084",
actions = { "announcements" },
text = L("Looking-for-partners announcements can reach your whole zone, beyond your normal nearby range."),
},
{
id = "hint085",
actions = { "announcements" },
text = L(
"Turn off Announce Looking for Questing Partners to quiet those announcements while keeping players' glowing partner-status icons."
),
},
{ id = "hint086", text = L("Type /qt followed by a message to chat with other QuestTogether players.") },
{
id = "hint087",
actions = { "where_to_announce" },
text = L("Show QuestTogether Chat controls player conversations without hiding quest announcements."),
},
{
id = "hint088",
actions = { "where_to_announce" },
text = L(
"QT Chat Scope affects conversations, while Show Announcements For controls whose quest updates you see."
),
},
{
id = "hint089",
actions = { "where_to_announce" },
text = L("Choose Global in QT Chat Scope to see all QT conversations your client receives."),
},
{
id = "hint090",
actions = { "where_to_announce" },
text = L(
"Choose Zone Only in QT Chat Scope to show conversations from players whose recent shared location is in your zone."
),
},
{
id = "hint091",
actions = { "where_to_announce" },
text = L(
"Missing someone in Zone Only chat? That filter hides players with unknown or outdated shared locations."
),
},
{
id = "hint092",
actions = { "where_to_announce" },
text = L(
"Move QT logs into a separate chat window using Chat Log Destination in Where to Announce, or the minimap menu."
),
},
{
id = "hint093",
actions = { "where_to_announce" },
text = L("You can keep the separate QT chat window docked as a tab or float it beside your other windows."),
},
{
id = "hint094",
actions = { "where_to_announce" },
text = L(
"If your QT chat window is docked as a tab, you can also print its logs to main chat. Floating QT windows keep their logs separate."
),
},
{
id = "hint095",
actions = { "where_to_announce" },
text = L("Closing the separate QT chat window sends later QT logs back to main chat."),
},
{
id = "hint096",
actions = { "where_to_announce" },
text = L(
"QT can send your enabled event announcements to normal party chat when someone in the party is not using the addon."
),
},
{
id = "hint097",
actions = { "where_to_announce" },
text = L(
"QT's fallback party-chat announcements go to the whole party, including members who use QT. You can turn them off in Where to Announce."
),
},
{
id = "hint098",
actions = { "where_to_announce" },
text = L("QT's automatic party-chat announcements do not post to raids."),
},
{
id = "hint099",
actions = { "where_to_announce" },
text = L(
"You can turn off Show Chat Logs and keep progress bubbles enabled, or use chat logs without bubbles."
),
},
{
id = "hint100",
actions = { "where_to_announce" },
text = L(
"Hide My Own Chat Bubbles removes your personal bubbles while continuing to share your progress with other QT players."
),
},
{
id = "hint101",
actions = { "where_to_announce" },
text = L(
"Quest-completion celebrations and level-up celebrations have separate settings in Where to Announce."
),
},
{
id = "hint102",
actions = { "where_to_announce" },
text = L(
"You can turn off reactions to nearby players' celebrations without turning off your own celebration emotes."
),
},
{
id = "hint103",
actions = { "quest_plates" },
text = L(
"Quest Plates can mark quest targets on Blizzard nameplates with an icon, a colored health bar, or both."
),
feature = "nameplates",
},
{
id = "hint104",
actions = { "quest_plates" },
text = L(
"Choose your own Quest Health Color in Quest Plates. The Reset button beside it restores the default color."
),
feature = "nameplates",
},
{
id = "hint105",
actions = { "quest_plates" },
text = L("Quest icons can appear to the left, right, above, or before the name on a nameplate."),
feature = "nameplates",
},
{
id = "hint106",
actions = { "quest_plates" },
text = L("Quest Plates includes a preview so you can check your icon placement and highlight color."),
feature = "nameplates",
},
{
id = "hint107",
actions = { "player_plates" },
text = L(
"Enable friendly nameplates in WoW to see QT logos beside friendly players who use QuestTogether."
),
feature = "nameplates",
},
{
id = "hint108",
actions = { "player_plates" },
text = L(
"Player Plates lets you choose where QT logos appear on friendly nameplates, independently of quest-target icons."
),
feature = "nameplates",
},
{
id = "hint109",
actions = { "player_plates" },
text = L("A player's QT nameplate logo does not require them to share their map location."),
feature = "nameplates",
},
{
id = "hint110",
actions = { "player_plates" },
text = L(
"Hover a player in the world to see a QT tooltip badge when the addon recognizes them as a QuestTogether user."
),
},
{
id = "hint111",
actions = { "quest_plates" },
text = L("QT's nameplate decorations are intended for the open world; they are disabled in instances."),
feature = "nameplates",
},
{
id = "hint112",
actions = { "quest_plates" },
text = L(
"Using a replacement nameplate addon? QT's quest-target visuals are designed for Blizzard nameplates, so their appearance or availability may differ."
),
feature = "nameplates",
},
{
id = "hint113",
actions = { "accessibility" },
text = L("Increase Window scale in Accessibility to make QT's window text and controls larger together."),
},
{
id = "hint114",
actions = { "accessibility" },
text = L(
"QT fits its saved windows to your current display and limits their scale when needed to keep them on screen."
),
},
{
id = "hint115",
actions = { "accessibility" },
text = L("Enable Reduce motion in Accessibility to make scrolling and objective expansion immediate."),
},
{
id = "hint116",
text = L("Use /qt resetlayout if a QT window's saved position or size is getting in your way."),
},
{ id = "hint117", text = L("Press Escape to close QT windows.") },
{
id = "hint118",
actions = { "settings" },
text = L(
"Choose the Light theme under General for light parchment and dark text in QT's parchment windows."
),
},
{
id = "hint119",
actions = { "profiles" },
text = L("Each character starts with its own QT profile. Use Profiles to choose another saved setup."),
},
{
id = "hint120",
actions = { "profiles" },
text = L("Want the same QT settings on multiple characters? Select the same profile on each character."),
},
{
id = "hint121",
actions = { "profiles" },
text = L(
"Use Copy Into Current Profile to copy another profile's settings without making the two characters share future changes."
),
},
{
id = "hint122",
actions = { "profiles" },
text = L("Create a new profile to make a copy of your current settings and try a different setup."),
},
{
id = "hint123",
actions = { "profiles" },
text = L("Reset Active Profile restores that profile's settings to their defaults."),
},
{
id = "hint124",
actions = { "where_to_announce" },
text = L(
"You can use QT's maps and quest comparisons while keeping chat logs, bubbles, and celebrations quiet."
),
},
{
id = "hint125",
actions = { "patch_notes" },
text = L(
"Type /qt notes to read the latest patch notes. Use History in that window to browse older releases."
),
},
{
id = "hint126",
actions = { "support" },
text = L("Type /qt discord to open QT's feedback and support invite."),
},
{ id = "hint127", text = L("Type /qt scan to refresh QT's information from your current quest log.") },
{
id = "hint128",
text = L("Type /qt disable to pause QT's runtime features, and /qt enable to turn them back on."),
},
{
id = "hint129",
actions = { "patch_notes" },
text = L("QT can notify you in its chat log when another player is using a newer stable release."),
},
{
id = "hint130",
actions = { "patch_notes" },
text = L(
"Having trouble comparing quests with a friend? Check that both of you are running compatible, up-to-date versions of QT."
),
},
{
id = "hint131",
actions = { "support" },
text = L(
"When reporting a QT problem, include your game client, addon version, what happened, and how to reproduce it. Screenshots help, too."
),
},
{
id = "hint132",
actions = { "debug" },
text = L("Type /qt debug to open QT's diagnostic window when you need information for a bug report."),
},
{
id = "hint133",
actions = { "developer" },
text = L("Optional diagnostic sharing can be changed under QT's Developer settings."),
},
{
id = "hint134",
text = L(
"Click a quest name in QT chat and choose Quest Details to read the information WoW has available for it, even if you have not accepted the quest."
),
feature = "details",
menu = true,
},
{
id = "hint135",
actions = { "party_log" },
text = L("Click the book icon beside a quest you own in Party Quest Log to open it in WoW's quest log."),
feature = "journal",
},
{
id = "hint136",
text = L("A quest's name menu in QT chat also offers Open in Quest Log when the quest is in your log."),
feature = "journal",
menu = true,
},
{
id = "hint137",
actions = { "party_log" },
text = L(
"Click the round quest-focus button in your own Party Quest Log column to make that quest your active focus."
),
feature = "focus",
},
{
id = "hint138",
actions = { "party_log" },
text = L(
"Click a party member's highlighted quest-focus button in Party Quest Log to follow their quest focus."
),
feature = "focus",
},
{
id = "hint139",
actions = { "party_log" },
text = L("Hover a party member's heading in Party Quest Log to see their current quest focus."),
feature = "focus",
},
{
id = "hint140",
actions = { "party_log" },
text = L("Follow quest focus follows a party member's quest selection, not their character's movement."),
feature = "focus",
},
{