Just a quick clarification that could eliminate either the majority or all of the teleport "loops" I believe are in my profiles at this time. Does IsQuestAcceptQualified have a max range? Does the NPC need to be targetable/in range (X yalms) in order to properly see that a quest qualifies to be accepted? In the provided log, the user was going through a teleport "loop" because it was skipping IsQuestAcceptQualified tag and moving to the next quest and teleporting based on that zone check. I added a simple MoveTo tag before the IsQuestAcceptQualified tag to have RB move the character next to the NPC essentially, then it properly ran the IsQuestAcceptQualified tag, but only if I forced it to MoveTo the NPC first. After adding the MoveTo tag to the profile, you can see that it properly picks up the quest starting around line 270 in the log. The next instance where the character is a very far distance away, it failed to run the IsQuestAcceptQualified tag and appeared to skip over it. Thoughts? Does IsQuestAcceptQualified need any adjustments, or do I need to add a MoveTo/NoCombatMoveTo to every quest pickup in all of my profiles? Thanks in advance! Log attached:
IsQuestAcceptQualified returns data directly from the game, it cannot be 'adjusted'. You could easily figure this answer out for yourself by testing it in the RebornConsole.
After figuring out how to run it in the Console, it does appear to have a range on when it returns True or False. If you are too far away from a quest giver, IsQuestAcceptQualified will return False, but upon moving closer, it will return True. Based on my estimations in-game, it's ~100 yalms. Looks like I'll need to modify my profiles a bit to account for this. Thanks for pointing me to the Console to figure out there's a range limitation on IsQuestAcceptQualified, kaga.
For what it's worth, I believe the quest giver needs to be in the GameObjectManager for it to return an accurate value.
In my experience, "IsQuestAcceptQualified" only returns true if you're IN the zone the quest NPC resides. If you're basing teleports on quests being available, i'd use "not IsQuestCompleted"
Yea,last time I checked being in the zone was all that was needed. it might have changed with heavensward tho.
I did some testing in a zone with a random quest ID that was available and from > 100 yalms, it appears to return False with this in the Console: Code: Log(ff14bot.NeoProfiles.ConditionParser.IsQuestAcceptQualified(XXXXX)); When you are < 100 yalms (my estimation), it will return True.