Killing Ifrit - a Final Fantasy community: Auto WS - Killing Ifrit - a Final Fantasy community

Jump to content

  • 3 Pages +
  • 1
  • 2
  • 3
  • You cannot start a new topic
  • You cannot reply to this topic

Auto WS

#1
User is offline   Madawc 

  • Greedalox
  • PipPipPipPipPip
When playing DRK you often have to focus so you can press WS macro as soon as you get 100+ TP. I figured AutoExec and Spellcast could do the same job.

This is how my AutoExec looks like:
<autoexec>
<register event="losebuff_Souleater">input /ma "Cure VI" Madawc</register>
<register event="losebuff_Aftermath">input /ma "Cure VI" Madawc</register>
<register event="mpp_100">input /ma "Cure VI" Madawc</register>
<register event="tp_???">input /ma "Fire V" Madawc</register>
</autoexec>


register event="tp_???" will trigger once you get 100+ TP.

going to spellcast:

        <if spell="Fire V">
			<if status="engaged">
				<if advanced='"$autows"="1"'>
					<action type="command">input /ws Catastrophe &lt;t&gt;</action>
				</if>
			</if>
            <action type="cancelspell"/>
            <action type="return"/>
        </if>

		<if spell="Water V">
			<if mode="AND" TPGT="99" status="engaged">
				<action type="command">input /ws Catastrophe &lt;t&gt;</action>
			</if>		
				<elseif advanced='"$autows"="1"'>
					<action type="var" cmd="set autows 0" />
					<action type="command">input /echo === AUTO WS OFF ===</action>
				</elseif>
				<else>
					<action type="var" cmd="set autows 1" />
					<action type="command">input /echo === AUTO WS ON ===</action>
				</else>
            <action type="cancelspell"/>
            <action type="return"/>
        </if>


My CTRL+1 WS macro looks like this: /ma "Water V" Madawc

What this does is to toggle AutoWS on and OFF.

        <if mode="AND" CommandPrefix="/weaponskill" TPGT="99" status="engaged">
				<if Spell="Catastrophe">
					<action type="Equip" when="Precast" set="Cata" />
						<if BuffActive="Souleater">
							<action type="equip" when="done" set="SouleaterAftermath" />
						</if>
                    <else>
                        <action type="equip" when="done" set="MeleeAftermath" />
                    </else>
				</if>
				<else>
					<action type="Equip" when="Precast" set="WS" />			
					<if BuffActive="Aftermath">
						<if BuffActive="Souleater">
							<action type="equip" when="done" set="SouleaterAftermath" />
						</if>
						<else>
							<action type="equip" when="done" set="MeleeAftermath" />
						</else>
					</if>
					<else>
						<if BuffActive="Souleater">
							<action type="equip" when="done" set="Souleater" />
						</if>
						<else>
							<action type="equip" when="done" set="Melee" />
						</else>
					</else>			
				</else>
					<if advanced='"$autows"="1"'>
						<action type="var" cmd="set autows 0" />
						<action type="command">input /echo === AUTO WS OFF ===</action>
					</if>
        </if>


I made Spellcast turn off AutoWS after a WS.

So when I got about 50% TP I press my WS macro, then it will automatically fire off WS as soon as I get 100+ TP, neat :)

This post has been edited by Madawc: 02 June 2010 - 06:26 PM

0

#2
User is offline   Rhayve 

  • Can't find a teleport
  • PipPipPipPip
Hey, if you don't want to play your character yourself anymore, I'll gladly take it and play it for you <.<

This post has been edited by Rhayve: 02 June 2010 - 06:25 PM

0

#3
User is offline   Banter 

  • I is troll
  • PipPipPipPipPip
There is lazy, and then there is this.
0

#4
User is offline   What? 

  • Popped purple
  • PipPipPip
It's not like watching the TP bar go up to 100 and then hitting a macro is somehow more taxing than this. One of those things that'll give a bit of an improvement especially if it activates immediately after the last swing, like while the swing animation is still going. I think it's good, it might catch on.
0

#5
User is offline   Bikpik 

  • Slightly Bad Breath
  • PipPipPip
Expect for the times you ws at 1%, or the mob is too far away (which you can fix) and you lose TP
0

#6
User is offline   What? 

  • Popped purple
  • PipPipPip
If I read it right he can toggle having auto WS on or off with a macro press, so it'd just be a case of if the mob has less than 10% HP or something turn it off so it won't get wasted
0

