Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0" ?>
- <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">1</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">1</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">750</var>
- <var name="WHMRingHP">750</var>
- <var name="NINRingHP">750</var>
- <var name="SCHRingHP">750</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">Teiwaz</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">1</var>
- <var name="IceObi">1</var>
- <var name="FireObi">1</var>
- <var name="WindObi">1</var>
- <var name="WaterObi">1</var>
- <var name="EarthObi">1</var>
- <var name="TwilightCape">1</var>
- <!-- Zodiac Ring -->
- <var name="FireRing">Zodiac Ring</var>
- <var name="IceRing">Zodiac Ring</var>
- <var name="WindRing">Zodiac Ring</var>
- <var name="EarthRing">Zodiac Ring</var>
- <var name="ThunderRing">Zodiac Ring</var>
- <var name="WaterRing">Zodiac Ring</var>
- </variables>
- <sets>
- <group name="BLM" default="yes">
- <set name="BLM-OtherItems">
- <main>Arka IV</main>
- <main>Chatoyant Staff</main>
- <main>Vourukasha I</main>
- <main>Teiwaz</main>
- <neck>Stoicheion Medal</neck>
- <item>Zodiac Ring</item>
- <item>Excelsis Ring</item>
- <waist>Karin Obi</waist>
- <waist>Hyorin Obi</waist>
- <waist>Furin Obi</waist>
- <waist>Dorin Obi</waist>
- <waist>Rairin Obi</waist>
- <waist>Suirin Obi</waist>
- <waist>Korin Obi</waist>
- <waist>Anrin Obi</waist>
- <back>Twilight Cape</back>
- <legs>Sorcerer's Tonban</legs>
- </set>
- <set name="Standard">
- <main>Terra's Staff</main>
- <sub>Bugard Strap +1</sub>
- <ammo>Snow Sachet</ammo>
- <head>Wivre Hairpin</head>
- <neck>Twilight Torque</neck>
- <lear>Moonshade Earring</lear>
- <rear>Sorcerer's Earring</rear>
- <body>Goetia Coat +2</body>
- <hands>Serpentes Cuffs</hands>
- <lring>Dark Ring</lring>
- <rring>Dark Ring</rring>
- <back>Umbra Cape</back>
- <waist>Penitent's Rope</waist>
- <legs>Stearc Subligar</legs>
- <feet>Serpentes Sabots</feet>
- </set>
- <set name="FastCast">
- <rear>Loquac. Earring</rear>
- </set>
- <set name="Resting">
- <main>$DarkStaff</main>
- <head>Selenian Cap</head>
- <body>Errant Hpl.</body>
- <hands>Tethyan Cuffs +3</hands>
- <legs>Sagacity Lappas</legs>
- <feet>Serpentes Sabots</feet>
- </set>
- <set name="MinusHP">
- <main>$%SpellElementStaff</main>
- <head>Goetia Petasos +2</head>
- <lear>Graiai Earring</lear>
- <hands>Zenith Mitts</hands>
- <lring>Bifrost Ring</lring>
- <rring>Serket Ring</rring>
- <waist>Penitent's Rope</waist>
- </set>
- <set name="FullDamage">
- <ammo>Witchstone</ammo>
- <head>Nares Cap</head>
- <neck>Stoicheion Medal</neck>
- <lear>Novio Earring</lear>
- <rear>Hecate's Earring</rear>
- <body>Nares Saio</body>
- <hands>Goetia Gloves +2</hands>
- <lring>Sorcerer's Ring</lring>
- <rring>Strendu Ring</rring>
- <back>Searing Cape</back>
- <waist>Cognition belt</waist>
- <legs>Goet. Chausses +2</legs>
- <feet>Nares Clogs</feet>
- </set>
- <set name="HighResist">
- <sub>Bugard Strap +1</sub>
- <ammo>Snow Sachet</ammo>
- <head>Goetia Petasos +2</head>
- <neck>Goetia Chain</neck>
- <lear>Moonshade Earring</lear>
- <rear>Strophadic Earring</rear>
- <body>Hyksos Robe +1</body>
- <hands>Src. Gloves +2</hands>
- <lring>Irrwisch Ring</lring>
- <rring>Icesoul Ring</rring>
- <back>Goetia Mantle</back>
- <waist>Olympus Sash</waist>
- <legs>Goet. Chausses +2</legs>
- <feet>Ihwa Huaraches</feet>
- </set>
- <set name="MidResist" BaseSet="FullDamage">
- </set>
- <set name="LightResist" BaseSet="FullDamage">
- </set>
- <set name="DarkMagic">
- <sub>Bugard Strap +1</sub>
- <head>Laurel Wreath</head>
- <neck>Goetia Chain</neck>
- <lear>Moonshade Earring</lear>
- <rear>Abyssal Earring</rear>
- <body>Goetia Coat +2</body>
- <hands>Src. Gloves +2</hands>
- <lring>Icesoul Ring</lring>
- <rring>Icesoul Ring</rring>
- <back>Merciful Cape</back>
- <waist>Cognition Belt</waist>
- <legs>Portant Pants</legs>
- <feet>Goetia Sabots +2</feet>
- </set>
- <set name="EnfeeblingMagic">
- <sub>Bugard Strap +1</sub>
- <head>Igqira Tiara</head>
- <neck>Goetia Chain</neck>
- <lear>Moonshade Earring</lear>
- <rear>Abyssal Earring</rear>
- <body>Wizard's Coat</body>
- <hands>Goetia Gloves +2</hands>
- <lring>Tamas Ring</lring>
- <rring>Snow Ring</rring>
- <back>Goetia Mantle</back>
- <waist>Cognition Belt</waist>
- <legs>Portent Pants</legs>
- <feet>Rubeus Boots</feet>
- </set>
- <set name="HealingMagic">
- <main>Arka IV</main>
- <head>Selenian Cap</head>
- <hands>Serpentes Cuffs</hands>
- <waist>Penitent's Rope</waist>
- <feet>Serpentes Sabots</feet>
- </set>
- <set name="DivineMagic">
- </set>
- <set name="EnhancingMagic">
- </set>
- </group>
- </sets>
- <rules>
- <!-- Status -->
- <if BuffActive="Silence" CommandPrefix="/ma|/magic|/ninjutsu">
- <action Type="CancelSpell" />
- <action Type="Command">input /p Silenced</action>
- </if>
- <if BuffActive="Sleep">
- <action Type="CancelSpell" />
- <action Type="Command">input /p zz-ga</action>
- <action type="command" when="midcast">cancel 37</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>
- </action>
- <!-- these codes just print Stun in auto translate into chat. -->
- <action type="command">input /p \xFD\x07\x02\x12\xFC\xFD > <%SpellTarget></action>
- </if>
- <else>
- <!-- equip fast cast gear -->
- <action type="equip" Set="FastCast" />
- <!-- 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" 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="Bot*|Prov*|Ig*|Morta|Bismark" NotBuffActive="Elemental Seal">
- <action type="equip" when="precast" Set="HighResist" />
- </if>
- <else>
- <!-- if mob is not high resist, is it a mid resist mob? -->
- <if SpellTargetName="Bish*|Aspi*|Qilin|Kalasu*|Gaunab|Ocythoe|Nidhogg" 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="FullDamage" />
- </else>
- </if>
- <else>
- <action type="equip" when="precast|midcast" Set="FullDamage" />
- </else>
- </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 -->
- <action type="equip" set="MinusHP" />
- </if>
- </if>
- <else>
- <!-- if no HP amount is specified for the current subjob, just always equip minushp as precast -->
- <action type="equip" set="MinusHP" />
- </else>
- <action type="equip" when="midcast">
- <lring>Sorcerer's Ring</lring>
- </action>
- </if>
- </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>
- <if spell="Drain*|Aspir*">
- <action type="equip" when="midcast">
- <rring lock="t">Excelsis Ring</rring>
- </action>
- </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>
- </equip>
- </if>
- <if Advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$TwilightCape" = "1"'>
- <action type="equip" when="midcast"><back lock="yes">Twilight Cape</back></action>
- </if>
- <!-- Zodiac Ring -->
- <if Advanced='"%SpellElement" = "%DayElement"'>
- <action type="equip" when="midcast">
- <rring lock="t">$%SpellElementRing</rring>
- </action>
- </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 /echo [$sleepid:%spell] <%target> Wearing off in 45s</action>
- <action type="command" when="aftercast">wait 75;input /echo [$sleepid:%spell] <%target> Wearing off in 15s</action>
- <action type="command" when="aftercast">wait 85;input /echo [$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 /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>
- </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>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement