Need Help Trying To Make A Xml For My Nin

言語: JP EN DE FR
2010-06-21
New Items
users online
フォーラム » FFXI » Jobs » Ninja » need help trying to make a xml for my nin
need help trying to make a xml for my nin
First Page 2
Offline
Posts: 4
By shwagiedo 2011-09-03 10:43:40  
so i am new to spellcast and all i wana make it do is switch out my feet from dusk to dawn with af1+1 and the Danzo Sune-ate feet when not in the time range for af1+1 feet can anyone help me out ?

Thank you
 Shiva.Temaruma
Offline
サーバ: Shiva
Game: FFXI
user: Temarumaz
Posts: 35
By Shiva.Temaruma 2011-09-03 11:07:28  
Code
<if mode="or" timelt="17.59" timegt="6.00">
			<action type="var" cmd="set myFeet Danzo Sune-ate" />
		</if>

		<if mode="or" timegt="18.00" timelt="5.59">
			<action type="var" cmd="set myFeet Ninja Kyahan" />
		</if>
		<if mode="or" timelt="17.59" timegt="6.00">
			<action type="var" cmd="set myHands Dusk Gloves +1" />
		</if>

		<if mode="or" timegt="18.00" timelt="5.59">
			<action type="var" cmd="set myHands Koga Tekko" />
		</if>


Put that in your rules and in your idle sets use $myFeet instead of the name of your gear.

Edit: Can change the time around seeing as you have HQ.
Offline
Posts: 4
By shwagiedo 2011-09-03 14:36:16  
ok this is what i got and it doesnt seem to work not sure what i am doin wrong

---------------------------------------------------------------------

<?xml version="1.0"?>
<spellcast>
<config
HideErrors="true"
ShowGearSwaps="false"
Debug="false"
ShowSpellInfo="false"
/>
<variables clear="true">
<var name="Ut">Ichi</var>
<var name="Engaged">TP</var>
<var name="DayOrNight">Day</var>
<var name="myFeet"></var>
</variables>
<sets>
<group default="yes" name="NIN">
<set name="Idle">
<main>Hochomasamune</main>
<sub>Kamome</sub>
<range>Ungur Boomerang</range>
<head>Iga Zukin +1</head>
<neck>Iga erimaki</neck>
<lear>Cassie Earring</lear>
<rear>VElocity Earring</rear>
<body>Iga Ningi +1</body>
<hands>Iga Tekko +2</hands>
<lring>Rajas Ring</lring>
<rring>Meridian Ring</rring>
<back>Atheling Mantle</back>
<waist>Twilight Belt</waist>
<legs>Iga Hakama +2</legs>
<feet>$myFeet</feet>
</set>
</group>
</sets>
<rules>
<if mode="or" timelt="17.59" timegt="6.00">
<action type="var" cmd="set myFeet Danzo Sune-ate" />
</if>
<if mode="or" timegt="18.00" timelt="5.59">
<action type="var" cmd="set myFeet Ninja Kyahan" />
</if>
<if mode="or" timelt="17.59" timegt="6.00">
<action type="var" cmd="set myHands Dusk Gloves +1"/>
</if>
<if mode="or" timegt="18.00" timelt="5.59">
<action type="var" cmd="set myHands Koga Tekko" />
</if>

</rules>
 Bahamut.Serj
Offline
サーバ: Bahamut
Game: FFXI
user: Serj
Posts: 6179
By Bahamut.Serj 2011-09-03 15:21:08  

Take what you need from that. Everything works.
Offline
Posts: 4
By shwagiedo 2011-09-03 17:44:11  
ok i used urs serj and i out in ur xml and it loaded but not sure what to do from there do i need to make macros for in game ? if so could you walk me thru those steps. thank you
 Bahamut.Serj
Offline
サーバ: Bahamut
Game: FFXI
user: Serj
Posts: 6179
By Bahamut.Serj 2011-09-03 17:57:10  
shwagiedo said: »
ok i used urs serj and i out in ur xml and it loaded but not sure what to do from there do i need to make macros for in game ? if so could you walk me thru those steps. thank you

Don't need to make macros, aside from eva and idle if you'd like. Everything else just does what it does by using the normal ability and ws.

Evasion macro "/sc set Evasion"

Idle is "/sc set idle"

If you have the cancel plugin, outside abyssea it will auto cancel sneak and ni shadows when casting ichi.
Offline
Posts: 4
By shwagiedo 2011-09-03 19:15:01  
ok so all i gotta do is have the xml in the spellcast folder then log-in and when i swtich to main ninja it will pull up the file and auto switch the feet gear for movement speed w/o me doin ne thing ? once again sry new to all this xml stuff verry frustrating to figure out. i need a xml for dummies book lol
 Cerberus.Nexxus
