WHM Spellcast

Language: JP EN DE FR
users online
Forum » FFXI » Jobs » White Mage » WHM Spellcast
WHM Spellcast
First Page 2
Offline
Posts: 3
By babete 2012-05-15 17:34:26
Link | Quote | Reply
 
Having trouble loading my WHM SC. Keep getting XML Parsing Error: Line243. Error Reading end tag. Help me out! Thanks

WHM SC
 Cerberus.Quipto
Offline
Server: Cerberus
Game: FFXI
user: Quipto
Posts: 608
By Cerberus.Quipto 2012-05-15 17:36:30
Link | Quote | Reply
 
<elseif> tag on 240 isn't closed.
 Asura.Toxleh
Offline
Server: Asura
Game: FFXI
user: Toxeus
Posts: 550
By Asura.Toxleh 2012-05-15 17:38:31
Link | Quote | Reply
 
<if spell="autoset">
<if status="resting">
<equip When="Resting" Set="Resting" />
</if>
<elseif status="Idle">
<equip When="Idle" Set="Idle" />
<elseif>
<elseif status="Engaged">
</elseif>
</if> <---- what is this ending? lol
 Siren.Kalilla
VIP
Offline
Server: Siren
Game: FFXI
user: Kalila
Posts: 14552
By Siren.Kalilla 2012-05-15 17:40:41
Link | Quote | Reply
 
Asura.Toxleh said: »
<if spell="autoset">
<if status="resting">
<equip When="Resting" Set="Resting" />
</if>
<elseif status="Idle">
<equip When="Idle" Set="Idle" />
<elseif>
<elseif status="Engaged">
</elseif>
</if> <---- what is this ending? lol
Code
<if spell="autoset">
	<if status="resting">
		<equip When="Resting" Set="Resting" />
	</if>
	<elseif status="Idle">
		<equip When="Idle" Set="Idle" />
	<elseif>
	<elseif status="Engaged">
	</elseif>
</if> <---- what is this ending? lol


Looks like the ending to autoset

Ah... I see it now, there isn't any / with elseif
Code
<if spell="autoset">
	<if status="resting">
		<equip When="Resting" Set="Resting" />
	</if>
	<elseif status="Idle">
		<equip When="Idle" Set="Idle" />
	</elseif>
	<elseif status="Engaged">
	</elseif>
</if>


there lol
Offline
Posts: 3
By babete 2012-05-15 18:17:42
Link | Quote | Reply
 
Thanks i got that right. Now error in 255 >.< sorry still learning. Just got this SC online and wanted to try it out and see if it loaded before i do any changes to it. Thanks Again
 Sylph.Hitetsu
Offline
Server: Sylph
Game: FFXI
user: Hitetsu
Posts: 2617
By Sylph.Hitetsu 2012-05-15 18:51:18
Link | Quote | Reply
 
Code xml
<if advanced='"%DayElement"!="Light" AND "%WeatherElement"!="Light"'>
                        <equip when="midcast" set="Cure" />
                        </equip>
                    </if>


Change that to:
Code xml
<if advanced='"%DayElement"!="Light" AND "%WeatherElement"!="Light"'>
                        <equip when="midcast" set="Cure" />
                    </if>


EDIT: You're going to get the same error a little furthur down with "Cure4" set, remove the </equip> next to that too.
 Ragnarok.Arcalimo
Offline
Server: Ragnarok
Game: FFXI
user: arcalimo
Posts: 254
By Ragnarok.Arcalimo 2012-05-15 18:52:04
Link | Quote | Reply
 
It had a bunch of syntax errors <.<
Copy it full, it should at least load, didn't check rules or anything more so not sure if they'll work as intended.
Offline
Posts: 3
By babete 2012-05-16 05:08:19
Link | Quote | Reply
 
Thank You! it works!
necroskull Necro Bump Detected! [202 days between previous and next post]
 Quetzalcoatl.Crystalchan
Leonardo da Clippi
Offline
Server: Quetzalcoatl
Game: FFXI
Posts: 1184
By Quetzalcoatl.Crystalchan 2012-12-03 23:50:16
Link | Quote | Reply
 
I suppose I'll post in here instead of making a new thread!

Forgive me, I'm not very savvy in spellcast (I borrowed someone's WHM xml). However! My problem is that my midcast gear doesn't switch in fast enough for my cures, or any spells, really. It's always been like this for me but it's really starting to get on my nerves when I see 700hp Cure V's get off(barf).

I don't know if my gear just too fast for spellcast or it's the fact that I'm usually riding 13fps in any sort of combat... (It used to be fine, but quad boxing really just killed it and I'm sure it needs to be dusted..)

I suppose my other question, is how to make area specific gear swaps? Ex: Maquette ring for Legion, Balrahn's for Salvo ^^;

Fixed Cursna problem!

WHM.xml


(code)

I'm sorry for the long rant but I'd really love to get this fixed, I hate being a bum WHM and not casting cures or anything optimally!
 Quetzalcoatl.Crystalchan
Leonardo da Clippi
Offline
Server: Quetzalcoatl
Game: FFXI
Posts: 1184
By Quetzalcoatl.Crystalchan 2012-12-04 12:45:28
Link | Quote | Reply
 
Sorry for the bump, I guess I posted pretty late last night ^^;
 Ragnarok.Flippant
Offline
Server: Ragnarok
Game: FFXI
user: Enceladus
Posts: 660
By Ragnarok.Flippant 2012-12-04 20:41:59
Link | Quote | Reply
 
Whew! That's a whole lot of rules. It was actually really hard to read. Even if you don't care very much about formatting it for your own use, keep in mind that others are less likely to look at your code and help you if you make it difficult for them to do so. Always indent sections that are "inside" of other sections.


