AFNuke mac (Wiz Bot Mac update: 12-02-04)

Post your completed (working) macros here. Only for macros using MQ2Data syntax!

Moderator: MacroQuest Developers

Yalp
a ghoul
a ghoul
Posts: 90
Joined: Thu Dec 05, 2002 6:28 pm

Post by Yalp » Sat Aug 28, 2004 2:19 am

Azum I have one request -

Lizardscale Woven Sash

This item requires you to target something to cast, either yourself or another person.

I was thinking something along the lines of:

Code: Select all

[Belt]
FullName=Lizardscale Woven Sash
keepUp=True
TargetSelf=True|False
Thanks in advance Yalp
Because i wouldn't have it any other way

Azum
a hill giant
a hill giant
Posts: 229
Joined: Wed Jun 04, 2003 5:04 am

Post by Azum » Sat Aug 28, 2004 8:19 pm

/afhelp

tells you all the commands

/nuke1 White Fire

changes primary nuke on the fly

/nuke2 Draught of Ro

changes secondary nuke on the fly

I'll have a look at the autosit code and see how it works. I knew it would be fairly simple I just haven't had the time to sit down and code, like I had when I first made the macro.

Azum
a hill giant
a hill giant
Posts: 229
Joined: Wed Jun 04, 2003 5:04 am

Post by Azum » Sat Aug 28, 2004 8:23 pm

Yalp, quick fix for now. Open afnuke2.inc and look for

Code: Select all

