PL Bot Ver2

A forum for you to dump all the macros you create, allowing users to use, modify, and comment on your work.

Moderator: MacroQuest Developers

MrSmallie
a hill giant
a hill giant
Posts: 167
Joined: Fri Oct 11, 2002 11:18 am

PL Bot Ver2

Post by MrSmallie » Thu Jan 15, 2004 3:42 pm

Direct rip off of some-eq-players code.
This is more or less how I run it.
You will still probably need to edit it, and you definitely need to read it.

Code: Select all


|PLbot.mac 
|how to use : 
| 1) define your spells and actions below.  (As in, read it and customize) 
| 2) set your hot keys in game to tell the channel the key words
| ex: /1 Healme im gonna die! would cause the bot to stand up 
| and cast greater healing. 
| 3) run your PLbot to your starting location 
| 4) run the macro. 
| 5) the bot will auto mem any spell it doesn't have up into SLOT 5, 
| 
| default Keywords it responds to: 
| 
| -- targets the message sender --- 
| healme        ---   casts greater healing 
| thornsme      ---   casts Shield of Spikes 
| regenme       ---   casts Chloroplast 
| sowme      ---   casts spirit of wolf 
| skinme   ---   casts Skin like Diamond          
| strme      ---   casts Storm Strength 
| joinup   ---   invites the sender to join a group, or join. 
| follow me --- uses advfollow to follow the sender.  
| stophere   ---   makes the bot reset as if just started, so he'll sit 
|                     once more. (might need a little testing, since this 
|                     just tells advfollow to stop and calls sub main again) 
| 
| -- Assist the message sender  -- 
| repair   ---   targets the sender and presses tab to target himself, 
|            then casts Greater Healing. used this method over f1 
|            for those bots that have charms, wanna avoid targetting pet. 
| savehim ---   assists the sender and casts Greater Healing on the target 
| buffhim   ---   assists the sender and is a quick way to cast thorns 
|                     regen sow skin and str to those beggers of buffs. 
| sowhim   ---   assists the sender and is for those sow beggars. 
| regenhim   ---   assists the sender to cast a cloro on the target. 
| roothim   ---   assists the sender to root his target 
| snarehim   ---   assists the sender to snare his target 
| harmonyhim   ---   assists the sender to harmony of nature the target 
| nukehim   ---   assists the sender to cast root the target and then cast 
|                          firestrike (or whatever nuke you set)
| 
| -- special responses -- 
| campnow         --- makes the bot camp to desktop 
| mana?    --- tells you how much mana is left. 
| 
|----------------------------------- 
| ENJOY 

#Event SLAINBY 

|-------------------- 
|CHANGE THIS TO tell for tells or chat for channel 
|-------------------- 
#chat chat 
|-------------------- 

|You can find thess by searching if you don't have it.
#Include advfollow.inc 
#Include Spellcast.inc 

Sub Main 
/echo starting bot macro 

| these are to let you know if LOW on HEALTH or MANA, 
| just a safty feature. set to 2 to disable. 
/declare hpwarning global 
/declare mpwarning global 
/varset hpwarning 0 
/varset mpwarning 0 

|-------- 
/cleanup 
|-------- 

|making sure not in any other channels that might trigger you. 
| -------- 
/leave 1 
| ------- 

| ----------------------------- 
| PLEASE CHANGE THIS TO YOUR OWN CHANNEL! 
| ----------------------------- 
/join anychannel
| ----------------------------- 
| 
| this is your AFK message --- change it --- 
/afk brb
| ----------------------------- 

/delay 1s 
/1 ok ready
:Mainloop 
/call Checkhealth 
/call Checkmana 

| make sure hes medding. 
   /if $char(state)=="Stand" { 
      /sit 
   } 
   /doevents 
   /goto :Mainloop 
/return 


Sub Event_Chat(ChatType,Sender,ChatText) 

| ------------------------------------------------------------------------------- 
| starting here is where you edit the KEYWORD in the sentence and 
| the spell that the keyword triggers. 
| @chattext (first line in each set) is the keyword.  
| /call cast is the spell it triggers .. Greater healing in the first example ... 
| Edit those 2 fields for your spell effect. 
| 
| if you change from chat to tell, you must change /1 to 
| /tt below. for each set 
| 
| ------------------------------------------------------------------------------- 


   /if "@ChatText"~~"Healme" { 
   /target @Sender 
/delay 1 
   /1 "Heal inc to %t 
/delay 1 
   /call Cast "Greater Healing" 
} 

| *********************************** 

   /if "@ChatText"~~"Thornsme" { 
/delay 1 
   /target @Sender 
/delay 1 
   /call Cast "Shield of Spikes" 
} 

| *********************************** 

   /if "@ChatText"~~"Regenme" { 
/delay 1 
   /target @Sender 
/delay 1 
   /call Cast "Chloroplast" 
} 

| *********************************** 

/if "@ChatText"~~"Sowme" { 
/delay 1 
   /target @Sender 
/delay 1 
   /call Cast "Spirit of Wolf" 
}  

