Finally finished a COR spellcast for my mule account; Can't think of any way to expand on it, so have fun with it~
Code:
<?xml version="1.0" ?>
<spellcast xmlns:xi="http://www.w3.org/2001/XInclude">
<config RequireVersion="2.3" />
<variables>
<!-- Elemental Staves -->
<var name="DarkStaff">Dark Staff</var>
<var name="LightStaff">Light Staff</var>
<var name="ThunderStaff">Thunder Staff</var>
<var name="IceStaff">Ice Staff</var>
<var name="FireStaff">Fire Staff</var>
<var name="WindStaff">Wind Staff</var>
<var name="WaterStaff">Water Staff</var>
<var name="EarthStaff">Earth Staff</var>
<!-- Special Equipment, set to 1 for the ones you have. -->
<var name="CommodoreTricorne">0</var>
<var name="CommodoreFrac">0</var>
<var name="LuzafRing">0</var>
<var name="UggPendant">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>
<var name="SalvageRing">0</var>
<!-- ** Echo lucky numbers ** -->
<var name="echolucky">1</var>
<!-- Sleep timers, announces to chat when sleep is wearing off. Set to 0 to not use. -->
<!-- (note: this is sort of very obvious usage of 3rd party programs, so turn off when around people you dont trust -->
<var name="SleepTimers">1</var>
<!-- Does not allow weapon swaps if your TP is greater than 10. -->
<var name="KeepTP">1</var>
<!-- Auto swaps between the two groups based on weapon/sub -->
<var name="AutoGroups">1</var>
<!-- Bullet/Ring names here -->
<var name="WSBullet">Steel Bullet</var>
<var name="TPBullet">Steel Bullet</var>
<var name="AssaultRing">Balrahn's Ring</var>
</variables>
<sets>
<group name="CORMage" default="Yes">
<set name="Engaged">
</set>
<set name="Idle">
<main>Earth Staff</main>
<sub lock="t">Wise Strap</sub>
<ammo>Steel Bullet</ammo>
<legs>denali Kecks</legs>
<body>Mirke Wardecors</body>
<feet>Hermes' Sandals</feet>
<head>Corsair's Tricorne</head>
<back>Amemet Mantle +1</back>
<neck>Peacock Charm</neck>
<lear>Moldavite Earring</lear>
<lring>Emerald Ring</lring>
<rring>Emerald Ring</rring>
<waist>Forest Belt</waist>
</set>
<set name="Slug Shot">
<ammo>$WSBullet</ammo>
<lear>Vision Earring</lear>
<feet>Corsair's Bottes</feet>
<legs>Denali kecks</legs>
<body>Corsair's Frac</body>
<head>Corsair's Tricorne</head>
<rring>Behemoth Ring</rring>
<lring>Behemoth Ring</lring>
<back>Amemet Mantle +1</back>
<neck>Peacock Charm</neck>
</set>
<set name="QDMAB">
<main>$%SpellElementStaff</main>
<sub lock="t">Wise Strap</sub>
<body>Mirke Wardecors</body>
<head>Corsair's Tricorne</head>
<neck>Agile Gorget</neck>
<hands>Mage's Cuffs</hands>
<waist>Forest Belt</waist>
<legs>denali kecks</legs>
<feet>Wood F Ledelsens</feet>
<lring>Emerald Ring</lring>
<rring>Emerald ring</rring>
<lear>Moldavite Earring</lear>
<rear>Drone Earring</rear>
<ammo>$WSBullet</ammo>
<back>Nomad's Mantle</back>
</set>
<set name="QDACC" BaseSet="QDMAB">
</set>
<set name="Resting" BaseSet="Idle">
<main>Dark Staff</main>
</set>
<set name="Leaden Salute">
<ammo>$WSBullet</ammo>
</set>
<set name="Cure">
<main>$%SpellElementStaff</main>
</set>
<set name="Stoneskin">
<waist>Remove</waist>
</set>
<set name="Ranged Attack">
<ammo>$TPBullet</ammo>
<lear>Vision Earring</lear>
<feet>Corsair's Bottes</feet>
<legs>Denali kecks</legs>
<body>Corsair's Frac</body>
<head>Corsair's Tricorne</head>
<rring>Behemoth Ring</rring>
<lring>Behemoth Ring</lring>
<back>Amemet Mantle +1</back>
<neck>Peacock Charm</neck>
</set>
</group>
<group name="CORMelee">
<set name="Engaged">
<main lock="t" />
<sub lock="t" />
<ranged lock="t" />
<body>Scorpion Harness</body>
<head>Walahra Turban</head>
<waist>Life Belt</waist>
<legs>Denali Kecks</legs>
<ammo>$WSBullet</ammo>
<lring>Emerald Ring</lring>
<rring>Sniper's Ring</rring>
<back>Amemet Mantle +1</back>
</set>
<set name="Idle">
<main lock="t"/>
<sub lock="t"/>
<head>Corsair's Tricorne</head>
<ammo>$WSBullet</ammo>
<legs>denali Kecks</legs>
<body>Mirke Wardecors</body>
<feet>Hermes' Sandals</feet>
<back>Amemet Mantle +1</back>
<neck>Peacock Charm</neck>
</set>
<set name="Slug Shot">
<ammo>$WSBullet</ammo>
<lear>Vision Earring</lear>
<feet>Corsair's Bottes</feet>
<legs>Denali kecks</legs>
<body>Corsair's Frac</body>
<head>Corsair's Tricorne</head>
<rring>Behemoth Ring</rring>
<lring>Behemoth Ring</lring>
<back>Amemet Mantle +1</back>
<neck>Peacock Charm</neck>
</set>
<set name="QDMAB">
<body>Mirke Wardecors</body>
<head>Corsair's Tricorne</head>
<neck>Agile Gorget</neck>
<hands>Mage's Cuffs</hands>
<waist>Forest Belt</waist>
<legs>denali kecks</legs>
<feet>Wood F Ledelsens</feet>
<lring>Emerald Ring</lring>
<rring>Emerald ring</rring>
<lear>Moldavite Earring</lear>
<rear>Drone Earring</rear>
<ammo>$WSBullet</ammo>
<back>Nomad's Mantle</back>
</set>
<set name="QDACC" BaseSet="QDMAB">
<lear>Drone Earring</lear>
</set>
<set name="Ranged Attack">
<ammo>$TPBullet</ammo>
<lear>Vision Earring</lear>
<feet>Corsair's Bottes</feet>
<legs>Denali kecks</legs>
<body>Corsair's Frac</body>
<head>Corsair's Tricorne</head>
<rring>Behemoth Ring</rring>
<lring>Behemoth Ring</lring>
<back>Amemet Mantle +1</back>
<neck>Peacock Charm</neck>
</set>
<set name="Resting" BaseSet="Idle" />
<set name="Cure" />
<set name="Stoneskin">
<waist>Remove</waist>
</set>
</group>
</sets>
<rules>
<if advanced='"$KeepTP"="1"'>
<if TPGT="10">
<action type="Disable" slot="main|sub|ranged" />
</if>
<else TPLT="10">
<action type="Enable" slot="main|sub|ranged" />
</else>
</if>
<if advanced='"$AutoGroups"="1"'>
<if advanced='"%EquipSub"="Wise Strap"' NotGroup="CORMage">
<action type="Command" when="Precast|Idle|Engaged">input /sc group CORMage</action>
</if>
<if advanced='"%EquipMain"="Joyeuse"' NotGroup="CORMelee">
<action type="command" when="Precast|Idle|Engaged">input /sc group CORMelee</action>
</if>
</if>
<if type="CorsairShot">
<!-- only equip pendant in situations you would equip full damage gear -->
<if MPPPreCastLT="50" Advanced='"$UggPendant"="1"' Spell="Thunder*|Earth*|Water*|Wind*|Ice*|Fire*">
<action type="equip" when="Precast">
<neck lock="yes">Uggalepih Pendant</neck>
</action>
</if>
<!-- Handle Elemental Obi's -->
<if Advanced='("%SpellElement"="%WeatherElement" OR "%SpellElement"="%DayElement") AND "$%SpellElementObi"="1"'>
<if Element="Thunder">
<equip when="precast"><waist lock="t">Rairin Obi</waist></equip>
</if>
<elseif Element="Ice">
<equip when="precast"><waist lock="t">Hyorin Obi</waist></equip>
</elseif>
<elseif Element="Fire">
<equip when="precast"><waist lock="t">Karin Obi</waist></equip>
</elseif>
<elseif Element="Wind">
<equip when="precast"><waist lock="t">Furin Obi</waist></equip>
</elseif>
<elseif Element="Water">
<equip when="precast"><waist lock="t">Suirin Obi</waist></equip>
</elseif>
<elseif Element="Earth">
<equip when="precast"><waist lock="t">Dorin Obi</waist></equip>
</elseif>
</if>
<if spell="Thunder*|Earth*|Water*|Wind*|Ice*|Fire*">
<action type="PrecastDelay" delay=".2" />
<equip when="precast" set="QDMAB" />
</if>
<elseif spell="Thunder*|Earth*|Water*|Wind*|Ice*|Fire*">
<if target="Tiamat|Genbu|Suzaku|Seiryu|Byakko|Kirin|Jormungand|Vrtra|Cerberus|Khimaira|Tyger|Sarameya">
<action type="PreCastDelay" delay=".2" />
<equip when="precast" set="QDACC" />
</if>
</elseif>
<else spell="Dark*|Light*">
<action type="PrecastDelay" delay=".2" />
<equip when="precast" set="QDACC" />
</else>
<!-- Timers for when sleep is wearing off. -->
<if advanced='"$SleepTimers"="1"'>
<if Spell="Light Shot">
<action type="command" when="aftercast">spellcast var inc sleepid;wait 15;input /echo [$sleepid:%spell] <%target> Wearing off in 45s</action>
<action type="command" when="aftercast">wait 45;input /echo [$sleepid:%spell] <%target> Wearing off in 15s</action>
<action type="command" when="aftercast">wait 55;input /echo [$sleepid:%spell] <%target> Wearing off in 5s;spellcast var dec sleepid;</action>
</if>
</if>
</if>
<if type="JobAbility" CommandPrefix="/ja|/jobability">
<if spell="Random Deal">
<if advanced='"$CommodoreFrac"="1"'>
<equip when="Precast"><body>Commodore Frac</body></equip>
</if>
</if>
</if>
<if type="CorsairRoll">
<action type="castdelay" delay=".2" />
<if NotSpell="Corsair*|Wild*">
<if advanced='"$CommodoreTricorne"="1"'>
<equip when="Precast"><head>Commodore Tricorne</head></equip>
</if>
</if>
<if spell="Corsair*">
<if advanced='"$LuzafRing"="1"'>
<equip when="Precast"><lring>Luzaf's Ring</lring></equip>
</if>
</if>
<if advanced='"$echolucky"="1"'>
<if spell="choral*|samurai*|scholar*">
<action type="command">input /echo [%spell] Lucky: 2 ~*~ Unlucky: 6</action>
</if>
<elseif spell="healer*|monk*|drachen*|gallant*|dancer*">
<action type="command">input /echo [%spell] Lucky: 3 ~*~ Unlucky: 7</action>
</elseif>
<elseif spell="ninja*|hunter*|chaos*|puppet*|beast*|warlock*">
<action type="command">input /echo [%spell] Lucky: 4 ~*~ Unlucky: 8</action>
</elseif>
<else spell="Fighter*|Wizard*|Rogue*|Evoker*|Cor*">
<action type="command">input /echo [%spell] Lucky: 5 ~*~ Unlucky: 9</action>
</else>
</if>
</if>
<if commandprefix="/range|/ra">
<equip when="Precast" set="Ranged Attack" />
<equip when="Aftercast" set="%status" />
</if>
<if type="WeaponSkill" commandprefix="/weaponskill|/ws">
<if mode="OR" advanced='%spelltargetdistance > 16.0' tplt="100">
<action type="cancelspell" />
<action type="command">input /echo Target out of range or not enough TP. %spell cancelled.</action>
<action type="return" />
</if>
<if spell="Slug Shot|Detonator">
<equip when="precast" set="Slug Shot" />
</if>
<else spell="Leaden Salute">
<equip when="precast" set="%spell" />
</else>
</if>
<if advanced='"%SubJob"="WHM|RDM"'>
<if skill="HealingMagic">
<if spell="Cure|Cure II|Cure III|Curaga*">
<action type="equip" when="precast" set="Cure" />
</if>
</if>
<elseif skill="EnhancingMagic">
<if spell="Stoneskin">
<equip set="Stoneskin" when="Precast" />
<if BuffActive="Stoneskin">
<action type="midcastdelay" delay="2.5" />
<action type="command" when="midcast">cancel 37</action>
</if>
</if>
</elseif>
</if>
<action type="Equip" set="%Status" when="AfterCast|Engaged|Disengaged|Idle|Resting" />
<if advanced='"$SalvageRing"="1"'>
<if Area="*Remnants|Nyzul*|Periqia|Ilrusi*|*Training Grounds|Lebros*|*Sanctum">
<equip><rring lock="True">$AssaultRing</rring></equip>
</if>
</if>
</rules>
</spellcast>