Buff Tracking Macro

Macro requests from before the user variable changes that broke all macros

Moderator: MacroQuest Developers

merkzu
a ghoul
a ghoul
Posts: 99
Joined: Wed May 14, 2003 2:08 pm

Buff Tracking Macro

Post by merkzu » Thu Jun 12, 2003 6:56 pm

Something that will keep track of what buffs I cast on who. Might need a little perl to parse out what spell is being cast. But basically whenever it sees "You begin casting", it gets the spell name, looks up the duration, sets a timer, and remembers the target name. Then when the timer wears off, have it /echo <spell> has worn off on <person>.

Correct me if I'm wrong, is there a way to parse text out of a string with only the built in scripting?

User avatar
Imperfect
Macro Author
Macro Author
Posts: 319
Joined: Fri Jun 14, 2002 1:52 am

Post by Imperfect » Thu Jun 12, 2003 7:29 pm

Yes make it an event

merkzu
a ghoul
a ghoul
Posts: 99
Joined: Wed May 14, 2003 2:08 pm

Post by merkzu » Thu Jun 12, 2003 7:43 pm

Yea Ill have to do that, I was hoping to be able to make it more generic so I wouldnt have to hard code spells into the macro. So I could just #event "You begin casting" and have it nab the name of the spell from that string

fwiggles
a hill giant
a hill giant
Posts: 161
Joined: Mon Jun 17, 2002 8:29 pm

Post by fwiggles » Fri Jun 13, 2003 9:29 pm

for a macro i was working on, i just attempted to calculate the duration and subtract it by the cast time and voila! unfortunately since $spell(duration,xxx) or however it works onlyr eturns permanent i don't see that working, hopefully amadeus will be able to fix it so i can complete my macro

EDIT:

oh wait, accidently erased my HD...oh well just gotta write it again haha
[color=red]Latest survey shows that 3 out of 4 people make up 75% of the world's population.[/color]

CaM3Lt0Sis
orc pawn
orc pawn
Posts: 26
Joined: Thu Jul 03, 2003 10:33 am

Post by CaM3Lt0Sis » Fri Jul 04, 2003 10:34 pm

actually theres a really easy program to learn out there called EQTimer that basically does just that. it's essentially just a timing program that allows you to add titles/count down/count up etc.

http://home.inreach.com/kai/EQCompanion/

you can find the links to the EQtimer there.

:)

kagonis
a hill giant
a hill giant
Posts: 228
Joined: Sat May 24, 2003 8:48 pm

Post by kagonis » Sat Jul 05, 2003 12:01 am

This is untested, but it should give you the name of the spell you are casting automatically.

Code: Select all

|**
You begin casting Some Kind of Spell.
**|
#define STRINGSPELL v0
#event BeginCasting "You begin casting "

Sub Main
	/varset STRINGSPELL "NULL"
	:Loop
		/doevents
		/if "$STRINGSPELL"!="NULL" {
			/echo You are casting: $STRINGSPELL.
			/echo Spell level: $spell("$STRINGSPELL",level)
			/echo Base mana cost: $spell("$STRINGSPELL",mana)
			/echo Base range: $spell("$STRINGSPELL",range)
			/echo Base Casting Time: $spell("$STRINGSPELL",casttime)
			/varset STRINGSPELL "NULL"
		}
	/goto :Loop
	
/return

Sub Event_BeginCasting
	/varset STRINGSPELL $mid(18,$int($calc($strlen("$p0")-19)),"$p0")
/return