Page 12 of 15

Re: Rock5's Ancient Treasure

Posted: Wed Jan 30, 2013 11:25 am
by rock5
Well the bot records the players direction in player.Direction. There is no function that, given a direction and distance, calculated the new coords. And off the top of my head I can't think of any functions or userfunctions that do calculations like that. So I'd say you'll have to do it yourself. :(

Re: Rock5's Ancient Treasure

Posted: Wed Jan 30, 2013 11:37 am
by kenzu38
Lol too bad. I'll just have to give up on this for now then, since at my current level, I couldn't hope for coming up with a formula for this on my own haha.

Anyway, thanks for the fast response.

Re: Rock5's Ancient Treasure

Posted: Wed Jan 30, 2013 6:50 pm
by lisa
rock5 wrote:Well the bot records the players direction in player.Direction. There is no function that, given a direction and distance, calculated the new coords. And off the top of my head I can't think of any functions or userfunctions that do calculations like that. So I'd say you'll have to do it yourself. :(
I made one a while back called, tele follow or something like that. it would teleport to be directly behind the object and a distance specified.
http://www.solarstrike.net/phpBB3/viewt ... low+behind

Re: Rock5's Ancient Treasure

Posted: Wed Jan 30, 2013 8:29 pm
by kenzu38
Hey, lisa. Thanks for the link.

Although, I'm not really sure how to use this script to make my waypoint. Can you make a code that will not require a target and just teleport according to the player's face direction? That's if you have spare time though. :)

Well, in the meantime, I'll study your script and see what I can learn from it.

Thanks again.

Re: Rock5's Ancient Treasure

Posted: Wed Jan 30, 2013 9:13 pm
by lisa
I actually never read your post, I just read rock's talking about calculating coords given direction and distance.

You seem a bit off topic, I'd suguest making your own topic about what you actually want.
All the code you need is in that userfunction though, if you need it explained I can do it in another topic that is actually about this subject.

Re: Rock5's Ancient Treasure

Posted: Thu Jan 31, 2013 10:50 am
by kenzu38
I see. Lol you're right, this is getting far off-topic. Originally, I just needed a quick confirmation from rock if there are some more built-in codes I can use about facedirection. Since the AT waypoint uses it a fair bit, I thought I'd just post it here.

Anyway, I'll be posting a new thread in the Runes of Magic section shortly, please do look into it and explain a bit more about telefollow.

Edit: Posted a new thread. You can find it here. Thanks. :)

Re: Rock5's Ancient Treasure

Posted: Sat Feb 09, 2013 8:43 am
by Jandrana
I updated the bot some days ago and also checked for updates of various scripts and also updated to V3.6 of the AT script. Since this update it can happen that the script will do an endless loop trying to collect the Ancient stone totems:

Code: Select all

