Description:
The quest A Blue Light Bargain does not contain quest text in game but I believe it's already in the DB.
Expected behaviour:
Quest dialogue and objectives should be displayed.
Steps to reproduce the problem:
Branch(es):
3.3.5
TC rev. hash/commit:
TrinityCore rev. f6b22df9bd22 2021-01-13 00:53:43 +0200 (3.3.5 branch) (Win64, RelWithDebInfo, Static)
Operating system:
Windows 7 Ultimate x64 SP1
Not really
https://www.wowhead.com/quest=7652/a-blue-light-bargain
http://web.archive.org/web/20100418052317/www.wowhead.com/quest=7652
https://classic.wowhead.com/quest=7652/a-blue-light-bargain
My best guess the quest should be already shown as completed and lead directly to Completion menu. But I forgot how to do it + I don't know why it's already not shown as completed
Can confirm. This is another case of a wrong quest state, where it should already be completed.
Isn't there a flag to set the quest to already completed?
Maybe we could check some of the seasonal quests with a desired state of skipping the intro.
edit: adding a screenshot I made early December (2020-12-03) when I was dealing with this very same NPC:
A Blue Light Bargain
Most likely commit used at the time: https://github.com/TrinityCore/TrinityCore/commit/abfde1eb7e2f8f6e40b2bc45e883e3b940f2ea89
Based on how the Hallow's End quests (https://tcubuntu.northeurope.cloudapp.azure.com/aowow/?event=12#quests) "Candy Bucket" are auto-completed, it looks like we could use the flag 65536
(QUEST_FLAGS_AUTOCOMPLETE
) (https://trinitycore.atlassian.net/wiki/spaces/tc/pages/2130261/quest+template#quest_template-Flags), but I wonder if we also need to set the QuestType
(https://trinitycore.atlassian.net/wiki/spaces/tc/pages/2130261/quest+template#quest_template-QuestType) to 2 ("Quest is enabled (does not auto-complete).") … or not.
@TQPS : Could you test (if you haven't accepted or completed quest 7652 yet) if one of these 2 SQL queries could make it work as expected?
Test 1, add only the flag QUEST_FLAGS_AUTOCOMPLETE
:
-- Quest 7652 (A Blue Light Bargain)
-- set Flags = `QUEST_FLAGS_AUTOCOMPLETE`
UPDATE `quest_template` SET `Flags`=`Flags`| 65536 WHERE `ID`= 7652;
Test 2, add both QUEST_FLAGS_AUTOCOMPLETE
and QuestType
=2 ("Quest is enabled (does not auto-complete).")
-- Quest 7652 (A Blue Light Bargain)
-- set QuestType = Enabled, does not Auto-Complete + Flags =`QUEST_FLAGS_AUTOCOMPLETE`
UPDATE `quest_template` SET `QuestType`= 2, `Flags`=`Flags`| 65536 WHERE `ID`= 7652;
BTW, the quest list for "Candy Bucket", using the Flags value 65536
is as follows:
12286, 12331, 12332, 12333, 12334, 12335, 12336, 12337, 12338, 12339,
12340, 12341, 12342, 12343, 12344, 12345, 12346, 12347, 12348, 12349,
12350, 12351, 12352, 12353, 12354, 12355, 12356, 12357, 12358, 12359,
12360, 12361, 12362, 12363, 12364, 12365, 12366, 12367, 12368, 12369,
12370, 12371, 12373, 12374, 12375, 12376, 12377, 12378, 12379, 12380,
12381, 12382, 12383, 12384, 12385, 12386, 12387, 12388, 12389, 12390,
12391, 12392, 12393, 12394, 12395, 12396, 12397, 12398, 12399, 12400,
12401, 12402, 12403, 12404, 12405, 12406, 12407, 12408, 12409, 12410,
12940, 12941, 12944, 12945, 12946, 12947, 12950, 13433, 13434, 13435,
13436, 13437, 13438, 13439, 13448, 13452, 13456, 13459, 13460, 13461,
13462, 13463, 13464, 13465, 13466, 13467, 13468, 13469, 13470, 13471,
13472, 13473, 13474, 13501, 13548
Query to list them in the DB:
SELECT * FROM `quest_template` WHERE `Flags`= 65536 ORDER BY `ID`;
@illfated
Didn't complete it yet; I logged out at that point to see if I could find a fix.
Test 1 as above produces this:
I am assuming from the comments, this is the quest's expected behavior and also matches the Classic text perfectly.
I'll do a restore and run Test 2 now.
@illfated
Test 2 returns similar result:
Conclusion - both tests appear to work.
Thankyou.
I'll apply whichever one is decided as the preferred choice when commit is made.
Very good, thank you for testing my suggestions.
I don't have the factual knowledge which SQL query version would be the correct one, but now we know that both of them work, at least. I think we need to research if there is another flag or column value to make the quest display the ❔ (question mark) as an indicator for the state of the quest being completed already (I could be mistaken, though).
Maybe it is "Test 2" we need to use, since that combination is used for the "Candy Bucket" quests. Not sure.
Why still !
and not ?
? There are more autocompleted quests and they works without flags, right?
Hmm, good question. @TQPS & @offl , could you be so kind as to point me to one or more autocomplete quests showing the yellow ❔ (question mark) above the NPC every time?
SELECT * FROM quest_template WHERE LogDescription='' AND QuestDescription='' AND AreaDescription='' AND requirednpcorgo1=0 AND requirednpcorgo2=0 AND requirednpcorgo3=0 AND requirednpcorgo4=0 AND requireditemid1=0 AND requireditemid2=0 AND requireditemid3=0
Thanks a lot, interesting combo of limitations.
SELECT * FROM `quest_template` WHERE
`LogDescription`= '' AND `QuestDescription`= '' AND `AreaDescription`= ''
AND `requirednpcorgo1`= 0 AND `requirednpcorgo2`= 0
AND `requirednpcorgo3`= 0 AND `requirednpcorgo4`= 0
AND `requireditemid1`= 0 AND `requireditemid2`= 0 AND `requireditemid3`= 0
ORDER BY `Flags`, `QuestType`, `ID`;
quest_template
query result (654 row(s) in selection)
Most helpful comment
Not really
https://www.wowhead.com/quest=7652/a-blue-light-bargain
http://web.archive.org/web/20100418052317/www.wowhead.com/quest=7652
https://classic.wowhead.com/quest=7652/a-blue-light-bargain
My best guess the quest should be already shown as completed and lead directly to Completion menu. But I forgot how to do it + I don't know why it's already not shown as completed