Page 1 of 1

Use Heal instead of Potions

Posted: Mon Sep 05, 2011 5:07 am
by Xan
Hi all :D
I have a nice r/p borned to farm ks. The bot works fine but i have a problem. I did priest in secondary for using heal instead health potion. But when Hp are lower then 50% the bot try to use a potion (wich i haven't) before restart. Now how to use Urgent Heal insted of potion? :)

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<profile>
	<options>
		<!-- Try the bot with a new char mage                   -->
		<!-- At the pioneer village. Use demo.xml waypoint file -->
		<option name="HP_LOW"			value="85" />
		<option name="MP_LOW_POTION"	value="50" />
		<option name="HP_LOW_POTION"	value="70" />
		<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="50" />
		<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="0" />
		<option name="MANA_POTION" value="0" />
		<option name="ARROW_QUIVER" value="0" />
		<option name="THROWN_BAG" value="0" />
		<option name="POISON" value="0" />
		<option name="INV_AUTOSELL_ENABLE"	value="true" />
		<option name="INV_AUTOSELL_FROMSLOT"	value="1" />
		<option name="INV_AUTOSELL_TOSLOT"	value="60" />
		<option name="INV_AUTOSELL_QUALITY"	value="white,green,blue" />
		<option name="INV_AUTOSELL_IGNORE"	value="Aesi Dagger,Darkness Trousers,Belt of Corruption,Scout's Unicorn Swift Armor,Feather Cap,Turquoise Peony Ring,Violet Peony Ring,White Peony Earring,Diamond Earring,White Crystal Necklace,Shoulder Guards of the Crystal Pupa,Raging Wave Gloves,Wildflow Shoes,Glory Cloak,Emerald Dagger,Holy Angel's Wings,Spirit Herb,Strong Medicine,Infinite Herb,Resistance III,Endurance III,Black Bar" />

		<!-- 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" />
		<option name="MAX_TARGET_DIST"    value="225" />

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

		<!-- 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="500" />
		<option name="WAYPOINT_DEVIATION"	value="0" />
		<option name="QUICK_TURN" 		value="false" />

		<!-- Loot settings -->
		<option name="LOOT"               value="true" />
		<option name="LOOT_ALL"			  value="false" />  <!-- Loot all nearby dead mobs after combat -->
		<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 -->

		<!-- Harvest options -->
		<option name="HARVEST_DISTANCE"		value="120" />
		<option name="HARVEST_WOOD"			value="true" /> <!-- Choose which types to harvest. -->
		<option name="HARVEST_HERB"			value="true" /> <!-- "true" = harvest, "false" = do not harvest -->
		<option name="HARVEST_ORE"			value="true" />

		<!-- Eggpet options -->
		<option name="EGGPET_ENABLE_CRAFT"	value="false" /><!-- If using same slot for assist and craft, onlt 1 can be enabled. -->
		<option name="EGGPET_CRAFT_SLOT"	value="1" />
		<option name="EGGPET_ENABLE_ASSIST"	value="false" />
		<option name="EGGPET_ASSIST_SLOT"	value="1" />
		<option name="EGGPET_CRAFT_RATIO"	value="1:1:1" /> <!-- mining:woodworking:herbalism ratio to produce. -->
		<option name="EGGPET_CRAFT_INDEXES"	value="" /> 	 <!-- override auto craft index for mining,woodworking,herbalism eg. "2,,"-->


		<!-- 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="CLOSE_WHEN_STUCK"		value="true" />
		<option name="RES_AUTOMATIC_AFTER_DEATH" value="true" />
		<option name="MAX_DEATHS" value="10" /> <!-- Log out after this many deaths -->

		<!-- Party Bot options  -->
		<!-- <option name="PARTY"			value="true" /> -->
		<!-- <option name="PARTY_ICONS"			value="true" /> -->
		<!-- <option name="PARTY_INSTANCE"		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"        modifier="" 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_rogue>
		<skill name="ROGUE_SHADOWSTAB"    modifier="" hotkey="VK_2" priority="90" />
		<skill name="ROGUE_LOW_BLOW"      modifier="" hotkey="VK_3" priority="80" />
                <skill name="ROGUE_WOUND_ATTACK"  modifier="" hotkey="VK_4" priority="70" />
 <skill name="PRIEST_HOLY_AURA" modifier="" hotkey="VK_8" priority="100" inbattle="true" hpper="50" /> 
<skill name="PRIEST_URGENT_HEAL" modifier="" hotkey="VK_7" priority="140" inbattle="true" hpper="80" /> 
<skill name="PRIEST_REGENERATE" modifier="" hotkey="VK_6" priority="90" inbattle="true" hpper="95" /> 
    	
        </skills_rogue>

	<onLoad><![CDATA[
		-- 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><![CDATA[
		-- Additional Lua code to execute on death
		-- pauseOnDeath(); -- Stop the script
		-- player:logout();	-- logout
	]]></onDeath>

	<onLeaveCombat><![CDATA[
		-- Additional Lua code to execute after killing an enemy
	]]></onLeaveCombat>

	<onLevelup><![CDATA[
		-- 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><![CDATA[
		-- 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>

	<onHarvest><![CDATA[
		-- Additional Lua code to execute directly before the actual harvesting takes place.
		-- Note: arg1 contains the object to be harvested.
		-- i.e. arg1.Name will be the name of the node you are about to harvest
		-- If this snippet returns 'false', the node will *not* be harvested.
		-- All other return values result in the player attempting to harvest the node.
		-- Note that returning 'false' here breaks out of harvesting completely;
		-- You will not attempt to harvest other nearby nodes instead.
	]]></onHarvest>

	<onUnstickFailure><![CDATA[
		-- Lua code to execute when MAX_UNSTICK_TRIALS is reached.
	]]></onUnstickFailure>
</profile>
This is my profile :D
Thanks and have a nice day :D

Re: Use Heal instead of Potions

Posted: Mon Sep 05, 2011 7:14 am
by lisa
if you mean after dropping off the cliff I have posted code for healing in the KS WP in userfunctions section.

If you mean just normally, your profile seems fine on first glance. I wouldn't use the inbattle="true" though.

I use this for my healing, works fine

Code: Select all

		<skill name="PRIEST_URGENT_HEAL"   	  		hotkey="MACRO" priority="100" hpper="60"  />
		<skill name="PRIEST_REGENERATE"    	  		hotkey="MACRO" priority="100" hpper="80" />

Re: Use Heal instead of Potions

Posted: Mon Sep 05, 2011 7:45 am
by Nero

Code: Select all

      <option name="HP_LOW"         value="85" />
      <option name="MP_LOW_POTION"   value="50" />
      <option name="HP_LOW_POTION"   value="70" />
      <option name="USE_HP_POTION"   value="best" />   <!-- potion select strategy: best|minstack -->
      <option name="USE_MANA_POTION"   value="best" />   <!-- potion select strategy: best|minstack -->
Why would you leave it like that? If you do not wish to use potions altogether, simply set it to a very low value, like 2 (not sure if 0 can be here). That way, it'll attempt to use potion only when you have 2% health or less, which would practically mean that it won't


Also, you might want to read up on OnDeath function and add it to your profile, because right now it'll just stop and do nothing.

Re: Use Heal instead of Potions

Posted: Mon Sep 05, 2011 9:29 am
by lisa
Nero wrote: If you do not wish to use potions altogether, simply set it to a very low value, like 2.

Code: Select all

<option name="HP_LOW_POTION"   value="30" />
That is always an option.
Also, you might want to read up on OnDeath function and add it to your profile, because right now it'll just stop and do nothing.
Actually that profile will resurect and try to use the "return" version of the Wp and if no "return" version then it will just run to the nearest waypoint of the WP because res is set to true =)

Code: Select all

<option name="RES_AUTOMATIC_AFTER_DEATH" value="true" />
The ondeath event is just extra code you can do if you want to.

Re: Use Heal instead of Potions

Posted: Mon Sep 05, 2011 11:28 am
by rock5
lisa wrote:I wouldn't use the inbattle="true" though.
Just to clarify.
inbattle="true" -- Result: skill only cast in battle.
inbattle="false" -- Result: skill only cast out of battle.
Neither -- Result: cast in or out of battle.

Re: Use Heal instead of Potions

Posted: Tue Sep 06, 2011 8:39 am
by Xan
Ok i tested yesterday night. Thanks to all, now it work as i want :)