genbot.mac Generic Bot macro for any class. V8 with ini

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

Moderator: MacroQuest Developers

Teh_ish
UI Guru
Posts: 168
Joined: Wed Nov 05, 2003 12:18 am

Post by Teh_ish » Mon Nov 10, 2003 12:51 am

theafkxper wrote:hrmm, i get the window to open just fine, but it all says unknown label for the values...

btw, you scare me grim... http://webpages.charter.net/grimjack/
You probably don't have the latest version. Get irc-latest and recompile.
OMGWTFBBQ

User avatar
grimjack
Macro Author
Macro Author
Posts: 525
Joined: Thu Nov 07, 2002 6:51 am
Contact:

Autobehind

Post by grimjack » Mon Nov 10, 2003 4:39 am

Rassilon wrote:Isn't /autobehind supposed to make the bot stay behind the mob the whole time? It just tells me that it won't go behind the mob from now on.

If it doesn't, is there a command that I can put in that will have one bot stay behind the mob? The bot isn't a rogue.

Thanks
Try /msg botname autobehind on. Also you can do /msg botname autobehind off. If you don't specify on or off it just reports the current setting.
When they come to me, they're in trouble, or they want some. I bust people out of prison, hunt down vampires, fight alien gods -- All the fun jobs people are too squeamish or too polite to do themselves.

Call me a mercenary. Call me an assassin. Call me a villain. I am all that and more.

My name's John Gaunt, but out on the streets of Cynosure, I am called...
GrimJack

RogerWilco
a ghoul
a ghoul
Posts: 86
Joined: Thu Aug 28, 2003 4:05 am

Post by RogerWilco » Mon Nov 10, 2003 11:05 am

Has anyone had any issues while running Master and 2 Bots that one of the Bots will always return [Macroquest] TRUE when you try to cast.. The other bot works just fine

Currently using:
Genbot - 8.5
Botcore - 8.52
Bothealer - 8.51
botcombat - 8.52
botspell - 8.52


I get get that messege when I cam sitting on the mount and casting
Last edited by RogerWilco on Mon Nov 10, 2003 12:50 pm, edited 1 time in total.

DontShoot
a lesser mummy
a lesser mummy
Posts: 58
Joined: Thu Jun 20, 2002 11:20 am

Post by DontShoot » Mon Nov 10, 2003 12:04 pm

after about 2 weeks of trying to figure out this macro, I'm getting close.

Have a druid, that I /mac genbot mastername

then, I switch to the master, and /msg botname heal me

I get a tell from bot saying casting chloroblast on mastername

but, when I switch to the bot, the following happens:

Code: Select all

Ending Macro: } and { seen on the same line without an else present
botcore.inc@309 (ChatOut(ChatPriority,ChatTarget,ChatText)):}else /if @ChatIn=="Group"{ bothealer.inc@656 (Do-heal): /call ChatOut 3 @Master "Casting @DefaultHealSpell on %t."
botcore.inc@286 (Event_Chat): /call Do-@Commands(4,@tempvar) @Param2
genbot.mac@62 (Main)::Mainloop
Cleared the following: Timers Vars Arrays
The current macro has ended.

chickenisgoot
a ghoul
a ghoul
Posts: 84
Joined: Tue Oct 07, 2003 10:52 am

Post by chickenisgoot » Mon Nov 10, 2003 12:19 pm

You have to change }else to } else, it doesnt like the lack of a space.

in_training
Craptastic
Posts: 115
Joined: Fri Oct 10, 2003 8:25 am

Post by in_training » Mon Nov 10, 2003 2:55 pm

RogerWilco wrote:Has anyone had any issues while running Master and 2 Bots that one of the Bots will always return [Macroquest] TRUE when you try to cast.. The other bot works just fine

Currently using:
Genbot - 8.5
Botcore - 8.52
Bothealer - 8.51
botcombat - 8.52
botspell - 8.52


I get get that messege when I cam sitting on the mount and casting
Yes, Yes I have. Usually I have to restard Genbot like 10 times to get it to work as intended.. Once it gets working, it's the most goregous thing I have ever seen, however.

User avatar
grimjack
Macro Author
Macro Author
Posts: 525
Joined: Thu Nov 07, 2002 6:51 am
Contact:

Post by grimjack » Mon Nov 10, 2003 6:24 pm

RogerWilco wrote:Has anyone had any issues while running Master and 2 Bots that one of the Bots will always return [Macroquest] TRUE when you try to cast.. The other bot works just fine

Currently using:
Genbot - 8.5
Botcore - 8.52
Bothealer - 8.51
botcombat - 8.52
botspell - 8.52


I get get that messege when I cam sitting on the mount and casting
That's just some debug info I forgot to coment out.

Code: Select all