Code
<?xml version="1.0" ?>
<spellcast xmlns:xi="http://www.w3.org/2001/XInclude">
	<config
		RequireVersion="2.3"
		Debug="True"
		HideErrors="False"
		ShowGearSwaps="False"
		QuickCommands="True"
		ShowSpellInfo="False"
		/>
	<variables>
		<!-- Elemental Staves, input what staff to use for each element here. -->
		<var name="IceStaff">Chatoyant Staff</var>
		<var name="DarkStaff">Chatoyant Staff</var>
		<var name="ThunderStaff">Chatoyant Staff</var>
		<var name="WindStaff">Chatoyant Staff</var>
		<var name="FireStaff">Chatoyant Staff</var>
		<var name="EarthStaff">Chatoyant Staff</var>
		<var name="LightStaff">Chatoyant Staff</var>
		<var name="WaterStaff">Chatoyant Staff</var>
		<!-- Elemental Obi's, set to 1 for the ones you have. -->
		<var name="DarkObi">1</var>
		<var name="LightObi">1</var>
		<var name="ThunderObi">0</var>
		<var name="IceObi">0</var>
		<var name="FireObi">0</var>
		<var name="WindObi">0</var>
		<var name="WaterObi">0</var>
		<var name="EarthObi">0</var>
		<!-- Twilight Cape. -->
		<var name="DarkCape">1</var>
		<var name="LightCape">1</var>
		<var name="ThunderCape">0</var>
		<var name="IceCape">0</var>
		<var name="FireCape">0</var>
		<var name="WindCape">0</var>
		<var name="WaterCape">0</var>
		<var name="EarthCape">0</var>
	</variables>
	<sets>
		<group name="WHM" default="true">
			<set name="Idle">
				<lring>Maquette Ring</lring>
				<main>Owleyes</main>
				<sub>Genbu's Shield</sub>
				<ammo>Impatiens</ammo>
				<head>Orison Cap +2</head>
				<neck>Twilight Torque</neck>
				<lear>Moonshade Earring</lear>
				<rear>Mujin Stud</rear>
				<body>Orison Bliaud +2</body>
				<hands>Serpentes Cuffs</hands>
				<back>Umbra Cape</back>
				<waist>Slipor Sash</waist>
				<legs>Nares trews</legs>
				<feet>Serpentes Sabots</feet>
				<rring>Dark Ring</rring>
			</set>
			<set name="Resting" baseset="Idle">
				<lring>Star Ring</lring>
				<main>$DarkStaff</main>
				<sub>Ariesian Grip</sub>
				<ammo>Clarus Stone</ammo>
				<head>Orison Cap +2</head>
				<neck>Eidolon Pendant</neck>
				<lear>Moonshade Earring</lear>
				<rear>Relaxing Earring</rear>
				<back>Vita Cape</back>
				<waist>Austerity Belt</waist>
				<legs>Nares Trews</legs>
				<rring>Star Ring</rring>
			</set>
			<set name="FastCast" baseset="Idle">
				<main>Winged Wand</main>
				<ammo>Impatiens</ammo>
				<head>Nares Cap</head>
				<neck>Orison Locket</neck>
				<body>Anhur Robe</body>
				<lear>Loquac. Earring</lear>
				<back>Swith Cape</back>
				<waist>Witful Belt</waist>
				<feet>Rostrum Pumps</feet>
				<rring>Prolix Ring</rring>
				<lring>Ephedra Ring</lring>
			</set>
			<set name="ConserveMP" baseset="FastCast">
				<main>Capricorn Staff</main>
				<sub>Wizzan Grip</sub>
				<ammo>Clarus Stone</ammo>
				<head>Laurel Wreath</head>
				<lear>Gifted Earring</lear>
				<body>Hedera Cotehardie</body>
				<hands>Blessed mitts</hands>
				<back>Vita Cape</back>
				<waist>Austerity Belt</waist>
				<legs>Nashira seraweels</legs>
				<feet>Blessed pumps</feet>
				<lear>Loquacious Earring</lear>
				<rring>Prolix Ring</rring>
			</set>
			<set name="Melee" baseset="Idle">
				<ammo>Smart Grenade</ammo>
				<head>Zelus Tiara</head>
				<neck>Peacock Amulet</neck>
				<lear>Brutal Earring</lear>
				<rear>Diabolos's Earring</rear>
				<body>Hedera Cotehardie</body>
				<hands>Blessed Mitts</hands>
				<lring>Thundersoul ring</lring>
				<rring>Rajas Ring</rring>
				<back>Umbra Cape</back>
				<waist>Goading Belt</waist>
				<legs>Nashira Seraweels</legs>
				<feet>Blessed pumps</feet>
			</set>
			<set name="WS" baseset="Melee">
				<ammo>Flame Sachet</ammo>
				<head></head>
				<rear>Vulcan's Pearl</rear>
				<body>Praeco Doublet</body>
				<hands>Hlr. Mitts +1</hands>
				<lring>Karka Ring</lring>
				<waist>Ocean Sash</waist>
			</set>
			<set name="Hexa" baseset="WS">
				<neck>Light Gorget</neck>
				<waist>Light Belt</waist>
				<legs>Prince's Slops</legs>
			</set>
			<set name="Boon" baseset="WS">
				<neck>Prudence Torque</neck>
				<waist>Ocean Sash</waist>
			</set>
			<set name="FlashNova" baseset="WS">
				<neck>Aqua Gorget</neck>
			</set>
			<set name="SpiritTaker" baseset="WS">
				<ammo>Aqua Sachet</ammo>
				<neck>Temp. Torque</neck>
				<lring>Spiral Ring</lring>
				<waist>Cascade Belt</waist>
			</set>
			<set name="Retribution" baseset="WS">
				<neck>Soil Gorget</neck>
				<lring>Spiral Ring</lring>
			</set>
			<set name="Cataclysm" baseset="WS">
				<ammo>Witchstone</ammo>
				<neck>Prudence Torque</neck>
				<lear>Hecate's Earring</lear>
				<rear>Moldavite Earring</rear>
				<hands>Eradico Mitts</hands>
				<lring>Spiral Ring</lring>
				<back>Searing Cape</back>
				<waist>Cognition Belt</waist>
				<legs>Nisse Slacks</legs>
			</set>
			<set name="Healing" baseset="Idle">
				<main>Arka IV</main>
				<sub>Curatio Grip</sub>
				<ammo>Clarus Stone</ammo>
				<neck>Phalaina Locket</neck>
				<lear>Roundel Earring</lear>
				<rear>Novia Earring</rear>
				<body>Orison Bliaud +2</body>
				<hands>Augur's Gloves</hands>
				<lring>Ephedra Ring</lring>
				<rring>Sirona's Ring</rring>
				<back>Tempered Cape</back>
				<waist>Pythia Sash</waist>
				<head>Orison Cap +2</head>
				<legs>Orsn. Pantaln. +2</legs>
				<feet>Orsn. Duckbills +2</feet>
			</set>
			<set name="Cursna" baseset="FastCast">
				<main>Beneficus</main>
				<ammo>Clarus Stone</ammo>
				<head>Orison Cap +2</head>
				<neck>Orison Locket</neck>
				<body>Orison Bliaud +2</body>
				<hands>Augur's Gloves</hands>
				<back>Tempered Cape</back>
				<waist>Goading Belt</waist>
				<legs>Clr. Pantaln. +2</legs>
				<feet>Blessed Pumps</feet>
				<rring>Sirona's Ring</rring>
				<lring>Ephedra Ring</lring>
				<rear>Gifted Earring</rear>
				<lear>Loquacious Earring</lear>
			</set>
			<set name="Enhancing" baseset="Idle">
				<main>Beneficus</main>
				<sub>Genbu's Shield</sub>
				<ammo>Clarus Stone</ammo>
				<head>Laurel Wreath</head>
				<neck>Colossus's Torque</neck>
				<lear>Augment. Earring</lear>
				<rear>Gifted Earring</rear>
				<body>Anhur Robe</body>
				<hands>Augur's Gloves</hands>
				<back>Merciful Cape</back>
				<waist>Olympus Sash</waist>
				<legs>Clr. Pantaln. +2</legs>
				<feet>Orsn. Duckbills +2</feet>
				<rring>Prolix Ring</rring>
			</set>
			<set name="Bar" baseset="Enhancing">
				<head>Orison Cap +2</head>
				<body>Orison Bliaud +2</body>
				<legs>Clr. Pantaln. +2</legs>
			</set>
			<set name="Stoneskin" baseset="Enhancing">
				<main>Fourth Mace</main>
				<ammo>Clarus Stone</ammo>
				<head>Zelus Tiara</head>
				<neck>Stone Gorget</neck>
				<lear>Earthcry Earring</lear>
				<rear>Magnetic Earring</rear>
				<body>Goliard Saio</body>
				<hands>Blessed Mitts +1</hands>
				<back>Vita Cape</back>
				<waist>Siegel Sash</waist>
				<legs>Haven Hose</legs>
				<feet>Rostrum Pumps</feet>
			</set>
			<set name="Regen" baseset="ConserveMP">
				<body>Clr. Briault +2</body>
				<hands>Orison Mitts +2</hands>
			</set>
			<set name="Divine" baseset="Idle">
				<main>$LightStaff</main>
				<sub>Verse Strap +1</sub>
				<head>Hyksos Khat +1</head>
				<neck>Divine Torque</neck>
				<lear>Aredan Earring</lear>
				<rear>Divine Earring</rear>
				<body>Praeco Doublet</body>
				<hands>Clr. Mitts +2</hands>
				<lring>Karka Ring</lring>
				<rring>Omega Ring</rring>
				<back>Veela Cape</back>
				<waist>Witful Belt</waist>
				<legs>Healer's Pantaln.</legs>
				<feet>Rostrum Pumps</feet>
			</set>
			<set name="Banish" BaseSet="Divine">
				<ammo>Aqua Sachet</ammo>
				<neck>Stoicheion Medal</neck>
				<hands>Blessed Mitts +1</hands>
				<back>Sunbeam Cape</back>
				<waist>Cascade Belt</waist>
				<legs>Bls. Trousers +1</legs>
				<feet>Orsn. Duckbills +2</feet>
			</set>
			<set name="Elemental" baseset="Idle">
				<main>$%SpellElementStaff</main>
			</set>
			<set name="Dark" baseset="Idle">
				<main>$DarkStaff</main>
				<sub>Caecus Grip</sub>
				<ammo>Clarus Stone</ammo>
				<head>Nashira Turban</head>
				<neck>Aesir Torque</neck>
				<lear>Aredan Earring</lear>
				<rear>Dark Earring</rear>
				<body>Goliard Saio</body>
				<hands>Blessed Mitts +1</hands>
				<lring>Karka Ring</lring>
				<rring>Omega Ring</rring>
				<back>Merciful Cape</back>
				<waist>Casso Sash</waist>
				<legs>Portent Pants</legs>
				<feet>Goliard Clogs</feet>
			</set>
			<set name="Stun" baseset="Dark">
				<main>$ThunderStaff</main>
				<lear>Loquac. Earring</lear>
			</set>
			<set name="EnfeeblingBase" baseset="Idle">
				<main>$%SpellElementStaff</main>
				<sub>Macero Grip</sub>
				<head>Hyksos Khat +1</head>
				<neck>Enfeebling Torque</neck>
				<lear>Aredan Earring</lear>
				<rear>Enfeebling Earring</rear>
				<body>Anhur Robe</body>
				<hands>Clr. Mitts +2</hands>
				<lring>Karka Ring</lring>
				<rring>Omega Ring</rring>
				<waist>Casso Sash</waist>
				<legs>Portent Pants</legs>
				<feet>Clr. Duckbills +2</feet>
			</set>
			<set name="Enfeebling-BlackMagic" baseset="EnfeeblingBase">
				<ammo>Clarus Stone</ammo>
				<back>Vita Cape</back>
			</set>
			<set name="Enfeebling-WhiteMagic" baseset="EnfeeblingBase">
				<ammo>Aqua Sachet</ammo>
				<back>Sunbeam Cape</back>
			</set>
			<set name="Waltz" baseset="Idle" />
			<set name="Utsusemi" baseset="Idle">
				<head>Zelus Tiara</head>
				<neck>Orison Locket</neck>
				<lear>Loquac. Earring</lear>
				<rear>Magnetic Earring</rear>
				<body>Goliard Saio</body>
				<hands>Blessed Mitts +1</hands>
				<back>Veela Cape</back>
				<waist>Witful Belt</waist>
				<legs>Bls. Trousers +1</legs>
				<feet>Rostrum Pumps</feet>
			</set>
		</group>
	</sets>
	<rules>
		<if spell="Escape|Warp|Warp II|Recall-*|Teleport-*">
			<return />
		</if>
		<if status="engaged">
			<equip when="engaged|aftercast" set="Melee" />
			<if SubJob="DNC|NIN">
				<equip when="engaged|aftercast" set="Melee">
					<rear>Suppanomimi</rear>
				</equip>
			</if>
		</if>
		<elseif notstatus="engaged">
			<equip when="idle|aftercast" set="Idle" />
			<equip when="resting" set="Resting" />
		</elseif>	
		<if TPGT="300">
			<equip when="precast|midcast|aftercast|idle|resting">
				<main lock="true" />
				<sub lock="true" />
				<range lock="true" />
			</equip>
		</if>
		<if type="WeaponSkill">		
			<precastdelay delay=".2" />
			<if spell="Hexa Strike">
				<equip set="Hexa" />
			</if>
			<elseif spell="Mystic Boon">
				<equip set="Boon" />
			</elseif>
			<elseif spell="Flash Nova">
				<equip set="FlashNova" />
			</elseif>
			<elseif spell="Spirit Taker">
				<equip set="SpiritTaker" />
			</elseif>
			<elseif spell="Retribution">
				<equip set="Retribution" />
			</elseif>
			<elseif spell="Cataclysm">
				<equip set="Cataclysm" />
			</elseif>
			<else>
				<equip set="WS" />
			</else>
		</if>
		<if skill="HealingMagic">
			<equip when="precast" set="FastCast">
				<legs>Orsn. Pantaln. +2</legs>
			</equip>
			<action type="MidCastDelay" delay="0.3" />
			<equip when="midcast" set="ConserveMP" />
			<if spell="Cure*|Curaga*|Cura*">
				<equip when="midcast" set="Healing" />
				<if MPLT="60">
					<!-- Show Spell Info for cures only when low on MP -->
					<ShowSpellInfo />
				</if>
				<if NotBuffActive="Light Arts">
					<if Spell="Cure VI" MPLT="227">
						<changespell Spell="Cure V" />
					</if>
					<if Spell="Cure V" MPLT="135">
						<changespell Spell="Cure IV" />
					</if>
					<if Spell="Cure IV" MPLT="88">
						<changespell Spell="Cure III" />
					</if>
					<if Spell="Cure III" MPLT="46">
						<changespell Spell="Cure II" />
					</if>
					<if Spell="Cure II" MPLT="24">
						<CancelSpell />
						<AddToChat color="56">[ERROR] Not enough MP To cast Cure! ~</AddToChat>
					</if>
				</if>
				<else> <!-- Light Arts is Active - -10% MP Cost -->
					<if NotBuffActive="Penury">
						<if Spell="Cure VI" MPLT="205">
							<changespell Spell="Cure V" />
						</if>
						<if Spell="Cure V" MPLT="122">
							<changespell Spell="Cure IV" />
						</if>
						<if Spell="Cure IV" MPLT="80">
							<changespell Spell="Cure III" />
						</if>
						<if Spell="Cure III" MPLT="42">
							<changespell Spell="Cure II" />
						</if>
						<if Spell="Cure II" MPLT="22">
							<CancelSpell />
							<AddToChat color="56">[ERROR] Not enough MP To cast Cure! ~</AddToChat>
						</if>
					</if>
					<else> <!-- Penury is Active - -50% MP Cost -->
						<if Spell="Cure VI" MPLT="114">
							<changespell Spell="Cure V" />
						</if>
						<if Spell="Cure V" MPLT="68">
							<changespell Spell="Cure IV" />
						</if>
						<if Spell="Cure IV" MPLT="44">
							<changespell Spell="Cure III" />
						</if>
						<if Spell="Cure III" MPLT="23">
							<changespell Spell="Cure II" />
						</if>
						<if Spell="Cure II" MPLT="12">
							<CancelSpell />
							<AddToChat color="56">[ERROR] Not enough MP To cast Cure! ~</AddToChat>
						</if>
					</else>
				</else>
				<!-- Handle Elemental Obi's -->
				<if Advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementObi" = "1"'>
					<if Element="Light"><equip when="midcast"><waist lock="true">Korin Obi</waist></equip></if>
				</if>
				<if advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementCape" = "1"'>
					<if Element="Light"><equip when="midcast"><back lock="true">Twilight Cape</back></equip></if>
				</if>
			</if>
			<elseif spell="Cursna">
				<equip when="midcast" set="Cursna" />
			</elseif>
			<elseif spell="*na">
				<equip when="midcast" set="ConserveMP">
					<head>Orison Cap +2</head>
				</equip>
			</elseif>
		</if>
		<elseif skill="EnhancingMagic">
			<equip when="precast" set="FastCast">
				<waist></waist>
			</equip>
			<equip when="midcast" set="Enhancing" />
			<if spell="Bar*">
				<PreCastDelay delay="0.2" />
				<equip when="precast|midcast" Set="Bar" />
			</if>
			<elseif spell="Stoneskin">
				<equip when="precast" set="FastCast">
					<hands>Carapacho Cuffs</hands>
					<waist>Siegel Sash</waist>
				</equip>
				<equip when="midcast" set="Stoneskin" />
			</elseif>
			<elseif spell="Regen*">
				<equip when="Midcast" Set="Regen" />
				<if NotBuffActive="Light Arts">
					<if spell="Regen IV" MPLT="82">
						<changespell Spell="Regen III" />
					</if>
					<if spell="Regen III" MPLT="64">
						<changespell Spell="Regen II" />
					</if>
					<if spell="Regen II" MPLT="36">
						<changespell Spell="Regen" />
					</if>
					<if spell="Regen" MPLT="15">
						<CancelSpell />
						<AddToChat color="56">[ERROR] Not enough MP To cast Regen! ~</AddToChat>
					</if>
				</if>
				<else> <!-- Light Arts is Active - -10% MP Cost -->
					<if NotBuffActive="Penury">
					<if spell="Regen IV" MPLT="74">
						<changespell Spell="Regen III" />
					</if>
					<if spell="Regen III" MPLT="58">
						<changespell Spell="Regen II" />
					</if>
					<if spell="Regen II" MPLT="33">
						<changespell Spell="Regen" />
					</if>
					<if spell="Regen" MPLT="14">
						<CancelSpell />
						<AddToChat color="56">[ERROR] Not enough MP To cast Regen! ~</AddToChat>
					</if>
					</if>
					<else> <!-- Penury is Active - -50% MP Cost -->
						<if spell="Regen IV" MPLT="41">
							<changespell Spell="Regen III" />
						</if>
						<if spell="Regen III" MPLT="32">
							<changespell Spell="Regen II" />
						</if>
						<if spell="Regen II" MPLT="18">
							<changespell Spell="Regen" />
						</if>
						<if spell="Regen" MPLT="8">
							<CancelSpell />
							<AddToChat color="56">[ERROR] Not enough MP To cast Regen! ~</AddToChat>
						</if>
					</else>
				</else>
			</elseif>
			<elseif spell="Erase">
				<equip when="precast" set="FastCast">
					<waist>Siegel Sash</waist>
					<legs>Orsn. Pantaln. +2</legs>
				</equip>
				<equip when="midcast" set="ConserveMP">
					<head>Orison Cap +2</head>
					<legs>Orsn. Pantaln. +2</legs>
				</equip>
			</elseif>
			<elseif spell="Protect|Protect II|Protect III|Protect IV|Protectra I|Protectra II|Protectra III|Protectra IV|Shell I|Shell II|Shell III|Shell IV|Shell V|Shellra I|Shellra II|Shellra III|Shellra IV|Haste|Refresh|Blink|Aquaveil|*storm|Tractor|Raise*|Arise">
				<equip when="midcast" set="ConserveMP" />
			</elseif>
			<elseif spell="Shellra V">
				<equip when="midcast" set="ConserveMP">
				<legs>Clr. Pantaln. +2</legs>
				<lring>Sheltered Ring</lring>
				</equip>
			</elseif>
			<elseif spell="Protectra V">
				<equip when="midcast" set="ConserveMP">
				<feet>Cleric's Duckbills +2</feet>
				<lring>Sheltered Ring</lring>
				</equip>
			</elseif>
		</elseif>
		<elseif skill="DivineMagic">
			<equip when="precast" set="FastCast" />
			<equip when="midcast" set="Divine" />
			<if spell="Flash">
				<PreCastDelay delay="0.2" />
				<equip when="precast|midcast" set="Divine" />
			</if>
			<if spell="Holy*">
				<PreCastDelay delay="0.2" />
				<equip when="precast|midcast" set="Banish" />
				<!-- Handle Elemental Obi's -->
				<if Advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementObi" = "1"'>
					<if Element="Light"><equip when="midcast"><waist lock="true">Korin Obi</waist></equip></if>
				</if>
				<if advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementCape" = "1"'>
					<if Element="Light"><equip when="midcast"><back lock="true">Twilight Cape</back></equip></if>
				</if>
			</if>
			<if spell="Banish*">
				<equip when="midcast" set="Banish" />
				<!-- Handle Elemental Obi's -->
				<if Advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementObi" = "1"'>
					<if Element="Light"><equip when="midcast"><waist lock="true">Korin Obi</waist></equip></if>
				</if>
				<if advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementCape" = "1"'>
					<if Element="Light"><equip when="midcast"><back lock="true">Twilight Cape</back></equip></if>
				</if>
			</if>
			<if spell="Repose">
				<command when="aftercast">spellcast var inc sleepid;wait 45;input /echo [$sleepid:%spell] %Target Wearing off in 45s</command>
				<command when="aftercast">wait 75;input /echo [$sleepid:%spell] %TargetWearing off in 15s</command>
				<command when="aftercast">wait 85;input /echo [$sleepid:%spell] %TargetWearing off in 5s;spellcast var dec sleepid;</command>
			</if>
		</elseif>
		<elseif skill="ElementalMagic">
			<equip when="precast" set="FastCast" />
			<equip when="midcast" set="Elemental" />
		</elseif>
		<elseif skill="DarkMagic">
			<equip when="precast" set="FastCast" />
			<equip when="midcast" set="Dark" />
			<if spell="Stun">
				<!-- equip gear that helps stun, and nothing else -->
				<equip when="precast|midcast" set="Stun" />
				<!-- These codes just print Stun in auto translate into chat. -->
				<command>input /p \xFD\x07\x02\x12\xFC\xFD >> %SpellTarget</command>
			</if>
		</elseif>
		<elseif skill="EnfeeblingMagic">
			<equip when="precast" set="FastCast" />
			<equip when="midcast" set="Enfeebling-%Type" />
			<!-- Timers for when sleep is wearing off. -->
			<if spell="Sleep II|Sleepga II">
				<command when="aftercast">spellcast var inc sleepid;wait 45;input /echo [$sleepid:%spell] %target Wearing off in 45s</command>
				<command when="aftercast">wait 75;input /echo [$sleepid:%spell] %target Wearing off in 15s</command>
				<command when="aftercast">wait 85;input /echo [$sleepid:%spell] %target Wearing off in 5s;spellcast var dec sleepid;</command>
			</if>
			<elseif spell="Sleep|Sleepga">
				<command when="aftercast">spellcast var inc sleepid;wait 45;input /echo [$sleepid:%spell] %target Wearing off in 15s</command>
				<command when="aftercast">wait 55;input /echo [$sleepid:%spell] %target Wearing off in 5s;spellcast var dec sleepid;</command>
			</elseif>
		</elseif>
		<elseif skill="Ninjutsu">
			<equip when="precast" set="FastCast" />
			<equip when="midcast" set="Utsusemi" />
		</elseif>
		<if spell="Curing Waltz*|Divine Waltz*">
			<equip when="precast|midcast" set="Waltz" />
		</if>
		<!-- utility: if targetting a monster, but casting a spell that can not be cast on monsters, then cast on self (buffs). -->
		<if SpellTargetType="MONSTER" NotValidTarget="*Enemy*" ValidTarget="*Self*">
			<changetarget target="<stpc>" />
		</if>
		<if SpellTargetType="NONE" ValidTarget="*Self*">
			<changetarget target="<stpc>" />
		</if>
		<if spell="Divine Caress">
			<equip when="precast|midcast">
				<hands>Orison Mitts +2</hands>
			</equip>
		</if>
		<if spell="Martyr">
			<equip when="precast|midcast">
				<hands>Clr. Mitts +2</hands>
			</equip>
		</if>
		<if spell="Benediction">
			<equip when="precast|midcast">
				<body>Clr. Briault +2</body>
			</equip>
		</if>
		<!-- auto cancel sneak/utsu/stoneskin/blink when recasting them. Requires Cancel Plugin -->
		<if spell="Sneak" BuffActive="Sneak" SpellTargetType="Self">
			<command when="midcast">cancel 71</command>
			<midcastdelay delay="2.2" />
		</if>
		<elseif spell="Stoneskin" BuffActive="Stoneskin">
			<command when="midcast">cancel 37</command>
			<midcastdelay delay="3.8" />
		</elseif>
		<elseif spell="Spectral Jig">
			<command when="precast">cancel 71</command>
		</elseif>
	</rules>
