Page 2 of 6

Re: Warden pet class

Posted: Sun Jan 01, 2012 9:20 am
by rock5
I thought you were just leaving the language support until later. lol

Re: Warden pet class

Posted: Sun Jan 01, 2012 9:26 am
by lisa
it is later =)

I have had it running flawlessly for about 2 hours, was thinking about commiting, then I remembered language and prints still need doing lol

Also need to think about when to make pet attack, I would want it to attack as you attack or a little before but if there is an obstruction between you and mob the pet will try it's best to get to mob which might mean traveling along a cliff edge for ages and could take a few minutes to get to mob, in the mean time bot has decided to attack something else.

Re: Warden pet class

Posted: Sun Jan 01, 2012 9:51 am
by rock5
I think it's too much for you to predict what might delay the pet. Just use a logical value and don't worry about occational delays. So you start first, no big deal. I still think it needs to be a user option and probably default to attacking at the same time.

There may also be looting problems to deal with if the pet kills the mob before you attack.

Also, I mentioned this before, whatever duration you wait after giving the order to your pet to attack, you need to use a loop and keep checking if the mob is dead yet. Because if the user wants to wait 5 seconds before attacking because they want the pet to do most of the killing and the mob dies in 2 seconds, you don't want the character waiting another 3 seconds before moving.

You could check other things too while waiting. You could check if the pet has engaged the mob yet, if so move closer. When the wait is over you'll be within attack range already and can atack right away. Wardens are melee right?

Re: Warden pet class

Posted: Sun Jan 01, 2012 10:05 am
by lisa
rock5 wrote:There may also be looting problems to deal with if the pet kills the mob before you attack.
You do still get loot but the loot table seems really low compared to if you actaully did damage aswell. You basically just get low level runes and nothing else.
rock5 wrote: I still think it needs to be a user option and probably default to attacking at the same time.
Yeah I found attacking at the same time to be working really well and I was going to leave it as that and not have a wait period at all.

I am going to do some more testing without making pet attack at all, so it will only start fighting after you get in combat.


As for language issue, only real issue I see are when casting the skill using.

Code: Select all

RoMScript("CastSpellByName('Summon Spirit of the Oak');");
If the skills are the same name in every client then it won't matter, I don't know if I can check that in any way though. I can't see them as using different code to call a skill in different clients but then this is frogster we are talking about lol

Re: Warden pet class

Posted: Sun Jan 01, 2012 10:11 am
by rock5
Well they are different and it's easy to check. Look them up at runesdatabase then switch languages. It's easy enough to get the name using GetIdName.

Re: Warden pet class

Posted: Sun Jan 01, 2012 10:12 am
by lisa
bugger, lol I better use it then =)
I did it for pet names already, just have to change for skill names.

Re: Warden pet class

Posted: Wed Jan 04, 2012 2:01 pm
by emmanuel04
Im have a few problems now with my warden don't know if the new changes could have done something but this is my problems

1. My warden cast SHOT and VAMPIRE_ARROWS on its own. I don't use any of the two much but cant think of anything that could fix it.

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 -->


<!-- GM detection options -->
		<option name="GMDETECT"			value="true" /> -- enables the GM detection userfunction
		<option name="GMnearbylogout"	value="false" /> -- If a GM is close to the character it will log out.
		<option name="PAUSEONGM"		value="600" />  -- Pauses when GM whispers for value in seconds. ie 300 = 5 minutes
		<option name="RECALL"			value="true" /> -- if in combat while pausing it will use recall and whisper/logout


<option name="SETMACRO"        value="true" />
<option name="AUTO_ELITE_FACTOR" value="9999" />
		
		<option name="HP_LOW"			value="65" />
		<option name="MP_LOW_POTION"	value="20" />
		<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="40" />
		<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" />

