SC For Light Obi On Lights Days/weather

Language: JP EN DE FR
2010-09-08
New Items
users online
Forum » FFXI » Jobs » White Mage » SC for light obi on lights days/weather
SC for light obi on lights days/weather
 Phoenix.Gaiarorshack
Offline
Server: Phoenix
Game: FFXI
user: MiavPigen
Posts: 1245
By Phoenix.Gaiarorshack 2012-01-19 06:57:38
Link | Quote | Reply
 
sorry for a SC noob question
but how do i make it so i use light obi on lights day/weather in my cure set ?
 Fenrir.Leoheart
Offline
Server: Fenrir
Game: FFXI
user: Leoheart
Posts: 3012
By Fenrir.Leoheart 2012-01-19 07:17:57
Link | Quote | Reply
 
I'll send it to you in a pm later, at work :(
necroskull Necro Bump Detected! [201 days between previous and next post]
 Phoenix.Gaiarorshack
Offline
Server: Phoenix
Game: FFXI
user: MiavPigen
Posts: 1245
By Phoenix.Gaiarorshack 2012-08-07 12:18:45
Link | Quote | Reply
 
Bumping my old thread cause i lost track on getting korin obi and now finaly got it.

im got this little help from leoheart

i might not understand it right but for me it looks like it will equip korin obi whenever the spell element fits the weather or day

so like casting slow on earthday will trigger korin obi as well
to my logic (and i might totaly be wrong) it should be something like if %Weatherelement% = light or %dayelement% = light

so it only chance whne its lights day or weather


thanks for all the help
 Bismarck.Tragedie
Offline
Server: Bismarck
Game: FFXI
Posts: 322
By Bismarck.Tragedie 2012-08-07 13:55:54
Link | Quote | Reply
 
You are correct. A simple fix would be to change as follows, assuming you are only ever going to use the Light Obi and that's it:
Code
<if Advanced='"%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement"'>
<if Element="Light">
<action type="Equip" when="precast">
<waist lock="t">Korin Obi</waist>
</action>
</if>
</if>