</spellcast>



Things to note:
1. I formatted it with indents. Much easier to read, just generally speaking, and a lot easier to follow the code, especially the rules section.

2. I set midcast time to 0.3, specifically for your Cures; hopefully this should fix your problem. If it still switches too late, try lowering the time. I have 0.6 for mine, but I have quite a bit less FC than you. Keep in mind that you can't swap in time for Quickening procs.

3. You didn't actually fix the Cursna issue, unless you didn't update this after fixing it. Any na spell is going to be "caught" by your first elseif spell="*na", so if you cast Cursna, it is not going to check the next condition (elseif spell="Cursna"), and simply use your normal na set. Cursna should be the first check to catch, then followed by the *na check. I reordered them and got rid of the redundant *na check.

4. I got rid of the less than and greater than signs in some of your echos. Not a big deal, I just took them out because they break the tag matches in Notepad++, which made it annoying to format your indents. It's an fyi in case you notice it later when you cast Repose^^;

5. As for zones, the condition would be if area="zone name." You can use Wildcards to your advantage here by saying if area="*Remnants" for all Salvage zones.

If these are just for idle sets, you could set it up like:

Code
		<if status="engaged">
			<equip when="engaged|aftercast" set="Melee" />
			<if SubJob="DNC|NIN">
				<equip when="engaged|aftercast" set="Melee">
					<rear>Suppanomimi</rear>
				</equip>
			</if>
		</if>
		<elseif status="idle">
			<equip when="idle|aftercast" set="Idle" />
			<if area="*Remnants">
				<equip>
					<lring>ring</lring>
				</equip>
			</if>
			<elseif area="*Legion">
				<equip>
					<lring>ring</lring>
				</equip>
			</elseif>
		</elseif>
		<else>
			<equip when="resting" set="Resting" />
		</else>	