<!-- Advanced sell option -->
<option name="INV_AUTOSELL_ENABLE" value="true" /> <!-- true = on, false = off -->
<option name="INV_AUTOSELL_FROMSLOT" value="1" /> <!-- First bag slot to begin scanning for items to sell -->
<option name="INV_AUTOSELL_TOSLOT" value="75" /> <!-- Last bag slot to scan for items to sell -->
<option name="INV_AUTOSELL_QUALITY" value="white,green,blue,purple" /> <!-- Item quality types that will be sold -->
<option name="INV_AUTOSELL_STATS_NOSELL" value="Moa,Card" /> <!-- Item name mask that you do not want to sell -->
 <option name="INV_AUTOSELL_IGNORE"    value="Purify Rune,Frost Rune,Blend Rune,Link Rune,Quiver,III,Herb of Hope,Moa,Card" /> 
 <option name="INV_AUTOSELL_TYPES"      value="Weapons,Armor,Recipes,Others" />   
      <option name="DEBUG_AUTOSELL"  value="true" />

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

		<!-- Combat options -->
		<option name="COMBAT_TYPE"        value="melee" />	<!-- leave empty or choose ranged/melee if not using class default -->
		<option name="COMBAT_RANGED_PULL" value="false" /> <!-- only important for melees -->
		<option name="COMBAT_DISTANCE"    value="80" />
		<option name="MAX_FIGHT_TIME"     value="3" />	<!-- Max time without damage before break -->
		<option name="DOT_PERCENT"        value="250" />
		<option name="ANTI_KS"            value="false" />
		<option name="MAX_TARGET_DIST"    value="160" />

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

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

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

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

	<option name="HARVEST_SCAN_WIDTH" value="15" />      -- steps horizontal
   	<option name="HARVEST_SCAN_HEIGHT" value="10" />     -- steps vertical
   	HARVEST_SCAN_XMULTIPLIER = 1.0,   -- multiplier for scan width
	<option name="HARVEST_SCAN_STEPSIZE" value="60" />   -- wide of every step
   	<option name="HARVEST_SCAN_TOPDOWN" value="false" />   -- true = top->down  false = botton->up
   	<option name="HARVEST_SCAN_YREST" value="10" />      -- scanspeed
   	<option name="HARVEST_SCAN_YMOVE" value="1.1" />   -- move scan area top/down ( 1 middle of screen ) 

		<!-- 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="true" />
		<option name="EGGPET_ASSIST_SLOT"	value="2" />
		<option name="EGGPET_CRAFT_RATIO"	value="1:4:4" /> <!-- 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="false" />
		<option name="RES_AUTOMATIC_AFTER_DEATH" value="true" />
		<option name="MAX_DEATHS" value="10" /> <!-- Log out after this many deaths -->

		<!-- 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="Dark Rite Instructor" />		
<friend name="Dark Rite Mage" />
<friend name="Spirit Core" />
<friend name="Dark Rite Acolyte" />
<friend name="Dark Rite Warlock" />
		<friend name="Horned Deer"/>
		<friend name="Deadland Sand Scorpion Pupa" />
		<friend name="Red Skipper" />
		<friend name="Zurhidon Researcher" />
		<friend name="Hand of Truth Researcher" />
		
		<friend name="Misty Rotworm" />
		
		<friend name="Pack Ankylar" />
		<friend name="Lava Transporter" />
		<friend name="Second Generation Zurhidon Golem" />
	</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_warden>
<skill name= "WARDEN_SUMMON_OAK_WALKER"	 modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
<skill name= "WARDEN_POWER_OF_THE_OAK"	 modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />

<skill name="WARDEN_SUMMON_SPIRIT_OF_THE_OAK" modifier=""  hotkey="MACRO" priority="888" autouse="false" inbattle="false" />
<skill name="WARDEN_HEART_OF_THE_OAK" modifier="" hotkey="MACRO" priority="888" autouse="false" />

