Autosell broken?

Runes of Magic/Radiant Arcana (http://www.runesofmagic.com)
Post Reply
Message
Author
ekuth1
Posts: 3
Joined: Wed Dec 16, 2009 9:44 pm

Autosell broken?

#1 Post by ekuth1 » Wed Dec 30, 2009 8:27 pm

I'm gathering from another thread that autosell might be broken... is this the case?

I've beat my head against the wiki and forum posts for several hours now. Want to make certain I'm not overlooking the obvious fact that it's just not functioning at the moment... :mrgreen:

Maroco
Posts: 30
Joined: Fri Sep 18, 2009 11:25 pm

Re: Autosell broken?

#2 Post by Maroco » Thu Dec 31, 2009 12:09 pm

yes its broken naw.

User avatar
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

Re: Autosell broken?

#3 Post by rock5 » Tue Jan 05, 2010 3:52 am

I fixed that. :)

2 things needed to be fixed in item.lua.

1. The colors needed the transparency included like this;

Code: Select all

ITEMCOLOR = {
	WHITE = "ffffffff",
	GREEN = "ff00ff00",
	BLUE = "ff0072bc",
	PURPLE = "ffc805f8",
	ORANGE = "fff68e56",
	GOLD = "ffa37d50",
	}
2. Remove line 136;

Code: Select all

color = tonumber( "0x" .. tostring(color) );
Converting the color to decimal will cause the comparison to the Hexdecimal color to fail. Not sure why it's converted anyway. Maybe this will cause other problems, in which case we may need to instead change the value while it is being compared in function CItem:parseItemLink.

I'm not sure where to go to get this fixed in the release version. Maybe someone with repository access can fix it and upload?
  • Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
  • I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
  • How to: copy and paste in micromacro
    ________________________
    Quote:
    • “They say hard work never hurt anybody, but I figure, why take the chance.”
          • Ronald Reagan

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

Re: Autosell broken?

#4 Post by Administrator » Tue Jan 05, 2010 11:22 am

It was already fixed yesterday. Your method should work, but I instead converted it to compare decimal values rather than strings for speed reasons (though, in this case, it is incredibly little difference). It's already on the latest SVN revision.

User avatar
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

Re: Autosell broken?

#5 Post by rock5 » Tue Jan 05, 2010 3:52 pm

LoL. The timing.

So are you saying it's quicker to first convert 2 hex numbers to decimal and compare them to just comparing the hex strings directly?
  • Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
  • I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
  • How to: copy and paste in micromacro
    ________________________
    Quote:
    • “They say hard work never hurt anybody, but I figure, why take the chance.”
          • Ronald Reagan

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

Re: Autosell broken?

#6 Post by Administrator » Tue Jan 05, 2010 4:05 pm

Yes, that is generally correct. The conversion only needs to be done once, but comparisons will be done many times. String comparison is much slower than number comparison.

ak77
Posts: 6
Joined: Tue Jan 05, 2010 8:58 pm

Re: Autosell broken?

#7 Post by ak77 » Tue Jan 05, 2010 9:05 pm

Firstly would like to say , great bot. Very comprehensive :)

Having tried the various solutions posted like editing the items.lua file, and downloading the lastest off svn, my char still wont sell anything.

It goes to the vendor, finds it; opens up the shop, repairs ok; but doesn't sell anything.

I put debug option on in profile but isn't showing anything.

This is what is a see :-

Code: Select all

Moving to waypoint #6, (-3718, -8636)
Moving to waypoint #7, (-3781, -8577)
We try to find NPC Shamp: Shamp,
We successfully target NPC Shamp and try to open the dialog window.
Mapping inventory (bagslot 1 to 60)...
100% [**************************************************]
Mapping inventory (bagslot 1 to 60)...
100% [**************************************************]
Clearing target.
Moving to waypoint #1, (-3179, -8581)
Maps the inventory twice , then leaves the npc and continues.

Any idea?

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

Re: Autosell broken?

#8 Post by Administrator » Wed Jan 06, 2010 1:28 pm

Any idea?
No. You failed to provide enough information.

ak77
Posts: 6
Joined: Tue Jan 05, 2010 8:58 pm

Re: Autosell broken?

#9 Post by ak77 » Wed Jan 06, 2010 2:01 pm

Ok, what information shall i provide?

As far as i know that's all i have to go on myself, so not sure what to put.

I have put debug on in the profile but it is not showing , as if the vendoring part is not even occuring.

I'm a bit confused , sorry .

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

Re: Autosell broken?