I think that covers everything :o
[+]
 Quetzalcoatl.Crystalchan
Leonardo da Clippi
Offline
Server: Quetzalcoatl
Game: FFXI
Posts: 1184
By Quetzalcoatl.Crystalchan 2012-12-04 20:58:44
Link | Quote | Reply
 
It works! Thank you so much for all your time! I'm sorry for it being so hard to read. I get lost in it myself D: wasn't my spellcast, so I wasn't sure how to make it look all proper! And the Cursna thing was mybad, accidentlly did copy instead of cut and had two *na rules @_@
 Quetzalcoatl.Crystalchan
Leonardo da Clippi
Offline
Server: Quetzalcoatl
Game: FFXI
Posts: 1184
By Quetzalcoatl.Crystalchan 2012-12-05 19:03:21
Link | Quote | Reply
 
I guess I have one more issue, hopefully it'll be easier to read and stuff! D:

I want to make separate sets for cures. Ex: Cure1-4 full potency and Cure V/VI will be potency mixed with some ConserveMP, same with Curaga because it uses a different formula :<

I tried to do it myself, but I ran into unfamiliar territory, I don't know how to add it and if it'll mess up the "need more MP to cast this!" messages.

Would I just do this? Or would this mess up everything below :\ I'm not sure!
Code
<if spell="Cure|CureII|CureIII|CureIV">
    <equip when="midcast" set="Cure IV" />