#7
User is offline   Bikpik 

  • Slightly Bad Breath
  • PipPipPip
That kind of defeats the purpose then. If it's used on squishy mobs, then there will be wasted TP having to turn this on and off when he could just hit a ws macro anyways
0

#8
User is offline   Taint 

  • Greedalox
  • PipPipPipPipPip
Personally I would never have a use for this but it seems fun and probably was fun to code. Might be good for Cerberus if I'm not tanking since he is horribly boring as a melee roll.
0

#9
User is offline   Madawc 

  • Greedalox
  • PipPipPipPipPip
you can toggle it on whenever, if you got 100+ TP you will just WS instead of toggling it on.

If you got less then 100TP, you toggle it on and off with WS macro. So if you feel like you should not WS next time you get 100TP, just toggle it off with WS macro.

You can also modify the code so that it will always be on so you don't have to toggle it on all the time. which is a function that can be toggled on and off itself with some more code :D

I did modify the code a bit, since AutoExec keeps spamming Spellcast if you get hit or hit really fast after you get 100TP.

        <if spell="Fire V">
			<if status="engaged">
				<if advanced='"$autows"="1"'>
					<action type="command">input /ws Catastrophe &lt;t&gt;</action>
					<action type="var" cmd="set autows 0" />
					<action type="command">input /echo === AUTO WS OFF ===</action>
				</if>
			</if>
            <action type="cancelspell"/>
            <action type="return"/>
        </if>
		
		<if spell="Water V">
			<if mode="AND" TPGT="99" status="engaged">
				<action type="command">input /ws Catastrophe &lt;t&gt;</action>
				<action type="var" cmd="set autows 0" />
				<action type="command">input /echo === AUTO WS OFF ===</action>
			</if>		
				<elseif advanced='"$autows"="1"'>
					<action type="var" cmd="set autows 0" />
					<action type="command">input /echo === AUTO WS OFF ===</action>
				</elseif>
				<else>
					<action type="var" cmd="set autows 1" />
					<action type="command">input /echo === AUTO WS ON ===</action>
				</else>
            <action type="cancelspell"/>
            <action type="return"/>
        </if>


and removed the <action type="var" cmd="set autows 0" /> from the WS rule.
0

#10
User is offline   Bikpik 

  • Slightly Bad Breath
  • PipPipPip

View PostMadawc, on 03 June 2010 - 09:22 AM, said:

you can toggle it on whenever, if you got 100+ TP you will just WS instead of toggling it on.

If you got less then 100TP, you toggle it on and off with WS macro. So if you feel like you should not WS next time you get 100TP, just toggle it off with WS macro.

You can also modify the code so that it will always be on so you don't have to toggle it on all the time. which is a function that can be toggled on and off itself with some more code :D



That's what I was getting at, instead of pressing 1 macro to fire off a WS, you still have to pay attention to the mob's HP and press a macro to turn it off, then another macro to fire it off again. But like taint said, it could be useful for longer fights where you don't care when you WS.
0

#11
User is offline   Madawc 

  • Greedalox
  • PipPipPipPipPip
Well, sometimes you get feather tickled and wish you has WS'd. You prob can go without it sure. But when I play, I play to max my potential, which includes WSing asap. So it is really about boosting my potention this is about.

also, if you Absrob-TP and end up at 100+ TP, spellcast will try to WS before spell is "over". I just toggle Auto WS off when casting Absorb-TP

				<elseif Spell="Absorb-TP">
                    <action type="equip" when="precast" set="DarkMagic" />
					<action type="var" cmd="set autows 0" />
					<action type="command">input /echo === AUTO WS OFF ===</action>						
				</elseif>

0

#12
User is offline   Nameless 

  • Forgot echo drops
  • PipPipPipPip
I personally think this is incredibly useful, thanks alot for the thought and actually put it in a great way to execute.

With all the OAT weapons (I personally have the OAT GS and is half way done on the scythe), the biggest problem you will have is human error, as the likelihood of not WSing at 100% is greater than other weapons under high haste situations. This will be especially good for stuff like Sarameya, where you will be under high buff high haste mindlessly attacking mode with high lag.

The problem I see is that if you want to mix some guillotines in and also want to WS right at 100%, wouldn't this slow you down since autoexec is trying to cast Fire V right at 100% while you press your guillotine macro, wouldn't that sometimes screw things up?