/echo $char(ismoving)
If it is coming back true then mq is reporting you as moving. If the macro thinks that you are moving it won't cast. It is probably a bug from being mounted.
When they come to me, they're in trouble, or they want some. I bust people out of prison, hunt down vampires, fight alien gods -- All the fun jobs people are too squeamish or too polite to do themselves.

Call me a mercenary. Call me an assassin. Call me a villain. I am all that and more.

My name's John Gaunt, but out on the streets of Cynosure, I am called...
GrimJack

User avatar
grimjack
Macro Author
Macro Author
Posts: 525
Joined: Thu Nov 07, 2002 6:51 am
Contact:

Update:

Post by grimjack » Mon Nov 10, 2003 6:43 pm

Updated botcore, botspell and bothealer. A feww straggling }echo fixes mainly. I left the debug line in there for moving for the moment. If genbot won't cast for some reason check and make sure it's not spamming TRUE. If it is, Macroquest is reporting that you are moving. Also added the invis events from LordG. I did not add the endmacro on camp text event.

Thanks
When they come to me, they're in trouble, or they want some. I bust people out of prison, hunt down vampires, fight alien gods -- All the fun jobs people are too squeamish or too polite to do themselves.

Call me a mercenary. Call me an assassin. Call me a villain. I am all that and more.

My name's John Gaunt, but out on the streets of Cynosure, I am called...
GrimJack

Rassilon
a lesser mummy
a lesser mummy
Posts: 73
Joined: Thu Sep 04, 2003 6:34 pm

Post by Rassilon » Tue Nov 11, 2003 1:31 am

Is there a way to have the bot msg the master if someone invites him to a group or gets a /raidinvite or a rez msg?

Thanks,

Rass

whinge01
decaying skeleton
decaying skeleton
Posts: 1
Joined: Mon Nov 10, 2003 7:13 am

Post by whinge01 » Tue Nov 11, 2003 8:01 am

Great bot! Best thing I've seen since, well, eq came out

My CP 0.01...
Tell your favourite bard to start singing an dancin...

Ripped up and forced in, code copied from other macros on this board (Grimjack and others). I haven't put the credits back in yet.

/tell GuitarHo_01 twist 123
/tell GuitarHo_01 twist 123 456

123 when not attacking, 456 when attacking

I'm new to this, still learning how the language constructs go. Help is good, flames to /dev/null

_Whinge_

Code: Select all


| personal.inc

#event TwistMissedNote "You miss a note, bringing your song to a close!" 
#event TwistRecovered "You haven't recovered yet..." 


Sub PersonalCommands
...
   /varset Commands(0,46) twist
...



Sub SetupPersonalVars 

   /call SetupTwistVars
...



Sub PersonalMain 
...
   /if n @Twist==1 /call CheckTwist




Sub Do-twist

   /if $defined(Param1)==FALSE {
      /varset Twist 0
      /stopsong 
      /return
   } 

   /varset Twist 1

   /varset Twistnncsongs $strlen(@Param1) 
   /varset Twistncsongs $strlen(@Param2) 
   /varset TwistncSongList @Param1 
   /varset TwistcSongList @Param2 

   /for TwistI 1 to @Twistnncsongs 
      /varcalc TwistJ $int(@TwistI-1) 
      /varset TwistncSongArray(@TwistI) $mid(@TwistJ,1,@TwistncSongList) 
   /next TwistI 
   /for TwistI 1 to @Twistncsongs 
      /varcalc TwistJ $int(@TwistI-1) 
      /varset TwistcSongArray(@TwistI) $mid(@TwistJ,1,@TwistcSongList) 
   /next TwistI 

/return

Sub SetupTwistVars 
   /declare TwistCASTTIME   global 
   /declare Twistcursong    global 
   /declare Twistnncsongs   global 
   /declare Twistncsongs   global 
   /declare Twistprevsong   global 
   /declare TwistncSongList   global 
   /declare TwistcSongList   global 
   /declare TwistSingTime   timer 
   /declare TwistI      global 
   /declare TwistJ      global 
   /declare TwistncSongArray   array 
   /declare TwistcSongArray   array 
   /declare Twist       global

   /varset TwistCASTTIME   33 
   /varset Twistcursong    1 
   /varset Twist           0

/return

Sub TwistSing 
   /varset TwistSingTime @TwistCASTTIME 
   /stopsong 
   /cast @Param0 
   /varset Twistprevsong @Twistcursong 
   /varadd Twistcursong 1 
   /if n @Twistcursong>@Twistnncsongs /varset Twistcursong 1 
/return 


Sub Event_TwistMissedNote 
   /varset Twistcursong @Twistprevsong 
   /varset TwistSingTime 0 
/return 

