Page 2 of 4

Re: Yrvandis Hollows - All Zone Quests

Posted: Mon Jul 13, 2015 7:47 am
by Bill D Cat
The problem was, it wasn't printing the Quest Completed message at all, because it was turning in "Old Friend" and checking "Visit an Old Friend" for it's completion status because of the sub-string match. Looking at the MM window, it was giving no indication that ANYTHING was happening. My character just stood in front of the NPC and did nothing while the bot was in an indefinite loop.

Checking against all quests currently in the logbook and giving a warning that more than one matched would be sufficient to narrow things down. Just want to make sure we aren't throwing excessive warnings if a player has a combination of Normal, Daily and Public quests with the same name in the log.

Re: Yrvandis Hollows - All Zone Quests

Posted: Mon Jul 13, 2015 8:15 am
by rock5
Your saying it got stuck checking the status of the quest? That does mess things up a bit. Can you confirm whether you are using the bot getQuestStatus or do you have the questlog userfunction installed?

I had an idea. What if we check for both exact matches and partial matches. If it finds an exact match then it returns that. If it finds a partial but no exact match then it returns the partial. In most cases, when using exact names like you, it would work. Of course if you used a partial name and it matches more than one quest, you're screwed, but I don't see that happening often.

Re: Yrvandis Hollows - All Zone Quests

Posted: Mon Jul 13, 2015 10:17 am
by Bill D Cat
I do not have the quest log user function installed. Only using the native bot functions for checking quest status.

Re: Yrvandis Hollows - All Zone Quests

Posted: Mon Jul 13, 2015 11:20 am
by rock5
I'll do some work on prioritizing exact matches.

Re: Yrvandis Hollows - All Zone Quests

Posted: Mon Jul 13, 2015 12:31 pm
by rock5
Could you test these files under the situation you described, ie. Complete "Old Friend" before "Visit an Old Friend" and see if it works. Don't forget to restart the game or do a ReloadUI after copying the ingamefunctions.lua file.

Re: Yrvandis Hollows - All Zone Quests

Posted: Mon Jul 13, 2015 1:08 pm
by Bill D Cat
I will try them in a few hours when I get off work. I can easily comment out the "fix" in my version of the waypoint file to try to force it to turn in "Old Friend" first. I'll let you know how it runs.

Re: Yrvandis Hollows - All Zone Quests

Posted: Mon Jul 13, 2015 6:12 pm
by Bill D Cat
No difference. It still locks up saying the quest is in the "complete" state.

I put this command at line 2005 just to monitor the status:

Code: Select all

print(getQuestStatus(name,group))
It should show "not accepted" if it was successfully turned in, but it keeps looping and says "complete".

Re: Yrvandis Hollows - All Zone Quests

Posted: Mon Jul 13, 2015 10:03 pm
by rock5
Are you saying everything was the same? It completed "Visit an Old Friend" instead of "Old Friend" and getQuestStatus("Old Friend") returned the status of "Visit an Old Friend"? Could I ask you to test the getQuestStatus separately? With both quests accepted print out getQuestStatus("Old Friend") using commandline and see if if returns the correct status. Here, I've included a version with some printouts (and removal of an unnecessary variable).
ingamefunctions.lua
(11.23 KiB) Downloaded 140 times
The printout is in the game. In fact you could test it ingame with /script pr(igf_questStatus("Old Friend")). It should look something like this either way.

Code: Select all

Looking for quest old friend
Quest: quest name 1
Quest: quest name 2
Quest: Visit an Old Friend
is a partial match. Continue looking.
Quest: quest name 4
Quest: Old Friend
is an exact match.
The winner is:  Old Friend
I think that's pretty clear.

Re: Yrvandis Hollows - All Zone Quests

Posted: Mon Jul 13, 2015 10:23 pm
by Bill D Cat
It turns in "Old Friend" according to my quest book, and the on-screen fly text. But the bot then checked to be sure the quest turn in was successful and it failed to find "Old Friend" as "not accepted" because it was still finding the partial substring in "Visit an Old Friend" that was "complete" but not turned in yet. I'll run a few more chars through tomorrow and see what the in-game text shows at that point and grab a few screen shots.

