There is some vestigial code in there from my pre-Masamune days for 5-hitting various delay weapons. You can get rid of it if you'd like, but keep in mind you'll need to update the basic engaged and WS sets if you do so.
http://guildwork.com/ffxi/quetzalcoa...san#/spellcast
Edit: MDT/PDT switching is controlled near the bottom of the .xml; dummy spells are Burst for PDT, Freeze for MDT. Flood operates the delay switching -- you can comment it out or delete the section if you have no plans to use it.
Edit2: Added the code for berserk up/down Fudo sets.
If it worked for Radec and you even tried taking out the stuff I suggested, it's probably not an issue with the XML itself. I would reinstall spellcast (Save all your XMLs though) and see if it works.
I have the following in my WS section:
I'd like to have the "3.6" be a variable that I can change on-the-fly depending on what I'm fighting; mostly because when I'm fighting huge mobs, I prefer to not have to stand so damn close and not be able to see shit. Is this possible?Code:<elseif Type="WeaponSkill"> <if TPGT="99"> <if advanced='%SpellTargetDistance < 3.6'>
Make a variable named $Distance and replace 3.6 with $Distance. Then create a bind on your KB (I forgot how you do this, but I can check PMs since Radec explained it once) that does //sc var set Distance *Smaller mob distance here* and one that has the range for larger mobs.
Edit: You could also bind //sc var set Distance %TargetDistance. Using this method, you would engage the mob and hit the bind key. When you hit the bind key, it changes $Distance to the distance you're currently at. The benefit of this is that you can make is VERY variable and you don't need two bind keys. The problem is that if you move back slightly, you won't be able to WS unless you hit the bind key again.
Awesome, thanks. I'll try both and see which I prefer. This will make things much easier when fighting all the giant NMs in Abyssea. :D
Hi I just reinstalled ffxi after about a year when I try to start the game with windower none of the plugins that it comes with load for me. Anyone know what the problem could be the I removed the "//" I don't know much about this stuff ;/
I downloaded spellcast again and it still won't swap gear on WS, I guess it just hates me... :/
Add showgearswaps="true" to the config line, right near the top
See if there is text added when you do "//sidewinder"Code:<config showgearswaps="true"/>
Edit, more things. Do //sc info, report what comes up in console. What is the actual xml file named? Try <charactername>_RNG.xml. Move all other (if any) xml files out of the Windower/plugins/spellcast/ folder.
In Windower/plugins/resources/ open abils.xml and make sure sidewinder is listed.
@AzazaelFenrir - I was making sure that the right file was loaded.
Edit, now with correct filepaths
the file is just called rng.xml, didn't really think the name would make a difference. I checked the resources file and sidewinder is there, did //updateresources to make sure and everything is current.
I'm in an ls event tonight so I can't report on the other stuff just yet.
Is there a way to dynamically determine MP after Convert? MPAfterCast doesn't appear to calculate it and just returns the MP I had before converting.
You mean before you hit the JA?
If you mean after the JA, you can add <aftercastdelay delay="1"> before you add the <cmd>/echo %MP</cmd>
No. What I want to do is be able to grab whatever my max mp after converting will be, and stuff that into a variable. So if I convert into a maxMP set of 1000 MP, the variable will get a value of 1000, but if I convert in say Abyssea my max MP will be significantly higher and the variable will reflect that when I convert in Abyssea into a max MP set of 2000 or whatever.
If you know how much MP you have in gear and just want to add your base MP to it, do:
Variable
<var name="MPAfterConv">MP from gear here</var>
Rules
<var cmd="setcalc MPAfterConv %MP + $MPAfterConv" />
<command>input /echo "$MPAfterConv"</command>
If that doesn't work, try replacing $MPAfterConv with the MP from your gear.
I'll play around with it tomorrow and get back to you.
Ok, got a chance to try this stuff out. When using Sidewinder it doesn't report any gear swaps attempted at all, but it does when going from idle to engaged and back.
sc info shows Groups:1 Sets:3 Rules:3 Vars:0
Even though it looks like my resources are fine I'm thinking that that has to be the problem, it's like it's not even recognizing the WS went off.
Nah, doesn't really do what I need it to. Might be going in the right direction though. I'll need to just fiddle around with it on my own some more.
Incidentally, where are you getting the setcalc and <command> tags from? I don't see them anywhere in the spellcast documentation that's up on Windower's site.
You might need to use the exact number + %MP then. I got the setcalc from DRG HB macros (Courtesy of Techno):
What this seems to do is calculate a the cast time + 0.4s. He then sets that to the variable HBMidcastDelay. That then becomes the delay before equipping wyvern HP++ gear and Wyrm armet. Command is from previous posts and is basically the same as typing in game. If you want an example of a practical use, here is one for composure buffs:Code:<!-- Healing Breath Trigger Rules --> <if mode="or" spell="Poison||Poisona|Sprout Smack|Head Butt|Foot Kick|Power Attack|Cocoon|Bar*" advanced='"%type"="Ninjutsu" and %HPP<33'> <equip when="precast" set="Healing Breath Trigger" /> <var cmd="setcalc HBMidcastDelay %CastTime + 0.4" /> <midcastdelay delay="$HBMidcastDelay" /> <equip when="midcast" set="Restoring Breath" /> <aftercastdelay delay="2.1" /> </if>
Edit: It might be the case that you need <aftercastdelay delay="1" /> before you add the rest of the code and put when="aftercast" for the rest of the code. Otherwise, it will do all that before using convert.Code:<!-- Check: Composure buffs --> <if BuffActive="Composure" SpellTargetType="SELF" Spell="Haste|Phalanx"> <command when="aftercast">spellcast var inc buffid;wait 726;input /echo [$buffid:%spell] <me> Wearing off in 30s</command> <command when="aftercast">wait 741;input /echo [$buffid:%spell] <me> Wearing off in 15s</command> <command when="aftercast">wait 751;input /echo [$buffid:%spell] <me> Wearing off in 5s;spellcast var dec buffid;</command> </if> <elseif BuffActive="Composure" SpellTargetType="SELF" Spell="Refresh*"> <command when="aftercast">spellcast var inc buffid;wait 553;input /echo [$buffid:%spell] <me> Wearing off in 30s</command> <command when="aftercast">wait 567;input /echo [$buffid:%spell] <me> Wearing off in 15s</command> <command when="aftercast">wait 577;input /echo [$buffid:%spell] <me> Wearing off in 5s;spellcast var dec buffid;</command> </elseif>