<skill name="WARDEN_SUMMON_CHIRON_THE_CENTAUR" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />


	


		<skill name="SCOUT_JOINT_BLOW"	hotkey="MACRO" priority="250" />
		<skill name="WARDEN_POWER_OF_THE_WOOD_SPIRIT"	hotkey="MACRO" priority="10" />
		



  <skill name="WARDEN_SAVAGE_POWER" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
  <skill name="WARDEN_MORALE_BOOST" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
  <skill name="WARDEN_EXPLOSION_OF_POWER" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
  <skill name="WARDEN_ENERGY_ABSORB" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
  <skill name="WARDEN_ELVEN_AMULET" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />		


	</skills_warden>



	




  <onSkillCast><![CDATA[




target = player:getTarget();
   if target.Id == 103169 then
      if sendMacro("madman.Time") >= 1 then
         player:clearTarget();
         printf("Running\n")
         yrest(5000)
      end
   end  
 
player:updateBuffs()
if arg1.Name =="WARDEN_SUMMON_OAK_WALKER" then
yrest(100);
player:cast("WARDEN_POWER_OF_THE_OAK");
yrest(100);
player:cast("WARDEN_POWER_OF_THE_OAK");
yrest(100);
player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
yrest(100);
end


player:updateBuffs()
if arg1.Name =="WARDEN_SUMMON_SPIRIT_OF_THE_OAK" then
player:rest(1);
player:cast("WARDEN_HEART_OF_THE_OAK");
player:rest(1);
player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
player:rest(8);
end


 if arg1.Name =="SCOUT_JOINT_BLOW" then
yrest(100);
player:cast("SCOUT_JOINT_BLOW");
end 

 if arg1.Name =="WARDEN_POWER_OF_THE_WOOD_SPIRIT" then
yrest(100);
player:cast("SCOUT_JOINT_BLOW");
end 


   ]]></onSkillCast>
	
<onLoad><![CDATA[
			startGMDetect()
			setwindow(204792)
	]]></onLoad>

2. My warden will not cast all skills needed for my buffs and main pet before moving to the next WP.

Code: Select all

  waitForLoadingScreen();
local id = RoMScript("GetZoneID()");
      if id == 209 then -- I'm assuming 209 is outside the instance
         __WPL:setWaypointIndex(__WPL:findWaypointTag("waypoint before portal"));
      end 

player:cast("WARDEN_SUMMON_OAK_WALKER");
yrest(1000);
if (player.PetPtr) == 0 then
player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
player:rest(2);end

player:cast("WARDEN_SUMMON_OAK_WALKER");
yrest(1000);

        </waypoint>
   <!-- #  3 --><waypoint x="1886" z="2881" y="433">  </waypoint>

If Someone could help he fix this problem or show me how this new system works would be a + I love my warden but now I die if i run dod without my pet and its buffs

Re: Warden pet class

Posted: Wed Jan 04, 2012 4:32 pm
by kuripot
emmanuel04 wrote:Im have a few problems now with my warden don't know if the new changes could have done something but this is my problems

1. My warden cast SHOT and VAMPIRE_ARROWS on its own. I don't use any of the two much but cant think of anything that could fix it.

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 -->


<!-- GM detection options -->
		<option name="GMDETECT"			value="true" /> -- enables the GM detection userfunction
		<option name="GMnearbylogout"	value="false" /> -- If a GM is close to the character it will log out.
		<option name="PAUSEONGM"		value="600" />  -- Pauses when GM whispers for value in seconds. ie 300 = 5 minutes
		<option name="RECALL"			value="true" /> -- if in combat while pausing it will use recall and whisper/logout


<option name="SETMACRO"        value="true" />
<option name="AUTO_ELITE_FACTOR" value="9999" />
		
		<option name="HP_LOW"			value="65" />
		<option name="MP_LOW_POTION"	value="20" />
		<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="40" />
		<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" />