Offline
サーバ: Cerberus
Game: FFXI
user: Orions
Posts: 171
By Cerberus.Nexxus 2011-09-06 14:10:46  
It's spellcast, it doesn't use action auto ~

You need Autoexec for that.

But with thoses .xml (thoses rules), every action you're doing make a check, and you can simply use an action when it's night time to equip your feets.

By example, /sit and then stand up, this will action "idle" stance, and if it's night time you'll get your boots equiped.

Action is whatever that change your stance (idle, casting spell, using abilities, /heal, etc...)


And for it to work, you need to launch spellcast, /load spellcast, and name your .xml NIN.xml, so it'll load auto when you switch to ninja.
 Ifrit.Nooje
Offline
サーバ: Ifrit
Game: FFXI
user: Nooje
Posts: 1
By Ifrit.Nooje 2011-09-16 12:54:45  
Just have a quick quick question about occ. quickens spell casting, my spellcast will cancel shadows if it proc's, is there a way to fix this?

- <if spell="Utsusemi: Ichi" NotBuffActive="Silence|Mute|Omerta|Obliviscence">
<action type="equip" when="precast" set="Utsu" />
<midcastdelay delay="2.7" />
<command when="midcast">cancel 66</command>
- <!-- 1 shadow
-->
<command when="midcast">cancel 446</command>
- <!-- 2 shadows
-->
<command when="midcast">cancel 445</command>
- <!-- 3 shadows
-->
<command when="midcast">cancel 444</command>
- <!-- 4 shadows
-->
</if>

This is what I am using atm.
 Ragnarok.Martel
Offline
サーバ: Ragnarok
Game: FFXI
Posts: 2894
By Ragnarok.Martel 2011-09-16 13:03:10  
You know, i'm pretty sure that cancel 66 will cancel utsu with any number of shadows. It was only the buffactive rule that needs you to specify which utsu since it counts them as different buffs.

As for quick cast and shadows, yer pretty much screwed. The only way to prevent the cancel is if you hit another action before it went off. This will start a new precast, and the midcast for the utsu cast won't go off. So if you see a quick proc, hit something else fast.

Other than that, if you quick cast is from Atma, yer still screwed. If its from gear, you can setup your rule so that you only equip said gear on precast IF you don't have shadows up.
 Cerberus.Nexxus
Offline
サーバ: Cerberus
Game: FFXI
user: Orions
Posts: 171
By Cerberus.Nexxus 2011-09-16 13:05:35  
Code
<if spell = "Utsusemi: Ichi" buffactive = "Copy Image*" NotBuffActive = "Silence|Mute|Omerta|Obliviscence">
        <if NotBuffActive = "Copy Image (3)|Copy Image (4+)">
                <midcastdelay delay = "2.5" />
                <cmd when = "midcast">cancel 66</cmd>
                <cmd when = "midcast">cancel 444</cmd>
				
        </if>
        <else>
                <cancelspell />
                <return />
        </else>
</if>


This one will not cancel if there's still 3 or 4 shadows up. It's still not perfect for when you have less than 1~2 shadows.
 Fenrir.Nightfyre
Offline
サーバ: Fenrir
Game: FFXI
user: Nightfyre
Posts: 11680
By Fenrir.Nightfyre 2011-09-16 14:53:58  
Ragnarok.Martel said: »
You know, i'm pretty sure that cancel 66 will cancel utsu with any number of shadows. It was only the buffactive rule that needs you to specify which utsu since it counts them as different buffs.
Cancel needs it too. 66 will only cancel for a single shadow.

My XML has an expanded version of what Nexxus posted. It tracks whether your current set of shadows is from Ichi or Ni and will only cancel shadows if you're casting Ichi over a set of Ni shadows. It's also set up so that you can cast Utsusemi regardless of how many shadows you have up if you're currently wearing PDT or MDT gear, allowing me to put shadows up during an AoE attack.
Code
<if spell="Utsusemi*">
				<if advanced='"$Armor" != "None"'>
					<equip when="precast">
						<waist>Twilight Belt</waist>
						<feet>Iga Kyahan +2</feet>
					</equip>
				</if>
				<elseif BuffActive="Copy Image (3)|Copy Image (4+)">
					<cancelspell />
					<return />
				</elseif>
				<else>
					<equip when="precast" set="UtsusemiPre" />
					<equip when="midcast" set="UtsusemiMid" />
				</else>
				<if spell="Utsusemi: Ni">
						<if advanced='(int)$Utsusemi == 0'>
							<var cmd="set Utsusemi 1" />
						</if>
				</if>
				<else>
					<if advanced='(int)$Utsusemi == 1'>
						<var cmd="set Utsusemi 0" />
						<cmd when="midcast">cancel 66</cmd>
						<cmd when="midcast">cancel 444</cmd>
					</if>
				</else>
			</if>