Re: Yrvandis Hollows - All Zone Quests

Posted: Tue Jul 14, 2015 1:03 am
by rock5
I think I understand. You have some code something like

Code: Select all

repeat
    CompleteQuestByName("Old Friend")
until getQuestStatus("Old Friend") ~= "complete"
The getQuestStatus is finding "Visit an Old Friend" because by then "Old Friend" is gone. I can't think of any way of dealing with that except maybe doing an id search but that would be a major pain and introduce it's own problems. In the end the simplest solution is, if you have these sort of problems, then switch to ids. Most people will use ids anyway.

Or are you saying it gets stuck in the actual function. It looks like it might. Hm... I'll have to think about how I'll handle it. At first I see no obvious way.

Re: Yrvandis Hollows - All Zone Quests

Posted: Tue Jul 14, 2015 1:27 am
by rock5
You know you could always use a pattern. Eg. CompleteQuestByName("^Old Friend$"). I think that would work.

Re: Yrvandis Hollows - All Zone Quests

Posted: Tue Jul 14, 2015 6:12 am
by Bill D Cat
Start a new dwarf character and run this shortened version of my first waypoint file for Yrvandis Hollows and you'll see where the problem is.

Re: Yrvandis Hollows - All Zone Quests

Posted: Tue Jul 14, 2015 8:20 am
by BlubBlab
I tested it a bit again I must say with the a champion I have less problems but with a warlock it seems impossible to catch mobs.
For the champion I simple added than he must put a away his weapons when the level of the char is bigger than 15.
I had also add 2 checks for if some quests are. complete. besied that:

103; 205 in run into a obstacle but evading to the right was always the right choice for the bot.(haven debugged that)
115 (Nina) your other quest which makes trouble needs a moveTo that NPC running around too much.

Besides for my personal choices I added a few item use

EDIT: Maybe Bill can compare his questHelper userfunction which he uploaded with his own I suspect he uploaded an old version because ItemQueueCount was misspelled inside.

Sry about the upload of the first part I realized I had still 115 as start point I reupload it

Part 2 seems to work flawless beside stuck between 241 and 242
Part 3 added some setting for resum but the problem is for goThroughPortal it seems to work sometimes and sometimes not

Re: Yrvandis Hollows - All Zone Quests

Posted: Tue Jul 14, 2015 10:21 am
by beanybabe
I tried the first version and my character always died at the end boss. I hope you can find way to get past that.

Re: Yrvandis Hollows - All Zone Quests

Posted: Tue Jul 14, 2015 10:56 am
by BlubBlab
Yeah my second champion also just died on arcedia . I tried to make some DQ before with the quest phantom hunter but I can't complete the quest.

Debbug showed :
questToComplete: Sich des Todes annehmen

but should be: Strafe den Nahrungsdieb

I tried a lot:

Code: Select all

player:target_NPC(120449) -- Jerrylin Sharppspade
CompleteQuestByName(425299,"daily");
sendMacro("ChoiceOption(1);");
Before the boss there are 500 ep point missing to Level 24 with some luck all 10 will be enough for level 25 which would reduce the agro range a lot besides that I'm not sure what the deal I remember I defeated that boss solo one times.(I think that hat todo with profile settings and keep the char from too near when low HP) Besides DQ's I would properly implement a plan B if things fail and when the char dies he will simple skip it and complete all other quests(plan C).

EDIT:
I remember I had that problem before this solve it:

Code: Select all

player:target_NPC(120449) -- Jerrylin Sharppspade
		sendMacro("CompleteQuest()"); 
		if 10 ~= dailyQuestCount then
			player:target_NPC(120449) -- Jerrylin Sharppspade
			sendMacro("AcceptQuest()");
			__WPL:setWaypointIndex(__WPL:findWaypointTag("PhantomsDQ"))
		end

Re: Yrvandis Hollows - All Zone Quests

