Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0" ?>
- <!--
- ===================================================
- ||
- || Backstab's BLM SpellCast Template (thankyou akar ;p>.>
- ||
- || This file is designed to be easily used by others.
- || Simply editing in your own gear and modifying the variables up top
- || should be all that is needed to make use of this file.
- ||
- || Please be sure to configure the variables prior to use.
- ||
- || Cause i know you all are noobs
- ===================================================
- -->
- <spellcast xmlns:xi="http://www.w3.org/2001/XInclude">
- <config
- RequireVersion="2.22"
- />
- <variables>
- <!-- 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">0</var>
- <!-- use BLM AF2 pants or not? Set to 0 if you do not have it -->
- <var name="BLMAF2Pants">0</var>
- <!-- use Sorc ring or not? set to 0 if you do not have it or dangerous location -->
- <var name="Ring">0</var>
- <!-- Idle Set -->
- <var name="Stun">0</var>
- <!-- use Ugg Pendant or not? set to 0 if you do not have it. -->
- <var name="UggPendant">0</var>
- <!-- Set HP Variables for what the maximum amount of HP you can have to trigger sorc ring is for each subjob -->
- <var name="RDMRingHP">597</var>
- <var name="WHMRingHP">583</var>
- <var name="NINRingHP">597</var>
- <!-- Elemental Grips, set to 1 for each you have -->
- <var name="LightGrip">0</var>
- <var name="DarkGrip">0</var>
- <var name="ThunderGrip">0</var>
- <var name="IceGrip">0</var>
- <var name="FireGrip">0</var>
- <var name="WindGrip">0</var>
- <var name="WaterGrip">0</var>
- <var name="EarthGrip">0</var>
- <!-- Elemental Staffs, input what staff to use for each element here -->
- <var name="IceStaff">varuna's 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">varuna's 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">0</var>
- <var name="LightObi">0</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>
- </variables>
- <sets>
- <group name="Main" default="yes">
- <set name="Standard">
- <main>owleyes</main>
- <sub>Genbu's shield</sub>
- <ammo>impatients</ammo>
- <head>Zelus tiara</head>
- <neck>Wiglen gorget</neck>
- <lear>black Earring</lear>
- <rear>mermans Earring</rear>
- <body>rubeus jacket</body>
- <hands>Serpentes Cuffs</hands>
- <lring>paguroidea Ring</lring>
- <rring>defending ring</rring>
- <back>Shadow mantle</back>
- <waist>resolute Belt</waist>
- <legs>nares trews</legs>
- <feet>Serpentes Sabots</feet>
- </set>
- <set name="PDT">
- <main>Earth staff</main>
- <ammo>Incantor Stone</ammo>
- <head>Nefer Khat</head>
- <neck>Twilight torque</neck>
- <lear>black Earring</lear>
- <rear>merman's Earring</rear>
- <body>Rubeus Jacket</body>
- <hands>Serpentes Cuffs</hands>
- <lring>Defending Ring</lring>
- <rring>Dark Ring</rring>
- <back>Shadow Mantle</back>
- <waist>resolute Belt</waist>
- <legs>Nares Trews</legs>
- <feet>Serpentes Sabots</feet>
- </set>
- <set name="FastCast">
- <head>Nares Cap</head>
- <sub>Arbuda grip</sub>
- <lear>Loquacious Earring</lear>
- <hands>repartie gloves</hands>
- <rring>Prolix Ring</rring>
- <waist>goading Belt</waist>
- <body>Hedera cotehardie</body>
- <legs>Rubeus Spats</legs>
- <feet>Chelona Boots</feet>
- <back>Swith cape</back>
- </set>
- <set name="Resting" BaseSet="Standard">
- <body>Errant Hpl.</body>
- <main>$darkstaff</main>
- <sub>Raptor Strap +1</sub>
- <head>Cobra Unit hat</head>
- <waist>Qiqirn Sash +1</waist>
- <feet>Chelona boots</feet>
- <hands>Nares cuffs</hands>
- <neck>Beak Necklace</neck>
- <lring>Serket Ring</lring>
- <rring>Ether Ring</rring>
- <lear>Relaxing Earring</lear>
- <rear>Antivenom Earring</rear>
- <legs>Sagacity Lappas</legs>
- <back>Felicitas Cape</back>
- </set>
- <set name="MinusHP">
- <head>Zenith Crown</head>
- <back>Ixion Cape</back>
- <hands>Zenith Mitts</hands>
- <neck>Morgana's Choker</neck>
- <feet>Rostrum Pumps</feet>
- <ammo>White Tathlum</ammo>
- </set>
- <set name="FullDamage" BaseSet="Standard">
- <sub>Bugard Strap +1</sub>
- <ammo>witchstone</ammo>
- <neck>stoicheion medal</neck>
- <lear>strophadic Earring</lear>
- <rear>Hecate's earring</rear>
- <head>nares cap</head>
- <body>nares saio</body>
- <hands>nares cuffs</hands>
- <waist>wanion belt</waist>
- <lring>icesoul Ring</lring>
- <rring>Strendu Ring</rring>
- <back>Searing Cape</back>
- <legs>rubeus spats</legs>
- <feet>nares clogs</feet>
- </set>
- <set name="HighResist" BaseSet="FullDamage">
- <hands>nares cuffs</hands>
- <head>nares cap</head>
- <feet>nares clogs</feet>
- </set>
- <set name="MidResist" BaseSet="FullDamage">
- <head>nares cap</head>
- <hands>nares cuffs</hands>
- </set>
- <set name="LightResist" BaseSet="FullDamage">
- <head>nares cap</head>
- </set>
- <set name="DarkMagic" Baseset="FastCast">
- <head>Appetence Crown</head>
- <main>$darkStaff</main>
- <legs>rubeus spats</legs>
- <neck>dark torque</neck>
- <lring>archon ring</lring>
- </set>
- <set name="EnfeeblingMagic" Baseset="FastCast">
- <main lock="yes">$WaterStaff</main>
- <neck>enfeebling Torque</neck>
- </set>
- <set name="HealingMagic" Baseset="FastCast">
- <neck>phalaina locket</neck>
- </set>
- <set name="DivineMagic" Baseset="FastCast">
- <main lock="yes">$WaterStaff</main>
- </set>
- <set name="EnhancingMagic" Baseset="FastCast">
- <main lock="yes">$WaterStaff</main>
- <waist>emphatikos rope</waist>
- </set>
- </group>
- </sets>
- <rules>
- <if spell="Poison V">
- <if advanced='"$Stun"="0"'>
- <action type="var" cmd="set Stun 1" />
- <addtochat color="5"> >>>> PDT ----- </addtochat>
- <action type="equip" when="Idle|aftercast" set="PDT" />
- </if>
- <elseif advanced='"$Stun"="1"'>
- <action type="var" cmd="set Stun 0" />
- <addtochat color="5"> >>>> Refresh ---- </addtochat>
- <action type="equip" when="Idle|aftercast" set="Standard" />
- </elseif>
- </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="<me>" />
- </if>
- <if SpellTargetType="NONE" ValidTarget="*Self*">
- <changetarget target="<me>" />
- </if>
- <if Spell="Escape|Warp|Warp II|Retrace|Teleport-*|Reraise|Tractor">
- <return />
- </if>
- <!-- set of gear to equip when finished casting a spell or coming back from resting mp (idle set) -->
- <equip when="Idle|aftercast" set="Standard" />
- <!-- set of gear to equip when resting -->
- <equip when="Resting" set="Resting" />
- <if Spell="Stun">
- <!-- equip gear that helps stun, and nothing else -->
- <equip set="DarkMagic|FastCast">
- <lring>Balrahn's ring</lring>
- <neck>Dark Torque</neck>
- <rear>Aredan Earring</rear>
- <lear>Saviesa pearl</lear>
- <feet>Argute Loafers +2</feet>
- <head>Zelus Tiara</head>
- <main>apamajas II</main>
- </equip>
- <!-- these codes just print Stun in auto translate into chat. -->
- <command>input /p</command>
- </if>
- <else>
- <!-- equip fast cast gear -->
- <equip Set="FastCast" />
- <!-- Elemental Grip checks. Are we casting an enfeeble, or are we casting on a resistant mob? -->
- <if mode="OR" NotSkill="ElementalMagic" Spell="Frost|Drown|Rasp|Burn|Shock|Choke" SpellTargetName="Tiamat|Genbu|Suzaku|Seiryu|Byakko|Kirin|Jormungand|Ouryu|Vrtra|Cerberus|Khimaira|Fafnir|Nidhogg|Aspidochelone|King Behemoth|Tinnin|Sarameya|Tyger|Jailer of Love">
- <if Advanced='"$%SpellElementGrip" == "1"'>
- <equip when="midcast">
- <sub lock="true">%SpellElement Grip</sub>
- </equip>
- </if>
- </if>
- <!-- if were handling spells -->
- <if Skill="*Magic">
- <!-- if this is elemental magic (nukes/dot's, then do special handling -->
- <if Skill="ElementalMagic">
- <if Spell="Frost|Drown|Rasp|Burn|Shock|Choke">
- <!-- equip elemental/INT gear for DoT's -->
- <equip when="precast|midcast" Set="HighResist" />
- </if>
- <else>
- <!-- this is an actual nuke. Check target to be a known high resist mob (and that ES is not active) -->
- <if SpellTargetName="Tiamat|Genbu|Suzaku|Seiryu|Byakko|Kirin|Jormungand|Vrtra|Cerberus|Khimaira|Tyger|Jailer of Love|Sarameya" NotBuffActive="Elemental Seal">
- <equip when="midcast" Set="HighResist" />
- </if>
- <else>
- <!-- if mob is not high resist, is it a mid resist mob? -->
- <if SpellTargetName="Fafnir|Nidhogg|Aspidochelone|King Behemoth|Tinnin|Ouryu" NotBuffActive="Elemental Seal">
- <equip when="midcast" Set="MidResist" />
- </if>
- <else>
- <!-- Normal mob, go full damage gear. -->
- <if mode="or" Area="Dynamis *|Hazhalm*" SpellTargetName="Lambton Worm|Sandworm|Guivre|King Arthro|Serket">
- <if NotBuffActive="Elemental Seal">
- <equip when="midcast" Set="LightResist" />
- </if>
- <else>
- <equip when="midcast" Set="FullDamage" />
- </else>
- </if>
- <else>
- <equip when="midcast" Set="FullDamage" />
- </else>
- <!-- only equip pendant in situations you would equip full damage gear -->
- <if MPPAfterCastLT="50" Advanced="$UggPendant==1">
- <equip when="midcast">
- <neck lock="yes">Uggalepih Pendant</neck>
- </equip>
- </if>
- </else>
- <!-- check for Sorc Ring if mid or low resist mob. HP values to compare to are in variables above. -->
- <if advanced='$Ring == 1'>
- <!-- make sure we have an HP variable set for current subjob -->
- <if Advanced='"$%SubJobRingHP" !="$%SubJobRingHP"'>
- <if Advanced='%HP > $%SubJobRingHP'>
- <!-- if you have too much HP at the time of casting, equip minus hp -->
- <equip set="MinusHP" />
- </if>
- </if>
- <else>
- <!-- if no HP amount is specified for the current subjob, just always equip minushp as precast -->
- <equip set="MinusHP" />
- </else>
- <equip when="midcast">
- <lring>Sorcerer's Ring</lring>
- </equip>
- </if>
- </else>
- </else>
- </if>
- <else>
- <!-- for any other type of spell, just equip matching set name. -->
- <equip when="precast|midcast" Set="Standard|%Skill" />
- </else>
- </if>
- <else>
- <equip when="precast|midcast" Set="Standard" />
- </else>
- <!-- so i can see in general how much my drain did. If Ring=0 then its a dangerous spot and shouldnt drop HP. -->
- <if Spell="Drain" Advanced="$Ring==1">
- <equip set="MinusHP" />
- </if>
- <!-- Handle Elemental Obi's -->
- <if Advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementObi" = "1"'>
- <if Element="Dark">
- <equip when="midcast">
- <waist lock="yes">Anrin Obi</waist>
- </equip>
- </if>
- <elseif Element="Light">
- <equip when="midcast">
- <waist lock="yes">Korin Obi</waist>
- </equip>
- </elseif>
- <elseif Element="Thunder">
- <equip when="midcast">
- <waist lock="yes">Rairin Obi</waist>
- </equip>
- </elseif>
- <elseif Element="Ice">
- <equip when="midcast">
- <waist lock="yes">Hyorin Obi</waist>
- </equip>
- </elseif>
- <elseif Element="Fire">
- <equip when="midcast">
- <waist lock="yes">Karin Obi</waist>
- </equip>
- </elseif>
- <elseif Element="Wind">
- <equip when="midcast">
- <waist lock="yes">Furin Obi</waist>
- </equip>
- </elseif>
- <elseif Element="Water">
- <equip when="midcast">
- <waist lock="yes">Suirin Obi</waist>
- </equip>
- </elseif>
- <elseif Element="Earth">
- <equip when="midcast">
- <waist lock="yes">Dorin Obi</waist>
- </equip>
- </elseif>
- </if>
- <!-- Handle AFv2 Pants, but do not equip pants if we already have Weather x2 and day bonuses from obi alone as obi alone hits the 35% damage cap. -->
- <if Advanced='(!((bool)strmatch("* x2","%Weather") AND "%WeatherElement" = "%SpellElement" AND "$%SpellElementObi" = "1") OR !("%WeatherElement" = "%SpellElement")) AND ("%SpellElement" = "%DayElement" AND "$BLMAF2Pants" = "1") AND ("%skill"="ElementalMagic")'>
- <equip When="MidCast">
- <legs Lock="Yes">Sorcerer's Tonban</legs>
- </equip>
- </if>
- <!-- Timers for when sleep is wearing off. -->
- <if advanced='"$SleepTimers"="1"'>
- <if Spell="Sleep II|Sleepga II">
- <command when="aftercast">spellcast var inc sleepid;wait 45;input /p [$sleepid:%spell] <%target> Wearing off in 45s</command>
- <command when="aftercast">wait 75;input /p [$sleepid:%spell] <%target> Wearing off in 15s</command>
- <command when="aftercast">wait 85;input /p [$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 /p [$sleepid:%spell] <%target> Wearing off in 15s</command>
- <command when="aftercast">wait 55;input /p [$sleepid:%spell] <%target> Wearing off in 5s;spellcast var dec sleepid;</command>
- </elseif>
- </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="1.8" />
- </if>
- <if spell="Utsusemi: Ichi" BuffActive="Copy Image">
- <midcastdelay delay="3.0" />
- <command when="midcast">cancel 66</command>
- </if>
- <elseif Spell="Stoneskin" BuffActive="Stoneskin">
- <command when="midcast">cancel 37</command>
- <midcastdelay delay="4.8" />
- </elseif>
- <elseif Spell="Blink" BuffActive="Blink">
- <command when="midcast">cancel 36</command>
- <midcastdelay delay="4.5" />
- </elseif>
- <!-- finally, equip our staff! -->
- <equip when="midcast">
- <main>$%SpellElementStaff</main>
- </equip>
- </else>
- </rules>
- </spellcast>
Advertisement
Add Comment
Please, Sign In to add comment