<!-- Advanced sell option -->
<option name="INV_AUTOSELL_ENABLE" value="true" /> <!-- true = on, false = off -->
<option name="INV_AUTOSELL_FROMSLOT" value="1" /> <!-- First bag slot to begin scanning for items to sell -->
<option name="INV_AUTOSELL_TOSLOT" value="75" /> <!-- Last bag slot to scan for items to sell -->
<option name="INV_AUTOSELL_QUALITY" value="white,green,blue,purple" /> <!-- Item quality types that will be sold -->
<option name="INV_AUTOSELL_STATS_NOSELL" value="Moa,Card" /> <!-- Item name mask that you do not want to sell -->
 <option name="INV_AUTOSELL_IGNORE"    value="Purify Rune,Frost Rune,Blend Rune,Link Rune,Quiver,III,Herb of Hope,Moa,Card" /> 
 <option name="INV_AUTOSELL_TYPES"      value="Weapons,Armor,Recipes,Others" />   
      <option name="DEBUG_AUTOSELL"  value="true" />

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

		<!-- Combat options -->
		<option name="COMBAT_TYPE"        value="melee" />	<!-- leave empty or choose ranged/melee if not using class default -->
		<option name="COMBAT_RANGED_PULL" value="false" /> <!-- only important for melees -->
		<option name="COMBAT_DISTANCE"    value="80" />
		<option name="MAX_FIGHT_TIME"     value="3" />	<!-- Max time without damage before break -->
		<option name="DOT_PERCENT"        value="250" />
		<option name="ANTI_KS"            value="false" />
		<option name="MAX_TARGET_DIST"    value="160" />

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

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

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

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

	<option name="HARVEST_SCAN_WIDTH" value="15" />      -- steps horizontal
   	<option name="HARVEST_SCAN_HEIGHT" value="10" />     -- steps vertical
   	HARVEST_SCAN_XMULTIPLIER = 1.0,   -- multiplier for scan width
	<option name="HARVEST_SCAN_STEPSIZE" value="60" />   -- wide of every step
   	<option name="HARVEST_SCAN_TOPDOWN" value="false" />   -- true = top->down  false = botton->up
   	<option name="HARVEST_SCAN_YREST" value="10" />      -- scanspeed
   	<option name="HARVEST_SCAN_YMOVE" value="1.1" />   -- move scan area top/down ( 1 middle of screen ) 

		<!-- 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="true" />
		<option name="EGGPET_ASSIST_SLOT"	value="2" />
		<option name="EGGPET_CRAFT_RATIO"	value="1:4:4" /> <!-- 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="false" />
		<option name="RES_AUTOMATIC_AFTER_DEATH" value="true" />
		<option name="MAX_DEATHS" value="10" /> <!-- Log out after this many deaths -->

		<!-- 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="Dark Rite Instructor" />		
<friend name="Dark Rite Mage" />
<friend name="Spirit Core" />
<friend name="Dark Rite Acolyte" />
<friend name="Dark Rite Warlock" />
		<friend name="Horned Deer"/>
		<friend name="Deadland Sand Scorpion Pupa" />
		<friend name="Red Skipper" />
		<friend name="Zurhidon Researcher" />
		<friend name="Hand of Truth Researcher" />
		
		<friend name="Misty Rotworm" />
		
		<friend name="Pack Ankylar" />
		<friend name="Lava Transporter" />
		<friend name="Second Generation Zurhidon Golem" />
	</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_warden>
<skill name= "WARDEN_SUMMON_OAK_WALKER"	 modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
<skill name= "WARDEN_POWER_OF_THE_OAK"	 modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />

<skill name="WARDEN_SUMMON_SPIRIT_OF_THE_OAK" modifier=""  hotkey="MACRO" priority="888" autouse="false" inbattle="false" />
<skill name="WARDEN_HEART_OF_THE_OAK" modifier="" hotkey="MACRO" priority="888" autouse="false" />

<skill name="WARDEN_SUMMON_CHIRON_THE_CENTAUR" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />


	


		<skill name="SCOUT_JOINT_BLOW"	hotkey="MACRO" priority="250" />
		<skill name="WARDEN_POWER_OF_THE_WOOD_SPIRIT"	hotkey="MACRO" priority="10" />
		



  <skill name="WARDEN_SAVAGE_POWER" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
  <skill name="WARDEN_MORALE_BOOST" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
  <skill name="WARDEN_EXPLOSION_OF_POWER" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
  <skill name="WARDEN_ENERGY_ABSORB" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
  <skill name="WARDEN_ELVEN_AMULET" modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />		


	</skills_warden>



	




  <onSkillCast><![CDATA[




target = player:getTarget();
   if target.Id == 103169 then
      if sendMacro("madman.Time") >= 1 then
         player:clearTarget();
         printf("Running\n")
         yrest(5000)
      end
   end  
 
player:updateBuffs()
if arg1.Name =="WARDEN_SUMMON_OAK_WALKER" then
yrest(100);
player:cast("WARDEN_POWER_OF_THE_OAK");
yrest(100);
player:cast("WARDEN_POWER_OF_THE_OAK");
yrest(100);
player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
yrest(100);
end


player:updateBuffs()
if arg1.Name =="WARDEN_SUMMON_SPIRIT_OF_THE_OAK" then
player:rest(1);
player:cast("WARDEN_HEART_OF_THE_OAK");
player:rest(1);
player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
player:rest(8);
end


 if arg1.Name =="SCOUT_JOINT_BLOW" then
yrest(100);
player:cast("SCOUT_JOINT_BLOW");
end 

 if arg1.Name =="WARDEN_POWER_OF_THE_WOOD_SPIRIT" then
yrest(100);
player:cast("SCOUT_JOINT_BLOW");
end 


   ]]></onSkillCast>
	