<if spell="CureV|CureVI">
    <equip when="midcast" set="Cure V" />
<if spell="Curaga*">
    <equip when="midcast" set="Curaga" />


Code:

>Starts at line 404 if you need all of healing rules.
WHM SC

This should be the last time I bother you guys, for awhile XD
 Valefor.Clairefox
Offline
Server: Valefor
Game: FFXI
user: Clairefox
Posts: 87
By Valefor.Clairefox 2012-12-05 19:24:06
Link | Quote | Reply
 
It looks like it would work. The only problem I could see popping up would be when it needs to changespell it might not be equipping the right set, because it still thinks of casting the "Cure V" set even though MP rule makes it change to "Cure IV". See if it works as is, and if it doesn't then you might want to add into each MP rule an equip line.
 Quetzalcoatl.Crystalchan
Leonardo da Clippi
Offline
Server: Quetzalcoatl
Game: FFXI
Posts: 1184
By Quetzalcoatl.Crystalchan 2012-12-05 23:15:46
Link | Quote | Reply
 
Typed it all in and getting error code, reading endtag line 723
Code
        <if skill="HealingMagic">
            <equip when="precast" set="FastCast">
                <legs>Orsn. Pantaln. +2</legs>
            </equip>
            <action type="MidCastDelay" delay="0.3" />
            <equip when="midcast" set="ConserveMP" />
            <if spell="Cure|Cure II|Cure III|Cure IV"> <--- Something is wrong with this line
				<equip when="midcast" set="Healing" />
			<if spell="CureV|CureVI">
				<equip when="midcast" set="Cure V" />
			<if spell="Curaga*">
				<equip when="midcast" set="Curaga" />

