RoM bot

Runes of Magic/Radiant Arcana (http://www.runesofmagic.com)
Locked
Message
Author
Blacksilence
Posts: 4
Joined: Wed Aug 12, 2009 1:26 pm

Re: RoM bot

#1581 Post by Blacksilence » Thu Aug 13, 2009 7:08 am

Hmm thats a lvl bot i have think its a farm/gather bot^^ anyone know a gather bot?^^

d003232
Posts: 1252
Joined: Wed Jun 03, 2009 4:27 pm

Re: RoM bot

#1582 Post by d003232 » Thu Aug 13, 2009 7:39 am

Blacksilence wrote:Hmm thats a lvl bot i have think its a farm/gather bot^^ anyone know a gather bot?^^
You can also gather perfectly with that bot. Just create a gather waypoint file with 'rom/createpath.lua'. That will automaticly insert the

Code: Select all

player:harvest();
function within your waypoint file. More about that see here.
The RoM Bot Online Wiki needs your help!

User avatar
memcpy
Posts: 30
Joined: Fri Jun 05, 2009 8:48 am

Re: RoM bot

#1583 Post by memcpy » Thu Aug 13, 2009 7:50 am

d003232 wrote:a suggestion for a waypoint list
thats a good idea but i think the condition part should be placed in the waypointlist file itself. so it will gain more dynamic.

like:

Code: Select all

<waypointlist>
	<waypointfile name="level_1-3.xml">if (player.Level > 3) then WaypointList:loadNext(); end</waypointfile>
	<waypointfile name="level_goto_4.xml">WaypointList:loadNext();</waypointfile>
	<waypointfile name="level_4-5.xml">...</waypointfile>
	<waypointfile name="level_goto_7.xml">...</waypointfile>
	<waypointfile name="level_7-8.xml">if (player.Level > 8) then Player:logout(); end</waypointfile>
</waypointlist>
so everytime it finishes one waypoint cycle it checks the condition(s) required. if it/they is/are met the script executes the instruction (load next waypoint file, logout, etc...).

d003232
Posts: 1252
Joined: Wed Jun 03, 2009 4:27 pm

Re: RoM bot

#1584 Post by d003232 » Thu Aug 13, 2009 8:11 am

memcpy wrote:

Code: Select all

<waypointlist>
	<waypointfile name="level_1-3.xml">if (player.Level > 3) then WaypointList:loadNext(); end</waypointfile>
	<waypointfile name="level_goto_4.xml">WaypointList:loadNext();</waypointfile>
	<waypointfile name="level_4-5.xml">...</waypointfile>
	<waypointfile name="level_goto_7.xml">...</waypointfile>
	<waypointfile name="level_7-8.xml">if (player.Level > 8) then Player:logout(); end</waypointfile>
</waypointlist>
so everytime it finishes one waypoint cycle it checks the condition(s) required. if it/they is/are met the script executes the instruction (load next waypoint file, logout, etc...).
Yea, think that would help the noob users a little. If we could avoid the necessity to manuel edit the waypoint file and insert lua code. At least for a standard situation like change the path after gaining a level.

And at the same time we have to take a look to the ingame situation. We start the bot and we have selected a waypointlist. What should be the benefit of that functionality?

For me it is:
  • you don't have to select your waypointfile manualy. The bot will do that. And, because that is depening from the player position, that have to be the criteria to select a waypoint file
  • If your level is below a waypoint file, the bot have to use the lower one to find the way to the final place
By doing that a waypointlist could looke like this:

Code: Select all

<waypointlist>
	<waypointfile name="level_1-3.xml"   maxlevel="3" ></waypointfile>
	<waypointfile name="level_goto_4.xml"></waypointfile>
	<waypointfile name="level_4-5.xml"   maxlevel="5" ></waypointfile>
	<waypointfile name="level_goto_7.xml maxlevel="7" ></waypointfile>
	<waypointfile name="level_7-8.xml"   maxlevel="8" ></waypointfile>
</waypointlist>
So the only functionality is to use 'maxlevel' for automaticly change the path. And is is used to determin at beginning, with path is our goal. I'm not sure if it is practicabeo to alow lua code inside. And how comlex it would be to implement that. I suppose a easy waypointlist wouldn't need to much code changes.
The RoM Bot Online Wiki needs your help!

Blacksilence
Posts: 4
Joined: Wed Aug 12, 2009 1:26 pm

Re: RoM bot

#1585 Post by Blacksilence » Thu Aug 13, 2009 8:16 am

Ehm When i make the gather bot he use fast loot or slow like normal because in youtube is a bot that farms in miliseconds the things

d003232
Posts: 1252
Joined: Wed Jun 03, 2009 4:27 pm

Re: RoM bot

#1586 Post by d003232 » Thu Aug 13, 2009 8:19 am

Blacksilence wrote:Ehm When i make the gather bot he use fast loot or slow like normal because in youtube is a bot that farms in miliseconds the things
The gather 'speed' is just limited by the client. 5 sec for each 'item' to gather.
The RoM Bot Online Wiki needs your help!

User avatar
memcpy
Posts: 30
Joined: Fri Jun 05, 2009 8:48 am

Re: RoM bot

#1587 Post by memcpy » Thu Aug 13, 2009 9:30 am

d003232 wrote:

Code: Select all

<waypointlist>
	<waypointfile name="level_1-3.xml"   maxlevel="3" ></waypointfile>
	<waypointfile name="level_goto_4.xml"></waypointfile>
	<waypointfile name="level_4-5.xml"   maxlevel="5" ></waypointfile>
	<waypointfile name="level_goto_7.xml maxlevel="7" ></waypointfile>
	<waypointfile name="level_7-8.xml"   maxlevel="8" ></waypointfile>
</waypointlist>
no, it's not just for "noobish" players. it's a lot more dynamic while being simple at the same time. let's not make it that static as you suggest. what if i don't want to switch the waypoint at level x but after 1 hrs of botting or after x kills?

more dynamic example:

Code: Select all

<waypointlist>
   <waypointfile name="one.xml">if (player:loggedin()>2hours) then WaypointList:load("three"); end</waypointfile>
   <waypointfile name="two.xml">if (player:level()>45) then WaypointList:load("seven"); end</waypointfile>
   <waypointfile name="three.xml">if (player:loggedin()>4hours) then WaypointList:load("two"); end</waypointfile>
   ....
   <waypointfile name="seven.xml">if (player:killcount()>500) then player:logout(); end</waypointfile>
</waypointlist>

akira2102
Posts: 51
Joined: Sat Jul 18, 2009 2:10 pm

Re: RoM bot

#1588 Post by akira2102 » Thu Aug 13, 2009 12:57 pm

d003232 wrote:a suggestion for a waypoint list:

There would be an option:

Code: Select all

<option name="PATH_TYPE"              value="waypointlist"/>
<option name="WAYPOINTS"              value="list_level_1-10.xml" />
and the list would look like:

Code: Select all

<waypointlist>
	<waypointfile name="level_1-3.xml"></waypointfile>
	<waypointfile name="level_goto_4.xml"></waypointfile>
	<waypointfile name="level_4-5.xml"></waypointfile>
	<waypointfile name="level_goto_7.xml"></waypointfile>
	<waypointfile name="level_7-8.xml"></waypointfile>
	...
</waypointlist>
If you start the bot somewhere, he will look for the closest waypointpath from the list and start with that path. If that path is to low for your level, your will check the player.Level in each file

Code: Select all

<waypoint x="-3861" z="-7817">
	if( player.Level > 3 ) then
		load_paths("level_goto_4");
  	end
	</waypoint>
and the bot will follow the paths, until he is at the right place.

What do you think out there?
That sounds good to me. I also tried to do a checkout in a file were all my waypoints are included with my botstarter programm but since I'm not the best programmer I did't get the waypoints out of that list to compare them. But your suggestion looks much better.
But for me and my botstarter it "would be enough" to start the waypoint depending on the level. I already have the level querys in my waypoint files so that the bot runs from the start place (Level 1) up to silverfall. But as I said when then the Bot is restartet and the startwaypoints are loaded everything is scraped.
So If u can realize your suggestion I definitly would prefer this!

Thanks for thinking about it. :)