We try to find NPC Luke Xavi:
We successfully target NPC Luke Xavi and try to open the dialog window.
Use MACRO: Executing RoMScript "ChoiceOption(3);".
Use MACRO: Executing RoMScript "ChoiceOption(1);".
Clearing target.
Player Teleported to X: 3835    Z: 4327 Y: 74
Player Teleported to X: 3835    Z: 4327 Y: 75
Player Teleported to X: 3835    Z: 4327 Y: 76
Player Teleported to X: 3835    Z: 4327 Y: 77
Player Teleported to X: 3835    Z: 4327 Y: 78
Player Teleported to X: 3835    Z: 4327 Y: 79
Player Teleported to X: 3835    Z: 4327 Y: 80
Player Teleported to X: 3835    Z: 4327 Y: 81
Player Teleported to X: 3835    Z: 4327 Y: 82
Player Teleported to X: 3835    Z: 4327 Y: 83
Player Teleported to X: 3835    Z: 4327 Y: 84
Player Teleported to X: 3835    Z: 4327 Y: 85
Player Teleported to X: 3835    Z: 4327 Y: 86
Player Teleported to X: 3835    Z: 4327 Y: 120
Doing first 2 Ancient Stone Totem
Player Teleported to X: 3720    Z: 4289 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3701    Z: 4200 Y: 18
We found Ancient Stone Totem and will harvest it.
Player Teleported to X: 3657    Z: 4203 Y: 91
Player Teleported to X: 3657    Z: 4203 Y: 92
Player Teleported to X: 3657    Z: 4203 Y: 93
Player Teleported to X: 3657    Z: 4203 Y: 94
Player Teleported to X: 3657    Z: 4203 Y: 95
Player Teleported to X: 3657    Z: 4203 Y: 96
Player Teleported to X: 3657    Z: 4203 Y: 97
Player Teleported to X: 3657    Z: 4203 Y: 98
Player Teleported to X: 3657    Z: 4203 Y: 99
Player Teleported to X: 3657    Z: 4203 Y: 100
Player Teleported to X: 3657    Z: 4203 Y: 101
Player Teleported to X: 3657    Z: 4203 Y: 102
Player Teleported to X: 3657    Z: 4203 Y: 103
Player Teleported to X: 3657    Z: 4203 Y: 120
Moving to Ancient Stone Totem
Player Teleported to X: 3699    Z: 4283 Y: 7
Player Teleported to X: 3637    Z: 4124 Y: 7
Player Teleported to X: 3636    Z: 4124 Y: 18
We found Ancient Stone Totem and will harvest it.
Player Teleported to X: 3612    Z: 4176 Y: 91
Player Teleported to X: 3612    Z: 4176 Y: 92
Player Teleported to X: 3612    Z: 4176 Y: 93
Player Teleported to X: 3612    Z: 4176 Y: 94
Player Teleported to X: 3612    Z: 4176 Y: 95
Player Teleported to X: 3612    Z: 4176 Y: 96
Player Teleported to X: 3612    Z: 4176 Y: 97
Player Teleported to X: 3612    Z: 4176 Y: 98
Player Teleported to X: 3612    Z: 4176 Y: 99
Player Teleported to X: 3612    Z: 4176 Y: 100
Player Teleported to X: 3612    Z: 4176 Y: 101
Player Teleported to X: 3612    Z: 4176 Y: 102
Player Teleported to X: 3612    Z: 4176 Y: 103
Player Teleported to X: 3612    Z: 4176 Y: 120
Going under.
Player Teleported to X: 3701    Z: 4281 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3800    Z: 3789 Y: 12
We found Ancient Stone Totem and will harvest it.
Player Teleported to X: 3794    Z: 3787 Y: 7
Moving to Elemental Candlestick
Player Teleported to X: 3833    Z: 3634 Y: 12
We found Elemental Candlestick and will harvest it.
Player Teleported to X: 3835    Z: 3632 Y: 7
Moving to Elemental Candlestick
Player Teleported to X: 3688    Z: 3552 Y: 12
We found Elemental Candlestick and will harvest it.
Player Teleported to X: 3685    Z: 3549 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3977    Z: 3450 Y: 12
We found Ancient Stone Totem and will harvest it.
Player Teleported to X: 3983    Z: 3452 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 4104    Z: 3521 Y: 12
We found Ancient Stone Totem and will harvest it.
Player Teleported to X: 4106    Z: 3526 Y: 7
Moving to Elemental Candlestick
Player Teleported to X: 4167    Z: 3827 Y: 12
We found Elemental Candlestick and will harvest it.
Player Teleported to X: 4168    Z: 3832 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3793    Z: 3796 Y: 12
We found Ancient Stone Totem and will harvest it.
Player Teleported to X: 3792    Z: 3789 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3793 Y: 12
Player Teleported to X: 3790    Z: 3788 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3794 Y: 12
Player Teleported to X: 3783    Z: 3780 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3793 Y: 12
Player Teleported to X: 3791    Z: 3788 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3793    Z: 3797 Y: 12
Player Teleported to X: 3788    Z: 3791 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3794 Y: 12
Player Teleported to X: 3779    Z: 3787 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3791 Y: 12
Player Teleported to X: 3791    Z: 3789 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3793 Y: 12
Player Teleported to X: 3780    Z: 3791 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3793    Z: 3798 Y: 12
Player Teleported to X: 3792    Z: 3790 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3793    Z: 3796 Y: 12
Player Teleported to X: 3791    Z: 3788 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3795 Y: 12
Player Teleported to X: 3792    Z: 3789 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3792 Y: 12
Player Teleported to X: 3791    Z: 3788 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3793 Y: 12
Player Teleported to X: 3790    Z: 3788 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3800    Z: 3789 Y: 12
We found Ancient Stone Totem and will harvest it.
Player Teleported to X: 3794    Z: 3787 Y: 7
Moving to Elemental Candlestick
Player Teleported to X: 3833    Z: 3634 Y: 12
We found Elemental Candlestick and will harvest it.
Player Teleported to X: 3835    Z: 3632 Y: 7
Moving to Elemental Candlestick
Player Teleported to X: 3688    Z: 3552 Y: 12
We found Elemental Candlestick and will harvest it.
Player Teleported to X: 3685    Z: 3549 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3977    Z: 3450 Y: 12
We found Ancient Stone Totem and will harvest it.
Player Teleported to X: 3983    Z: 3452 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 4104    Z: 3521 Y: 12
We found Ancient Stone Totem and will harvest it.
Player Teleported to X: 4106    Z: 3526 Y: 7
Moving to Elemental Candlestick
Player Teleported to X: 4167    Z: 3827 Y: 12
We found Elemental Candlestick and will harvest it.
Player Teleported to X: 4168    Z: 3832 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3793    Z: 3796 Y: 12
We found Ancient Stone Totem and will harvest it.
Player Teleported to X: 3792    Z: 3789 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3793 Y: 12
Player Teleported to X: 3790    Z: 3788 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3794 Y: 12
Player Teleported to X: 3783    Z: 3780 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3793 Y: 12
Player Teleported to X: 3791    Z: 3788 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3793    Z: 3797 Y: 12
Player Teleported to X: 3788    Z: 3791 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3794 Y: 12
Player Teleported to X: 3779    Z: 3787 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3791 Y: 12
Player Teleported to X: 3791    Z: 3789 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3793 Y: 12
Player Teleported to X: 3780    Z: 3791 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3793    Z: 3798 Y: 12
Player Teleported to X: 3792    Z: 3790 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3793    Z: 3796 Y: 12
Player Teleported to X: 3791    Z: 3788 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3795 Y: 12
Player Teleported to X: 3792    Z: 3789 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3792 Y: 12
Player Teleported to X: 3791    Z: 3788 Y: 7
Moving to Ancient Stone Totem
Player Teleported to X: 3792    Z: 3793 Y: 12
Player Teleported to X: 3790    Z: 3788 Y: 7
Moving to Ancient Stone Totem
There was a fresh start of the client when this happened. So I don't think it could be the usual client memory corruption problem.
I noticed probems with this script already some days ago, but sometimes it worked without any problems. Today I had the time to watch the bot and was lucky that the problem appeared. It seems it failed to harvest the last stone totem.

