Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0" ?>
- <!--
- ===================================================
- ||
- || Aikar's BLM SpellCast Template
- ||
- || 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.
- ||
- || If you have any questions - Please post on the forums.
- ===================================================
- -->
- <spellcast>
- <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">1</var>
- <!-- use Sorc ring or not? set to 0 if you do not have it or dangerous location -->
- <var name="Ring">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">634</var>
- <var name="WHMRingHP">618</var>
- <var name="NINRingHP">634</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">Vourukasha I</var>
- <var name="DarkStaff">Chatoyant Staff</var>
- <var name="ThunderStaff">Apamajas I</var>
- <var name="LightStaff">Chatoyant Staff</var>
- <var name="WindStaff">Chatoyant Staff</var>
- <var name="FireStaff">Chatoyant Staff</var>
- <var name="EarthStaff">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">1</var>
- <var name="IceObi">1</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>Terra's Staff</main>
- <sub>Bugard Strap +1</sub>
- <ammo>Witchstone</ammo>
- <head>Goetia Petasos +2</head>
- <body>Goetia Coat +2</body>
- <hands>Serpentes Cuffs</hands>
- <legs>Tatsumaki Sitagoromo</legs>
- <feet>Serpentes Sabots</feet>
- <neck>Twilight Torque</neck>
- <lear>Colossus's Earring</lear>
- <rear>Ethereal Earring</rear>
- <lring>Aquilo's Ring</lring>
- <rring>Aquilo's Ring</rring>
- <back>Umbra Cape</back>
- <waist>Witch Sash</waist>
- </set>
- <set name="FastCast">
- <feet>Rostrum Pumps</feet>
- <rear>Loquac. Earring</rear>
- </set>
- <set name="Resting" BaseSet="Standard">
- <main>$DarkStaff</main>
- <sub>Bugard Strap +1</sub>
- <head>Goliard Chapeau</head>
- <body>Goetia Coat +2</body>
- <hands>Oracle's Gloves</hands>
- <legs>Yigit Seraweels</legs>
- <feet>Goliard Clogs</feet>
- <neck>Beak Necklace +1</neck>
- <rear>Antivenom Earring</rear>
- <waist>Qiqirn Sash +1</waist>
- </set>
- <set name="FullDamage">
- <sub>Bugard Strap +1</sub>
- <ammo>Witchstone</ammo>
- <head>Goetia Petasos +2</head>
- <body>Goetia Coat +2</body>
- <hands>Goetia Gloves +1</hands>
- <legs>Goetia Chausses +2</legs>
- <feet>Goetia Sabots +2</feet>
- <neck>Goetia Chain</neck>
- <back>Searing Cape</back>
- <lear>Novio Earring</lear>
- <rear>Hecate's Earring</rear>
- <lring>Aquilo's Ring</lring>
- <rring>Aquilo's Ring</rring>
- </set>
- <set name="FullDamage2" BaseSet="Standard">
- <sub>Bugard Strap +1</sub>
- <ammo>Witchstone</ammo>
- <head>Selenian Cap</head>
- <body>Goetia Coat +2</body>
- <hands>Goetia Gloves +1</hands>
- <legs>Goetia Chausses +2</legs>
- <feet>Goetia Sabots +2</feet>
- <neck>Goetia Chain</neck>
- <back>Searing Cape</back>
- <lear>Novio Earring</lear>
- <rear>Hecate's Earring</rear>
- <lring>Aquilo's Ring</lring>
- <rring>Aquilo's Ring</rring>
- </set>
- <set name="HighResist" BaseSet="FullDamage">
- <head>Goetia Petasos +2</head>
- <hands>Wizard's Gloves +1</hands>
- <feet>Yigit Crackows</feet>
- <rear>Elemental Earring</rear>
- <back>Merciful Cape</back>
- </set>
- <set name="MidResist" BaseSet="FullDamage">
- <head>Goetia Petasos +2</head>
- <rear>Elemental Earring</rear>
- <back>Merciful Cape</back>
- <feet>Yigit Crackows</feet>
- </set>
- <set name="LightResist" BaseSet="FullDamage" />
- <set name="DarkMagic">
- <rear>Dark Earring</rear>
- <body>Nashira Manteel</body>
- <hands>Sorcerer's Gloves</hands>
- <legs>Portent Pants</legs>
- <feet>Goetia Sabots +2</feet>
- <back>Merciful Cape</back>
- <neck>Aesir Torque</neck>
- </set>
- <set name="EnfeeblingMagic">
- <body>Wzd. Coat +1</body>
- <head>Genie Tiara</head>
- <neck>Enfeebling Torque</neck>
- <hands>Oracle's Gloves</hands>
- <legs>Portent Pants</legs>
- <rear>Enfeebling Earring</rear>
- <feet>Avocat Pigaches</feet>
- </set>
- <set name="HealingMagic">
- <main>$LightStaff</main>
- <body>Nashira Manteel</body>
- </set>
- <set name="DivineMagic" />
- <set name="EnhancingMagic">
- <main lock="t">Alkalurops</main>
- <head>Goliard Chapeau</head>
- <body>Goetia Coat +2</body>
- <back>Ixion Cape</back>
- <waist>Witch Sash</waist>
- <legs>Portent Pants</legs>
- <feet>Morrigan's Pigaches</feet>
- </set>
- </group>
- </sets>
- <rules>
- <if status="Engaged" TPGT="10">
- <action type="equip" when="precast">
- <main lock="t" />
- <sub lock="t" />
- </action>
- <action type="equip" when="midcast">
- <main lock="t" />
- <sub lock="t" />
- </action>
- <action type="equip" when="aftercast">
- <main lock="t" />
- <sub lock="t" />
- </action>
- </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*">
- <action type="changetarget" target="<me>" />
- </if>
- <if SpellTargetType="NONE" ValidTarget="*Self*">
- <action type="changetarget" target="<me>" />
- </if>
- <if Spell="Escape|Warp|Warp II|Retrace|Teleport-*|Reraise|Tractor"> <action type="return" /> </if>
- <!-- set of gear to equip when finished casting a spell or coming back from resting mp (idle set) -->
- <action type="equip" when="Idle|aftercast" set="Standard" />
- <!-- set of gear to equip when resting -->
- <action type="equip" when="Resting" set="Resting" />
- <if Spell="Stun">
- <!-- equip gear that helps stun, and nothing else -->
- <action type="equip" set="DarkMagic|FastCast">
- <main>$ThunderStaff</main>
- <body>Nashira Manteel</body>
- </action>
- </if>
- <if Spell="Drain|Aspir">
- <!-- equip gear that helps stun, and nothing else -->
- <action type="equip" set="DarkMagic|FastCast">
- <rring>Excelsis Ring</rring>
- </action>
- </if>
- <else>
- <!-- equip fast cast gear -->
- <action type="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|Suzaku|Seiryu|Byakko|Kirin|Jormungand|Ouryu|Vrtra|Cerberus|Khimaira|Fafnir|Nidhogg|Aspidochelone|King Behemoth|Tinnin|Sarameya|Tyger|Jailer of Love">
- <if Advanced='"$%SpellElementGrip" == "1"'>
- <action type="equip" when="midcast">
- <sub lock="true">%SpellElement Grip</sub>
- </action>
- </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 -->
- <action type="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|Ouryu|Nosferatu|Sarameya" NotBuffActive="Elemental Seal">
- <action type="equip" when="precast|midcast" Set="HighResist" />
- </if>
- <else>
- <!-- if mob is not high resist, is it a mid resist mob? -->
- <if SpellTargetName="Fafnir|Elatha|Nidhogg|Aspidochelone|Khromasoul Bhurborlor|King Behemoth|Jailer of Love|Tinnin|Kaiser Behemoth" NotBuffActive="Elemental Seal">
- <action type="equip" when="precast|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">
- <action type="equip" when="precast|midcast" Set="LightResist" />
- </if>
- <else>
- <action type="equip" when="precast|midcast" Set="FullDamage2" />
- </else>
- </if>
- <else>
- <action type="equip" when="precast|midcast" Set="FullDamage2" />
- </else>
- <!-- only equip pendant in situations you would equip full damage gear -->
- <if MPPAfterCastLT="50" Advanced="$UggPendant==1">
- <action type="equip" when="midcast">
- <neck lock="yes">Uggalepih Pendant</neck>
- </action>
- </if>
- </else>
- </else>
- </else>
- </if>
- <else>
- <!-- for any other type of spell, just equip matching set name. -->
- <action type="equip" when="precast|midcast" Set="Standard|%Skill" />
- </else>
- </if>
- <else>
- <action type="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">
- <action type="equip" set="MinusHP" />
- </if>
- <!-- Handle Elemental Obi's -->
- <if Advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementObi" = "1"'>
- <if Element="Dark"><action type="equip" when="midcast"><waist lock="yes">Anrin Obi</waist></action></if>
- <elseif Element="Light"><action type="equip" when="midcast"><waist lock="yes">Korin Obi</waist></action></elseif>
- <elseif Element="Thunder"><action type="equip" when="midcast"><waist lock="yes">Rairin Obi</waist></action></elseif>
- <elseif Element="Ice"><action type="equip" when="midcast"><waist lock="yes">Hyorin Obi</waist></action></elseif>
- <elseif Element="Fire"><action type="equip" when="midcast"><waist lock="yes">Karin Obi</waist></action></elseif>
- <elseif Element="Wind"><action type="equip" when="midcast"><waist lock="yes">Furin Obi</waist></action></elseif>
- <elseif Element="Water"><action type="equip" when="midcast"><waist lock="yes">Suirin Obi</waist></action></elseif>
- <elseif Element="Earth"><action type="equip" when="midcast"><waist lock="yes">Dorin Obi</waist></action></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>
- <head lock="yes">Selenian Cap</head>
- <feet lock="yes">Yigit Crackows</feet>
- <back lock="yes">Twilight Cape</back>
- </equip>
- </if>
- <!-- Timers for when sleep is wearing off. -->
- <if advanced='"$SleepTimers"="1"'>
- <if Spell="Sleep II|Sleepga II">
- <action type="command" when="aftercast">spellcast var inc sleepid;wait 45;input /p [$sleepid:%spell] <%target> Wearing off in 45s</action>
- <action type="command" when="aftercast">wait 75;input /p [$sleepid:%spell] <%target> Wearing off in 15s</action>
- <action type="command" when="aftercast">wait 85;input /p [$sleepid:%spell] <%target> Wearing off in 5s;spellcast var dec sleepid;</action>
- </if>
- <elseif Spell="Sleep|Sleepga">
- <action type="command" when="aftercast">spellcast var inc sleepid;wait 45;input /p [$sleepid:%spell] <%target> Wearing off in 15s</action>
- <action type="command" when="aftercast">wait 55;input /p [$sleepid:%spell] <%target> Wearing off in 5s;spellcast var dec sleepid;</action>
- </elseif>
- </if>
- <!-- auto cancel sneak/utsu/stoneskin/blink when recasting them. Requires Cancel Plugin -->
- <if Spell="Sneak" BuffActive="Sneak" SpellTargetType="Self">
- <action type="command" when="midcast">cancel 71</action>
- <action type="midcastdelay" delay="1.8" />
- </if>
- <if spell="Utsusemi: Ichi" BuffActive="Copy Image">
- <action type="midcastdelay" delay="3.0" />
- <action type="Command" when="midcast">cancel 66</action>
- </if>
- <elseif Spell="Stoneskin" BuffActive="Stoneskin">
- <action type="command" when="midcast">cancel 37</action>
- <action type="midcastdelay" delay="4.8" />
- </elseif>
- <elseif Spell="Blink" BuffActive="Blink">
- <action type="command" when="midcast">cancel 36</action>
- <action type="midcastdelay" delay="4.5" />
- </elseif>
- <!-- finally, equip our staff! -->
- <action type="equip" when="midcast">
- <main>$%SpellElementStaff</main>
- </action>
- </else>
- </rules>
- </spellcast>
Add Comment
Please, Sign In to add comment