d003232
Posts: 1252
Joined: Wed Jun 03, 2009 4:27 pm

Re: RoM bot

#1589 Post by d003232 » Thu Aug 13, 2009 12:59 pm

memcpy wrote:no, it's not just for "noobish" players. it's a lot more dynamic while being simple at the same time. let's not make it that static as you suggest. what if i don't want to switch the waypoint at level x but after 1 hrs of botting or after x kills?

more dynamic example:

Code: Select all

<waypointlist>
   <waypointfile name="one.xml">if (player:loggedin()>2hours) then WaypointList:load("three"); end</waypointfile>
   <waypointfile name="two.xml">if (player:level()>45) then WaypointList:load("seven"); end</waypointfile>
   <waypointfile name="three.xml">if (player:loggedin()>4hours) then WaypointList:load("two"); end</waypointfile>
   ....
   <waypointfile name="seven.xml">if (player:killcount()>500) then player:logout(); end</waypointfile>
</waypointlist>
Yes you're right. I suppose at with a higher leverl char, the reason to change places is not so much the player level (simply becaus you need mostly more time for a level up then the duration of your botting session). It is more often the wish to switch between places to look not so botish. I will try to look deeper into a solution the next days. And I'm skeptical about a solution with an additional lua coding place. There are a lot of lua possibilities with the waypoint file, and also the special places <onLeaveCombat> in the profile is a good place for a 'metacoding' above different waypoint files. Perhaps we can simply do something by having the possibility to access a waypoint list. Already now you could insert 'waypointfiles' as user options:

Code: Select all

<option name="USER_WAYPOINTS_1"              value="level_1-3.xml" />
<option name="USER_WAYPOINTS_2"              value="level_4-5.xml" />
<option name="USER_WAYPOINTS_3"              value="level_6-8.xml" />
<option name="USER_WAYPOINTS_4"              value="level_1-10.xml" />
and access them in own lua coding?
The RoM Bot Online Wiki needs your help!

akira2102
Posts: 51
Joined: Sat Jul 18, 2009 2:10 pm

Re: RoM bot

#1590 Post by akira2102 » Thu Aug 13, 2009 4:16 pm

Thanks to your sugesstions D. I worked something out thats fine for me so my bot always get the nearest waypoint. Thank u very much!

ExtremeSlayer
Posts: 1
Joined: Thu Aug 13, 2009 9:59 pm

Re: RoM bot

#1591 Post by ExtremeSlayer » Thu Aug 13, 2009 10:02 pm

I keep getting
micromacro/scripts/rom/classes/player.lua:700: bad argument #1 to 'keyboardRelease' <<null>>

d003232
Posts: 1252
Joined: Wed Jun 03, 2009 4:27 pm

Re: RoM bot

#1592 Post by d003232 » Fri Aug 14, 2009 1:29 am

ExtremeSlayer wrote:I keep getting
micromacro/scripts/rom/classes/player.lua:700: bad argument #1 to 'keyboardRelease' <<null>>
Please read here!.
The RoM Bot Online Wiki needs your help!

User avatar
memcpy
Posts: 30
Joined: Fri Jun 05, 2009 8:48 am

Re: RoM bot

#1593 Post by memcpy » Fri Aug 14, 2009 3:46 am

d003232 wrote:... <onLeaveCombat> in the profile is a good place for a 'metacoding' above different waypoint files. Perhaps we can simply do something by having the possibility to access a waypoint list. Already now you could insert 'waypointfiles' as user options: ... and access them in own lua coding?
well, yeah that's another solution if you want to pack it in one file. so you could still place the waypointlist in the profile like:

Code: Select all

<waypointlist>
   <waypointfile name="foo" file="one.xml" />
   <waypointfile name="bar" file="two.xml" />
   <waypointfile name="hello" file="three.xml" />
   ....
   <waypointfile name="world" file="seven.xml" />
</waypointlist>
and then later in the profile do something like:

Code: Select all

<onLeaveCombat>
   if (WaypointList:name()=="foo" and WaypointList:getCurrentWaypoint()==__LAST and Player:level > 45) then WaypointList:switchTo("bar"); end
</onLeaveCombat>
i mean i can understand your concerns about having like 10 places one can implement "metacoding" like you call it. but on the other hand maybe it's not that wrong at all? still two little words remain: more flexibility ;)

User avatar
memcpy
Posts: 30
Joined: Fri Jun 05, 2009 8:48 am

Re: RoM bot

#1594 Post by memcpy » Fri Aug 14, 2009 9:28 am

another great addition to the flexibility would be to have the option to specify settings for each waypointfile. thus overriding the default ones.

like you have in your profile

Code: Select all

<option name="LOOT"               value="true" />
<option name="LOOT_IN_COMBAT"     value="true" />
<option name="LOOT_DISTANCE"      value="100" />
<option name="LOOT_PAUSE_AFTER"   value="10" />
but in your waypointfile you declare other loot settings which may be better for this specific path you are botting.

simply said: override profile settings if set in waypointfile.

example 1:

Code: Select all

<waypoints>
		<option name="LOOT"               value="true" />
		<option name="LOOT_IN_COMBAT"     value="false" />
		<option name="LOOT_DISTANCE"      value="100" />
		<option name="LOOT_PAUSE_AFTER"   value="30" />
	<!-- # 1 --><waypoint x="-4213" z="9534"></waypoint>
	<!-- # 2 --><waypoint x="-4196" z="9693"></waypoint>
	<!-- # 3 --><waypoint x="-4160" z="9800"></waypoint>
</waypoints>
example 2:

Code: Select all

<waypointlist>
   <waypointfile name="foo" file="one.xml">
		<option name="LOOT"               value="false" />
		<option name="LOOT_IN_COMBAT"     value="false" />
		<option name="LOOT_DISTANCE"      value="100" />
		<option name="LOOT_PAUSE_AFTER"   value="30" />
   </waypointfile>
   <waypointfile name="bar" file="two.xml" />
   <waypointfile name="hello" file="three.xml" />
   ....
   <waypointfile name="world" file="seven.xml" />
</waypointlist>