Also, just curious. Is there a way to make certain autoexec rules only apply to certain jobs? Like I would like to do this for my drk but not for my pld, will there be a way to make make autoexec not do Fire V when I am on pld? Thank you.
0

#13
User is offline   rambus 

  • Skillchain Master, Black Magic formulae
  • PipPipPipPipPipPipPip
yay more ways to use windower scripts to cheat.

I clicked on the new topic thing because i was wondering if this would be about pup pet ws info.

This post has been edited by rambus: 03 June 2010 - 10:46 AM

0

#14
User is offline   Bikpik 

  • Slightly Bad Breath
  • PipPipPip

View PostNameless, on 03 June 2010 - 10:38 AM, said:

I personally think this is incredibly useful, thanks alot for the thought and actually put it in a great way to execute.

With all the OAT weapons (I personally have the OAT GS and is half way done on the scythe), the biggest problem you will have is human error, as the likelihood of not WSing at 100% is greater than other weapons under high haste situations. This will be especially good for stuff like Sarameya, where you will be under high buff high haste mindlessly attacking mode with high lag.

The problem I see is that if you want to mix some guillotines in and also want to WS right at 100%, wouldn't this slow you down since autoexec is trying to cast Fire V right at 100% while you press your guillotine macro, wouldn't that sometimes screw things up?

Also, just curious. Is there a way to make certain autoexec rules only apply to certain jobs? Like I would like to do this for my drk but not for my pld, will there be a way to make make autoexec not do Fire V when I am on pld? Thank you.



Oh don't get me wrong I do see it uses, but for something where you would have to turn it off for some reason, you're creating more chances of it misfiring since you have to press more macros.

You could place the autoexec rules in your drk SC, instead of the general autoexec xml.

<cmd when="%status|precast">ae registerq 23000  losebuff_Souleater input /ma "Cure VI" name</cmd>
<cmd when="%status|precast">ae registerq 23001 losebuff_Aftermath input /ma "Cure VI" name</cmd>
<cmd when="%status|precast">ae registerq 23002 mpp_100 input /ma "Cure VI"  name</cmd>
<cmd when="%status|precast">ae registerq 23003  tp_??? input /ma "Fire V" name</cmd>


I think that should work if you place it just in your drk SC
0

#15
User is offline   Madawc 

  • Greedalox
  • PipPipPipPipPip

View PostNameless, on 03 June 2010 - 10:38 AM, said:

The problem I see is that if you want to mix some guillotines in and also want to WS right at 100%, wouldn't this slow you down since autoexec is trying to cast Fire V right at 100% while you press your guillotine macro, wouldn't that sometimes screw things up?


You can do the same toggle with another WS, just create more variables, one for each WS.

Say your at 30% TP and put AutoWS on for Catastrophe. As you get close to 100% and you change you mind and want to do a Guillotine, then you can have a macro toggles off the current AutoWS, and enable an AutoWS for Guillotine.

This post has been edited by Madawc: 03 June 2010 - 11:27 AM

0

#16
User is offline   Kirschy 

  • Cactuar Needle
  • PipPip
I've noticed my biggest problem is that I don't WS fast enough. I'm very curious if these scripts will actualli improve upon your ws rate. Posting some parses pre and post scripts in normal conditions and laggy conditions would be interesting to see!

Particularly interested in the "WS Rates" tab on KParser.

Typical WS Rates for me looks like this:
Player                 Total Hits    Min    Max     Mean    Median    Mode
Kirschy                       183      1      7     4.69         5       5

Kirschy                       500      1     10     4.72         5       5


While I personally still use Windower Scripts, or a combination of Windower Scripts/FFXI Macros, I've been looking for some motivation to switch over to spellcast or autoexec.
0

#17
User is offline   Nameless 

  • Forgot echo drops
  • PipPipPipPip

View PostBikpik, on 03 June 2010 - 11:02 AM, said:

Oh don't get me wrong I do see it uses, but for something where you would have to turn it off for some reason, you're creating more chances of it misfiring since you have to press more macros.

You could place the autoexec rules in your drk SC, instead of the general autoexec xml.

<cmd when="%status|precast">ae registerq 23000  losebuff_Souleater input /ma "Cure VI" name</cmd>
<cmd when="%status|precast">ae registerq 23001 losebuff_Aftermath input /ma "Cure VI" name</cmd>
<cmd when="%status|precast">ae registerq 23002 mpp_100 input /ma "Cure VI"  name</cmd>
<cmd when="%status|precast">ae registerq 23003  tp_??? input /ma "Fire V" name</cmd>