<onLoad><![CDATA[
			startGMDetect()
			setwindow(204792)
	]]></onLoad>

2. My warden will not cast all skills needed for my buffs and main pet before moving to the next WP.

Code: Select all

  waitForLoadingScreen();
local id = RoMScript("GetZoneID()");
      if id == 209 then -- I'm assuming 209 is outside the instance
         __WPL:setWaypointIndex(__WPL:findWaypointTag("waypoint before portal"));
      end 

player:cast("WARDEN_SUMMON_OAK_WALKER");
yrest(1000);
if (player.PetPtr) == 0 then
player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
player:rest(2);end

player:cast("WARDEN_SUMMON_OAK_WALKER");
yrest(1000);

        </waypoint>
   <!-- #  3 --><waypoint x="1886" z="2881" y="433">  </waypoint>

If Someone could help he fix this problem or show me how this new system works would be a + I love my warden but now I die if i run dod without my pet and its buffs


i can share my profile

Code: Select all

	<skills_warden>
		<skill name="WARDEN_VALIANT_SHOT"		hotkey="MACRO" priority="140" />
		<skill name="WARDEN_CENTAURS_ARROW"		hotkey="MACRO" priority="130" />
		<skill name="WARDEN_CHARGED_CHOP"		hotkey="MACRO" priority="90" />
		<skill name="WARDEN_ENERGY_ABSORB"		hotkey="MACRO" priority="30" inbattle="true" hpper="75" />
		<skill name="SCOUT_VAMPIRE_ARROWS"		hotkey="MACRO" priority="70" />
		<skill name="SCOUT_SHOT"			hotkey="MACRO" priority="60" />
	   	<skill name="WARDEN_MOVEMENT_RESTRICTION"	hotkey="MACRO" priority="80" />
	  	<skill name="WARDEN_ANTI-MAGIC_ARROW"		hotkey="MACRO" priority="50" />
		<skill name="WARDEN_BRIAR_SHIELD"	 	hotkey="MACRO" priority="120" rebuffcut="75" inbattle="false" />
		<skill name="WARDEN_SUMMON_CHIRON_THE_CENTAUR"	hotkey="MACRO" priority="1" autouse="false" />
		<skill name="WARDEN_PROTECTION_OF_NATURE"	hotkey="MACRO" priority="1" autouse="false" />
		<skill name="WARDEN_SUMMON_NATURE_CRYSTAL"	hotkey="MACRO" priority="110" autouse="false" />
		<skill name="WARDEN_THORNY_VINES"		hotkey="MACRO" priority="40" />
		<skill name="WARDEN_FRANTIC_BRIAR"		hotkey="MACRO" priority="100" />
	</skills_warden>

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

	<onLoad><![CDATA[
		runicthorn()
		startGMDetect()
		registerTimer("summon", minutesToTimer(15), function () player:cast("WARDEN_SUMMON_NATURE_CRYSTAL") end);
	]]></onLoad>

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

	<onLeaveCombat>
		runicthorn2()
	        player:update()
		if 25 > (player.Pet.HP/player.Pet.MaxHP * 100) then
			player:target( player.Pet )
			player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR")
			yrest(1000)
		end
		if not player:hasBuff("Protection of Nature") then
		   player:cast("WARDEN_SUMMON_NATURE_CRYSTAL");
		   player:cast("WARDEN_PROTECTION_OF_NATURE");
		   player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
		end
	      if player:findNearestNameOrId(102102) then
        	 local Evelyn = player:findNearestNameOrId(102102)
        	 player:target(Evelyn)
        	 player:fight()
     		 end
	</onLeaveCombat>

	<onSkillCast><![CDATA[
		if( arg1.Name == "WARDEN_SUMMON_NATURE_CRYSTAL" ) then
  			player:cast("WARDEN_PROTECTION_OF_NATURE");
  			player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
		end
	]]></onSkillCast>

   <onPreSkillCast>
target = player:getTarget();
   if player.Class1 == 7 and target.Type == 2 and (not player.Battling) then
      RoMScript("UsePetAction(6)")
      yrest(2000) -- pause to let pet attack before bot
   end
   </onPreSkillCast>