| *********************************** 

/if "@ChatText"~~"Skinme" { 
/delay 1 
   /target @Sender 
/delay 1 
   /call Cast "Skin like Diamond" 
}  

| *********************************** 

/if "@ChatText"~~"strme" { 
/delay 1 
   /target @Sender 
/delay 1 
   /call Cast "Storm Strength" 
} 
| *********************************** 

/if "@ChatText"~~"joinup" { 
/target @Sender 
/delay 1s 
/invite 
} 

| *********************************** 

| ------------------------------------------------------------------------------- 
| below you will find special sets these dont target the sender, they 
| assist him. 
| for instance root will assist you and root the target. 
| Repair will make the druid heal himself manualy 
| save him will heal your target 
| buffhim will cast the buffs listed on your target. 
| followme will follow the sender 
| ------------------------------------------------------------------------------- 

/if "@ChatText"~~"repair" { 
/delay 1 
/target @Sender 
/delay 1    
/press tab 
/delay 1 
    /call Cast "Greater Healing" 
}  

| *********************************** 

/if "@ChatText"~~"savehim" { 
/delay 1 
/target @Sender 
/delay 1    
/assist 
/delay 1s 
    /call Cast "Greater Healing" 
}  

| *********************************** 

/if "@ChatText"~~"buffhim" { 
/delay 1 
/target @Sender 
/delay 1    
/assist 
/delay 1s 
/call Cast "Skin like Diamond" 
/call Cast "Spirit of Wolf" 
/call Cast "Chloroplast" 
/call Cast "Shield of Spikes" 
/call Cast "Storm Strength" 
} 

| *********************************** 

/if "@ChatText"~~"sowhim" { 
/delay 1 
/target @Sender 
/delay 1    
/assist 
/delay 1s 
/call Cast "Spirit of Wolf" 
} 

| *********************************** 

/if "@ChatText"~~"regenhim" { 
/delay 1 
/target @Sender 
/delay 1    
/assist 
/delay 1s 
/call Cast "Chloroplast" 
/say ok 
}    

| *********************************** 

/if "@ChatText"~~"roothim" { 
/delay 1 
/stand 
   /target @Sender 
/delay 1s 
   /1 gonna root %t 
/assist 
/delay 1s 
   /call Cast "Enveloping Roots" 
}  

| *********************************** 

/if "@ChatText"~~"snarehim" { 
/delay 1 
/stand 
   /target @Sender 
/delay 1s 
   /call Cast "Ensnare" 
}  

| *********************************** 

/if "@ChatText"~~"harmonyhim" { 
/delay 1 
/stand 
   /target @Sender 
/delay 1s 
   /assist 
/delay 1s 
/call Cast "Harmony of Nature" 
}  

| *********************************** 

/if "@ChatText"~~"nukehim" { 
/delay 1 
/stand 
   /target @Sender 
/delay 1s 
   /assist 
/delay 1s 
   /call Cast "Enveloping Roots" 
/call Cast "Firestrike" 
}  

| *********************************** 

/if "@ChatText"~~"follow me" { 
/delay 1 
   /target @Sender 
/delay 1 
/stand 
/call goto $char(name) 
/return 
} 

| *********************************** 

/if "@ChatText"~~"stophere" { 
/if n @FollowFlag==1 { 
/echo stop 
} 
/if n @FollowFlag!=1 { 
} 
/return 
} 

| *********************************** 

/if "@ChatText"=="campnow" { 
/delay 1 
   /target @Sender 
/delay 1s 
| make sure hes sitting by standing up first 
  /stand 
/delay 5 
/sit 
/delay 1s 
/camp desktop 
} 

| *********************************** 


Sub Event_SLAINBY 
   /Echo Slained Event Entered 
/delay 5s    
/return 


| ------------------------------------------------------------------------------- 
|this is for safety and will NOT eliminate the "Repair" set above 
|however DOES help. 
| ------------------------------------------------------------------------------- 

Sub Checkhealth 
/if n $char(hp,pct)<60 /if @hpwarning==0 { 
/varset hpwarning 1 
/1 WARNING! GOTTA HEAL MYSELF WATCH OUT! 
/press f1 
/delay 5 
/call cast "Greater Healing" 
} 
/if n $char(hp,pct)>80 /if @hpwarning==1 { 
/varset hpwarning 0 
/1 OK
} 

/return 

Sub Checkmana 
/if n $char(mana,pct)<30 /if @mpwarning==0 { 
/varset mpwarning 1 
/1 LOW MANA
} 
/if n $char(mana,pct)>50 /if @mpwarning==1 { 
/varset mpwarning 0 
/1 OK 
} 

/return 
Me
[img]http://home.comcast.net/~mrsmallie/ches.JPG[/img]

J-Squared
orc pawn
orc pawn
Posts: 22
Joined: Wed Nov 19, 2003 11:02 am

Post by J-Squared » Fri Jan 16, 2004 10:08 am

/nod

Thanks. The way it should have been posted in the depot to start with.

J