I think that should work if you place it just in your drk SC


Nice, thank you for the code. Just to understand it further, why is there "when="%status|precast"? and what does 23000 to 23003 mean? ae registerq means autoexec register?

Also, great idea on the variable for different ws. How do I change my variable in game? let's say my variable name is autows, and in game I would like to switch between spinning slash and ground strike, what do I do? //sc var set autows spinning slash?

Thanks.
0

#18
User is offline   Madawc 

  • Greedalox
  • PipPipPipPipPip
"Water V" is the Catasrophe macro. If you got 100+ TP and use the macro: "/ma "Water V" myname" you will simply WS and dont toggle anything, if you are under 100TP, you will toggle autows on or off.

Now, if you make a second variable: <var name="autowsGuillo">0</var>

"Stone V" is the new Guillotine macro. If you got 100+ TP and use the macro: "/ma "Stone V" myname" you will simply WS and dont toggle anything, if you are under 100TP, you will toggle autows on or off.

        <if spell="Fire V">
			<if status="engaged">
				<if advanced='"$autows"="1"'>
					<action type="command">input /ws Catastrophe &lt;t&gt;</action>
					<action type="var" cmd="set autows 0" />
					<action type="command">input /echo === AUTO WS OFF ===</action>
				</if>
				<elseif advanced='"$autowsGuillo"="1"'>
					<action type="command">input /ws Guillotine &lt;t&gt;</action>
					<action type="var" cmd="set autowsGuillo 0" />
					<action type="command">input /echo === AUTO WS OFF ===</action>
				</elseif>
			</if>
            <action type="cancelspell"/>
            <action type="return"/>
        </if>
		
		<if spell="Water V">
			<if mode="AND" TPGT="99" status="engaged">
				<action type="command">input /ws Catastrophe &lt;t&gt;</action>
				<action type="var" cmd="set autows 0" />
			</if>		
				<elseif advanced='"$autows"="1"'>
					<action type="var" cmd="set autows 0" />
					<action type="var" cmd="set autowsGuillo 0" />
					<action type="command">input /echo === AUTO WS OFF ===</action>
				</elseif>
				<else>
					<action type="var" cmd="set autows 1" />
					<action type="var" cmd="set autowsGuillo 0" />
					<action type="command">input /echo === AUTO WS ON ===</action>
				</else>
            <action type="cancelspell"/>
            <action type="return"/>
        </if>

		<if spell="Stone V">
			<if mode="AND" TPGT="99" status="engaged">
				<action type="command">input /ws Guillotine &lt;t&gt;</action>
				<action type="var" cmd="set autows 0" />
			</if>		
				<elseif advanced='"$autowsGuillo"="1"'>
					<action type="var" cmd="set autows 0" />
					<action type="var" cmd="set autowsGuillo 0" />
					<action type="command">input /echo === AUTO WS OFF ===</action>
				</elseif>
				<else>
					<action type="var" cmd="set autows 0" />
					<action type="var" cmd="set autowsGuillo 1" />
					<action type="command">input /echo === AUTO WS ON ===</action>
				</else>
            <action type="cancelspell"/>
            <action type="return"/>
        </if>


Just wrote that for you :)
0

#19
User is offline   Nameless 

  • Forgot echo drops
  • PipPipPipPip
Ah, very nice. Gonna do this for both my drg and my drk. Gonna run out of dummy spells soon....
0

#20
User is offline   Bikpik 

  • Slightly Bad Breath
  • PipPipPip

View PostNameless, on 03 June 2010 - 12:19 PM, said:

Nice, thank you for the code. Just to understand it further, why is there "when="%status|precast"? and what does 23000 to 23003 mean? ae registerq means autoexec register?

Also, great idea on the variable for different ws. How do I change my variable in game? let's say my variable name is autows, and in game I would like to switch between spinning slash and ground strike, what do I do? //sc var set autows spinning slash?

Thanks.


the "when" part is to tell SC when to register the autoexec, the numbers are what autoexec needs to tell which are different code snippets. That's how the code needs to be written in Spellcast for it to transfer into Autoexec. Check out IneptVagriants spellcast codes on the windower site for more info.
0

Share this topic:


  • 3 Pages +
  • 1
  • 2
  • 3
  • You cannot start a new topic
  • You cannot reply to this topic


1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users