<if MPPAftercastLT="51" advanced='$UggPendant=1'>
Hopefully that works? If not, I'll need to look at the whole XML again. Typo + Advanced rules use apostrophes.
Yea thanks! all better, I must have fudged it when trying to figure out why elemental stuff wasn't working!![]()
Recently I started using code from Nightfyre's NIN XML and will say first off that his work is wonderful. Want to make it clear that absolutely love his work. It has given me a lot of new ideas, one of which was to use Impatiens as part of my casting set. In particular for Utsusemi castings, the problem I am running into is with handling the cancel with quick magic. His XML does have a rule but for the life of me I am not grasping it for whatever reason.
The question part, other than the workaround he uses is there any way to write a rule that takes into account the instant cast from Impatiens(or Apoc atma for that matter)?
I tried playing with it myself but again I seem to be missing something.
Instead of me pasting parts of his work and maybe missing something vital to make the rule work proper I will link to his GW incase anyone would be willing to assist me in this.
NIN XML
Again I want to mention that I truely do love his work and respect it, I just need help with this one part.
Hope someone can assist with this. Thank you all very much.
I appreciate the help Mot, but that was far too complicated for me![]()
Been messing with my DNC XML recently to try to auto Presto before Steps if Presto is up.
It works fine when I use a macro like /ja "Feather Step" <t>.Code:<if spell="*step"> <if advanced='"$ChangePresto" = "1"'> <var cmd="set ChangePresto 0" /> <cmd>wait 1.2;input /ja "%Spell" %SpellTargetRaw;</cmd> <cmd>input /ja "Presto" Sodalitas;wait 30;input /sc var set ChangePresto 1;input /echo >>> Presto Ready!</cmd> <cancelspell /> <return /> </if> <equip when="precast" set="Step" /> <if spell="Feather Step"> <equip when="precast" set="Step"> <feet>Charis Shoes +2</feet> </equip> </if> <equip when="aftercast" set="TP" /> </if>
However, if the command is changed to /ja "Feather Step" <stnpc>, I run into problems. 1) Presto does not fire; 2) ChangePresto is set to 0 (which prevents further Steps from triggering Presto; 3) ChangePresto is not set to 1 after 30s. This then leads to me having to manually reset the variable.
Is there a more elegant way of doing this that plays well with <stnpc>? <stnpc> seems to be the culprit here.
can someone toss a link to a whm xml to lazy to update mine hoping for a good base to edit from here
Fixed my RNG spellcast today
http://pastebin.com/JhZdRPa0
Phew...
That's really a lot of work. Mostly to get my head around and figured it out that each of the first level "if" and "elseif" in <rules> are executed parallelly. That's why I got problem with unable firing barrage because the ammo was emptied.
---------------
And because of that reason, here I ask Byrth/Yugl/Motenten/anyone who's more well-versed than me creating the spellcast XML:
Does spell="ranged" also gives true to type="WeaponSkill" ? Because.... if you try to see my RNG XML above and try to remove the <return /> on Dancing Chains check, I will get an echo "random WS, setting to WS base set" which is swapping my gear set at aftercast on default behaviour as if I'm performing WS.
Any idea?
------------------------
Also, I would like to improvise the ranged weapon checking part on my XML. I want spellcast to be able to tell which weapons I'm holding before precast executed.
If I try to remove the spell="Barbed Crescent" tag, <cancelspell /> and <return /> there, the variable is changed, but the change is not reflected on the <if spell="ranged"> part because of that parallel execution reason.
Any insight would be greatly appreciated!
P.S. : Can the next version of windower support real variable? Earlier I tried to make my barrage ammo variable to be $BarrageAmmo and the output I got was the variable of $Barrage concatenated with text "Ammo", that's why I renamed my variable to $BrgAmmo
Just a reminder that we have a thread for completed spellcasts if that's what you're looking for: http://www.bluegartr.com/threads/107...d?goto=newpost
@VZX:
Eh? They're not executed in parallel, they're checked sequentially; I'm quite certain of that.each of the first level "if" and "elseif" in <rules> are executed parallelly
I have Spell="Ranged" under Type="Misc" on my thf xml.Does spell="ranged" also gives true to type="WeaponSkill" ?
While this can be annoying, it's actually a very powerful part of what Spellcast can do: construct new variable names from existing variable values. Unfortunately it means you need to be a little more creative with your names. One could argue for a revision of the syntax and manner in which it is handled, though, but I haven't given much though to how, or the implications of such.P.S. : Can the next version of windower support real variable? Earlier I tried to make my barrage ammo variable to be $BarrageAmmo and the output I got was the variable of $Barrage concatenated with text "Ammo", that's why I renamed my variable to $BrgAmmo
Code review:
Uses old-style syntax often, but not always; both messy and confusing.
AutoLoadXML is only valid in default.xml. If this is the more standardized rng.xml, it doesn't do anything.
Uses <command> to set variables instead of <var>.
Uses <command> to output text to game instead of <addtochat> (ok, can see why in cases where you want to know what's happening at the midcast and aftercast points in time).
Uses a series of <if>s instead of <if>/<elseif>. This may be the source of your 'parallel' problem.
Locks hands on Bounty Shot. Purpose of said lock is unclear. As a JA, you only need to set precast, and return to default in aftercast, with midcast being meaningless.
$BrgAmmo does not need to be set at Barrage. It depends solely on $WType; as such it can be set when WType is set.
Resetting $Barrage to Normal can be done in the "ranged" rule area, since as soon as you use it it goes away.
The custom reset command to change $WType really isn't needed. Variable checks and sets are very fast, and such a small set shouldn't interfere with the xml performance. It can be done automatically instead of manually forced.
Rule to set Aeolus Arrow would never work. It was set before assigning the weaponskill set, and all the weaponskill sets define their own ammo, which would override the Aeolus setting. Same for bolt on crossbow.
Mode="AND" was set redundantly. All <if> conditions are considered in mode AND unless you specify OR.
Overall, too difficult to give a line-by-line correction, so just rewrote it and put it on pastebin: http://pastebin.com/CeSgfaS9
I didn't copy over the <sets> section since wasn't really relevant; I'm only rewriting the <rules>.
Having an issue with my SMN spellcast, AF3+2 hands are not equipping properly. I want them to equip when day/weather activates and after BPing if those conditions are still good. I have it working to equip correctly when I summon the avatar but I had to remove the equip after BP because it would equip them 100% of the time which I didn't want. It's been a while since I dicked around with trying to fix it so I'm honestly not sure what I changed to be completely honest; I'm pretty sure I just took them off of aftercast.
http://pastebin.com/Ub87gAyf
Ah, yes. I can see the point now.
Code review response:
Well... I did a lot of copy paste when coding it. So I haven't take a look on the standardized header setting.Uses old-style syntax often, but not always; both messy and confusing.
AutoLoadXML is only valid in default.xml. If this is the more standardized rng.xml, it doesn't do anything.
Uses <command> to set variables instead of <var>.
Yes, sorry. This is what I actually meant in my post. I got parallel execution due to multiple <if>s were being put on the same level.Uses a series of <if>s instead of <if>/<elseif>. This may be the source of your 'parallel' problem.
My XML was still too verbose because I haven't cleaned it up much from my debugging earlier. But yeah, I did a lot of echo due to I need to know what actually happens.Uses <command> to output text to game instead of <addtochat> (ok, can see why in cases where you want to know what's happening at the midcast and aftercast points in time).
Bounty Shot lock is actually from very old coding, before I realized that the JA isn't like Barrage/Chain Affinity/Burst Affinity but rather Shadowbind/Provoke kind.Locks hands on Bounty Shot. Purpose of said lock is unclear. As a JA, you only need to set precast, and return to default in aftercast, with midcast being meaningless.
So you suggest me for taking out the ammo set in WS set and put it on <else> of <if BuffActive="Unlimited Shot"> instead?Rule to set Aeolus Arrow would never work. It was set before assigning the weaponskill set, and all the weaponskill sets define their own ammo, which would override the Aeolus setting. Same for bolt on crossbow.
Thanks. This kind of thing is easily missed if I don't re-read the long documentation over and over.Mode="AND" was set redundantly. All <if> conditions are considered in mode AND unless you specify OR.
Anyway.......
Overall, too difficult to give a line-by-line correction, so just rewrote it and put it on pastebin: http://pastebin.com/CeSgfaS9
I didn't copy over the <sets> section since wasn't really relevant; I'm only rewriting the <rules>.
Thanks a lot, Motenten. I shall try to fix mine based on yours fix tonight.
Yugl, when using your mnkv3 xml why does the error "Did not find set: BlankSetSet in Group: Abyssea-R"
I've done nothing to the xml just loaded it up on mnk before i edit the sets.
Old error (Current version I have on my pastebin shouldn't have the error unless it's different from the one I'm thinking about). You can either DL the new one and copy/pasta your sets over or manually fix it.
Manual fix:
Change
toCode:<var name="HundredFists">BlankSet</var>
Code:<var name="HundredFistsSet">BlankSet</var>
No. Just set the weaponskill before doing the Unlimited Shot check. That way the Aeolus Arrow overrides the weaponskill ammo, if applicable.Originally Posted by VZX01
Is there a BLU spellcast xml with rules for AOE CW burning?