#10 Post by Administrator » Wed Jan 06, 2010 2:45 pm

You don't think that perhaps a copy of your profile options could be useful? Or a copy of the log.txt. Or the waypoint script that controls shopping. Those would be good starting points. Strangely enough, I cannot magically figure out what you've done unless you provide it for me.

ak77
Posts: 6
Joined: Tue Jan 05, 2010 8:58 pm

Re: Autosell broken?

#11 Post by ak77 » Wed Jan 06, 2010 2:56 pm

Ok , heres my profile settings.

Code: Select all

<profile>
	<options>
		<!-- Try the bot with a new char mage                   -->
		<!-- At the pioneer village. Use demo.xml waypoint file -->
		<option name="HP_LOW"			value="50" />
		<option name="MP_LOW_POTION"	value="50" />
		<option name="HP_LOW_POTION"	value="40" />
		<option name="USE_HP_POTION"	value="best" />	<!-- potion select strategy: best|minstack -->
		<option name="USE_MANA_POTION"	value="best" />	<!-- potion select strategy: best|minstack -->

		<!-- Rest if HP or Mana is below that level -->
		<option name="HP_REST" value="15" />
		<option name="MP_REST" value="15" />

		<!-- Shopping options, how many of what do you want to keep in your inventory -->
		<option name="HEALING_POTION" value="99" />
		<option name="MANA_POTION" value="99" />
		<option name="ARROW_QUIVER" value="2" />
		<option name="THROWN_BAG" value="2" />
		<option name="POISON" value="30" />

		<!-- either false or arrow or thrown -->
		<option name="RELOAD_AMMUNITION" value="false" />	<!-- false|arrow|thrown -->

		<!-- Combat options -->
		<option name="COMBAT_TYPE"        value="" />	<!-- leave empty or choose ranged/melee if not 

using class default -->
		<option name="COMBAT_RANGED_PULL" value="true" /> <!-- only important for melees -->
		<option name="COMBAT_DISTANCE"    value="200" />
		<option name="MAX_FIGHT_TIME"     value="15" />	<!-- Max time without damage before break -->
		<option name="DOT_PERCENT"        value="90" />
		<option name="ANTI_KS"            value="true" />

		<!-- Attack monsters 3 levels above or 10 below your level -->
		<option name="TARGET_LEVELDIF_ABOVE" value="3" />
		<option name="TARGET_LEVELDIF_BELOW" value="10" />

		<!-- Waypoint and movement settings -->
		<option name="WAYPOINTS"		value="" />  <!-- leave empty to show a list -->
		<option name="RETURNPATH"		value="" />
		<option name="PATH_TYPE"		value="waypoints" />	<!-- waypoints | wander -->
		<option name="WANDER_RADIUS"		value="300" />
		<option name="WAYPOINT_DEVIATION"	value="50" />
		<option name="QUICK_TURN" 		value="false" />

		<!-- Loot settings -->
		<option name="LOOT"               value="true" />
		<option name="LOOT_IN_COMBAT"     value="true" />
		<option name="LOOT_DISTANCE"      value="100" />
		<option name="LOOT_PAUSE_AFTER"   value="0" />		<!-- probability in % for a short rest 

-->

		<!-- Log out and resurrect settings -->
		<option name="LOGOUT_TIME" 			value="0" />	<!-- in minutes, 0 = timer 