Full script can be found here, just finalized v2.1.
 Ragnarok.Martel
Offline
サーバ: Ragnarok
Game: FFXI
Posts: 2894
By Ragnarok.Martel 2011-09-16 15:24:33  
Fenrir.Nightfyre said: »
Cancel needs it too. 66 will only cancel for a single shadow.

Really, that's odd. my PLD XML has been using just 66 since just after the utsu update and I never noticed any issues..

Then again, I don't usually cast ustu when I've got 2~3 shadows.. And I've barely been /nin since Ochain, sooo.

Time to mess with my XML a bit. lol.
 Ragnarok.Martel
Offline
サーバ: Ragnarok
Game: FFXI
Posts: 2894
By Ragnarok.Martel 2011-09-16 15:31:50  
Hmm, well. I went and tried it. But cancel 66 is still cancelling a 3 shadow utsu for me.

So unless there's some difference in cancel versions, or NIN main shadows are somehow different even when they only have 3 images... I dunno. But mine's working like it always did.
Code
<if advanced='"$Utsu"=="Ni"' Buffactive="Copy Image|Copy Image (2)|Copy Image (3)">
	<cmd when="Midcast">cancel 66</cmd>
</if>
 Fenrir.Nightfyre
Offline
サーバ: Fenrir
Game: FFXI
user: Nightfyre
Posts: 11680
By Fenrir.Nightfyre 2011-09-16 15:33:39  
Hmm. I could have sworn you needed the individual buff IDs but it seems that you're right.
 Bahamut.Gimpness
Offline
サーバ: Bahamut
Game: FFXI
user: Gimpness
Posts: 550
By Bahamut.Gimpness 2011-09-16 15:35:15  
wait, so would that work with instacast... and make it so if ichi's instacasted it won't cancel it right away? >.> that ***gets annoying
 Ragnarok.Martel
Offline
サーバ: Ragnarok
Game: FFXI
Posts: 2894
By Ragnarok.Martel 2011-09-16 15:40:04  
Spellcast can't do anything about quick cast, because it can't tell when it will proc. I gave some ways to deal with it in an earlier post. Imperfect, but there's not much else to be done about it.
 Bahamut.Gimpness
Offline
サーバ: Bahamut
Game: FFXI
user: Gimpness
Posts: 550
By Bahamut.Gimpness 2011-09-16 15:41:20  
there's no way to make it so if the last spell casted was ichi it won't cancel it? would think there'd be some way to do it like that :x
 Fenrir.Nightfyre
Offline
サーバ: Fenrir
Game: FFXI
user: Nightfyre
Posts: 11680
By Fenrir.Nightfyre 2011-09-16 15:41:34  
I specifically had it cancel only 1-2 shadows to avoid instacast issues, but if 66 cancels all shadows then that kinda kills that idea.
 Bahamut.Gimpness
Offline
サーバ: Bahamut
Game: FFXI
user: Gimpness
Posts: 550
By Bahamut.Gimpness 2011-09-16 15:43:34  
Incredibly tired and drawing a blank as to how only canceling 1-2 shadows would avoid instacast issues.

edit: nevermind... would have 4 from ichi to begin with >_>...
 Fenrir.Nightfyre
Offline
サーバ: Fenrir
Game: FFXI
user: Nightfyre
Posts: 11680
By Fenrir.Nightfyre 2011-09-16 15:55:04  
Ragnarok.Martel said: »
Spellcast can't do anything about quick cast, because it can't tell when it will proc. I gave some ways to deal with it in an earlier post. Imperfect, but there's not much else to be done about it.
orly?
Code
<if spell="Utsusemi*">
				<if advanced='"$Armor" != "None"'>
					<equip when="precast">
						<waist>Twilight Belt</waist>
						<feet>Iga Kyahan +2</feet>
					</equip>
				</if>
				<elseif BuffActive="Copy Image (3)|Copy Image (4+)">
					<cancelspell />
					<return />
				</elseif>
				<else>
					<equip when="precast" set="UtsusemiPre" />
					<equip when="midcast" set="UtsusemiMid" />
				</else>
				<if spell="Utsusemi: Ni">
						<if advanced='(int)$Utsusemi == 0'>
							<var cmd="set Utsusemi 1" />
						</if>
				</if>
				<else>
					<if advanced='(int)$Utsusemi == 1'>
						<var cmd="set Utsusemi 0" />
						<if buffactive="Copy Image|Copy Image (2)" when="midcast">
							<cmd when="midcast">cancel 66</cmd>
						</if>
					</if>
				</else>
			</if>


