this my onload of my main char
Code: Select all
<onLoad>
startGMDetect()
loadProfile("Main")
changeProfileOption("INV_AUTOSELL_FROMSLOT", 1)
changeProfileOption("INV_AUTOSELL_TOSLOT", 30)
settings.profile.friends = {"Incomplete Bloody Beast"}
changeProfileOption("EGGPET_ENABLE_ASSIST", "true")
changeProfileOption("INV_AUTOSELL_ENABLE", "true")
dura = 0.9
Magic_Tambourine = true
Magic_Guitar = true
__WPL:setWaypointIndex(__WPL:findWaypointTag("start"))
changeProfileOption("AUTO_ELITE_FACTOR", 1000)
changeProfileOption("HARVEST_DISTANCE", 50)
Count = 0
Zid = 0
BuffCount = 0
srun = 1
if not eventparty then
function eventparty()
checkeventparty()
end
end
function Boss_buff()
if Magic_Tambourine == true then
if inventory:itemTotalCount(204463) >= 1 then
inventory:useItem(204463) -- 3 days
yrest(5500)
elseif inventory:itemTotalCount(204571) >= 1 then
inventory:useItem(204571) -- 7 days
yrest(5500)
elseif inventory:itemTotalCount(206420) >= 1 then
inventory:useItem(206420) -- 30 days
yrest(5500)
end
elseif Magic_Tambourine == party_true then
yrest(5500)
end
if Magic_Guitar == true then
if inventory:itemTotalCount(204461) >= 1 then
inventory:useItem(204461) -- 3 days
yrest(5500)
elseif inventory:itemTotalCount(206418) >= 1 then
inventory:useItem(206418) -- 7 days
yrest(5500)
elseif inventory:itemTotalCount(204569) >= 1 then
inventory:useItem(204569) -- 30 days
yrest(5500)
end
elseif Magic_Tambourine == party_true then
yrest(5500)
end
changeProfileSkill("MAGE_FLAME", "AutoUse", true);
changeProfileSkill("MAGE_FIREBALL", "AutoUse", true);
changeProfileSkill("MAGE_FLAME", "Priority", 90);
changeProfileSkill("MAGE_FIREBALL", "Priority", 100);
player:cast("MAGE_ESSENCE_OF_MAGIC");
player:cast("PRIEST_MAGIC_BARRIER");
player:cast("MAGE_ENERGY_INFLUX");
player:cast("MAGE_ELECTROSTATIC_CHARGE");
player:cast("MAGE_INTENSIFICATION");
player:cast("MAGE_ELEMENTAL_CATALYSIS");
player:cast("PRIEST_REGENERATE");
end
function trash_boss()
local target = player:getTarget()
local _tb = false
local spawnboss = player:findNearestNameOrId("Okander \"Mad Man\" Mallen")
if spawnboss then
player:target(spawnboss)
if target.HP > 0 then
player:update();
player:cast("MAGE_FLAME");
yrest(1500);
player:cast("MAGE_FLAME");
yrest(1500);
player:cast("MAGE_FLAME");
yrest(1500);
player:cast("MAGE_FLAME");
yrest(1500);
cprintf(cli.pink, "Kame Hame Wave!!!\n")
if( arg1.Name == "MAGE_FLAME" ) then
changeProfileOption("LOOT_ALL", "true")
cprintf(cli.pink, "Kame Hame Wave!!!!!\n")
player:update();
end
player:update();
yrest(1000)
keyboardPress( key.VK_1 );
_tb = false
_tb = false
else
_tb = true
end
else
_tb = true
end
return _tb
end
function Countround()
Count = Count+1;
cprintf(cli.pink, "Round Number: %s\n\n", Count)
end
function checkdura()
if dura > inventory:getMainHandDurability() then
__WPL:setWaypointIndex(__WPL:findWaypointTag("mech"))
end
local bcount = inventory:getItemCount(0)
if( 5 > bcount ) then
__WPL:setWaypointIndex(__WPL:findWaypointTag("mech"))
end
end
function findzi()
local getinlvl = sendMacro('GetInstanceLevel("normal")')
if getinlvl == ("easy") then
zid = 128
elseif getinlvl == ("normal") then
zid = 127
elseif getinlvl == ("hard") then
zid = RoMScript("GetZoneID()");
sendMacro('SetInstanceLevel("easy")');
cprint(cli.blue, "Instance Lvl change to easy\n")
end
keyboardHold( settings.hotkeys.MOVE_FORWARD.key )
yrest(400)
keyboardPress(settings.hotkeys.JUMP.key)
yrest(1000)
keyboardRelease( settings.hotkeys.MOVE_FORWARD.key )
waitForLoadingScreen()
yrest(500)
end
function selfname()
sname = RoMScript("UnitName('player')")
yrest(500)
cprintf(cli.blue, "Player name is : %s\n", sname)
sendpartychat(sname)
end
function getbuff()
player:harvest(114982)
player:update()
if player:hasBuff(506432) then
__WPL:setWaypointIndex(__WPL:findWaypointTag("havebuff"))
else
BuffCount = BuffCount+1
if BuffCount > 8 then
__WPL:setWaypointIndex(__WPL:findWaypointTag("havebuff"))
end
end
end
function gcheck()
local _go = false
local groupnumber = RoMScript("GetNumPartyMembers()")
if groupnumber == 0 then
_go = false
else
_go = true
end
return _go
end
function ireset()
local EventPartyName = "DoD"
local readycheck1 = RoMScript("UnitName('party1')")
local readycheck2 = RoMScript("UnitName('party2')")
local readycheck3 = RoMScript("UnitName('party3')")
local readycheck4 = RoMScript("UnitName('party4')")
local readycheck5 = RoMScript("UnitName('party5')")
local groupnumber = RoMScript("GetNumPartyMembers()")
if Instancereset == true then
SlashCommand("rdd")
yrest(500)
SlashCommand("rdi")
yrest(500)
elseif gcheck() == true then
repeat
until checkparty(2000) == true
yrest(500)
SlashCommand("rdd")
yrest(500)
SlashCommand("rdi")
yrest(500)
end
if 1 == srun and 0 == groupnumber then
srun = srun+1
elseif gcheck() == false then
cprintf(cli.red, "You must wait 30min to reset instance or groupe a player\n")
local _time = os.time()
repeat
until gcheck() == true or (os.time() - _time > 1800)
srun = 1
end
if not Instancereset == true then
eventparty(EventPartyName, "start")
yrest(500)
if readycheck1 == nil then
pname1 = ("Solo_run")
cprintf(cli.red, "!!! Warning you not in a group !!!\n")
else
pname1 = readycheck1
end
if readycheck2 == nil then
pname2 = ("NoPartyMembers")
else
pname2 = readycheck2
end
if readycheck3 == nil then
pname3 = ("NoPartyMembers")
else
pname3 = readycheck3
end
if readycheck4 == nil then
pname4 = ("NoPartyMembers")
else
pname4 = readycheck4
end
if readycheck5 == nil then
pname5 = ("NoPartyMembers")
else
pname5 = readycheck5
end
keyboardPress(key.VK_SPACE)
yrest(500)
repeat
yrest(500)
local message = checkeventparty(EventPartyName,{pname1,pname2,pname3,pname4,pname5})
if message and message == pname1 or pname1 == "Solo_run" then char1 = true end
if message and message == pname2 or pname2 == "NoPartyMembers" then char2 = true end
if message and message == pname3 or pname3 == "NoPartyMembers" then char3 = true end
if message and message == pname4 or pname4 == "NoPartyMembers" then char4 = true end
if message and message == pname5 or pname5 == "NoPartyMembers" then char5 = true end
until char1 and char2 and char3 and char4 and char5
char1 = false
char2 = false
char3 = false
char4 = false
char5 = false
eventparty(EventPartyName, "stop")
end
end
</onLoad>Code: Select all
<waypoint x="2252" z="2444" y="401">
changeProfileOption("LOOT", "true")
changeProfileOption("LOOT_ALL", "true")
if gcheck() == true then
if Instancereset == true then
Boss_buff()
trash_boss()
player:lootAll()
yrest(1000)
player:lootAll()
yrest(1000)
player:update();
yrest(1000)
keyboardPress( key.VK_1 );
elseif not Instancereset == true then
keyboardPress(key.VK_SPACE)
local _time = os.time()
repeat
until checkparty(200) == true or (os.time() - _time > 120)
Boss_buff()
trash_boss()
player:lootAll()
yrest(1000)
player:lootAll()
yrest(1000)
end
player:update();
yrest(1000)
keyboardPress( key.VK_1 );
elseif not gcheck() == true then
useGoodie("mdmg2");
useGoodie("casting");
useGoodie("speed");
useGoodie("matt3");
useGoodie("defense");
Boss_buff()
trash_boss()
player:lootAll()
yrest(1000)
player:lootAll()
yrest(1000)
end
player:update();
yrest(1000)
keyboardPress( key.VK_1 ); i use this outside dod
Code: Select all
<waypoint x="1637" z="-5094" y="760">
ireset()
SlashCommand("aid normal")
</waypoint>this is the onload of my alt char
Code: Select all
<onLoad>
startGMDetect()
loadProfile("Dodparty")
changeProfileOption("RES_AUTOMATIC_AFTER_DEATH", "true")
changeProfileOption("INV_AUTOSELL_FROMSLOT", 1)
changeProfileOption("INV_AUTOSELL_TOSLOT", 30)
settings.profile.friends = {"Incomplete Bloody Beast"}
Slots = 59
dura = 0.9
instancebuff = false
changeProfileOption("INV_AUTOSELL_ENABLE", "true")
changeProfileOption("EGGPET_ENABLE_ASSIST", "false")
Grassland_Mix = main_true
Magic_Lute = main_true
Magic_Tambourine = main_true
Magic_Guitar = false
changeProfileOption("INV_AUTOSELL_FROMSLOT", 1)
changeProfileOption("INV_AUTOSELL_TOSLOT", 30)
settings.profile.friends = {"Incomplete Bloody Beast"}
changeProfileOption("EGGPET_ENABLE_ASSIST", "true")
changeProfileOption("INV_AUTOSELL_ENABLE", "true")
dura = 0.9
Magic_Tambourine = true
Magic_Guitar = true
__WPL:setWaypointIndex(__WPL:findWaypointTag("start"))
changeProfileOption("AUTO_ELITE_FACTOR", 1000)
changeProfileOption("HARVEST_DISTANCE", 50)
Count = 0
Zid = 0
BuffCount = 0
srun = 1
if not eventparty then
function eventparty()
checkeventparty()
end
end
function Boss_buff()
if Magic_Tambourine == true then
if inventory:itemTotalCount(204463) >= 1 then
inventory:useItem(204463) -- 3 days
yrest(5500)
elseif inventory:itemTotalCount(204571) >= 1 then
inventory:useItem(204571) -- 7 days
yrest(5500)
elseif inventory:itemTotalCount(206420) >= 1 then
inventory:useItem(206420) -- 30 days
yrest(5500)
end
elseif Magic_Tambourine == party_true then
yrest(5500)
end
if Magic_Guitar == true then
if inventory:itemTotalCount(204461) >= 1 then
inventory:useItem(204461) -- 3 days
yrest(5500)
elseif inventory:itemTotalCount(206418) >= 1 then
inventory:useItem(206418) -- 7 days
yrest(5500)
elseif inventory:itemTotalCount(204569) >= 1 then
inventory:useItem(204569) -- 30 days
yrest(5500)
end
elseif Magic_Tambourine == party_true then
yrest(5500)
end
player:cast("DRUID_RECOVER");
end
function AttackableTarget()
player:update();
local target = player:getTarget();
if target == nil then
print("Target is nil");
return false;
end
target:update();
if false then
print("--------------");
print("Target Name: "..target.Name);
print("Target Level: "..target.Level);
print("Target HP: "..target.HP);
print("Target MaxHP: "..target.MaxHP);
if target.Lootable then
print("Lootable");
else
print("Not Lootable");
end
if target.Alive then
print("Alive");
else
print("Not Alive");
end
if target.Attackable then
print("Attackable");
else
print("Not Attackable");
end
if target.Aggressive then
print("Aggressive");
else
print("Not Aggressive");
end
if player.Battling then
print("Battling");
else
print("Not Battling");
end
print ("HP percent: ".. (target.HP/target.MaxHP)*100);
print("--------------");
end
if (1 > target.HP) then
print("AttackableTarget: no hp")
return false;
end
if target.Lootable then
print("AttackableTarget: lootable")
return false;
end
if not target.Attackable then
print("ntAttackableTarget: not attackable")
return false;
end
if not target.Alive then
print("AttackableTarget: not alive")
return false;
end
return true;
end
function trash_boss()
local target = player:getTarget()
local _tb = false
local spawnboss = player:findNearestNameOrId("Okander \"Mad Man\" Mallen")
if spawnboss then
player:target(spawnboss)
if target.HP > 0 then
player:update();
player:cast("DRUID_RECOVER");
yrest(1000);
cprintf(cli.pink, "Kame Hame Wave!!!\n")
if( arg1.Name == "DRUID_RECOVER" ) then
changeProfileOption("LOOT_ALL", "true")
cprintf(cli.pink, "Kame Hame Wave!!!!!\n")
player:update();
end
player:update();
yrest(1000)
keyboardPress( key.VK_1 );
_tb = false
else
_tb = true
end
else
_tb = true
end
return _tb
end
function Countround()
Count = Count+1;
cprintf(cli.pink, "Round Number: %s\n\n", Count)
end
function checkdura()
if dura > inventory:getMainHandDurability() then
__WPL:setWaypointIndex(__WPL:findWaypointTag("mech"))
end
local bcount = inventory:getItemCount(0)
if( 5 > bcount ) then
__WPL:setWaypointIndex(__WPL:findWaypointTag("mech"))
end
end
function findzi()
local getinlvl = sendMacro('GetInstanceLevel("normal")')
if getinlvl == ("easy") then
zid = 128
elseif getinlvl == ("normal") then
zid = 127
elseif getinlvl == ("hard") then
zid = RoMScript("GetZoneID()");
sendMacro('SetInstanceLevel("easy")');
cprint(cli.blue, "Instance Lvl change to easy\n")
end
keyboardHold( settings.hotkeys.MOVE_FORWARD.key )
yrest(400)
keyboardPress(settings.hotkeys.JUMP.key)
yrest(1000)
keyboardRelease( settings.hotkeys.MOVE_FORWARD.key )
waitForLoadingScreen()
yrest(500)
end
function ireset()
SlashCommand("rdd")
yrest(500)
SlashCommand("rdi")
yrest(1000)
end
function bossheal()
player:cast("DRUID_RECOVER");
yrest(1000)
end
function selfname()
sname = RoMScript("UnitName('player')")
yrest(500)
cprintf(cli.blue, "Player name is : %s\n", sname)
sendpartychat(sname)
end
function gcheck()
local _go = false
local groupnumber = RoMScript("GetNumPartyMembers()")
if groupnumber == 0 then
_go = false
else
_go = true
end
return _go
end
function getbuff()
player:harvest(114982)
player:update()
if player:hasBuff(506432) then
__WPL:setWaypointIndex(__WPL:findWaypointTag("havebuff"))
else
BuffCount = BuffCount+1
if BuffCount > 8 then
__WPL:setWaypointIndex(__WPL:findWaypointTag("havebuff"))
end
end
end
</onLoad>Code: Select all
<waypoint x="1645" z="-4908" y="752" tag="start" type="TRAVEL">
local groupnumber = RoMScript("GetNumPartyMembers()")
if gcheck() == false then
cprintf(cli.red, "--==Not in a Groupe==--\n")
repeat
until gcheck() == true
__WPL:setWaypointIndex(__WPL:findWaypointTag("enter"))
else
keyboardPress(key.VK_SPACE)
yrest(800)
repeat
until checkparty(30) == true
yrest(1500)
selfname()
yrest(2500)
end
checkdura()
</waypoint>Code: Select all
<waypoint x="1679" z="-4962" y="759" tag="enter" type="TRAVEL">
selfname()
</waypoint>
<!-- # 2 -->
<waypoint x="1685" z="-5042" y="760" type="TRAVEL">
selfname()
</waypoint>
<!-- # 3 -->
<waypoint x="1692" z="-5103" y="760" type="TRAVEL">
selfname()
findzi()
speed(59)
yrest(1000)
local zoneid = RoMScript("GetZoneID()")
if zoneid == 209 then
__WPL:setWaypointIndex(__WPL:findWaypointTag("enter"))
end
repeat
until checkparty(50) == true
gcheck()
</waypoint>Code: Select all
<waypoint x="1793" z="2880" y="433" tag="instance">
local groupnumber = RoMScript("GetNumPartyMembers()")
if gcheck() == false then
cprintf(cli.red, "--==Not in a Groupe==--\n")
repeat
until gcheck() == true
__WPL:setWaypointIndex(__WPL:findWaypointTag("enter"))
else
keyboardPress(key.VK_SPACE)
yrest(800)
repeat
until checkparty(2000) == true
yrest(1500)
selfname()
yrest(2500)
end
Countround()
fly()
__WPL:setForcedWaypointType("TRAVEL") </waypoint>killing boss
Code: Select all
<waypoint x="2252" z="2444" y="401" tag="wboss">
changeProfileOption("LOOT_ALL", "true")
local groupnumber = RoMScript("GetNumPartyMembers()")
if gcheck() == false then
cprintf(cli.red, "--==Not in a Groupe==--\n")
repeat
until gcheck() == true
__WPL:setWaypointIndex(__WPL:findWaypointTag("wboss"))
else
keyboardPress(key.VK_SPACE)
repeat
until checkparty(100) == true
selfname()
yrest(1500)
end
keyboardPress(key.VK_SPACE)
yrest(1000)
player:cast("DRUID_RECOVER");
trash_boss()
player:lootAll()
yrest(1000)
player:lootAll()
yrest(1000)
player:update();
yrest(1000)
keyboardPress( key.VK_1 );
</waypoint>my problem is... when my main sell item in npc.. my main will delay... so my altchar will enter dod even my main char are not close to him... but waiting inside dod and when my main char done in selling... my mainchar will not enter dod and waiting outside dod..
main profile
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="60" />
<option name="MP_LOW_POTION" value="60" />
<option name="HP_LOW_POTION" value="60" />
<option name="USE_HP_POTION" value="best" /> <!-- potion select strategy: best|minstack -->
<option name="USE_MANA_POTION" value="best" /> <!-- potion select strategy: best|minstack -->
<option name="USE_PHIRIUS_POTION" value="true" /> <!-- false | true if you want to use the Phirus Potions -->
<option name="PHIRIUS_MP_LOW" value="40" />
<option name="PHIRIUS_HP_LOW" value="60" />
<!-- Rest if HP or Mana is below that level -->
<option name="HP_REST" value="15" />
<option name="MP_REST" value="15" />
<!-- Combat options -->
<option name="COMBAT_TYPE" value="ranged" /> <!-- leave empty or choose ranged/melee if not using class default -->
<option name="COMBAT_RANGED_PULL" value="" /> <!-- only important for melees -->
<option name="COMBAT_DISTANCE" value="200" />
<option name="MAX_FIGHT_TIME" value="20" /> <!-- Max time without damage before break -->
<option name="DOT_PERCENT" value="90" />
<option name="ANTI_KS" value="true" />
<option name="MAX_TARGET_DIST" value="250" />
<option name="SKILL_GLOBALCOOLDOWN" value="800" />
<!-- Attack monsters 3 levels above or 10 below your level -->
<option name="TARGET_LEVELDIF_ABOVE" value="10" />
<option name="TARGET_LEVELDIF_BELOW" value="70" />
<!-- Waypoint and movement settings -->
<option name="WAYPOINTS" value="main" /> <!-- leave empty to show a list -->
<option name="RETURNPATH" value="main_return" />
<option name="PATH_TYPE" value="waypoints" /> <!-- waypoints | wander -->
<option name="WANDER_RADIUS" value="0" />
<option name="WAYPOINT_DEVIATION" value="0" />
<option name="QUICK_TURN" value="true" />
<option name="WP_NO_STOP" value="true" />
<!-- Loot settings -->
<option name="LOOT" value="true" />
<option name="LOOT_ALL" value="true" /> <!-- Loot all nearby dead mobs after combat -->
<option name="LOOT_IN_COMBAT" value="true" />
<option name="LOOT_DISTANCE" value="300" />
<option name="LOOT_PAUSE_AFTER" value="10" /> <!-- 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="true" />
<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="100" /> <!-- Log out after this many deaths -->
<!-- Auto Sell -->
<option name="DEBUG_AUTOSELL" value="true" />
<option name="INV_AUTOSELL_ENABLE" value="true" />
<option name="INV_AUTOSELL_FROMSLOT" value="27" />
<option name="INV_AUTOSELL_TOSLOT" value="60" />
<option name="INV_AUTOSELL_QUALITY" value="white,green,blue,purple" />
<option name="INV_AUTOSELL_IGNORE" value="Miller's Special Cake, Hero Potion,
Invisibility Potion, Phirius Elixir - Type E, Phirius Elixir - Type C, Phirius Elixir - Type B, Phirius Elixir - Type A,
Phirius Elixir - Type D, Phirius Elixir - Type C, Ancient Spirit Water, Spellweaver Potion, Dessert of Happiness, Mysticite,
Dusk Orchid, Dark Crystal, Green Thistle, Phirius Potion - Type C, Phirius Potion - Type B, Phirius Potion - Type A,
Phirius Potion - Type D, Phirius Potion - Type E, Phirius Special Water - Type E, Phirius Special Water - Type B, Phirius Special Water - Type A,
Phirius Special Water - Type C, Resistance iii, Resistance iv, Resistance v, Magic Bottle, Small Hoe, Magic iii, Magic iv, Magic v, Shell iii, Shell iv, Shell v, Oak Lumber, Redwood Timber, Oak Timber, Redwood,
Oak Wood, Endurance iii, Endurance iv, Endurance v, Mind iii, Mind iv, Mind v, Strike iii, Strike iv, Strike v, Defense iii, Defense iv, Defense v, Vigor iii, Vigor iv, Vigor v, Elven Encyclopedia, Phirius Special Water - Type D, Small Spade,
Wizard-Iron Ore, Touch of the Unicorn, Chocolate Cake, Moon Orchid Bundle, Egg Rice Dumplings, Straw Mushroom Bundle, Moon Orchid, Wizard-Iron Sand, Wolfram Nail, Dragon Beard Root Plank,
Mithril Ingot, Magic Hormone, Transparent Jade, Ancient Fossil, Mist Emerald, Dilan'y Ring, Defense iii, Defense iv, Defense v, Quickness iii, Quickness iv, Quickness v, Vitality iii, Vitality iv, Vitality v,
Harm iii, Harm iv, Harm v, Soaring Tower Metal Stone, Harvest God Star Stone, Parasol Tree Fiber, Wisdom God Star Stone, White Gold Nail, Sago Palm Fiber, Loaf of Magic Hard Bread, Serenstum, Rainbow Crystal Candy, Moti Blended Sausage, Lettuce Sandwich,
Dinner of the Gods, Glimmering Long Boots of the Fort, Callous Halo Leg Guards, Shoulder Guards of a Thousand Feathers, Moon Silver Ore, Mithril, Sinners Palm, Straw Mushroom " />
<!-- GM detection options -->
<option name="GMDETECT" value="true" /> -- enables the GM detection userfunction
<option name="GMnearbylogout" value="true" /> -- If a GM is close to the character it will log out.
<option name="PAUSEONGM" value="300" /> -- 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
<!-- 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="Incomplete Bloody Beast" />
<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_mage>
<skill name="MAGE_FLAME" hotkey="MACRO" priority="100" autouse="true" />
<skill name="MAGE_ESSENCE_OF_MAGIC" hotkey="MACRO" priority="80" />
<skill name="MAGE_FIREBALL" hotkey="MACRO" priority="90" autouse="true" />
<skill name="MAGE_LIGHTNING" hotkey="MACRO" priority="80" autouse="false" />
<skill name="MAGE_PURGATORY_FIRE" hotkey="MACRO" priority="80" autouse="false" />
<skill name="MAGE_ELEMENTAL_WEAKNESS" hotkey="MACRO" priority="80" autouse="false" />
<skill name="PRIEST_RISING_TIDE" hotkey="MACRO" priority="80" autouse="false" />
<skill name="MAGE_MAGIC_DRAIN" hotkey="MACRO" priority="80" autouse="false" />
<skill name="PRIEST_URGENT_HEAL" hotkey="MACRO" priority="120" hpper="80" />
<skill name="PRIEST_REGENERATE" hotkey="MACRO" priority="110" hpper="90" />
<skill name="MAGE_ENERGY_INFLUX" hotkey="MACRO" priority="80" autouse="false" />
<skill name="MAGE_ELEMENTAL_CATALYSIS" hotkey="MACRO" priority="80" autouse="false" />
<skill name="MAGE_INTENSIFICATION" hotkey="MACRO" priority="80" autouse="false" />
<skill name="MAGE_ENERGY_WELL" hotkey="MACRO" priority="80" autouse="false" />
<skill name="PRIEST_MAGIC_BARRIER" hotkey="MACRO" priority="80" autouse="false" />
<skill name="MAGE_ELECTROSTATIC_CHARGE" hotkey="MACRO" priority="80" autouse="false" />
</skills_mage>
<onPreSkillCast>
if player.Class == 5 and player.Class2 == 2 then
player:cast("MAGE_FLAME");
cprintf(cli.pink, "Kame Hame Wave!!!!!\n")
yrest(100);
if( arg1.Name == "MAGE_FLAME" ) then
player:cast("MAGE_FLAME");
cprintf(cli.pink, "Kame Hame Wave!!!!!\n")
yrest(100);
end
end
</onPreSkillCast>
<onLoad><![CDATA[
startGMDetect()
]]></onLoad>
<onDeath><![CDATA[
-- Additional Lua code to execute on death
]]></onDeath>
<onLeaveCombat><![CDATA[
player:lootAll();
]]></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[
if player.Class == 5 and player.Class2 == 2 then
player:cast("MAGE_FLAME");
cprintf(cli.pink, "FLAME!!!!!\n")
yrest(100);
if( arg1.Name == "MAGE_FLAME" ) then
player:cast("MAGE_FLAME");
cprintf(cli.pink, "FLAME!!!!!\n")
yrest(100);
end
end
target = player:getTarget();
if target.Id == 103169 then
if sendMacro("madman.Time") >= 1 then
player:clearTarget();
printf("Running\n")
yrest(100)
player:cast("MAGE_FLAME");
cprintf(cli.pink, "Kame Hame Wave....\n")
yrest(100);
end
end
]]></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[
SlashCommand("run ReturnPet(1)");
yrest(500)
SlashCommand("run RotateCamera(99,99,99,990)");
yrest(4000)
]]></onUnstickFailure>
</profile>
my alt profile
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="true" /> -- 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="HP_LOW" value="85" />
<option name="MP_LOW_POTION" value="70" />
<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 -->
<option name="USE_PHIRIUS_POTION" value="true" /> <!-- false | true if you want to use the Phirus Potions -->
<option name="PHIRIUS_MP_LOW" value="40" />
<option name="PHIRIUS_HP_LOW" value="40" />
<!-- 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" /> <!-- set to "0" if not required to buy -->
<option name="ARROW_QUIVER" value="2" /> <!-- set to "0" if not required to buy -->
<option name="THROWN_BAG" value="2" /> <!-- set to "0" if not required to buy -->
<option name="POISON" value="30" /> <!-- set to "0" if not required to buy -->
<!-- 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="false" /> <!-- 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="54" />
<!-- 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="true" />
<!-- Loot settings -->
<option name="LOOT" value="true" />
<option name="LOOT_ALL" value="true" /> <!-- Loot all nearby dead mobs after combat -->
<option name="LOOT_IN_COMBAT" value="true" />
<option name="LOOT_DISTANCE" value="250" />
<option name="LOOT_PAUSE_AFTER" value="0" /> <!-- probability in % for a short rest -->
<!-- Auto selling options when used with player:merchant -->
<option name="INV_AUTOSELL_ENABLE" value="false" /> <!-- true | false -->
<option name="INV_AUTOSELL_FROMSLOT" value="1" /> <!-- 1 = bag 1 slot 1 -->
<option name="INV_AUTOSELL_TOSLOT" value="60" /> <!-- 30 = last slot bag 1 -->
<option name="INV_AUTOSELL_QUALITY" value="white,green" /> <!-- white,green,blue,purple -->
<!-- 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="false" />
<option name="CLOSE_WHEN_STUCK" value="true" />
<option name="RES_AFTER_DEATH" value="true" />
<option name="MAX_DEATHS" value="100" /> <!-- 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" />
<!-- Healing options -->
<!-- <option name="HEALER_FIGHT" value="true" /> --> <!-- Not implemented yet, coming soon -->
<!-- pvp -->
<!--option name="PVP" value="true" /> --> <!-- To enable PVP, with this set to true it will auto attack any players with red names -->
<!-- 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="Mutated Wolf" />
<friend name="Dark Rite Warlock" /> <!-- Elite, avoid him -->
<friend name="Dark Rite Instructor" /> <!-- Elite, avoid him -->
<friend name="Dark Rite Mage" /> <!-- Elite, avoid him -->
<friend name="Dark Rite Acolyte" /> <!-- Elite, avoid him -->
<friend name="Spirit Core" /> <!-- Elite, avoid him -->
<friend name="Misty Rotwrom" />
<friend name="Iron Teeth Sentry" />
<friend name="Puppet Shaman" />
<friend name="Drifting Javias" />
<friend name="Hare" />
<friend name="Foul Maggot" />
</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 -->
<!-- to use a specific key instead of MACRO then use hotkey="VK_1" this example is for hotkey 1 -->
<skills_priest>
<skill name="PRIEST_SOUL_SOURCE" hotkey="MACRO" priority="110" inbattle="true" hpper="15" />
<skill name="PRIEST_URGENT_HEAL" hotkey="MACRO" priority="100" hpper="50" />
<skill name="PRIEST_REGENERATE" hotkey="MACRO" priority="90" hpper="80" />
<skill name="PRIEST_RISING_TIDE" hotkey="MACRO" priority="80" />
<skill name="PRIEST_WAVE_ARMOR" hotkey="MACRO" priority="40" inbattle="true" />
<skill name="PRIEST_AMPLIFIED_ATTACK" hotkey="MACRO" priority="20" rebuffcut="60" inbattle="false" />
<skill name="PRIEST_GRACE_OF_LIFE" hotkey="MACRO" priority="20" rebuffcut="60" inbattle="false" />
<skill name="PRIEST_HOLY_AURA" hotkey="MACRO" priority="100" inbattle="true" hpper="24" />
<!--skill name="PRIEST_SOUL_BOND" hotkey="MACRO" priority="30" /> -->
<!--skill name="PRIEST_MAGIC_BARRIER" hotkey="MACRO" priority="20" rebuffcut="60" inbattle="false" /> -->
</skills_priest>
<skills_warrior>
<skill name="WARRIOR_SLASH" hotkey="MACRO" priority="90" />
<skill name="WARRIOR_TACTICAL_ATTACK" hotkey="MACRO" priority="70" />
<skill name="WARRIOR_PROBING_ATTACK" hotkey="MACRO" priority="80" />
<skill name="WARRIOR_OPEN_FLANK" hotkey="MACRO" priority="70" />
<skill name="WARRIOR_SURPRISE_ATTACK" hotkey="MACRO" priority="70" pullonly="true" />
<skill name="WARRIOR_FRENZY" hotkey="MACRO" priority="30" inbattle="true" />
<skill name="WARRIOR_THUNDER" hotkey="MACRO" priority="70" />
<skill name="WARRIOR_MOON_CLEAVE" hotkey="MACRO" priority="70" />
<skill name="WARRIOR_BLASTING_CYCLONE" hotkey="MACRO" priority="70" />
</skills_warrior>
<skills_scout>
<skill name="DRUID_SAVAGE_BLESSING" hotkey="MACRO" priority="50" inbattle="false" />
<skill name="DRUID_RECOVER" hotkey="MACRO" priority="100" hpper="80" />
<skill name="SCOUT_SHOT" hotkey="MACRO" priority="90" />
<skill name="SCOUT_AUTOSHOT" hotkey="MACRO" priority="80" />
<skill name="SCOUT_WIND_ARROWS" hotkey="MACRO" priority="70" />
<skill name="SCOUT_VAMPIRE_ARROWS" hotkey="MACRO" priority="100" />
<skill name="SCOUT_COMBO_SHOT" hotkey="MACRO" priority="95" />
<skill name="SCOUT_ARROW_OF_ESSENCE" hotkey="MACRO" priority="90" maxhpper="60" inbattle="true"/>
</skills_scout>
<skills_rogue>
<skill name="ROGUE_SHADOWSTAB" hotkey="MACRO" priority="90" />
<skill name="ROGUE_LOW_BLOW" hotkey="MACRO" priority="80" />
<skill name="ROGUE_HIDE" hotkey="MACRO" priority="10" autouse="false" />
<skill name="ROGUE_INFORMER" hotkey="MACRO" priority="80" />
<skill name="ROGUE_ASSASSINS_RAGE" hotkey="MACRO" priority="60" />
<skill name="ROGUE_WOUND_ATTACK" hotkey="MACRO" priority="80" />
</skills_rogue>
<skills_mage>
<skill name="MAGE_FLAME" hotkey="MACRO" priority="90" autouse="false" />
<skill name="MAGE_ELEMENTAL_WEAKNESS" hotkey="MACRO" priority="80" autouse="false" />
<skill name="MAGE_MAGMA_BLADE" hotkey="MACRO" priority="100" autouse="false" />
<skill name="MAGE_FIREBALL" hotkey="MACRO" priority="110" autouse="false" />
<skill name="MAGE_LIGHTNING" hotkey="MACRO" priority="70" autouse="false" />
<skill name="MAGE_PURGATORY_FIRE" hotkey="MACRO" priority="60" autouse="false" />
<skill name="DRUID_RECOVER" hotkey="MACRO" priority="120" hpper="80" />
<skill name="MAGE_ENERGY_INFLUX" hotkey="MACRO" priority="30" AutoUse="false"/>
<skill name="MAGE_ELEMENTAL_CATALYSIS" hotkey="MACRO" priority="30" AutoUse="false"/>
<skill name="MAGE_INTENSIFICATION" hotkey="MACRO" priority="30" AutoUse="false"/>
<skill name="MAGE_ENERGY_WELL" hotkey="MACRO" priority="30" AutoUse="false"/>
<skill name="MAGE_PERCEPTION" hotkey="MACRO" priority="30" AutoUse="false"/>
<skill name="MAGE_MAGIC_TARGET" hotkey="MACRO" priority="30" AutoUse="false"/>
<skill name="DRUID_SAVAGE_BLESSING" hotkey="MACRO" priority="30" AutoUse="false"/>
</skills_mage>
<skills_knight>
<skill name="KNIGHT_HOLY_STRIKE" hotkey="MACRO" priority="90" />
<skill name="KNIGHT_HOLY_SHIELD" hotkey="MACRO" priority="80" inbattle="true" hpper="15" />
<skill name="KNIGHT_HOLY_SEAL" hotkey="MACRO" priority="70" />
<skill name="KNIGHT_PUNISHMENT" hotkey="MACRO" priority="60" />
<skill name="KNIGHT_ENHANCED_ARMOR" hotkey="MACRO" priority="90" />
<skill name="KNIGHT_MANA_RETURN" hotkey="MACRO" priority="60" />
<skill name="KNIGHT_RESOLUTION" hotkey="MACRO" priority="60" />
<skill name="KNIGHT_DISARMAMENT" hotkey="MACRO" priority="70" />
</skills_knight>
<skills_warden>
<skill name="WARDEN_CHARGED_CHOP" hotkey="MACRO" priority="90" />
<skill name="WARDEN_ENERGY_ABSORB" hotkey="MACRO" priority="80" inbattle="true" hpper="25" />
</skills_warden>
<skills_druid>
<skill name="DRUID_RECOVER" hotkey="MACRO" priority="120" hpper="80" />
<skill name="DRUID_CAMELLIA_FLOWER" hotkey="MACRO" priority="80" hpper="80" />
<skill name="DRUID_BLOSSOMING_LIFE" hotkey="MACRO" priority="80" AutoUse="false"/>
<skill name="DRUID_MOTHER_EARTHS_FOUNTAIN" hotkey="MACRO" priority="80" hpper="80" />
<skill name="DRUID_SAVAGE_BLESSING" hotkey="MACRO" priority="50" inbattle="false" />
<skill name="DRUID_CONCENTRATION_PRAYER" hotkey="MACRO" priority="50" inbattle="false" />
<skill name="DRUID_UNITY_WITH_MOTHER_EARTH" hotkey="MACRO" priority="50" inbattle="true" />
</skills_druid>
<onLoad><![CDATA[
startGMDetect()
]]></onLoad>
<onDeath><![CDATA[
loadPaths("zparty_return")
]]></onDeath>
<onLeaveCombat><![CDATA[
if player:findNearestNameOrId(102102) then
local Evelyn = player:findNearestNameOrId(102102)
player:target(Evelyn)
player:fight()
end
if player:findNearestNameOrId("Mysterious Bag") then
local filename = getExecutionPath() .. "/logs/giftbag.log";
local file, err = io.open(filename, "a+");
if file then
file:write("Date: "..os.date().." scout")
file:close();
end
player:target_Object("Mysterious Bag")
yrest(1000)
player:target_Object("Mysterious Bag")
yrest(1000)
end
]]></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[
target = player:getTarget();
if target.Id == 103857 or target.Id == 103169 then
if sendMacro("madman.Time") >= 1 then
player:clearTarget();
printf("Running\n")
yrest(4000)
end
end
if( arg1.Name == "DRUID_RECOVER" ) then
yrest(3100);
player:cast("DRUID_RECOVER");
end
if( arg1.Name == "DRUID_RECOVER" ) then
yrest(100);
player:cast("DRUID_RECOVER");
end
if( arg1.Name == "DRUID_RECOVER" ) then
yrest(100);
player:cast("DRUID_RECOVER");
end
if( arg1.Name == "DRUID_RECOVER" ) then
yrest(100);
player:cast("DRUID_RECOVER");
end
keyboardPress( key.VK_1 );
yrest(1000);
keyboardPress( key.VK_1 );
]]></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[
SlashCommand("run ReturnPet(1)");
yrest(500)
SlashCommand("run RotateCamera(99,99,99,990)");
yrest(4000)
]]></onUnstickFailure>
</profile>
also problem in looting... sometimes they dont loot both