Everything else highlights right, like it's correct or maybe it's all completely wrong. I'm not sure :\
 Shiva.Arana
Offline
Server: Shiva
Game: FFXI
user: Arana1
Posts: 1527
By Shiva.Arana 2012-12-05 23:22:45
Link | Quote | Reply
 
Try this it may work.
Code
   <if skill="HealingMagic">
    <equip when="precast" set="FastCast">
        <legs>Orsn. Pantaln. +2</legs>
    </equip>
    <action type="MidCastDelay" delay="0.3" />
    <equip when="midcast" set="ConserveMP" />
    <if spell="Cure|Cure II|Cure III|Cure IV"> 
        <equip when="midcast" set="Healing" />
    </if>
    <if spell="CureV|CureVI">
        <equip when="midcast" set="Cure V" />
    </if>
    <if spell="Curaga*">
        <equip when="midcast" set="Curaga" />
     </if>
   </if>
 Quetzalcoatl.Crystalchan
Leonardo da Clippi
Offline
Server: Quetzalcoatl
Game: FFXI
Posts: 1184
By Quetzalcoatl.Crystalchan 2012-12-05 23:44:27
Link | Quote | Reply
 
Put that in, says I have an error on line 531, which is the last </if> of this
Code
        <if skill="HealingMagic">
            <equip when="precast" set="FastCast">
                <legs>Orsn. Pantaln. +2</legs>
            </equip>
            <action type="MidCastDelay" delay="0.3" />
            <equip when="midcast" set="ConserveMP" />
			<if skill="HealingMagic">
			 <equip when="precast" set="FastCast">
				 <legs>Orsn. Pantaln. +2</legs>
			 </equip>
			 <action type="MidCastDelay" delay="0.3" />
			 <equip when="midcast" set="ConserveMP" />
			 <if spell="Cure|Cure II|Cure III|Cure IV">
				 <equip when="midcast" set="Healing" />
			 </if>
			 <if spell="CureV|CureVI">
				 <equip when="midcast" set="Cure V" />
			 </if>
			 <if spell="Curaga*">
				 <equip when="midcast" set="Curaga" />
			  </if>
			</if>
                <if MPLT="60">
                    <!-- Show Spell Info for cures only when low on MP -->
                    <ShowSpellInfo />
                </if>
                <if NotBuffActive="Light Arts">
                    <if Spell="Cure VI" MPLT="227">
                        <changespell Spell="Cure V" />
                    </if>
                    <if Spell="Cure V" MPLT="135">
                        <changespell Spell="Cure IV" />
                    </if>
                    <if Spell="Cure IV" MPLT="88">
                        <changespell Spell="Cure III" />
                    </if>
                    <if Spell="Cure III" MPLT="46">
                        <changespell Spell="Cure II" />
                    </if>
                    <if Spell="Cure II" MPLT="24">
                        <CancelSpell />
                        <AddToChat color="56">[ERROR] Not enough MP To cast Cure! ~</AddToChat>
                    </if>
                </if>
                <else> <!-- Light Arts is Active - -10% MP Cost -->
                    <if NotBuffActive="Penury">
                        <if Spell="Cure VI" MPLT="205">
                            <changespell Spell="Cure V" />
                        </if>
                        <if Spell="Cure V" MPLT="122">
                            <changespell Spell="Cure IV" />
                        </if>
                        <if Spell="Cure IV" MPLT="80">
                            <changespell Spell="Cure III" />
                        </if>
                        <if Spell="Cure III" MPLT="42">
                            <changespell Spell="Cure II" />
                        </if>
                        <if Spell="Cure II" MPLT="22">
                            <CancelSpell />
                            <AddToChat color="56">[ERROR] Not enough MP To cast Cure! ~</AddToChat>
                        </if>
                    </if>
                    <else> <!-- Penury is Active - -50% MP Cost -->
                        <if Spell="Cure VI" MPLT="114">
                            <changespell Spell="Cure V" />
                        </if>
                        <if Spell="Cure V" MPLT="68">
                            <changespell Spell="Cure IV" />
                        </if>
                        <if Spell="Cure IV" MPLT="44">
                            <changespell Spell="Cure III" />
                        </if>
                        <if Spell="Cure III" MPLT="23">
                            <changespell Spell="Cure II" />
                        </if>
                        <if Spell="Cure II" MPLT="12">
                            <CancelSpell />
                            <AddToChat color="56">[ERROR] Not enough MP To cast Cure! ~</AddToChat>
                        </if>
                    </else>
                </else>
                <!-- Handle Elemental Obi's -->
                <if Advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementObi" = "1"'>
                    <if Element="Light"><equip when="midcast"><waist lock="true">Korin Obi</waist></equip></if>
                </if>
                <if advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementCape" = "1"'>
                    <if Element="Light"><equip when="midcast"><back lock="true">Twilight Cape</back></equip></if>
                </if>
            </if>
            <elseif spell="Cursna">
                <equip when="midcast" set="Cursna" />
            </elseif>
            <elseif spell="*na">
                <equip when="midcast" set="ConserveMP">
                    <head>Orison Cap +2</head>
                </equip>
            </elseif>
        </if>