Sub Event_TwistRecovered 
   /varset TwistSingTime 0 
   /varset Twistcursong @Twistprevsong 
/return

Sub CheckTwist
    /if "$char(state)"!="SIT" { 
       /if "$combat"=="TRUE" /if n @TwistSingTime<=0 /call TwistSing @TwistcSongArray(@Twistcursong) 
       /if "$combat"!="TRUE" /if n @TwistSingTime<=0 /call TwistSing @TwistncSongArray(@Twistcursong) 
    } 
    /if $char(state)=="DUCK" /press d 
/return

Narces
a lesser mummy
a lesser mummy
Posts: 37
Joined: Thu Aug 07, 2003 7:50 am

Post by Narces » Tue Nov 11, 2003 12:08 pm

First PoAir raid last night with new bot.. basically since the *big* variable change. Runs damn nice I must say.

I run it on a rogue, so this is what I noticed.

With the autoevade feature on, when the Hide button pops up (noticeable during ENRAGE and after mob dies and I afollow bot to me) the bot goes back into attack mode. May not be a huge problem to many, but when your in Plane of Air and shit likes to hit for 1k+.. and your duel wielding.. well, lets just say I used the "yesres" cmd a lot.

Also, couldn't get the "lootup" cmd to work for me. Still learning the script thou.

Love the script, and am going to start encoding the cmds a bit different. Its kinda obvious that im using MQ when I tell another PC to attack, and they automatically do it. I figure if I tell bot to "kotichi" or something else, then the GMs won't notice as much. Once I get good with this new script I'll switch verbosity off.

User avatar
grimjack
Macro Author
Macro Author
Posts: 525
Joined: Thu Nov 07, 2002 6:51 am
Contact:

Post by grimjack » Tue Nov 11, 2003 3:21 pm

Narces wrote:First PoAir raid last night with new bot.. basically since the *big* variable change. Runs damn nice I must say.

I run it on a rogue, so this is what I noticed.

With the autoevade feature on, when the Hide button pops up (noticeable during ENRAGE and after mob dies and I afollow bot to me) the bot goes back into attack mode. May not be a huge problem to many, but when your in Plane of Air and smurf poo likes to hit for 1k+.. and your duel wielding.. well, lets just say I used the "yesres" cmd a lot.

Also, couldn't get the "lootup" cmd to work for me. Still learning the script thou.

Love the script, and am going to start encoding the cmds a bit different. Its kinda obvious that im using MQ when I tell another PC to attack, and they automatically do it. I figure if I tell bot to "kotichi" or something else, then the GMs won't notice as much. Once I get good with this new script I'll switch verbosity off.
Installed an EnrageVar check into evade portion of botcombat.inc. It should now only turn attack back on if EnrageVar!=1.

Thanks
When they come to me, they're in trouble, or they want some. I bust people out of prison, hunt down vampires, fight alien gods -- All the fun jobs people are too squeamish or too polite to do themselves.

Call me a mercenary. Call me an assassin. Call me a villain. I am all that and more.

My name's John Gaunt, but out on the streets of Cynosure, I am called...
GrimJack

Rassilon
a lesser mummy
a lesser mummy
Posts: 73
Joined: Thu Sep 04, 2003 6:34 pm

Post by Rassilon » Tue Nov 11, 2003 5:44 pm

I basically use the script to attack targets but when I have to have the mob targetted for about 6-10secs after I tell it to attack or else it changes and trys to attack the next thing I target, not much fun when chanters are trying to mez. Generaly the hotkey is setup to: /tell bot attack %t , /pause 10 , /tell bot pet attack. Is there a way I can target a mob and tell it to attack and then change to my next target? Or can I assign a certain person for it to assist on attacking those mobs?

Another thing I notice is that when I tell it to attack a mob, it will try to attack the closest corpse/mob with that name first, even if it is mezed, and then it will finally go after the mob I originally selected for it to attack. Is there a way for it to not do that and only go after the mob I select and also not have it attack mezed mobs?

Thanks,

Rass

LordGiddion
a snow griffon
a snow griffon
Posts: 352
Joined: Sat Sep 13, 2003 6:12 pm
Contact:

Post by LordGiddion » Tue Nov 11, 2003 8:12 pm

Rassilon,
We have the attack assist off the master to encourage natural language between bot and master. However you could make a command in your personal.inc for attackid which would take the Spawn ID - you would then hotkey /tell botname attackid $target(id).
That would clean up the issues your having a problem with but would make things more suspicious if someone monitors your chat. If you need help with this personal command I can write it for you.

Guest

Post by Guest » Tue Nov 11, 2003 9:46 pm

There appears to still be an issue with being mounted and playing healer. It keeps spamming TRUE although the character is sitting perfectly still.

Switched to no mount and sitting after casting and it works great. Just an FYI.