
Originally Posted by
Chen
can anyone point me to a GOOD sch spellcast? not good enough at the coding to write my own
all the ones i've looked at so far are missing basic stuff/conflicting rules (i.e. dark arts gear stays on even if you're trying to rest)
Here's mine. It's adapted from one I found somewhere (windower's forums I think). I'm sure there are more elegant .xmls out there, but this works for me.
Code:
<?xml version="1.0" ?>
<spellcast>
<config
RequireVersion="2.20"
ShowGearSwaps="false"
Debug="false"
ShowSpellInfo="false"
/>
<variables clear="true">
<!-- Var: Elemental Staves -->
<var name="IceStaff">Aquilo's Staff</var>
<var name="WindStaff">Auster's Staff</var>
<var name="EarthStaff">Terra's Staff</var>
<var name="ThunderStaff">Jupiter's Staff</var>
<var name="WaterStaff">Water Staff</var>
<var name="FireStaff">Fire Staff</var>
<var name="DarkStaff">Pluto's Staff</var>
<var name="LightStaff">Apollo's Staff</var>
<!-- Var: Elemental Obis -->
<var name="IceObi">Hyorin Obi</var>
<var name="WindObi">Penitent's Rope</var>
<var name="EarthObi">Penitent's Rope</var>
<var name="ThunderObi">Rairin Obi</var>
<var name="WaterObi">Penitent's Rope</var>
<var name="FireObi">Penitent's Rope</var>
<var name="DarkObi">Anrin Obi</var>
<var name="LightObi">Korin Obi</var>
</variables>
<sets>
<!-- Group: Nuke Low Skill -->
<group default="yes" name="Low">
<!-- Set: Idle -->
<set name="Idle">
<main>Terra's Staff</main>
<sub>Raptor Leather Strap +1</sub>
<ammo>Phantom Tathlum</ammo>
<head>Scholar's M.Board</head>
<neck>Beak Necklace +1</neck>
<lear>Loquac. Earring</lear>
<rear>Magnetic Earring</rear>
<body>Argute Gown</body>
<hands>Argute Bracers</hands>
<rring>Astral Ring</rring>
<lring>Ether Ring</lring>
<back>Prism Cape</back>
<waist>Hierarch Belt</waist>
<legs>Tatsu. Sitagoromo</legs>
<feet>River Gaiters</feet>
</set>
<!-- Set: Resting -->
<set name="Resting" BaseSet="Idle">
<main>Pluto's Staff</main>
<lear>Antivenom Earring</lear>
<rear>Magnetic Earring</rear>
<body>Yigit Gomlek</body>
<hands>Genie Gages</hands>
<legs>Yigit Seraweels</legs>
<feet>Avocat Pigaches</feet>
</set>
<!-- Set: Haste -->
<set name="Haste" BaseSet="Idle">
<head>Walahra Turban</head>
<body>Goliard Saio</body>
<waist>Swift Belt</waist>
<feet>Scholar's Loafers</feet>
</set>
<!-- Set: Healing (Light Arts)-->
<set name="Healing" BaseSet="Idle">
<head>Yigit Turban</head>
<body>Goliard Saio</body>
<legs>Tatsu. Sitagoromo</legs>
<feet>Scholar's Loafers</feet>
</set>
<!-- Set: Stoneskin (Light Arts)-->
<set name="StoneskinLight" BaseSet="Idle">
<main lock="true">Mythic Wand +1</main>
<sub>Genbu's Shield</sub>
<head>Walahra Turban</head>
<body>Errant Hpl.</body>
<legs>Scholar's Pants</legs>
</set>
<!-- Set: Stoneskin (Dark Arts)-->
<set name="StoneskinDark" BaseSet="Idle">
<main lock="true">Mythic Wand +1</main>
<sub>Genbu's Shield</sub>
<head>remove</head>
<body>Ixion Cloak</body>
<neck>Promise Badge</neck>
<hands>Yigit Gages</hands>
<legs>Mahatma Slops</legs>
</set>
<!-- Set: Enhancing Skill Set -->
<set name="EnhancingSkill" BaseSet="Idle">
<neck>Enhancing Torque</neck>
<body>Argute Gown</body>
<legs>Scholar's Pants</legs>
</set>
<!-- Set: Enhancing (Light Arts) -->
<set name="EnhancingLight" BaseSet="Haste">
<neck>Enhancing Torque</neck>
<legs>Scholar's Pants</legs>
</set>
<!-- Set: Enhancing (Dark Arts) -->
<set name="EnhancingDark" BaseSet="Haste">
<neck>Enhancing Torque</neck>
<body>Argute Gown</body>
<lear>Augmenting Earring</lear>
</set>
<!-- Set: Stealth (Light Arts) -->
<set name="StealthLight" BaseSet="EnhancingLight">
<back>Skulker's Cape</back>
<legs>Scholar's Pants</legs>
</set>
<!-- Set: Stealth (Dark Arts) -->
<set name="StealthDark" BaseSet="EnhancingDark">
<back>Skulker's Cape</back>
</set>
<!-- Set: Dark -->
<set name="Dark" BaseSet="Haste">
<neck>Enlightened Torque</neck>
<body>Scholar's Gown</body>
<hands>Yigit Gages</hands>
<legs>Argute Pants</legs>
<lring>Snow Ring</lring>
<rring>Omniscient Ring</rring>
<feet>Scholar's Loafers</feet>
</set>
<!-- Set: Enfeebling Base -->
<set name="EnfeeblingBase" BaseSet="Idle">
<neck>Enfeebling Torque</neck>
<waist>Penitent's Rope</waist>
</set>
<!-- Set: Enfeebling Black (Dark Arts) -->
<set name="Enfeebling-BlackMagicDark" BaseSet="EnfeeblingBase">
<rear>Phantom Earring</rear>
<body>Scholar's Gown</body>
<lring>Snow Ring</lring>
<rring>Omniscient Ring</rring>
<legs>Mahatma Slops</legs>
</set>
<!-- Set: Enfeebling Black (Light Arts) -->
<set name="Enfeebling-BlackMagicLight" BaseSet="EnfeeblingBase">
<rear>Morion Earring +1</rear>
<head>remove</head>
<body>Ixion Cloak</body>
<lring>Snow Ring</lring>
<legs>Scholar's Pants</legs>
</set>
<!-- Set: Enfeebling White (Light Arts) -->
<set name="Enfeebling-WhiteMagicLight" BaseSet="EnfeeblingBase">
<head>remove</head>
<body>Ixion Cloak</body>
<legs>Scholar's Pants</legs>
</set>
<!-- Set: Enfeebling White (Dark Arts) -->
<set name="Enfeebling-WhiteMagicDark" BaseSet="EnfeeblingBase">
<head>Yigit Turban</head>
<body>Scholar's Gown</body>
<legs>Mahatma Slops</legs>
</set>
<!-- Set: Elemental -->
<set name="Elemental" BaseSet="Idle">
<neck>Elemental Torque</neck>
<lear>Moldavite Earring</lear>
<rear>Phantom Earring +1</rear>
<head>remove</head>
<body>Ixion Cloak</body>
<hands>Vicious Mufflers</hands>
<lring>Snow Ring</lring>
<rring>Omniscient Ring</rring>
<waist>Penitent's Rope</waist>
<legs>Mahatma Slops</legs>
<feet>Yigit Crackows</feet>
</set>
<!-- Set: Helices -->
<set name="Helix" BaseSet="Elemental">
<hands>Yigit Gages</hands>
<feet>River Gaiters</feet>
</set>
</group>
<!-- Group: Nuke Mid Skill -->
<group name="Mid" inherit="Low">
<set name="Elemental" BaseSet="Elemental" BaseGroup="Low">
<head>Argute M.board</head>
<body>Errant Hpl.</body>
<hands>Yigit Gages</hands>
</set>
<set name="Helix" BaseSet="Elemental" BaseGroup="Low">
<head>Argute M.board</head>
<body>Errant Hpl.</body>
<hands>Yigit Gages</hands>
<feet>River Gaiters</feet>
</set>
</group>
<!-- Group: Nuke High Skill -->
<group name="High" inherit="Low">
<set name="Elemental" BaseSet="Elemental" BaseGroup="Low">
<head>Argute M.Board</head>
<body>Scholar's Gown</body>
<hands>Genie Gages</hands>
</set>
<set name="Helix" BaseSet="Elemental" BaseGroup="Low">
<head>Argute M.board</head>
<body>Errant Hpl.</body>
<hands>Genie Gages</hands>
<feet>River Gaiters</feet>
</set>
</group>
</sets>
<rules>
<!-- Rule: Gear Based on Status -->
<!-- Rule: Equip Idle Set -->
<action type="equip" when="AfterCast|Idle" set="Idle" />
<if NotBuffactive="Sublimation: Activated" notspell="Sublimation">
<action type="equip" when="AfterCast|Idle">
<head>remove</head>
<body>Ixion Cloak</body>
</action>
</if>
<elseif NotBuffactive="Sublimation: Complete" spell="Sublimation">
<action type="equip" when="AfterCast|Idle">
<head>Scholar's M.Board</head>
<body>Argute Gown</body>
</action>
</elseif>
<!-- Rule: Equip Resting Set -->
<if NotBuffActive="Sublimation: Activated">
<action type="equip" when="Resting" set="Resting">
<head>Yigit Turban</head>
</action>
</if>
<else>
<action type="equip" when="Resting" set="Resting" />
</else>
<if CommandPrefix="/magic">
<!-- Rule: Gear Based on Spell Type -->
<if Skill="EnhancingMagic">
<if BuffActive="Light Arts|Addendum: White">
<if Spell="Stoneskin">
<action type="equip" when="precast" set="StoneskinLight" />
</if>
<elseif Spell="Sneak|Invisible">
<action type="Equip" when="precast" set="StealthLight" />
</elseif>
<elseif Spell="Phalanx|En*">
<action type="Equip" when="precast" set="EnhancingSkill" />
</elseif>
<else>
<action type="equip" when="precast" set="Haste" />
</else>
</if>
<elseif BuffActive="Dark Arts|Addendum: Black">
<if Spell="Stoneskin">
<action type="equip" when="precast" set="StoneskinDark" />
</if>
<elseif Spell="Sneak|Invisible">
<action type="Equip" when="precast" set="StealthDark" />
</elseif>
<elseif Spell="Phalanx|En*">
<action type="equip" when="precast" set="EnhancingDark" />
</elseif>
<else>
<action type="equip" when="precast" set="Haste" />
</else>
</elseif>
</if>
<elseif Skill="EnfeeblingMagic">
<if BuffActive="Light Arts|Addendum: White">
<action type="equip" when="precast" set="Enfeebling-%TypeLight" />
</if>
<elseif BuffActive="Dark Arts|Addendum: Black">
<action type="equip" when="precast" set="Enfeebling-%TypeDark" />
</elseif>
</elseif>
<elseif Skill="DarkMagic">
<if Spell="Klimaform">
<action type="equip" when="precast" set="Haste" />
</if>
<else>
<action type="Equip" when="precast" set="Dark" />
</else>
</elseif>
<elseif Skill="ElementalMagic">
<if Spell="*helix">
<action type="equip" when="precast" set="Helix" />
</if>
<else>
<action type="Equip" when="precast" set="Elemental" />
</else>
</elseif>
<elseif Skill="HealingMagic">
<if Spell="*Raise*|*na|Erase">
<action type="equip" when="precast" set="Haste" />
</if>
<else>
<action type="Equip" when="precast" set="Healing" />
</else>
</elseif>
<if mode="OR" Spell="Sleep*" ValidTarget="Corpse">
<if Spell="Sleep II">
<action type="command" when="aftercast">wait 45;input /echo [%spell] Wearing off in 45s</action>
<action type="command" when="aftercast">wait 75;input /echo [%spell] Wearing off in 15s</action>
<action type="command" when="aftercast">wait 85;input /echo [%spell] Wearing off in 5s</action>
</if>
<elseif Spell="Sleep">
<action type="command" when="aftercast">wait 45;input /echo [%spell] Wearing off in 15s</action>
<action type="command" when="aftercast">wait 55;input /echo [%spell] Wearing off in 5s</action>
</elseif>
</if>
<!-- Rule: Staff/Obi based on Spell Name or Skill -->
<if NotStatus="Engaged" TPLT="20">
<if mode="or" spell="Bio*|Sleep*|Drain*|Aspir*|Cure*|Cura*" skill="ElementalMagic|EnfeeblingMagic">
<action type="equip">
<main>$%SpellElementStaff</main>
</action>
<if advanced='("%SpellElement"=="%DayElement")||("%SpellElement"=="%WeatherElement")'>
<action type="equip">
<waist>$%SpellElementObi</waist>
</action>
</if>
<if spell="Bli*|Aer*|Sto*|Thu*|Wat*|Fir*|*helix">
<if MPPAftercastLT="50">
<action type="equip">
<neck>Uggalepih Pendant</neck>
</action>
</if>
</if>
</if>
</if>
</if>
<!-- Rule: Correct Strategem for Proper Arts -->
<elseif CommandPrefix="/jobability">
<if spell="Penury|Parsimony">
<if BuffActive="Light Arts|Addendum: White">
<action type="ChangeSpell" Spell="Penury" />
<action type="Command">input /recast Penury</action>
</if>
<elseif BuffActive="Dark Arts|Addendum: Black">
<action type="ChangeSpell" Spell="Parsimony" />
<action type="Command">input /recast Parsimony</action>
</elseif>
</if>
<elseif spell="Celerity|Alacrity">
<if BuffActive="Light Arts|Addendum: White">
<action type="ChangeSpell" Spell="Celerity" />
<action type="Command">input /recast Celerity</action>
</if>
<elseif BuffActive="Dark Arts|Addendum: Black">
<action type="ChangeSpell" Spell="Alacrity" />
<action type="Command">input /recast Alacrity</action>
</elseif>
</elseif>
<elseif spell="Accession|Manifestation">
<if BuffActive="Light Arts|Addendum: White">
<action type="ChangeSpell" Spell="Accession" />
<action type="Command">input /recast Accession</action>
</if>
<elseif BuffActive="Dark Arts|Addendum: Black">
<action type="ChangeSpell" Spell="Manifestation" />
<action type="Command">input /recast Manifestation</action>
</elseif>
</elseif>
<elseif spell="Rapture|Ebullience">
<if BuffActive="Light Arts|Addendum: White">
<action type="ChangeSpell" Spell="Rapture" />
<action type="Command">input /recast Rapture</action>
</if>
<elseif BuffActive="Dark Arts|Addendum: Black">
<action type="ChangeSpell" Spell="Ebullience" />
<action type="Command">input /recast Ebullience</action>
</elseif>
</elseif>
<elseif spell="Addendum*">
<if BuffActive="Light Arts">
<action type="ChangeSpell" Spell="Addendum: White" />
<action type="Command">input /recast "Addendum: White"</action>
</if>
<elseif BuffActive="Dark Arts">
<action type="ChangeSpell" Spell="Addendum: Black" />
<action type="Command">input /recast "Addendum: Black"</action>
</elseif>
</elseif>
<!-- Rule: Gear Swap to cancel Job Ability Animation -->
<if EquipLegs="Yigit Seraweels">
<action type="equip">
<legs>Goliard Trews</legs>
</action>
</if>
<else>
<action type="equip">
<legs>Goliard Trews</legs>
</action>
</else>
</elseif>
<!-- Rule: Equip Desert Boots if weather element is Earth -->
<if advanced='("%Spell"=="Sandstorm")||("%WeatherElement"=="Earth")'>
<action type="equip" when="AfterCast">
<feet>Desert Boots</feet>
</action>
</if>
</rules>
</spellcast>
If anyone else feels like taking a look at it, feel free to give suggestions.