Posted: Tue Jul 14, 2015 12:22 pm
by Bill D Cat
beanybabe wrote:I tried the first version and my character always died at the end boss. I hope you can find way to get past that.
Yeah, I think my new method will be much better on survival. I'm going to use the swim hack to fly over the elite and grab the statue. Then make a run for the portal. If I fly up above the portal I found a spot where the elite will drop aggro and return to its starting point. I can then check to see if the "Saving our Faith" quest completed, and you picked up the statue. I'll loop it to keep trying to complete both before leaving the instance.

Re: Yrvandis Hollows - All Zone Quests

Posted: Tue Jul 14, 2015 5:02 pm
by BlubBlab
Bill D Cat wrote:
beanybabe wrote:I tried the first version and my character always died at the end boss. I hope you can find way to get past that.
Yeah, I think my new method will be much better on survival. I'm going to use the swim hack to fly over the elite and grab the statue. Then make a run for the portal. If I fly up above the portal I found a spot where the elite will drop aggro and return to its starting point. I can then check to see if the "Saving our Faith" quest completed, and you picked up the statue. I'll loop it to keep trying to complete both before leaving the instance.
I thought also about this method I'm not sure if it is a bug but when the elite spawns the statue disappear or at least when you die and relog. So you have properly only one chance to do this I think the elite will spawn because you activate a trigger(just an invisible logic block like a light barrier which trigger a script), so you need to fly around that. Sneaking around the elite isn't a big problem with level 25( 10 DQ's((1)24) + 3 open quests(25))

Re: Yrvandis Hollows - All Zone Quests

Posted: Tue Jul 14, 2015 8:49 pm
by Bill D Cat
Well my pathing using the swim hack works really good. I can get past the elite and start the gathering of the statue before it aggros. If I get interrupted during that cast, I will fly away long enough to get the elite to reset and then try it again. So far it's only taken two tries at most to get the quest to complete and pick up the statue.

The only issue I'm having now is even though I've set the mode to TRAVEL, it still tries to fight back against the elite when it aggros on me, so I have to pause the bot and manually fly away right now. Why would the bot fight back in TRAVEL mode?

Re: Yrvandis Hollows - All Zone Quests

Posted: Tue Jul 14, 2015 11:00 pm
by lisa
Bill D Cat wrote:Well my pathing using the swim hack works really good. I can get past the elite and start the gathering of the statue before it aggros. If I get interrupted during that cast, I will fly away long enough to get the elite to reset and then try it again. So far it's only taken two tries at most to get the quest to complete and pick up the statue.

The only issue I'm having now is even though I've set the mode to TRAVEL, it still tries to fight back against the elite when it aggros on me, so I have to pause the bot and manually fly away right now. Why would the bot fight back in TRAVEL mode?
I had a quick look at your WP, I am guessing you mean in YH_03_Taffrock.xml.

It gets changed to normal and then later gets changed back to travel, maybe the WP where it is meant to change back is being skipped?

Re: Yrvandis Hollows - All Zone Quests

Posted: Tue Jul 14, 2015 11:08 pm
by rock5
Bill D Cat wrote:The only issue I'm having now is even though I've set the mode to TRAVEL, it still tries to fight back against the elite when it aggros on me, so I have to pause the bot and manually fly away right now. Why would the bot fight back in TRAVEL mode?
Are you using player:moveTo in your code? I believe the bot uses the TRAVEL type but the moveTo function doesn't sutomatically, you have to tell it to ignore mobs. So you need to use the second argument to tell it to ignore mobs? Eg.

Code: Select all

player:moveTo(wp, true)
Did you remember to do that?
Bill D Cat wrote:Start a new dwarf character and run this shortened version of my first waypoint file for Yrvandis Hollows and you'll see where the problem is.
Thanks for the example waypoint. You just missed accepting the boundary quest from the item.

Yeah, so you don't even use getQuestStatus so it's definitely getting stuck in the function. I know exactly where, it's just a bit of a problem to sort out. I had to think about it overnight. I'll try a few things today.