Traceur3RUN 75 Posted October 25, 2018 Share Posted October 25, 2018 Hello, i have a problem with quest.... example my quest: quest test begin state start begin when 1231.chat."test" with pc.getqf("test") == 0 begin pc.setqf("test",1) end end end when you change character etc and you have this on database "test" == 1 but in game you still see chat "test" 1 Link to comment Share on other sites More sharing options...
Premium Shogun 4604 Posted October 25, 2018 Premium Share Posted October 25, 2018 It's cached, if you want to change it on the database, you will have to log off the character first, and possibly wait some minutes as well. Or restart the server. Link to comment Share on other sites More sharing options...
Traceur3RUN 75 Posted October 25, 2018 Author Share Posted October 25, 2018 3 minuty temu, Shogun napisał: It's cached, if you want to change it on the database, you will have to log off the character first, and possibly wait some minutes as well. Or restart the server. you wrong understand me... 1.click on test chat-> it send to database "test" value 1. and dissapear chat."test" but if you change character or logout or server restart it will be always showed because allways pc.getqf("test") will return null (0) but on database you have 1 Link to comment Share on other sites More sharing options...
metin2team 766 Posted October 25, 2018 Share Posted October 25, 2018 check your syserr/syslog for failed queries because it has something to do with your player.quest table either crashed or corrupted. or check the table itself. Link to comment Share on other sites More sharing options...
Traceur3RUN 75 Posted October 25, 2018 Author Share Posted October 25, 2018 21 minut temu, metin2team napisał: check your syserr/syslog because it has something to do with your player.quest table either crashed or corrupted. sysser is clean syslog when i click on npc i got this Oct 25 11:28:52 :: OnClick Stable Man[vnum 20349 ServerUniqueID 14621, pid 0] by Tester maybe mainline_released have bug with this function in source? i can without problem use it if pc.getqf("test") == 0 then --todo elseif pc.getqf("test") == 1 then --todo end but i can't use it here: when 1231.chat."test" with pc.getqf("test") == 0 begin because always return null i think i can fix syslog return pid 0 by change this: sys_log(0, "OnClick %s[vnum %d ServerUniqueID %d, pid %d] by %s", GetName(), GetRaceNum(), vid, GetPlayerID(), pkChrCauser->GetName()); change to this: sys_log(0, "OnClick %s[vnum %d ServerUniqueID %d, pid %d] by %s", GetName(), GetRaceNum(), vid, ch->GetPlayerID(), pkChrCauser->GetName()); but this is nothing to quest function. Link to comment Share on other sites More sharing options...
[RaffaeL] 28 Posted October 25, 2018 Share Posted October 25, 2018 Acum 8 ore, Traceur3RUN a spus: Hello, i have a problem with quest.... example my quest: quest test begin state start begin when 1231.chat."test" with pc.getqf("test") == 0 begin pc.setqf("test",1) end end end when you change character etc and you have this on database "test" == 1 but in game you still see chat "test" Even if you use q.done() in your quest? I mean: quest test begin state start begin when 1231.chat."test" with pc.getqf("test") == 0 begin pc.setqf("test",1) q.done() end end end Link to comment Share on other sites More sharing options...
Traceur3RUN 75 Posted October 26, 2018 Author Share Posted October 26, 2018 13 godzin temu, [RaffaeL] napisał: Even if you use q.done() in your quest? I mean: quest test begin state start begin when 1231.chat."test" with pc.getqf("test") == 0 begin pc.setqf("test",1) q.done() end end end yes, still the same problem. Link to comment Share on other sites More sharing options...
displayjokes 89 Posted October 26, 2018 Share Posted October 26, 2018 Isn't possible to do quest test begin state start begin if pc.getqf("test") == 0 when 1231.chat."test" begin pc.setqf("test",1) q.done() end end end end Might not work, never tried It's all lies Link to comment Share on other sites More sharing options...
Mefarious 2 Posted November 12, 2022 Share Posted November 12, 2022 I had this problem as well but it work for me when you put pc.getqf("") in if. when xxx.chat."xx" with pc.getqf("xx") == 1 begin - this works once, when you escape and try to chat again it will disappear but in data you still have flag xx ==1 when xxx.chat."xx" begin ----this work all the time for me, if pc.getqf("xx") == 1 then else end maybe something is wrong when you put quest flag check with "when" and it stop reading it. Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now