disabled -->
		<option name="LOGOUT_SHUTDOWN"		value="false" />
		<option name="LOGOUT_WHEN_STUCK"	value="true" />
		<option name="RES_AUTOMATIC_AFTER_DEATH" value="true" />


		<!-- Item Sell Control
		<option name="INV_AUTOSELL_QUALITY"	value="white" />
		<option name="INV_AUTOSELL_IGNORE"	value="Zinc Ore" /> -->


		<option name="DEBUG_AUTOSELL"      value="true" />



		<!-- For more options and documentation see the RoM Bot Wiki:  -->
		<!-- http://www.solarstrike.net/wiki/index.php5?title=RoM_Bot  -->

	</options>

	<friends>
		<!-- names of friends we help fighting or enemys we don't want to attack -->
		<!-- for umlauts use \129 (ue),\132 (ae),\148 (oe) e.g. K\132fer         -->
		<friend name="MyOtherCharacter1" />
		<friend name="MyOtherCharacter2" />
		<friend name="Elite_Mob_Name1" />
		<friend name="Elite_Mob_Name2" />
	</friends>

	<mobs>
		<!-- names of mobs we want to attack 				-->
		<!-- if no names defined we will attack all mobs	-->
		<mob name="" />
		<mob name="" />
		<mob name="" />
	</mobs>

	<hotkeys>
    	<!-- to communicate with the RoM API / define ingame dummy macro at place 1 -->
		<hotkey name="MACRO"        key="VK_0" />
	</hotkeys>

	<!-- define your skills depending from your actual primary class -->
	<!-- see the example for a priest/mage                           -->
	<!-- delete skills you don't have or don't want to use.          -->
	<!-- For more skills to use see /database/skills.xml             -->
	<!-- demo skills for LvL 1 character for all classes             -->
	<skills_priest>
		<skill name="PRIEST_SOUL_SOURCE"   hotkey="VK_4" priority="110" inbattle="true" hpper="15" />
		<skill name="PRIEST_HOLY_AURA"     hotkey="VK_7" priority="100" inbattle="true" hpper="24" />
		<skill name="PRIEST_URGENT_HEAL"   hotkey="VK_2" priority="100" hpper="30"  />
		<skill name="PRIEST_REGENERATE"    hotkey="VK_6" priority="90" />
		<skill name="PRIEST_RISING_TIDE"   hotkey="VK_3" priority="80" />
		<skill name="MAGE_FIREBALL"        hotkey="VK_8" priority="70" />
		<skill name="PRIEST_WAVE_ARMOR"    hotkey="VK_5" priority="40"  inbattle="true" />
		<!--skill name="PRIEST_SOUL_BOND"     hotkey="VK_T" priority="30" /> -->
		<!--skill name="PRIEST_MAGIC_BARRIER" hotkey="VK_F" priority="20" rebuffcut="60" 

inbattle="false" /> -->
	</skills_priest>

	<skills_warrior>
		<skill name="WARRIOR_ENRAGED"        hotkey="VK_1" priority="90" />
		<skill name="WARRIOR_BERSERK"        hotkey="VK_2" priority="80" />
		<skill name="WARRIOR_SLASH"          hotkey="VK_3" priority="70" />
		<skill name="WARRIOR_WHIRLWIND"      hotkey="VK_4" priority="60" />
		<skill name="WARRIOR_PROBING_ATTACK" hotkey="VK_5" priority="60" />
		<skill name="WARRIOR_OPEN_FLANK"     hotkey="VK_6" priority="60" />
	</skills_warrior>

	<skills_scout>
		<skill name="SCOUT_SHOT"        hotkey="VK_2" priority="90" />
		<skill name="SCOUT_AUTOSHOT"    hotkey="VK_4" priority="80" />
		<skill name="SCOUT_WIND_ARROWS" hotkey="VK_5" priority="70" />
	</skills_scout>

	<skills_rogue>
		<skill name="ROGUE_SHADOWSTAB"  hotkey="VK_2" priority="90" />
		<skill name="ROGUE_LOW_BLOW"    hotkey="VK_4" priority="80" />
	</skills_rogue>

	<skills_mage>
		<skill name="MAGE_FLAME"              hotkey="VK_3" priority="80" />
		<skill name="MAGE_ELEMENTAL_CATALYST" hotkey="VK_2" priority="30" inbattle="true" />
	</skills_mage>

	<skills_knight>
		<skill name="KNIGHT_HOLY_STRIKE"  hotkey="VK_3" priority="90" />
		<skill name="KNIGHT_HOLY_SHIELD"  hotkey="VK_4" priority="80" inbattle="true" hpper="15" />
		<skill name="KNIGHT_HOLY_SEAL"    hotkey="VK_5" priority="70" />
		<skill name="KNIGHT_PUNISHMENT"   hotkey="VK_2" priority="60" />
	</skills_knight>

	<skills_warden>
		<skill name="WARDEN_CHARGED_CHOP"	hotkey="VK_2" priority="90" />
		<skill name="WARDEN_ENERGY_ABSORB"	hotkey="VK_3" priority="80" inbattle="true" hpper="25" 

