My Suggestions are this :
1- Either Making the bot recheck the profile on each level up, or better yet at the profile's provided checkpoints, for example at level 62, 65, 67, etc... (i can patch this with a little plugin running in the background to force a profile reload or to just simply shutting down HB by code and letting the relogger take care of reloading HB again). This would work great if the intention is to simply go to another set of new quests quicker at the expense of leaving unfinished quests + items leftovers.
2- Adding a condition system on the checkpoints in the profile or in HB Core, which means : You only go to the next checkpoint when this specific condition is met, which is "
Not having any quest ID from previous checkpoint in the wow quest log", that will make sure someone that wants to start using the profiles and not having any quests from the previous zone to quickly jump to the right checkpoint, and let the others who were questing in the previous zone to keep finishing their quests.
3- The best method but the certainly the most unpredictable and difficult would be : 1- if a level checkpoint is reached, and the bot has completed some quests but not turned them in, the bot goes to do only the turn in quests, and goes to the next checkpoint.
Cheers
Edit : An example of why the current system fails at times during questing because of the current checkpoint system :
* HB crashed while leveling in Terokkar Forest.
* HB then restarts with the help of the relogger then find a new checkpoint and goes to the first quest in nagrand which is to get a quest to drop from some mobs.
* The bot goes back and forth for more than an hour, after checking HB, i see that the last Terokkar forest quest had turned off looting mobs...
I'll try to reproduce the exact part again, then i'll send a log file + fix if found for that particular example, seems like HB latest version has some issues with looting mobs in some type of quests, they need some sort of behavior forcing like this (not just simple LootMobs="True" + Hotspots to grind for a quest item drop) : <Objective QuestName="xxx" QuestId="xxx" Type="CollectItem" CollectCount="1" Name="xxx" ItemId="xxx" />