RoM bot

Runes of Magic/Radiant Arcana (http://www.runesofmagic.com)
Locked
Message
Author
darknezz19
Posts: 1
Joined: Mon May 18, 2009 11:28 am

Re: RoM bot

#1021 Post by darknezz19 » Mon May 18, 2009 11:31 am

works good. thanks Author.

User avatar
Administrator
Site Admin
Posts: 5307
Joined: Sat Jan 05, 2008 4:21 pm

Re: RoM bot

#1022 Post by Administrator » Mon May 18, 2009 4:28 pm

MatthiasB wrote: So he can't read the players addr of the 2nd char (even if the window is on top)? Thanks for your fast reply <3!
I'm betting that you actually have the MicroMacro window in top. Or maybe you're using Vista and you have window previews enabled. Post your log.txt.

Zilvermoon
Posts: 104
Joined: Mon Jan 05, 2009 8:19 am

Re: RoM bot

#1023 Post by Zilvermoon » Mon May 18, 2009 6:40 pm

I love the resent changes, but it made me think .... now we got the "combat" flag, so why not stop running when the flag is "active" .... I see the bot at times run past a mob (or simply aggro it) and then "out-run" the mob until next waypoint is reached .. and then the mob will only reach me if I need to change direction ... this is just a thought ... and I'm willing to look into it my self, when I got a little time..

Zilvermoon

User avatar
Administrator
Site Admin
Posts: 5307
Joined: Sat Jan 05, 2008 4:21 pm

Re: RoM bot

#1024 Post by Administrator » Mon May 18, 2009 8:48 pm

Zilvermoon wrote:I love the resent changes, but it made me think .... now we got the "combat" flag, so why not stop running when the flag is "active" .... I see the bot at times run past a mob (or simply aggro it) and then "out-run" the mob until next waypoint is reached .. and then the mob will only reach me if I need to change direction ... this is just a thought ... and I'm willing to look into it my self, when I got a little time..

Zilvermoon
I thought of this, too. Just wanted to make sure these changes work well and don't cause any problems before taking it to the next step.

Rajinn
Posts: 33
Joined: Mon Apr 13, 2009 12:43 pm

Re: RoM bot

#1025 Post by Rajinn » Tue May 19, 2009 5:06 am

yea it works, 0x572 is the offset i've been using to detect battle. i havent had much time to work on RoM as i've been busy with my site :(
i can never get ahold of you or i would've given you the offset back when i posted my pics.

funkrelaxo
Posts: 3
Joined: Tue May 19, 2009 10:42 am

Re: RoM bot

#1026 Post by funkrelaxo » Tue May 19, 2009 12:12 pm

Hi guys.

I get an error when I start rom bot, concerning a nil value in functions.lua line 13. It happens as soon as I hit "delete". I didn't change anything in functions.lua, and I can't see what the problem with it is. I'll paste it here:

if( findPatternInProcess(getProc(), updatePattern, updatePatternMask,

I first tried setting it up with the config utility, and when that failed I went for the manual setup but it still doesn't work.

Thanks in advance for your help,

funkrelaxo

EDIT: Nevermind, reinstalling micromacro solved everything...Now to happy botting :D

User avatar
Administrator
Site Admin
Posts: 5307
Joined: Sat Jan 05, 2008 4:21 pm

Re: RoM bot

#1027 Post by Administrator » Tue May 19, 2009 2:35 pm

Rajinn wrote:yea it works, 0x572 is the offset i've been using to detect battle. i havent had much time to work on RoM as i've been busy with my site :(
i can never get ahold of you or i would've given you the offset back when i posted my pics.
How have you tried contacting me? I have not received any emails nor IMs from you.

Isn't today patch day? If it is, the next version will be uploaded shortly after the update.

frank
Posts: 26
Joined: Wed Apr 22, 2009 12:11 pm

Re: RoM bot

#1028 Post by frank » Tue May 19, 2009 5:11 pm

I still have the death bug where deaths are not always detected. Also, today for the first time one of my bots thought it was dead and executed my death script, even though it was still alive. It's all really random, can't reproduce any of these bugs.

User avatar
Administrator
Site Admin
Posts: 5307
Joined: Sat Jan 05, 2008 4:21 pm

Re: RoM bot

#1029 Post by Administrator » Tue May 19, 2009 5:23 pm

frank wrote:I still have the death bug where deaths are not always detected. Also, today for the first time one of my bots thought it was dead and executed my death script, even though it was still alive. It's all really random, can't reproduce any of these bugs.
Have you made any modifications to the scripts? Updated off SVN?

I'd suggest deleting all of the scripts and reinstalling the new version when I upload it (which will probably be tomorrow). Hopefully that resolves any problems with unresolved conflicts between edits.

Zilvermoon
Posts: 104
Joined: Mon Jan 05, 2009 8:19 am

Re: RoM bot

#1030 Post by Zilvermoon » Tue May 19, 2009 6:45 pm

To my knowledge we should not expect a patch until in 2 weeks, I just looked for the note I read about it (originally posted by EU GM's, but it seem they edited it out again, so the decition might have been changed) ... anyway the note I read said that they want to change to only patch once every 4th week, posted 14 days ago as a little note in maintainance message ... but the note is gone now.

Anyway, I have been looking into the change I suggested about using the Batteling flag to stop moving, and I got a primitive code snippet working, but I think it's still too primitive to post yet .... but I'm looking into it.

Zilvermoon

User avatar
Administrator
Site Admin
Posts: 5307
Joined: Sat Jan 05, 2008 4:21 pm

Re: RoM bot

#1031 Post by Administrator » Tue May 19, 2009 9:09 pm

At line ~222 of bot.lua, right under player:fight(), wouldn't this work:

Code: Select all

while( player.inBattle and (not player:hasTarget() ) do
  player:update(); -- wait till the player has a target, or exits combat
  yrest(10);
end

Izebize
Posts: 18
Joined: Tue Apr 07, 2009 11:38 am

Re: RoM bot

#1032 Post by Izebize » Wed May 20, 2009 12:41 am

Wouldn't be better?
bot.lua ~212:

Code: Select all

if( player:haveTarget() ) then
Change it to:

Code: Select all

if( player:haveTarget() or (player.Battling) ) then
	while( player.inBattle and (not player:haveTarget()) ) do
		player:update(); -- wait till the player has a target, or exits combat
		yrest(10);
	end
Update: It works as it has to, but for some reason in the loop it throws this message:

Code: Select all

WARNING: Failure reading memory from 0xD7FDC0 at 0x260 in memoryReadInt(). Error code 299 (Only part of a ReadProcessMemory or WriteProcessMemory request was completed.)
I'm tryin to figure out what uses this address.

User avatar
Administrator
Site Admin
Posts: 5307
Joined: Sat Jan 05, 2008 4:21 pm

Re: RoM bot

#1033 Post by Administrator » Wed May 20, 2009 2:34 am

Probably has to due with it trying to call target:update() inside CPlayer:fight() on a target that no longer exists.

Izebize
Posts: 18
Joined: Tue Apr 07, 2009 11:38 am

Re: RoM bot

#1034 Post by Izebize » Wed May 20, 2009 2:50 am

This seems to work for me:
Change bot.lua ~207:

Code: Select all

if( player:haveTarget() ) then
To:

Code: Select all

if((player:haveTarget()) or (player.Battling)) then
	while (not player:haveTarget()) do
		player:update(); -- wait till the player has a target, or exits combat
		yrest(100);
	end;
It stucks if someone else attacks the mob, that i'm targeting.
I tried to make a time limit like you did with MAX_FIGHT_TIME, but it didn't breaks the loop.

Zilvermoon
Posts: 104
Joined: Mon Jan 05, 2009 8:19 am

Re: RoM bot

#1035 Post by Zilvermoon » Wed May 20, 2009 2:27 pm

Izebize wrote:This seems to work for me:
Change bot.lua ~207:

Code: Select all

if( player:haveTarget() ) then
To:

Code: Select all

if((player:haveTarget()) or (player.Battling)) then
	while (not player:haveTarget()) do
		player:update(); -- wait till the player has a target, or exits combat
		yrest(100);
	end;
It stucks if someone else attacks the mob, that i'm targeting.
I tried to make a time limit like you did with MAX_FIGHT_TIME, but it didn't breaks the loop.
Great code, I'll see if I can figure out how to make the "timer"...

Zilvermoon

frank
Posts: 26
Joined: Wed Apr 22, 2009 12:11 pm

Re: RoM bot

#1036 Post by frank » Wed May 20, 2009 3:19 pm

Administrator wrote:
frank wrote:I still have the death bug where deaths are not always detected. Also, today for the first time one of my bots thought it was dead and executed my death script, even though it was still alive. It's all really random, can't reproduce any of these bugs.
Have you made any modifications to the scripts? Updated off SVN?

I'd suggest deleting all of the scripts and reinstalling the new version when I upload it (which will probably be tomorrow). Hopefully that resolves any problems with unresolved conflicts between edits.
Every update I completely delete the micromacro directory and re-install the new bot version, and there are no edits or changes made to it.

CrazyGuy
Posts: 63
Joined: Mon Mar 23, 2009 10:41 am

Waypoint Movement Failed

#1037 Post by CrazyGuy » Thu May 21, 2009 7:17 pm

How or what would be some example code that i could drop in that after say, 20 or so "waypoint movements failed" it would log me out?

For some reason i occasionally get stuck somewhere and instead of just running into a tree till i realize that im stuck, i would like to just get logged out

User avatar
Administrator
Site Admin
Posts: 5307
Joined: Sat Jan 05, 2008 4:21 pm

Re: RoM bot

#1038 Post by Administrator » Thu May 21, 2009 7:55 pm

That would require a bit of modification. I guess probably the best way to do it is to increment a counter every time player:moveTo() returns the failed flag. If the counter is greater than some number, use the log out macro. Every x seconds, decrement the counter (if above zero).

CrazyGuy
Posts: 63
Joined: Mon Mar 23, 2009 10:41 am

Re: RoM bot

#1039 Post by CrazyGuy » Fri May 22, 2009 1:18 am

yeah what i was thinking was just after ever successful move, the counter reset. So you actually had to get 20 failed moves in a row before it logged you out, so it wasnt like if you accidentally got stuck for one or two it would log you. Would something like this work in the player.lua?

Code: Select all

stuckCount = 0;

in function CPlayer:moveTo(waypoint, ignoreCycleTargets)
.....
	if( success ) then
		-- We successfully reached the waypoint.
		-- Execute it's action, if it has one.
		stuckCount = 0;

....


		if( os.difftime(os.time(), lastDistImprove) > 3 ) then
			if( stuckCount  > 20 ) then
				keyboardPress(settings.profile.hotkeys.MP_POTION.key);
			end;

			-- We haven't improved for 3 seconds, assume stuck
			success = false;
			failreason = WF_STUCK;
			stuckCount = stuckCount+1;
			break;
		end

User avatar
Administrator
Site Admin
Posts: 5307
Joined: Sat Jan 05, 2008 4:21 pm

Re: RoM bot

#1040 Post by Administrator » Fri May 22, 2009 2:37 am

The general idea would work, yeah. You should try it and see if it works.

Locked

Who is online

Users browsing this forum: Ahrefs [Bot] and 5 guests