Specifically, line 24. Just pushed v2.11 to my Guildwork page.
 Ragnarok.Martel
Offline
サーバ: Ragnarok
Game: FFXI
Posts: 2894
By Ragnarok.Martel 2011-09-16 17:08:41  
Bahamut.Gimpness said: »
there's no way to make it so if the last spell casted was ichi it won't cancel it? would think there'd be some way to do it like that :x

Yes, you can do that. But that's not really a quick cast fix. There's still the issue of when Ni was the last cast.

There's really no way to address quick cast procing on an ichi cast preceded by a Ni. The Ichi will cast instantly and have no effect. All you can really do is try to save the shadows you already had up. If we could tell when QC was going to proc, then you could just cancel on precast. Random stuff is annoying.

Fenrir.Nightfyre said: »
Ragnarok.Martel said: »
Spellcast can't do anything about quick cast, because it can't tell when it will proc. I gave some ways to deal with it in an earlier post. Imperfect, but there's not much else to be done about it.
orly?

Specifically, line 24. Just pushed v2.11 to my Guildwork page.

Wait... Does that actually work? This.
Code
<if buffactive="Copy Image|Copy Image (2)" when="midcast">
                            <cmd when="midcast">cancel 66</cmd>
                        </if>


The When="Midcast" Inside the buffactive. Is that supposed to check for said buffs at midcast?

I'm fairly certain it doesn't work that way. SC parses all rules and status when an action is fired, and if you can tell it to parse them again at midcast that's news to me. You could have it parse again part way through a cast by triggering a dummy spell, but it'd be really annoying.

Anyway, if that does work, very cool. But I'll be pretty suprised if it does.
 Fenrir.Nightfyre
Offline
サーバ: Fenrir
Game: FFXI
user: Nightfyre
Posts: 11680
By Fenrir.Nightfyre 2011-09-16 17:21:13  
Tried it multiple times before pushing the update, it definitely works.
 Ragnarok.Sekundes
Offline
サーバ: Ragnarok
Game: FFXI
user: Sekundes
Posts: 4189
By Ragnarok.Sekundes 2011-09-16 17:26:23  
Going to have to try that out. Could have some incredibly interesting or useful effects on all sorts of things.
 Ragnarok.Martel
Offline
サーバ: Ragnarok
Game: FFXI
Posts: 2894
By Ragnarok.Martel 2011-09-16 17:36:49  
Looking at this some more, I think I've managed to confuse myself.

The midcast buffcheck aside, I'm trying to see how this is a quick cast counter measure. Aside from not canceling on Ichi>Ichi, anyway.

If you'd just gone Ni>Ichi and QC procs, Ichi has no effect, so your 1~2 shadows are still up during the midcast check... and they get cancelled anyway. Cause they're still up at midcast.

Am I missing something? Cause it doesn't seem like checking them at midcast would help with QC at all.

Unless you were trying to account for when a mob takes your last shadow(s) just as you start casting and SC didn't have time to register the buff loss, then QC procs?
 Fenrir.Nightfyre
Offline
サーバ: Fenrir
Game: FFXI
user: Nightfyre
Posts: 11680
By Fenrir.Nightfyre 2011-09-16 18:11:01  
I may not have fully thought it out, got too many distractions going right now as I'm constantly having to step away from the computer. Walking through it...

If I'm casting Ni it doesn't matter, nothing needs to be canceled because it'll put up fresh shadows regardless. So far so good. When casting Ichi I want Ni to be canceled but not Ichi, so I set a variable dependent on the spell previously casted. This is functional within the limitations of Spellcast, as it's not set up to confirm whether or not the spell was actually completed. For the most part this is a nonissue, if I'm interrupted I'm likely not to have any shadows at all so there's no need for a cancel on the next cast.

If I'm rolling Ichi > Ichi there's no cancel, nor with anything > Ni, so that leaves Ni > Ichi. If quick magic doesn't proc, I can only have 0-2 shadows barring PDT/MDT rule (expecting to lose shadows anyway so it should function fine barring player error) so it functions properly. If quick magic does proc, the spell triggers beforehand. If I had no shadows I now have 4-5, they are not canceled... if I had 1-2 shadows up, I now have no shadows. Stop.