I don't know it anybody else noticed a similar problem after the RC3 update. Any suggestions, what could be wrong here?

Edit: one thing I noticed while watching a second char (who also failed): the bot tried to harvest a stone totem, but he did not wait until the harvest cast bar completed, but moved on - so harvesting failed. Is this a problem with os.time()?

Code: Select all

	local function HarvestItem(ID)
		local stt = os.time()
		repeat
			yrest(1)
		until player:target_Object(ID,3) or os.time() - stt > 5

Re: Rock5's Ancient Treasure

Posted: Sat Feb 09, 2013 11:19 am
by rock5
If it fails to collect something then it is designed to go around again. Most likely something was slightly out of range so it was never able to collect it. This happens sometimes that the server doesn't exactly place the item in the right place. I've never had it get stuck going round and round though.

Looking at your output it looks like there was a fragment you couldn't collect at 3792, 3795. Actually it's very strange that the coordinates were continuously changing. The item shouldn't be moving and the teleport function should be very accurate. If you continue to have problems with fragments I could have it give up eventually and get on with it. But if it fails to collect candles there is not much I would be able to do about that.

Re: Rock5's Ancient Treasure

Posted: Sat Feb 09, 2013 11:31 am
by Ego95
One thing I noticed is that there is a chance that the ancient stone totem isn't clickable like you said rock. So there is a gear wheel but you are always too far away to click it, it does not matter where you stay. This happens if you do it manually too. So maybe Jandranas problem is not a problem of the bot. The chance to get such an unclickable stone totem seems to be very big after one of the last patches :/

AlterEgo95

Re: Rock5's Ancient Treasure

Posted: Sat Feb 09, 2013 2:19 pm
by Jandrana
So there is a gear wheel but you are always too far away to click it, it does not matter where you stay. This happens if you do it manually too.
No, as I noticed the bot being in a loop, I stopped the bot and continued to play manually. What is correct, that you could not click the stone totem from the position the bot was (below the floor). But after going through the totem was clickable.

Re: Rock5's Ancient Treasure