</profile>

Re: Warden pet class

Posted: Wed Jan 04, 2012 4:35 pm
by kuripot
lisa wrote:So no one has any interest in if we make pets work better with bot or not?


im sorry... im appreciate you and rock effort...


i follow your advice before in other thread and it run smoothly for me

Code: Select all

   <onPreSkillCast>
target = player:getTarget();
   if player.Class1 == 7 and target.Type == 2 and (not player.Battling) then
      RoMScript("UsePetAction(6)")
      yrest(2000) -- pause to let pet attack before bot
   end
   </onPreSkillCast>

Re: Warden pet class

Posted: Wed Jan 04, 2012 4:49 pm
by kuripot
why you have 2 kind of buff??

Code: Select all

player:updateBuffs()
if arg1.Name =="WARDEN_SUMMON_OAK_WALKER" then
yrest(100);
player:cast("WARDEN_POWER_OF_THE_OAK");
yrest(100);
player:cast("WARDEN_POWER_OF_THE_OAK");
yrest(100);
player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
yrest(100);
end


player:updateBuffs()
if arg1.Name =="WARDEN_SUMMON_SPIRIT_OF_THE_OAK" then
player:rest(1);
player:cast("WARDEN_HEART_OF_THE_OAK");
player:rest(1);
player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
player:rest(8);
end

i know you can only use one buff at a time...
either 2-h axe dmg
crit dmg or hp buff

Re: Warden pet class

Posted: Wed Jan 04, 2012 5:03 pm
by kuripot
im not sure with this... but you can try

Code: Select all

   <skills_warden>
	<skill name="WARDEN_SUMMON_OAK_WALKER"		hotkey="MACRO" priority="1" autouse="false" inbattle="false" />
	<skill name="WARDEN_POWER_OF_THE_OAK"		hotkey="MACRO" priority="1" autouse="false" inbattle="false" />
	<skill name="WARDEN_SUMMON_SPIRIT_OF_THE_OAK"	hotkey="MACRO" priority="1" autouse="false" inbattle="false" />
	<skill name="WARDEN_HEART_OF_THE_OAK"		hotkey="MACRO" priority="1" autouse="false" />
	<skill name="WARDEN_SUMMON_CHIRON_THE_CENTAUR"	hotkey="MACRO" priority="1" autouse="false" inbattle="false" />
	<skill name="SCOUT_JOINT_BLOW"			hotkey="MACRO" priority="250" />
	<skill name="WARDEN_POWER_OF_THE_WOOD_SPIRIT"	hotkey="MACRO" priority="10" />
	<skill name="WARDEN_SAVAGE_POWER"		hotkey="MACRO" priority="1" autouse="false" inbattle="false" />
	<skill name="WARDEN_MORALE_BOOST"		hotkey="MACRO" priority="1" autouse="false" inbattle="false" />
	<skill name="WARDEN_EXPLOSION_OF_POWER"		hotkey="MACRO" priority="1" autouse="false" inbattle="false" />
	<skill name="WARDEN_ENERGY_ABSORB"		hotkey="MACRO" priority="1" autouse="false" inbattle="false" />
	<skill name="WARDEN_ELVEN_AMULET"		hotkey="MACRO" priority="1" autouse="false" inbattle="false" />      
</skills_warden>

  <onSkillCast><![CDATA[

target = player:getTarget();
   if target.Id == 103169 then
      if sendMacro("madman.Time") >= 1 then
         player:clearTarget();
         printf("Running\n")
         yrest(5000)
      end
   end  

player:updateBuffs()

		if( arg1.Name == "WARDEN_SUMMON_OAK_WALKER" ) then
  			player:cast("WARDEN_POWER_OF_THE_OAK");
  			player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
			yrest(1000);
		end


player:updateBuffs()

		if( arg1.Name == "WARDEN_SUMMON_SPIRIT_OF_THE_OAK" ) then
			player:cast("WARDEN_HEART_OF_THE_OAK");
			player:cast("WARDEN_SUMMON_CHIRON_THE_CENTAUR");
			yrest(1000);
		end


if( arg1.Name == "SCOUT_JOINT_BLOW" ) then
yrest(1000);
player:cast("SCOUT_JOINT_BLOW");
end 

if( arg1.Name == "WARDEN_POWER_OF_THE_WOOD_SPIRIT" ) then
yrest(1000);
player:cast("SCOUT_JOINT_BLOW");
end 


   ]]></onSkillCast>
   