/varset itemspellname ${FindItem[${Ini[${IniFile},${ialias},FullName]}].Spell}
/if (${itemspellname.Equal[${Me.Buff[${itemspellname}]}]}) /varset doiclick 0
/if (${doiclick}>0) {
/if (${Cursor.ID}) /autoinv
/docommand /iclick ${ialias}
put a /keypress F1 on the line before the /docommand /iclick ${ialias}

Azum
a hill giant
a hill giant
Posts: 229
Joined: Wed Jun 04, 2003 5:04 am

Re: for sitting

Post by Azum » Sun Aug 29, 2004 1:43 am

Braedo wrote:here is what i did to enable "auto sit" you may have to fiddle with the delay a tad depending on what spells you use...

open up your afnuke.inc and notice the bold... this basically puts a sit command right after every time u nuke! hope it works for you!

:wait2
/if (${Me.Casting.ID} || ${Me.Moving}) /goto :wait2
/if (${pausetimer}) /goto :nukeloop
/if (${Target.CurrentHPs}>${stopnuke} && !${Me.Moving} && ${Target.ID}==${mobid} && !${Target.Type.Equal[Corpse]}) {
/varset nukecount ${Math.Calc[${nukecount}+1]}
/echo Main Nuke Number ${nukecount}
/echo ${mainnuke} on ${Target.CleanName}, Health: ${Target.PctHPs}
/varset TempSpell ${mainnuke}
/call cast "${mainnuke}" ${mainnukegem} ${checktarget}
/sit
/if (!${nukepause.Equal["None"]}) /varset pausetimer ${nukepause}
} else /if (${Target.CurrentHPs}<=${stopnuke} && ${Target.CurrentHPs}>${stopnuke2} && !${Me.Moving} && ${Target.ID}==${mobid} && !${Target.Type.Equal[Corpse]}) {
/if (${TempSpell.Equal[${mainnuke}]}) /varset nukecount 0
/varset nukecount ${Math.Calc[${nukecount}+1]}
/echo End Nuke Number ${nukecount}
/echo ${endnuke} on ${Target.CleanName}, Health: ${Target.PctHPs}
/varset TempSpell ${endnuke}
/call cast "${endnuke}" ${endnukegem} ${checktarget}
/delay 3
/sit

/if (!${nukepause.Equal["None"]}) /varset pausetimer ${nukepause}
Alright, after having time to actually read this and look at it closely, I don't think I'd wanna implement it this way. Sitting after every nuke is a good way to get killed. I was thinking more along the lines of sitting only when there are no mobs in the immediate vicinity, which of course would be harder to code, but much more desirable for me personally.
Last edited by Azum on Sun Aug 29, 2004 1:44 am, edited 1 time in total.

Azum
a hill giant
a hill giant
Posts: 229
Joined: Wed Jun 04, 2003 5:04 am

Post by Azum » Sun Aug 29, 2004 1:43 am

Ydinlataus wrote:Nice work Azum!

I was wondering if you have considered adding automated TL in the macro, something along the lines:

Code: Select all

Sub Event_Chat(string ChatType, string Sender, string ChatText)
   /if (${ChatType.Equal[TELL]}) {
      /if (${ChatText.Find[tl ]} || ${ChatText.Equal[tl]}) {
            /target pc ${Sender}
            /delay 1s ${Target.Name.Equal[${Sender}]}
            /if (${FindItem[Time Traveler's Abandoned Notebook].ID}) /call Cast "Time Traveler's Abandoned Notebook" item
      }/else /call cast translocate
   }
/return
Yeah that should be fairly easy to add. I have a book too so it's a good incentive.

khozik
orc pawn
orc pawn
Posts: 28
Joined: Fri Oct 10, 2003 1:42 pm

Post by khozik » Sun Aug 29, 2004 6:20 pm

Code: Select all

Sub Event_EXP    
   /if (${Target.CurrentHPs}>=0) /return 
   /varset engagedmob 0 
   /varset mobid 0 
   /varset conccount 0 
   /varset nukecount 0 
   /varset issnared 0 
   /varset pausetimer 0 
/return 
Should be:

Code: Select all

Sub Event_EXP    
   /if (${Target.CurrentHPs}>=0) /return 
   /sit
   /varset engagedmob 0 
   /varset mobid 0 
   /varset conccount 0 
   /varset nukecount 0 
   /varset issnared 0 
   /varset pausetimer 0 
/return 
Basically if you gained experience, mob is dead, so sit. If there was a mezzed mob then tank should have aggro anyway. Well that's the idea!

Azum
a hill giant
a hill giant
Posts: 229
Joined: Wed Jun 04, 2003 5:04 am

Post by Azum » Mon Aug 30, 2004 4:31 pm

UPDATED afnuke.mac (first - updated 08/30)
UPDATED afnuke.inc (third post - updated 08/30)
UPDATED afnuke2.inc (seventh post - updated 08/30)
UPDATED afnuke.txt (.INI documentation, eighth post - updated 08/30)

(08/30) - Added autosit and autositmana. Macro will attempt to always sit if mana is equal or below autositmana, you are not currently nuking, and there are no mobs within a certain radius facing you. Added automated translocate using Time Traveler's Abandoned Notebook or spell.

Azum
a hill giant
a hill giant
Posts: 229
Joined: Wed Jun 04, 2003 5:04 am

Post by Azum » Mon Aug 30, 2004 6:01 pm

UPDATED afnuke.mac (first - updated 08/30)
UPDATED afnuke.inc (third post - updated 08/30)
UPDATED afnuke2.inc (seventh post - updated 08/30)

(08/30) - Added autosit 'mob detection' to Medcheck routines. Essentially the idea is if mobs come within the radius (75) and are facing you, you will stand until they are dead/not facing you/out of the radius. Tweaked Autofollow and Leash a bit, should be a little more precise now, I hope.

Gaverok
decaying skeleton
decaying skeleton
Posts: 6
Joined: Mon Aug 30, 2004 7:48 pm

Post by Gaverok » Mon Aug 30, 2004 7:54 pm

I am having a hell of a time with this atm. This is my toons current INI file:

Code: Select all

[Settings]
tankname=Tank
mainassist1=Tank
mainassist2=Tank
mainassist3=Tank
doassist=1
checktarget=nocheck
concuss=1
myconcgem=gem1
concnum=2
hasele=1
checkfamiliar=1
myfamiliar=303
engagedistance=200
mainnuke=Strike of Solusek
mainnukegem=gem4
mainnukenum=1
endnuke=Lure of Ro
endnukenum=4
endnukegem=gem8
mobhealth=93
stopnuke=20
stopnuke2=-1
medtoggle=1
medpercent=35
manatomedup=70
manarobe=1
beginrobe=20
donerobe=75
modrod=1
rodpercent=90
harvestpercent=70
doharvest=0
harvestgem=gem7
shieldofmaelin=1
maelingem=gem6
forceshield=1
forcegem=gem3
usetimewand=1
useepic=0
spellshield=0
ssgem=gem5
manaward=0
manawardgem=gem2
tempstaff=0
staffhealth=95
doxuzl=0
xuzlperc=85
dosnare=0
snareperc=25
snaregem=gem5
retry=3
maxbuffs=15
doleash=0
leashholder=nobody
leashlength=40
followdistance=30
nukepause=None
startdisplay=1
When I start the macro with the tanks name or just start it regularly it mem's the nuke spells if needed. Then when it checks for Force Shield or goes to cast it the macro crashes. When I disable that it will crash when checking for Shield of Maelin. Basically the bot crashes if it is set to do anything more than assist and nuke (i.e. buffing itself or clicking an item). I'm not MQ code savy at all. I just know how to start the macro and edit what im told to in the INI's or whatever else. Is there something I am doing wrong? Should there be hotkeys made and placed in specific slots for it to see and use the item?

Azum
a hill giant
a hill giant
Posts: 229
Joined: Wed Jun 04, 2003 5:04 am

Post by Azum » Mon Aug 30, 2004 9:12 pm

Gaverok wrote:I am having a hell of a time with this atm. This is my toons current INI file:

When I start the macro with the tanks name or just start it regularly it mem's the nuke spells if needed. Then when it checks for Force Shield or goes to cast it the macro crashes. When I disable that it will crash when checking for Shield of Maelin. Basically the bot crashes if it is set to do anything more than assist and nuke (i.e. buffing itself or clicking an item). I'm not MQ code savy at all. I just know how to start the macro and edit what im told to in the INI's or whatever else. Is there something I am doing wrong? Should there be hotkeys made and placed in specific slots for it to see and use the item?
That sounds strange. Do you have all the required files? (afnuke.mac, afnuke.inc, afnuke2.inc) Do you have the latest version of MQ2?

Gaverok
decaying skeleton
decaying skeleton
Posts: 6
Joined: Mon Aug 30, 2004 7:48 pm

Post by Gaverok » Mon Aug 30, 2004 9:27 pm

yes have all of that, the Aug 20th release of MQ2, and just downloaded the Mac today with all the files on this thread and the posted INC from snippets.

Azum
a hill giant
a hill giant
Posts: 229
Joined: Wed Jun 04, 2003 5:04 am

Post by Azum » Mon Aug 30, 2004 9:36 pm

Running any 'non-standard' plugins? I don't know what the problem is, but I'm running the macro in a raid as I type this. Your .ini looks okay, maybe try recopying the macro files, and paste/save them in notepad

Azum
a hill giant
a hill giant
Posts: 229
Joined: Wed Jun 04, 2003 5:04 am

Post by Azum » Mon Aug 30, 2004 10:13 pm

Going to rewrite the mob detection in the autosit/med, I borrowed it from advbot and it's not working as I had hoped. (Sitting when mobs are around and trying to get me killed)

Gaverok
decaying skeleton
decaying skeleton
Posts: 6
Joined: Mon Aug 30, 2004 7:48 pm

Post by Gaverok » Mon Aug 30, 2004 10:35 pm

no unusual plugins, just what comes with MQ, ill try to recopy and paste everything see what happens. Thanks for the help

Azum
a hill giant
a hill giant
Posts: 229
Joined: Wed Jun 04, 2003 5:04 am

Post by Azum » Tue Aug 31, 2004 1:24 am

Let me know if that clears it up.