Page 1 of 1

holyshit - clicking item

Posted: Mon Apr 21, 2014 7:57 pm
by Safiya
I thought this would be easy but I cant get it to work.

I need to click the "Reaper's Ring" on my rogues RFinger while in combat. Trying to set it up as a holyshit

Code: Select all

holyshit2=/if (${Target.PctHPs}<99 && ${Cast.Ready[Reaper's Ring]} && ${Me.CombatState.Equal[COMBAT]}) /casting "Reaper's Ring" |item


Tried setting the item number (6054), the spellid for concussion (6054) and removing variables....different combinations of variables.

I must be missing something....and I have a feeling it's something that would be obvious to you guys. Poor rogue keeps getting curbstomped after a nifty triple backstab.

Re: holyshit - clicking item

Posted: Mon Apr 21, 2014 8:07 pm
by Nilbus
Cast.Ready and items on THF don't always play nice. Usually it marks it as ready even when it isn't, and in this case would probably just cause your rogue to LD/crash trying to use the item so many times in combat.

You can test the conditions by just doing in a chat window

Code: Select all

/if (${Target.PctHPs}<99 && ${Cast.Ready[Reaper's Ring]}) /echo TEST

to see if it echo's Test to your mq2 window. the casting command itself /casting "itemname" should work

Re: holyshit - clicking item

Posted: Mon Apr 21, 2014 8:48 pm
by Dreos
What Nilbus said ! It works best for items that grey out when clicked, but for items like the Cloak of Glorified Chaos which don't grey out but do have a recast delay, even right after they are clicked they will return TRUE to ${Cast.Ready}.

Re: holyshit - clicking item

Posted: Mon Apr 21, 2014 9:10 pm
by Safiya
If I manually cast it, it does grey out.
The command in the holyshit does not fire once.

I'll play around with it more when I wake up.
G'night and thanks for the tips.

Re: holyshit - clicking item

Posted: Mon Apr 21, 2014 9:19 pm
by peterigz
I use ${FindItem[Item Name].Timer} to check if the items ready (0 means it's ready).

For items that don't grey out you'd have to set up your own timer variable to track it's reuse.

In your case you could create a macro called usereaperring containing this:

Code: Select all

Sub Main
    /if (!${Defined[ReaperTimer]}) /declare ReaperTimer timer global

    /casting "Reaper's Ring" |item
    /varset ReaperTimer 6s
/return


Then your holyshit could be:

Code: Select all

holyshit2=/if (${Target.PctHPs}<99 && !${ReaperTimer}) /mac usereaperring |item


I don't think you need to check your combat state because holyshits are only processed during combat anyway. You could probably stick the whole thing on the holyshit using multiline but I think it's tidier doing it this way.

Re: holyshit - clicking item

Posted: Tue Apr 22, 2014 3:02 am
by Safiya
Nilbus wrote:Cast.Ready and items on THF don't always play nice. Usually it marks it as ready even when it isn't, and in this case would probably just cause your rogue to LD/crash trying to use the item so many times in combat.

You can test the conditions by just doing in a chat window

Code: Select all

/if (${Target.PctHPs}<99 && ${Cast.Ready[Reaper's Ring]}) /echo TEST

to see if it echo's Test to your mq2 window. the casting command itself /casting "itemname" should work






Code: Select all

[MQ2Melee]
assasinate=1
backstab=1
disarm=1
enrage=1
evade=1
holyflag0=on
facing=1
hide=1
infuriate=1
melee=1
plugin=1
resume=20
slam=1
sneak=1
stickmode=1
stickrange=125
strike=1
thiefeye=50
unhide=1
stickcmd=75% behind
holyshit0=/if (${Cast.Ready[Reaper's Ring]}) /echo TEST
version=4.951


When I put it in my chatbar it works. When I put it the holyshit it does not fire.

Re: holyshit - clicking item

Posted: Tue Apr 22, 2014 3:07 am
by Dreos
Might try changing the holyflag0=on to holyflag0=1. Not sure if it'll make a difference, but it's all 1's in my .ini.

Re: holyshit - clicking item

Posted: Tue Apr 22, 2014 3:21 am
by Safiya
Tried both. Same result.

The issue isn't the command. It's the holyshit in general I think. On another char when I type /melee I can see his holyflag listed as on..and it works. Not on my rogue though.

If I /melee holyflag1=1 in game then /melee...it does not show the flag.

On the rogue. If I type /melee hide=0 for example, I get feedback in the mq2 window.
If I type /melee holyflag0=1 I get nada.

Re: holyshit - clicking item

Posted: Tue Apr 22, 2014 1:44 pm
by Nilbus
Have you tried a completely blank ini?
rename your hiddenforest_roguename.ini to .old
load up the rogue.
do a /melee save
that should generate a basic config. Then can add the
holyflag0=1 in the top section
holyshit0=blah blah blah at the bottom.

Re: holyshit - clicking item

Posted: Tue Apr 22, 2014 3:13 pm
by Safiya
Yup. That did the trick.
Actually, I was changing things in the wrong ini file too. Had 2 copies of the MQ2 folder for some reason. Guess I carried it over twice to one of my new hard disks.

Cleaned it up to keep things simple and it works like a charm.

Code: Select all

holyshit0=/if (${Cast.Ready[Reaper's Ring]}) /casting "Reaper's Ring" |item


Thanks guys. I figured it was user error in there before, just wasn't sure where.

Also...does this work? I tried it on the dummies but it does not fire. What has to be true for it to trigger if it is working?

Code: Select all

${Target.Named}

This fires without the ${Target.Named} part
 holyshit1=/if (${Target.Named} && ${Cast.Ready[Ancient Tool of the Thieves]}) /casting "Ancient Tool of the Thieves" |item