So what I need to do... hmm. Spellcast doesn't actually parse for the state of the spell and my shadows count doesn't change so I can't work it in via an AutoExec rule. There's no state change, so you'd have to cancel precast, dill pickle, or manually interrupt.

Why then did it make so much sense two hours ago? ffs -.-
 Ragnarok.Martel
Offline
サーバ: Ragnarok
Game: FFXI
Posts: 2894
By Ragnarok.Martel 2011-09-16 18:19:23  
Running through that rule in my head, there were several times when it made perfect sense.. then I thought about it more.. and it didn't. Ran in mental circles for a good while though. o.o;

The core issue is the inability to predict when we'd need a precast cancel due to QC. And there's no feasible way to do so.
 Fenrir.Nightfyre
Offline
サーバ: Fenrir
Game: FFXI
user: Nightfyre
Posts: 11680
By Fenrir.Nightfyre 2011-09-16 18:27:51  
It half works in the sense that a QC proc on 0 shadows now doesn't cancel, but that only half resolves the issue at best... Seems like the best option is a cancel macro then, doesn't interfere with midcast swaps and gives you full control.
 Ragnarok.Martel
Offline
サーバ: Ragnarok
Game: FFXI
Posts: 2894
By Ragnarok.Martel 2011-09-16 18:44:58  
That does seem to be the most viable option at this point. Myself, rather than a cancel macro, if i need to prevent the cancel I just hit my idle macro. It's a dummy spell that equips appropriate gear for the situation. Since even a canceled spell has a precast, the new precast prevents the utsu midcast's cancel from firing. And it saves me a macro slot. <,<

It does change my gear too, but if QC has fired, I might as well be back in my TP gear as the spell has already resolved.
 Quetzalcoatl.Langly
Offline
サーバ: Quetzalcoatl
Game: FFXI
user: Langly
Posts: 683
By Quetzalcoatl.Langly 2011-09-21 00:24:13  
*cancels invisible*
I handled it this way, worked for me flawlessly:

Here's the basic Ninjutsu split (removed rules for migawari and other buffs in order to make this as plain as day).

The type ninjutsu fires, and it sees my spell is Utsu*.
Code
<xi:include href="include.xml" xpointer="//include[@name='UtsuCancelHelper']/*" />
<!-- Control for Ninjutsu -->
	<elseif type="Ninjutsu">
		<equip when="precast" set="FastCast" />
		<equip when="aftercast" set="%status" />
		<if Spell="Suiton*|Katon*|Raiton*|Doton*|Hyoton*|Huton*|Kurayami*|Hojo*|Yurin*|Jubaku*|Myoshu*">
			<equip when="midcast" set="nuke" />
		</if>
		<elseif spell="Utsusemi*">
			<equip when="midcast" set="haste" />
			<xi:include href="include.xml" xpointer="//include[@name='UtsusemiIchiCancel']/*" />
		</elseif>
   	</elseif>


The below comes from an include file (no need to keep it there if you don't need the necessity of include files). It sees the spell as Utsu Ichi* and not Ni, so I begin the cancel declaration and at midcast 2.5 seconds in, I do not cancel 66 but instead I make it use another spell (this can be anything, change it to whatever you want. I never use Barstone on NIN so it works for me).
Code
<include name="UtsusemiIchiCancel">
<if spell="Utsusemi: Ichi" buffactive="Copy Image*">
	<midcastdelay delay="2.5" />
	<command when="midcast">input /ma Barstone me</command>
</if>
<else>
	<return />
</else>
</include>


The below is the part where Spellcast sees I've cast Barstone (the command is intercepted by spellcast even though I'm casting and not able to cast barstone) and NOW (2.5 seconds in from my utsu ichi midcast) I tell it to check if there's 1/2 shadows to cancel. Decide for yourself how many shadows you're willing to lose to have shadows back up.
Code
<include name="UtsuCancelHelper">
<if Spell="Barstone">
	<if BuffActive="Copy Image|Copy Image (2)">
		<command when="precast">cancel 66</command>
	</if>
</if>
</include>


It was the only solution I found when I was trying to finalize my NIN XML. And it has worked very well for me. Yes, it is a bit of a long roundabout way to calculate your current shadow count at 'midcast' but as of 2.4 something or other (I don't remember haven't played in a few months) there was no way to do as Nightfyre suggested with
Code
<if buffactive="Copy Image|Copy Image (2)" when="midcast">
for a rule. It just didn't work that way.

*/ma Tonko: ni*
First Page 2
Log in to post.