Posted: Sun Feb 10, 2013 5:46 am
by Jandrana
I'm looking for a way to make the harvesting in AT more reliable and if possible skip stone totems.

Code: Select all

		local candles = candlelist()

		while #candles > 0 do
			candles = sortpath(candles)
			for k,v in pairs(candles) do printf("%d X = %d, Z = %d\n",k,v.X,v.Z) end

			for k,v in pairs(candles) do
				print("Moving to ".. v.Name)
				player:moveTo(CWaypoint(v.X,v.Z,7),true)
				teleport(nil,nil,12)
				if SlowTeleports == true then yrest(1000) end
				keyboardPress(settings.hotkeys.STRAFF_RIGHT.key)
				keyboardPress(settings.hotkeys.STRAFF_LEFT.key)
				HarvestItem(v.Id)
				teleport(nil,nil,7)
				if SlowTeleports == true then yrest(1000) end
			end

			player:moveTo(CWaypoint(3838,3994),true)
			candles = candlelist()
		end
The candle list is being rebuilt in a loop. Anybody knows the reason, why it is done this way?
I would have processes the list once, checking each HarvestItem, if it was successful. If not successful, give up after N retries skip stone totems and signal a warning for the candles.

Re: Rock5's Ancient Treasure

Posted: Sun Feb 10, 2013 11:39 am
by rock5
Jandrana wrote:I'm looking for a way to make the harvesting in AT more reliable and if possible skip stone totems.
Well there was a test version a couple of pages back that might have helped. I just moved it to the first post so it doesn't get lost in the pages. Try it out.
Jandrana wrote:The candle list is being rebuilt in a loop. Anybody knows the reason, why it is done this way?
It's done in a loop because "candlelist()" returns no values if everything is collected so it wont repeat in that case. The function itself does the "checking each HarvestItem".

I think the best solution is to just have it go around at most twice and if it still hasn't collected all 3 candles then you're screwed. Ring an alarm and wait for the timer to run out. I'm not 100% sure what the correct action is to take. If it has all three candles then regardless of if it missed fragments it gets the chests.

Re: Rock5's Ancient Treasure

Posted: Wed Feb 20, 2013 12:49 am
by kenzu38
Hey Jandrama, just a suggestion. Just trying to help. Not really sure if this would work but maybe you can try changing this line from the code you posted:

Code: Select all

            teleport(nil,nil,12)
to

Code: Select all

SureTeleport(nil,nil,(higher value than 12 but not too high coz it might actually get stuck in the candlestick))
SureTeleport is in the latest version of this script.

Re: Rock5's Ancient Treasure

Posted: Wed Feb 20, 2013 5:02 am
by Jandrana
Thx, I will try this new version and report the results.

Re: Rock5's Ancient Treasure

Posted: Wed Feb 20, 2013 5:39 am
by lisa
I just wanted to say that if you count the 14 pages on the other topic where this all started this topic is now upto 26 pages long, that is kind of impressive ;)

Re: Rock5's Ancient Treasure

Posted: Sat Apr 27, 2013 11:37 am
by Cindy
I am excited about the latest version (stumbled onto by accident)

I have a feature enhancement idea:

Make an intelligent selection between backpacks/atrepeat. For example, some of my characters have all the permanent backpacks, while others have all but one, others have 3, and others have the standard 2. I'd like to do backpack where permbackpacks < 4 and atrepeat where permbackpacks > 3.

This is feasible, right?

Re: Rock5's Ancient Treasure

Posted: Sat Apr 27, 2013 12:23 pm
by rock5
I don't remember getting permanent backpacks. How do you get those?

Re: Rock5's Ancient Treasure

Posted: Sat Apr 27, 2013 1:30 pm
by Cindy
Well you start with two perms (I and II), and way back you could get them in gashas, I haven't seen them in over a year, but essentially you can have all six backpacks like the first two, never needing any purchases to use.

Re: Rock5's Ancient Treasure

Posted: Sat Apr 27, 2013 2:00 pm
by rock5
But what does that have to do with Ancient Treasure? I thought you were saying you could get them as a result of this script.

Re: Rock5's Ancient Treasure

Posted: Sat Apr 27, 2013 2:16 pm
by Cindy
No, I want to make a character based decision.

For those chars that don't have perm backpacks, i want to do backpacks when turning in the medals. For those that have perm backpacks i want to do an ATrepeat (obviously, backpack tickets for those who already have perm backpacks would be a big waste).