It was my entire rules before, least the errors in Healing magic now?!
 Shiva.Arana
Offline
Server: Shiva
Game: FFXI
user: Arana1
Posts: 1527
By Shiva.Arana 2012-12-05 23:46:08
Link | Quote | Reply
 
You have healing magic rule put in twice here:
Code
<if skill="HealingMagic">
    <equip when="precast" set="FastCast">
        <legs>Orsn. Pantaln. +2</legs>
    </equip>
    <action type="MidCastDelay" delay="0.3" />
    <equip when="midcast" set="ConserveMP" />
    <if skill="HealingMagic">
     <equip when="precast" set="FastCast">
         <legs>Orsn. Pantaln. +2</legs><action type="MidCastDelay" delay="0.3" />
     <equip when="midcast" set="ConserveMP" />

Delete one of these please.
[+]
 Ragnarok.Flippant
Offline
Server: Ragnarok
Game: FFXI
user: Enceladus
Posts: 660
By Ragnarok.Flippant 2012-12-05 23:48:00
Link | Quote | Reply
 
He didn't mean for you to recopy the
Code
<if skill="HealingMagic">
 <equip when="precast" set="FastCast">
     <legs>Orsn. Pantaln. +2</legs>
 </equip>
 <action type="MidCastDelay" delay="0.3" />
 <equip when="midcast" set="ConserveMP" />



part. Get rid of the repeat lines and you should be fine.

Edit: Beat

Also edit: The reason you were having an issue with the rules you wrote is because every tag (ex: <tag>) needs to be closed. Most of the time, they are closed with </tag> to show that this is the end of the purpose of this rule.