/>
	</skills_warden>

	<skills_druid>
		<skill name="DRUID_RECOVER"        hotkey="VK_2" priority="90" hpper="30" />
		<skill name="DRUID_EARTH_ARROW"    hotkey="VK_3" priority="80" />
	</skills_druid>

	<onLoad>
		-- Additional Lua code to execute after loading the profile
		-- and before the bot starts. e.g. You could overwrite profile settings here
		-- like: changeProfileOption("HP_REST", 60);
	</onLoad>

	<onDeath>
		-- Additional Lua code to execute on death
		-- pauseOnDeath(); -- Stop the script
		-- player:logout();	-- logout
	</onDeath>

	<onLeaveCombat>
		-- Additional Lua code to execute after killing an enemy
	</onLeaveCombat>

	<onLevelup>
		-- Additional Lua code to execute after having a levelup
		-- and levelup the skills for a new character (mage or priest recommended)
		-- e.g. sendMacro("SetSpellPoint(_tabnr, _skillnr);"); would levelup a skill
	</onLevelup>

	<onSkillCast>
		-- Additional Lua code to execute when casting a skill
		-- Note: arg1 contains the skill being used.
		-- i.e. arg1.Name will be the name of the skill being cast
		-- e.g.:
		--if( 15 > player.HP/player.MaxHP*100 ) then
		--    player:cast("PRIEST_SOUL_SOURCE");
		--elseif( 25 > player.HP/player.MaxHP*100 ) then
		--    player:cast("PRIEST_HOLY_AURA");
		--    player:cast("PRIEST_URGENT_HEAL");
		--    player:cast("PRIEST_URGENT_HEAL");
	</onSkillCast>
</profile>
waypoint file really simple 3 waypoints and a vendor function call to test it


Code: Select all

<waypoints>
	<!-- #  1 --><waypoint x="-3609" z="-8667">	</waypoint>
	<!-- #  2 --><waypoint x="-3710" z="-8614">	</waypoint>
	<!-- #  3 --><waypoint x="-3774" z="-8573">		
	player:merchant("Shamp");
	
	</waypoint>
</waypoints>
& my logfile

Code: Select all

Wed Jan 06 20:15:58 2010 : MicroMacro v1.0
Wed Jan 06 20:15:58 2010 : Processor Type: 4X 586, OS: Windows Vista Service Pack 1
Wed Jan 06 20:15:58 2010 : LuaCoco is available.
Wed Jan 06 20:15:58 2010 : Lua glues exported.
Wed Jan 06 20:15:59 2010 : Keyboard layout: US English
Wed Jan 06 20:15:59 2010 : Executing script 'bot.lua'
--------------------------------------------------------------------------------

Wed Jan 06 20:15:59 2010 : Language: english
Wed Jan 06 20:16:02 2010 : Using static char address 0x956368, player address 0x2AF4E100
Wed Jan 06 20:16:03 2010 : QUICK_TURN = false
Wed Jan 06 20:16:03 2010 : Keyboard settings are from bindings.txt:
Wed Jan 06 20:16:03 2010 : MOVE_FORWARD                  W
Wed Jan 06 20:16:03 2010 : STRAFF_LEFT                   Q
Wed Jan 06 20:16:03 2010 : WARRIOR_WHIRLWIND             4
Wed Jan 06 20:16:03 2010 : WARRIOR_OPEN_FLANK            6
Wed Jan 06 20:16:03 2010 : WARRIOR_PROBING_ATTACK        5
Wed Jan 06 20:16:03 2010 : MOVE_BACKWARD                 S
Wed Jan 06 20:16:03 2010 : TARGET                        TAB
Wed Jan 06 20:16:03 2010 : ROTATE_RIGHT                  D
Wed Jan 06 20:16:03 2010 : STRAFF_RIGHT                  E
Wed Jan 06 20:16:03 2010 : WARRIOR_SLASH                 3
Wed Jan 06 20:16:03 2010 : WARRIOR_ENRAGED               1
Wed Jan 06 20:16:03 2010 : TARGET_FRIEND                 J
Wed Jan 06 20:16:03 2010 : WARRIOR_BERSERK               2
Wed Jan 06 20:16:03 2010 : MACRO                         0
Wed Jan 06 20:16:03 2010 : JUMP                          SPACE
Wed Jan 06 20:16:03 2010 : ROTATE_LEFT                   A
Wed Jan 06 20:16:37 2010 : Execution success
Cheers.

*Edit*

I just noticed on trying it with a potion seller that the bot will keep buying healing potion even when the max set in the profile has been met.

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

Re: Autosell broken?

#12 Post by Administrator » Wed Jan 06, 2010 4:10 pm

You're missing:

Code: Select all

<option name="INV_AUTOSELL_ENABLE"   value="true" />

ak77
Posts: 6
Joined: Tue Jan 05, 2010 8:58 pm

Re: Autosell broken?

#13 Post by ak77 » Wed Jan 06, 2010 4:33 pm

Dam , so simple.

Many thanks for taking a look :)

Post Reply

Who is online

Users browsing this forum: No registered users and 7 guests