PDA

View Full Version : What's the best way to add a haste re-cast to a script?



Rimalon
09-26-2008, 02:59 AM
So I have these involved scripts for sweeping, cleaning, etc.

But I can't figure out how to auto re-cast haste when it drops during them.

Help!!

Danical
09-26-2008, 03:34 AM
Lich.

Danical
09-26-2008, 03:35 AM
or if you refuse to use lich - if you get an RT larger than expected while under haste then you could match that RT and throw haste back up.

Suppa Hobbit Mage
09-26-2008, 09:23 AM
or just put a "waitfor returns to normal speed" or a match within your script.

B2
09-26-2008, 09:56 AM
or just put a "waitfor returns to normal speed" or a match within your script.

Where would you put it?

Here's a hypothetical script:

sweep:
put push my broom
match sweep You sweep your broom into a little pile!
match next But there is nothing left to sweep!
match done But your bag is already full!
matchwait

Next:
You go to the next room!
goto sweep

done:
You go put your bag away and start over!
goto sweep


If it was

put push my broom
match sweep You sweep your broom into a little pile!
match next But there is nothing left to sweep!
match done But your bag is already full!
match haste return to normal speed.
matchwait

and your haste wore out when it already looped back to the sweep tag, will it still register?

But yeah, my first response was: lich

B2
09-26-2008, 09:56 AM
Also, I guess you could just cast haste again every time you move rooms. It's not like you don't have the mana for it. But that is inefficient and ugly.

Akaylas
09-26-2008, 01:18 PM
If it was

put push my broom
match sweep You sweep your broom into a little pile!
match next But there is nothing left to sweep!
match done But your bag is already full!
match haste return to normal speed.
matchwait



Personally, I'd switch the match sweep and match haste lines, giving haste precedence over sweep.

Of course, the matter of efficiency in casting it every room is somewhat debatable =) Asymptotically, you'd add the number of rooms you might visit in one repetition, which is a constant factor, and doesn't really impact efficiency.

I don't know much about Lich, but I hear you can run concurrent scripts, so, in fact, lich is key.

phantasm
09-30-2008, 10:59 AM
I average the time per repetition and get as close to constant haste as possible, then use a counter to count repetitions, recasting haste every X amount of reps

LOOP0:
LOOP1:
LOOP2:
LOOP3:
DO SOMETHING
COUNTER ADD 1
GOTO LOOP%c


LOOP4:
CAST HASTE
COUNT SET 0
GOTO LOOP0:

Suppa Hobbit Mage
09-30-2008, 03:28 PM
I'll give you an example I have at home (I'm at work right now) that works for me.

Kranar
10-01-2008, 08:35 PM
The way I did it way back was to try to match a normal round time message after performing an action that resulted in round time.

If I got the regular round time message, then it was time to cast haste. The downside is that when haste runs out, you end up with one hasteless action, but you don't waste mana and you don't clutter your script with this method.