Sometimes you'll see that if there is actually nothing inside of the tag, it will self-close (ex: <equip set="idle" />). This is just an optional shortcut, but only if you didn't need to put a related element inside.
[+]
Offline
Posts: 52
By Xnite 2012-12-06 17:11:39
Link | Quote | Reply
 
Need some help locking main and sub while engaged please.
Code
    <if status="engaged">
		<action type="equip" when="all" set="tp"/>
		<lock slot="main|sub" when="all" lock="yes" />
	</if>
    <if Status="idle">
            <action type="equip" when="aftercast|idle" set="idle"/>
    </if>
 Valefor.Clairefox
Offline
Server: Valefor
Game: FFXI
user: Clairefox
Posts: 87
By Valefor.Clairefox 2012-12-08 14:54:48
Link | Quote | Reply
 
I saw one person use this: (would only lock it while engaged)
Code
<if Status="engaged">
     <action type="equip" when="precast|midcast|aftercast|engaged|idle"> 
	     <main  lock="t" />
	     <sub   lock="t" />
	     <range lock="t" />
	     <ammo lock="t" />
     </action>
</if>


Another way would be a variable TP lock like this: (would lock it during everything til TP is lost)
Code
<var name="TPLock">10</var>

with:
Code
<if TPGT="$TPLock">
			<action type="equip" when="precast|midcast|aftercast|engaged|idle"> 
				<main  lock="t" />
				<sub   lock="t" />
				<range lock="t" />
				<ammo lock="t" />
			</action>
</if>
necroskull Necro Bump Detected! [38 days between previous and next post]
 Siren.Scottyb
Offline
Server: Siren
Game: FFXI
user: scottyb
Posts: 170
By Siren.Scottyb 2013-01-15 14:49:31
Link | Quote | Reply
 
Hey wondered if anyone could check my spellcast for some reason I cannot get it to equip my clerics+2 pants for bar spells, it does do the AF3 body though.

WHM XML
 Siren.Scottyb
Offline
Server: Siren
Game: FFXI
user: scottyb
Posts: 170
By Siren.Scottyb 2013-01-15 14:58:24
Link | Quote | Reply
 
Just tried changing that and it still keeps me in my ASA pants, I got the SC from a friend, and I dont really understand SC thanks for trying though :)
 Bahamut.Dannyl
Offline
Server: Bahamut
Game: FFXI
user: dannyl
Posts: 1550
By Bahamut.Dannyl 2013-01-15 15:13:46
Link | Quote | Reply
 
but your ASA pants are in your idle set.

What happens if you enter //sc s Barspell ? does it equip it then?
 Siren.Scottyb
Offline
Server: Siren
Game: FFXI
user: scottyb
Posts: 170
By Siren.Scottyb 2013-01-15 15:18:11
Link | Quote | Reply
 
No it just changes my body, which is weird because it should put my orison feet on too right?

I dont have the other gear in that set with me but I do have the feet and the legs
 Asura.Yomisha
Offline
Server: Asura
Game: FFXI
user: Yomisha
Posts: 3080
By Asura.Yomisha 2013-01-15 15:18:46
Link | Quote | Reply
 
Did you try typing the whole name out? Sometimes the abbreviations mess with spellcast.

Edit: Also if you try that, make sure you do it both in your enhancing and barspell set. Because you have the same name on both sets and enhancing is your base set for bars, lol.
 Bismarck.Kelhor
Administrator
Offline
Server: Bismarck
Game: FFXI
user: Rooks
Posts: 509
By Bismarck.Kelhor 2013-01-15 15:23:37
Link | Quote | Reply
 
Three things:

1) Woof, what a mess. That code is entirely too squirrelly to maintain easily, especially for a novice. Might want to find a simpler spellcast and start there.
2) If you want to stick with this one, change showgearswaps="false" on line 3 to "true" and see what you get for output.
3) on line 214, you'll want to add Recall-* to the list of spells.
 Bismarck.Tragedie
Offline
Server: Bismarck
Game: FFXI
Posts: 322
By Bismarck.Tragedie 2013-01-15 15:28:22
Link | Quote | Reply
 
Code
211.
                <action type="command" when="Idle">sc set Main</action>

 212.
                <action type="command" when="Engaged">sc set Fight</action>

 213.
                <action type="command" when="Resting">sc set Rest</action>


Your barspell rule is set for precast, but when spellcast is processing it runs the "sc set main" command.

Consider changing those lines to be the following:
Code
<if status="Engaged">
	<equip when="Engaged|Aftercast" set="Fight" />
</if>
<elseif status="Idle">
	<equip when="Aftercast|Idle" set="Main" />
</elseif>
<elseif status="Resting">
	<equip when="Resting" set="Rest" />
</elseif>
 Quetzalcoatl.Sithel
Offline
Server: Quetzalcoatl
Game: FFXI
user: Wildman33
Posts: 55
By Quetzalcoatl.Sithel 2013-01-15 15:34:38
Link | Quote | Reply
 
You could use mine which is a lot cleaner and easier to manage.
http://pastebin.com/auuXsvQL

I would honestly scrap that xml though, it is a mess, but if you insist. Do this...



On your xml remove the line that says
Code
<elseif spell="Barstonra|Barwatera|Barfira|Baraera|Barblizzara|Barthundra">
                                <action type="equip" when="precast" set="Barspell" />
                        </elseif>


You need this under enhancing magic skill and you just have it sitting up there, so you need it down with enhancing magic.

Take out your enhancing magic skill rule and replace it wit this.
Code
<elseif skill="EnhancingMagic">
                                <if spell="Boost*">
                                        <action type="equip" when="midcast" set="Enhancing" />
                                </if>
                                <elseif spell="Protect*">
                                        <action type="equip" when="midcast" set="Protect" />
                                </elseif>
                                <elseif spell="Shell*">
                                        <action type="equip" when="midcast" set="Shell" />
                                </elseif>
                                <elseif spell="Bar*">
                                        <action type="equip" when="precast" set="Barspell" />
                                </elseif>
                                <else>
                                        <action type="equip" when="midcast" set="HasteMagicBase" />
                                </else>
                        </elseif>
[+]
First Page 2
Log in to post.