A more common way to accomplish this is here (I believe this is from Aikar's original blm xml):

At the top, define which Obi's you have (or add into your current variables section, which is where you could also put your elemental staff variables):
Code
<variables> 
<var name="DarkObi">1</var>
<var name="LightObi">0</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>


Then in the rules section, add the rules to process all of the obis for the correct elements. At the bottom I've also added a check for the Twilight Cape:
Code
<if Advanced="("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementObi" = "1"">
<if Element="Dark">
<action when="midcast" type="equip">
<waist lock="yes">Anrin Obi</waist>
</action>
</if>

<elseif Element="Light">
<action when="midcast" type="equip">
<waist lock="yes">Korin Obi</waist>
</action>
</elseif>

<elseif Element="Thunder">
<action when="midcast" type="equip">
<waist lock="yes">Rairin Obi</waist>
</action>
</elseif>

<elseif Element="Ice">
<action when="midcast" type="equip">
<waist lock="yes">Hyorin Obi</waist>
</action>
</elseif>

<elseif Element="Fire">
<action when="midcast" type="equip">
<waist lock="yes">Karin Obi</waist>
</action>
</elseif>

<elseif Element="Wind">
<action when="midcast" type="equip">
<waist lock="yes">Furin Obi</waist>
</action>
</elseif>

<elseif Element="Water">
<action when="midcast" type="equip">
<waist lock="yes">Suirin Obi</waist>
</action>
</elseif>

<elseif Element="Earth">
<action when="midcast" type="equip">
<waist lock="yes">Dorin Obi</waist>
</action>
</elseif>
</if>

<if Advanced=""%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement"">
<equip when="midcast">
<back lock="yes">Twilight Cape</back>
</equip>
</if>


I should note that my xml has been modified a bit, as needed, over the years. I'm not sure which syntax to use in some cases, and I've been too lazy to at least make it all consistent. It works, but it's not clean and that bothers me sometimes (just not enough to fix it.)


Hope this helps.
 Sylph.Binckry
Offline
Server: Sylph
Game: FFXI
user: Binckly
Posts: 529
By Sylph.Binckry 2012-08-07 13:56:08
Link | Quote | Reply
 
Code
<if Advanced='("%SpellElement" = "%WeatherElement" OR "%SpellElement" = "%DayElement") AND "$%SpellElementObi" = "1"'>
				<if Element="Light">
					<equip when="midcast">
						<waist lock="yes">Korin Obi</waist>
						<back lock="yes">Twilight Cape</back>
					</equip>
				</if>
			</if>

Is my rule to get korin obi on, but i also have
Code
		<var name="LightObi">1</var>

in my vars
 Bismarck.Tragedie
Offline
Server: Bismarck
Game: FFXI
Posts: 322
By Bismarck.Tragedie 2012-08-07 14:00:19
Link | Quote | Reply
 
I think I like your handling of the Twilight Cape better.

Now I just have to edit all of my XMLs for my jobs and my alt's jobs. ... I need to start using includes...
 Sylph.Binckry
Offline
Server: Sylph
Game: FFXI
user: Binckly
Posts: 529
By Sylph.Binckry 2012-08-07 14:01:12
Link | Quote | Reply
 
Bismarck.Tragedie said: »
I think I like your handling of the Twilight Cape better.

Now I just have to edit all of my XMLs for my jobs and my alt's jobs. ... I need to start using includes...
Thanks. :D
Edit: I think you could also make your rules like this:
Code
        <var name="IceObi">Hyorin Obi</var>
        <var name="ThunderObi">Rairin Obi</var>
        <var name="LightObi">Korin Obi</var>
        <var name="WaterObi">Suirin Obi</var>
        <var name="DarkObi">Anrin Obi</var>
        <var name="EarthObi">Dorin Obi</var>
        <var name="WindObi">Fuirin Obi</var>
        <var name="FireObi">Karin Obi</var>

In your vars, then in your rules.
First of all, I'm not sure if it has to go in some magic category, or it can just be a rule in itself, so I'll pretend this is a rule for my elemental magics.
Code
<if skill="Elemental Magic">
<equip when="precast" set="nuking" />
<if Advanced='"%DayElement" = "%SpellElement" OR "%WeatherElement" = "%SpellElement"'> 
<equip when="precast"> 
<back lock="yes">Twilight Cape</back>
<waist lock="yes">$%SpellElementObi</waist> 
</equip> 
</if>
</if>

the If advanced rule probably works on its own, but I wasn't sure so I just stuck it in the elemental magic rules.
[+]
 Fenrir.Leoheart
Offline
Server: Fenrir
Game: FFXI
user: Leoheart
Posts: 3012
By Fenrir.Leoheart 2012-08-07 14:18:50
Link | Quote | Reply
 
I never actually noticed that in the code I sent, I only used it for Twilight cape though lol, my bad!
 Bismarck.Tragedie
Offline
Server: Bismarck
Game: FFXI
Posts: 322
By Bismarck.Tragedie 2012-08-07 14:39:17
Link | Quote | Reply
 
Sylph.Binckry said: »
I think you could also make your rules like this:
the If advanced rule probably works on its own, but I wasn't sure so I just stuck it in the elemental magic rules.

You know I don't know why I never thought of that, as that's how my magic damage and magic acc staves are handled.

The advanced rule does work on its own... in my xml they fall after the magic type rules. That said, I'll probably fine tune it now so I'm not using obi's/cape on enhancing magic, and start using the zodiac ring.

You will probably want to include obi processing on healing magic.


On a side note, any idea if the obis affect magic accuracy as well? I assume it would, as in the past Sleep was easier to land/less often resisted on darksday and harder on lightsday (granted this is from eyeballing/assuming and not from formal testing, but I believe it's generally accepted...)
 Sylph.Binckry
Offline
Server: Sylph
Game: FFXI
user: Binckly
Posts: 529
By Sylph.Binckry 2012-08-07 15:12:20
Link | Quote | Reply
 
Bismarck.Tragedie said: »
The advanced rule does work on its own... in my xml they fall after the magic type rules. That said, I'll probably fine tune it now so I'm not using obi's/cape on enhancing magic, and start using the zodiac ring.

You will probably want to include obi processing on healing magic.
I do have the obi/cape process in my healing magic, that was just an example on some random category. :p.
 Phoenix.Gaiarorshack
Offline
Server: Phoenix
Game: FFXI
user: MiavPigen
Posts: 1245
By Phoenix.Gaiarorshack 2012-08-07 15:24:32
Link | Quote | Reply
 
wait
Does obi have to be on in precast ? i thought it should just be on in midtcast like cure potency.

and will this work ?
Code
<if Advanced='"%WeatherElement" = "Light OR "%DayElement" = "Light"'>
<action type="Equip" when="midtcast">
<waist lock="t">Korin Obi</waist>
</action>
</if>
 Fenrir.Motenten
VIP
Offline
Server: Fenrir
Game: FFXI
user: Motenten
Posts: 764
By Fenrir.Motenten 2012-08-07 15:37:53
Link | Quote | Reply
 
Here's how I handle it in my code. I break down the obi/ring/cape rules by magic type (elemental, healing, divine, dark, blue, ninjutsu, corsair), since how you want to approach each variant isn't always the same. Only showing the one for Healing Magic below, which doesn't make use of the Zodiac Ring.

Code xml
    <!-- Sch weather constants are required for the rules that equip elemental gear.
         If you import ElementalGear, you MUST import SchWeatherConstants as well. -->
    <include name="ElementalGear">
        <!-- Replace 0 with obi name when acquired -->
        <var name="Obi-Fire">0</var>
        <var name="Obi-Ice">0</var>
        <var name="Obi-Wind">0</var>
        <var name="Obi-Earth">0</var>
        <var name="Obi-Thunder">0</var>
        <var name="Obi-Water">0</var>
        <var name="Obi-Light">Korin Obi</var>
        <var name="Obi-Dark">0</var>

        <!-- Replace 0 with gear name when acquired -->
        <var name="TwilightCape">Twilight Cape</var>
        <var name="ZodiacRing">Zodiac Ring</var>
    </include>

    <include name="SchWeatherConstants">
        <var name="Storm-Fire">Firestorm</var>
        <var name="Storm-Ice">Hailstorm</var>
        <var name="Storm-Wind">Windstorm</var>
        <var name="Storm-Earth">Sandstorm</var>
        <var name="Storm-Thunder">Thunderstorm</var>
        <var name="Storm-Water">Rainstorm</var>
        <var name="Storm-Light">Aurorastorm</var>
        <var name="Storm-Dark">Voidstorm</var>
    </include>


    <!-- Swapping in Obi/Zodiac Ring/Twilight Cape when using Healing Magic.
         Assumed to be imported in after check for skill="HealingMagic" has
         already been done. -->
    <include name="ObiRingCape-HealingMagic">
        <if Element="%DayElement">
            <if Spell="Cure*|Cura*">
                <if Advanced='"$Obi-%SpellElement"!="0"'>
                    <equip when="midcast">
                        <waist>$Obi-%SpellElement</waist>
                    </equip>
                </if>

                <if Advanced='"$TwilightCape"!="0"'>
                    <equip when="midcast">
                        <back>Twilight Cape</back>
                    </equip>
                </if>
            </if>
        </if>

        <elseif mode="OR" element="%WeatherElement" BuffActive="$Storm-%SpellElement">
            <if Advanced='"$Obi-%SpellElement"!="0"'>
                <if Spell="Cure*|Cura*">
                    <equip when="midcast">
                        <waist>$Obi-%SpellElement</waist>
                    </equip>

                    <if Advanced='"$TwilightCape"!="0"'>
                        <equip when="midcast">
                            <back>Twilight Cape</back>
                        </equip>
                    </if>
                </if>
            </if>
        </elseif>
    </include>


And then include it as:
Code xml
        <if Skill="HealingMagic">
            ~~ various rules
            <xi:include href="Mote-Include.xml" xpointer="//include[@name='ObiRingCape-HealingMagic']/*" />
        </if>
 Bismarck.Tragedie
Offline
Server: Bismarck
Game: FFXI
Posts: 322
By Bismarck.Tragedie 2012-08-07 16:01:35
Link | Quote | Reply
 
Fenrir.Motenten said: »

Crap, I never added anything to check for storms... I've been doing it wrong for a while now then ><


Anyway, kind of an edit except that I didn't hit 'submit' in the first place yet, but it seems Spellcast does treat storm buffs as relevant weather for the code I originally posted... just verified that the obi/cape does equip for ice spells under hailstorm (tested on lightsday in Jeuno with no weather).


I'm still lazy though :(
Log in to post.