<onLoad><![CDATA[
         startGMDetect()
         setwindow(204792)
   ]]></onLoad>

Re: Warden pet class

Posted: Wed Jan 04, 2012 5:07 pm
by kuripot
you have space between

<skill name= and "WARDEN

Code: Select all

<skill name= "WARDEN_SUMMON_OAK_WALKER"    modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
<skill name= "WARDEN_POWER_OF_THE_OAK"    modifier="" hotkey="MACRO" priority="777" autouse="false" inbattle="false" />
im not sure if will effect

Re: Warden pet class

Posted: Wed Jan 04, 2012 5:09 pm
by kuripot
by the way what pet you use in battle??

Re: Warden pet class

Posted: Wed Jan 04, 2012 5:12 pm
by kuripot
lisa rock

what is this mean??

Code: Select all

if( arg1.Name == "SCOUT_JOINT_BLOW" ) then
yrest(100);
player:cast("SCOUT_JOINT_BLOW");
end 

Re: Warden pet class

Posted: Wed Jan 04, 2012 8:14 pm
by emmanuel04
Thanks for the help I did take a few thing from your profile Ill give the changes made a test run and

Code: Select all

if( arg1.Name == "SCOUT_JOINT_BLOW" ) then
yrest(100); ---- im still testing this out with the wait time
player:cast("SCOUT_JOINT_BLOW");
end 
Its like a skill bypass where it cast "SCOUT_JOINT_BLOW" 2 times in a row it is my hardest hitting skill so i try to use this skill a lot more
then "WARDEN_POWER_OF_THE_WOOD_SPIRIT"..
and other then that I did take out an addon called Daily Note that might have been given me problems with my problem

Re: Warden pet class

Posted: Wed Jan 04, 2012 10:11 pm
by lisa
Actually I simplified the pet usage to its bare minimum.

You don't need all those player:cast() anymore.

Just set up your profile with the pet and buff you want.

In your case you want the oak walker buff.

Code: Select all

<skill name="WARDEN_POWER_OF_THE_OAK" 			hotkey="MACRO" priority="90" />
and to summon chiron

Code: Select all

<skill name="WARDEN_SUMMON_CHIRON_THE_CENTAUR" 	hotkey="MACRO" priority="90" />
If you have those in your profile and no other summon or buff skills then it will redo the buff when needed and always have chiron summoned.

So remove the summon oak walker from profile or change it to autouse="false"

Code: Select all

		<skill name="WARDEN_SUMMON_OAK_WALKER"	  		hotkey="MACRO" priority="90" autouse="false" />
but you don't need it in your profile anymore.

Re: Warden pet class

Posted: Wed Jan 04, 2012 11:25 pm
by emmanuel04
Wow thats great... Thanks a million...

O and My warden cast SHOT and VAMPIRE_ARROWS on its own. do u might know y this is I did take the two skills out all together and still he cast
VAMPIRE_ARROWS on its own.

Re: Warden pet class

Posted: Wed Jan 04, 2012 11:29 pm
by rock5
It still recastes Water Fairy when I port to the next room in Cot. Just because the pet is far away it shouldn't be recasting it. I'm not sure what's happening. I still have the pet but maybe if it's out of range CPawn doesn't work.

We could probably test it with some print statements in petupdate() but I've already done my cot today with my p/s.

Re: Warden pet class

Posted: Thu Jan 05, 2012 12:15 am
by lisa
rock5 wrote:We could probably test it with some print statements in petupdate() but I've already done my cot today with my p/s.
would it be the same as zoning anywhere else?

could test it by mounting and riding away aswell, water fairy is usually very slow to catch up.

Re: Warden pet class

Posted: Thu Jan 05, 2012 12:35 am
by rock5
Your right. I'll just test it.

Looks like the address becomes 0 when it's out of range which makes sense I guess. When it comes back in range it has a new address. I guess that means that player.PetPtr would return 0 too. We need another way to know if the pet is out that doesn't rely on the actual pet pawn. Maybe if the pet frame is showing? But we'd need to get it from memory.

BTW it dismounts me to cast the water fairy skill.