d003232
Posts: 1252
Joined: Wed Jun 03, 2009 4:27 pm

Re: RoM bot

#1595 Post by d003232 » Fri Aug 14, 2009 9:39 am

memcpy wrote:another great addition to the flexibility would be to have the option to specify settings for each waypointfile. thus overriding the default ones.

like you have in your profile

Code: Select all

<option name="LOOT"               value="true" />
<option name="LOOT_IN_COMBAT"     value="true" />
<option name="LOOT_DISTANCE"      value="100" />
<option name="LOOT_PAUSE_AFTER"   value="10" />
but in your waypointfile you declare other loot settings which may be better for this specific path you are botting.
With any changes you could do a hard overwrite by yourselfe, just with e.g.:

Code: Select all

settings.profile.options.LOOT = false;
wihtin the waypoint file. I didn't test that, but as I understand the coding, it should work. But there would be no restore within a session, if you load a new path. Thinks that one more point for 'the list'.
The RoM Bot Online Wiki needs your help!

akira2102
Posts: 51
Joined: Sat Jul 18, 2009 2:10 pm

Re: RoM bot

#1596 Post by akira2102 » Sat Aug 15, 2009 4:06 pm

Hi there is a huge error in the skill

Code: Select all

<skill name="ROGUE_PREMEDITATION" energy="20" type="buff" target="self" inbattle="false" />
The Bot cast this again and again and doesn't do anything else..

d003232
Posts: 1252
Joined: Wed Jun 03, 2009 4:27 pm

Re: RoM bot

#1597 Post by d003232 » Sat Aug 15, 2009 4:08 pm

akira2102 wrote:Hi there is a huge error in the skill

Code: Select all

<skill name="ROGUE_PREMEDITATION" energy="20" type="buff" target="self" inbattle="false" />
The Bot cast this again and again and doesn't do anything else..
I suppose there is the cooldown parameter missing? What says the tooltip?
The RoM Bot Online Wiki needs your help!

Lembke
Posts: 13
Joined: Sun Aug 02, 2009 8:20 pm

Re: RoM bot

#1598 Post by Lembke » Sun Aug 16, 2009 1:14 am

i get this error when im starting the bot it is as fast the bot use a spell it stops and that error shows up im usring rev 155

Code: Select all

Sun Aug 16 08:10:27 2009 : MicroMacro v1.0
Sun Aug 16 08:10:27 2009 : Processor Type: 2X 586, OS: Windows 7 
Sun Aug 16 08:10:27 2009 : LuaCoco is available.
Sun Aug 16 08:10:27 2009 : Lua glues exported.
Sun Aug 16 08:10:27 2009 : Keyboard layout: US English
Sun Aug 16 08:10:31 2009 : Executing script 'update.lua'
==================================================

Sun Aug 16 08:10:32 2009 : Execution success

Sun Aug 16 08:10:39 2009 : Executing script 'bot.lua'
==================================================

Sun Aug 16 08:10:43 2009 : RoM Bot Version 2.45
Sun Aug 16 08:10:43 2009 : Language: english
Sun Aug 16 08:10:43 2009 : Using static char address 0x8D85E0, player address 0x30280400

stack traceback:
	...(x86)\Runes of Magic\Bot\bot2\micromacro\lib\lib.lua:536: in function 'startMacro'
	scripts\rom\bot.lua:417: in main chunk

----------TRACEBACK END----------

Sun Aug 16 08:10:49 2009 : ...c/Bot/bot2/micromacro/scripts/rom/classes/player.lua:218: bad argument #4 to '?' (number expected, got no value)
Sun Aug 16 08:10:49 2009 : Execution error: Runtime error

d003232
Posts: 1252
Joined: Wed Jun 03, 2009 4:27 pm

Re: RoM bot

#1599 Post by d003232 » Sun Aug 16, 2009 1:47 am

Lembke wrote:i get this error when im starting the bot it is as fast the bot use a spell it stops and that error shows up im usring rev 155

Code: Select all

...
Sun Aug 16 08:10:49 2009 : ...c/Bot/bot2/micromacro/scripts/rom/classes/player.lua:218: bad argument #4 to '?' (number expected, got no value)
Sun Aug 16 08:10:49 2009 : Execution error: Runtime error
I suppose you have a mix of old files and new SVN. It seems that you have an old language file. Just delete all files & folders in 'micromacro/scripts/rom' except the folders 'waypoints' and 'profiles' and repeat the update.
The RoM Bot Online Wiki needs your help!

akira2102
Posts: 51
Joined: Sat Jul 18, 2009 2:10 pm

Re: RoM bot

#1600 Post by akira2102 » Sun Aug 16, 2009 3:07 am

d003232 wrote: I suppose there is the cooldown parameter missing? What says the tooltip?
this skill has no cooldown thats the problem. It should be used only before starting a fight.

Locked

Who is online

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