|
On Healing Hands - A Comprehensive WHM Guide (V2)
By RolandJ 2015-12-05 03:23:49
Afaik the merits do not go towards the -50 enmity gear cap, but rather function to allow you to reach -55 enmity. If I am wrong this would be nice because it would free up another slot for cure power enhancing gear!
Asura.Ganno
サーバ: Asura
Game: FFXI
Posts: 127
By Asura.Ganno 2015-12-05 03:26:06
Yea, it goes toward the -50 cap, cant have more than -50. So feel free to enhance your set^^ /enjoy
EDIT: yeah, you made it even better :), both enmity/power capped
By RolandJ 2015-12-05 03:33:11
Well, I will have to look into that and I also need to reconcile the methods used in my set to reach the caps with the flexibility that adding the function of any certain food could offer to the set.
UPDATE: I've looked into it! :D
From what research Ganno and I (mostly Ganno, lol) have done from talking ingame I am sure that this set reaches the 700 power cap without food or Boost-MND.
Here is the amended, upgraded, and completely superior set. lol.
ItemSet 339958
The statistics are as follows.
Enmity
* -45 (Requires Path B on both Kaykaus armors)
Cure Potency
* +50% (Requires augment 4% on Head)
Cure Potency Exceeding Cap
* +10% Iridesence
* +5% Twilight Cape
* +2% Glorious Earring
Healing Magic Skill
* +44
Mind
* +154
Vitality
* +91
Conserve MP
* +10
The enmity has been reduced to -45 in order to synchronize with the -5 from merits and the measure of Healing Magic Skill+ from the set has been increased by 20, as well as gaining 3 of both VIT and MND. I included the basic Ru'Aun Healing Magic Skill+ torque for the sake of making this as accessible as possible without sacrificing healing potency in order to do so. Although, you should definitely upgrade that torque to a Incanter's Torque in order to gain "MP occasionally not depleted when magic used +1%". Also, I've excluded the Janniston Ring from the set, which would add 5% more Cure Potency II; I leave it out because I prefer the FC ring due to FC being harder to cap on non-healing magic, while /sch, than cure is to build to a point where it is completely more than strong enough for any purpose.
I should also note that this set might actually be purposed for non-curaga cures once I get a Kaykaus body if I can manage to make up for the 18 point cure power defecit that the swap will cause(-24 healing magic skill, +3 MND) - I mentioned earlier that I intended it for all cures. Krystela has helped me by informing me that Afllatus Solace's stoneskin effect doesn't affect curagas... How did I not notice that before?! lol
Rolandj said: I'll post my stats here - please note that they are Elvaan stats. Maybe later I will work out the formula within this post. (It's late D: /nudge Ganno. Do the math for me :D plz)
Ok, I'll try to work out the formula (properly, hopefully) below. (Even though Ganno already did the math for me, lol, thanks again Ganno!)
Healing Magic Skill: 524
** WHM 428 (Base) + 16 (Merits) + 36 (Gifts) + 44 (Gearset)
MND: 266 (112 Base + 154 Gear)
VIT: 193 (101 Base + 92 Gear)
Power(700 cap) = floor(MND÷2) + floor(VIT÷4) + Healing Magic Skill
(266/2) + (193/4) + 524
(133) + (48) + 524 = 705
Assuming Ganno's and my own math is right.... power cap accomplished!! :D
I am an elvaan, which has relatively high MND and VIT combined, but still, the other races probably won't take enough of a hit in either stat to cause a power drop of 5 entire points. If anyone desires to, though, they can use the -4 enmity food that Ganno suggests below and then swap out an enmity piece for more cure power gear. Especially if they are lacking one piece of the set, in order to make up for it in the mean time.
Please note: the healing magic skill listed is what you will have with that equipset + the final WHM Healing Magic Skill+ gift. I do not have it but that is what it would be if I did, lol. Also, those stats are with full attribute merits and no Boost-Mind is used for the calculation.
Thanks Ganno! Very much!
[+]
Asura.Ganno
サーバ: Asura
Game: FFXI
Posts: 127
By Asura.Ganno 2015-12-05 03:33:31
for whoever wants to use WHM food: Mushroom Stew :
MP +40
MND +4
enmity -4
[+]
サーバ: Asura
Game: FFXI
Posts: 334
By Asura.Krystela 2015-12-05 09:00:17
Now, afaik this set will only be useful for a WHM who does not have a mythic. In my opinion a mythic WHM gains more from /rdm due to already having /sch's main advantage built into their club - AoE -nas and erase -- and so they will trade the ability to ensure weather for the cape and staff in exchange for /rdm's FC and convert afaik.
I want to point this out.
No, a whm who have yagrush don't want to sub rdm and heres why.
Sch offers:
Light arts: Adds Enhancing/Healing skill, -10% spell cost and - spellcasting.
Accession: Regen IV DDs and accession Weather on blms because most sch cant spare the strat.
Celerity: Which can be awesome for Arise/Raise recast/cast if need.
Weathers: On yourself and for your party.
Sublimation: Keeps you from getting slept and offers a safe mp pool that you will rarely use but its nice to have.
Rdm offers:
Fastcast: Easyly replaced with gears.
Refresh: Well that's self explanatory.
Convert: Which I guess you may use because you dont have Light arts. But honestly, I just never run out of mp and I never have a bard or a form of refresh.
Scholar subjob is the way to go, with or without yagrush.
As for your set: It's good as long as you keep weather on. There was already a weather set in the guide, but I agree that may be I should add an obtainable and a capped enmity one since people seems to be using weather sets as basic cure sets lately.
Cerberus.Conagh
サーバ: Cerberus
Game: FFXI
Posts: 3189
By Cerberus.Conagh 2015-12-05 10:45:19
Now, afaik this set will only be useful for a WHM who does not have a mythic. In my opinion a mythic WHM gains more from /rdm due to already having /sch's main advantage built into their club - AoE -nas and erase -- and so they will trade the ability to ensure weather for the cape and staff in exchange for /rdm's FC and convert afaik.
I want to point this out.
No, a whm who have yagrush don't want to sub rdm and heres why.
Sch offers:
Light arts: Adds Enhancing/Healing skill, -10% spell cost and - spellcasting.
Accession: Regen IV DDs and accession Weather on blms because most sch cant spare the strat.
Celerity: Which can be awesome for Arise/Raise recast/cast if need.
Weathers: On yourself and for your party.
Sublimation: Keeps you from getting slept and offers a safe mp pool that you will rarely use but its nice to have.
Rdm offers:
Fastcast: Easyly replaced with gears.
Refresh: Well that's self explanatory.
Convert: Which I guess you may use because you dont have Light arts. But honestly, I just never run out of mp and I never have a bard or a form of refresh.
Scholar subjob is the way to go, with or without yagrush.
As for your set: It's good as long as you keep weather on. There was already a weather set in the guide, but I agree that may be I should add an obtainable and a capped enmity one since people seems to be using weather sets as basic cure sets lately.
Considering you can full time a weather effect you should, not to mention that in areas with Darkness weather cures can "resist", the Lightweather spell would help negate that.
[+]
Asura.Ganno
サーバ: Asura
Game: FFXI
Posts: 127
By Asura.Ganno 2015-12-05 14:44:09
Well, I will have to look into that and I also need to reconcile the methods used in my set to reach the caps with the flexibility that adding the function of any certain food could offer to the set.
UPDATE: I've looked into it! :D
From what research Ganno and I (mostly Ganno, lol) have done from talking ingame I am quite sure that I can reach the 700 power cap with this set without food, Boost-MND, or even the cure potency+ gifts. (Which, if their function is actually to exceed the base power cap, they would coincide with this set superbly.)
Here is the amended, upgraded, and completely superior set. lol.
ItemSet 339958
The enmity has been reduced to -45 in order to synchronize with the -5 from merits and the measure of Healing Magic Skill+ from the set has been increased by 20, as well as gaining 3 of both VIT and MND. I included the basic Ru'Aun Healing Magic Skill+ torque for the sake of making this as accessible as possible without sacrificing healing potency in order to do so. Although, you should definitely upgrade that torque to a Incanter's Torque in order to gain "MP occasionally not depleted when magic used +1%".
I'll post my stats here - please note that they are Elvaan stats. Maybe later I will work out the formula within this post. (It's late D: /nudge Ganno. Do the math for me :D plz)(Ganno speaking: You Bum lol)
Healing Magic Skill: 524
** WHM 428 (Base) + 16 (Merits) + 36 (Gifts) + 44 (Gearset)
MND: 266 (112 Base + 154 Gear)
VIT: 193 (101 Base + 92 Gear)
Please note: the healing magic skill listed is what you will have with that equipset + the final WHM Healing Magic Skill+ gift. I do not have it but that is what it would be if I did, lol.
The posted Healing Magic Skill & MND were originally wrong. I have updated them.
Thanks Ganno!
524 + 266/2 + 193/4 = 705.25
Forum Moderator
サーバ: Sylph
Game: FFXI
Posts: 6115
By Sylph.Shadowlina 2015-12-05 14:56:34
Just bare in mind using that set, you loose a lot of spell interruption rate as your not using a i119 weapon.
This could potentially kill you and your party seeing as very little hits will remove aquaveil if your not managing that properly.
You shouldn't be full timing weather unless you really do need too. In a situation where you could potentially pull hate, you certainly don't want to weather it up and heal like that.
[+]
By RolandJ 2015-12-05 16:32:04
Thanks for that advice Shadowlina. Myself, I don't see being interrupted as being a problem that has great potential for being given opportunities to happen now that we have overpowered reduced cure casting times - but I will keep that in consideration. Nonetheless, I still view a weather set as the ideal cure set perhaps until I get a mythic. (if I get a mythic, I guess, lol) I say 'perhaps' because Krystela brought up some good points about /sch vs /rdm for mythic WHMs that I'd have to consider before making up my mind.
Furthermore, if that argument was to be taken to its full extent, one could say that cure casting time reduction gear possibly defeats that problem. An experienced WHM friend of mine noted that "Cure" spellcasting time -% gear can be pushed to 100%, having heard it from a trusted source. I've yet to test it but that does give me some motivation to do another WHM test! ^^ (I haven't had the motivation to try it yet because I don't want to tote around all that situation-very-specific gear, lol!! ; ;)
Edit: Krystela has stated that this has been proved wrong. A link to the test info would be a nice read. ^^
Cerberus.Conagh
サーバ: Cerberus
Game: FFXI
Posts: 3189
By Cerberus.Conagh 2015-12-05 16:34:55
Thanks for that advice Shadowlina. Myself, I don't see being interrupted as being a problem that has great potential for being given opportunities to happen now that we have overpowered reduced cure casting times - but I will keep that in consideration. Nonetheless, I still view a weather set as the ideal cure set perhaps until I get a mythic. (if I get a mythic, I guess, lol) I say 'perhaps' because Krystela brought up some good points about /sch vs /rdm for mythic WHMs that I'd have to consider before making up my mind.
Considering you can cure in less than half a second (0.12 I think it is..) and auto attacks are once every 2~3 seconds. Being interupted mid cure would be terrihard.
With that said, put a hard toggle into your Gearswap to turn off weather cure even with the effect up for when you take threat. Solved.
[+]
By RolandJ 2015-12-05 16:54:34
With that said, put a hard toggle into your Gearswap to turn off weather cure even with the effect up for when you take threat. Solved.
Ooooh, how would I do that?! :D - That might be something I'd want to implement specifically for curagas given that they have a relatively long cast.
サーバ: Asura
Game: FFXI
Posts: 334
By Asura.Krystela 2015-12-05 16:56:14
There is always a point of balance.
Personally I use queller rod in my weatherset because I dont think chatoyant staff is worth the inventory space. I think the ~900 Cure 3's and the ~1500 Cure 4's covers the need, something over that is just epeen at this point. Also conserve MP in a weather set is kinda useless as the amount of mp returned by the ebers pantaloons +1 far exceed the usefulness of conserve mp.
And as conagh mentionned, our heals ae nearly instant now and pretty hard to interrupt.
But as I have mentioned to purgatory, whm isn't really about the sets but more your ability to react fast and the stress control. If that sets works for you, than rock it. I don't think I will ever say to any white mage that their set are totally wrong, I don't think there is such thing with this job.
Looking forward seeing you in game, fellow whm rolandj
[+]
サーバ: Asura
Game: FFXI
Posts: 334
By Asura.Krystela 2015-12-05 17:04:58
An experienced WHM friend of mine noted that "Cure" spellcasting time -% gear can be pushed to 100%
No, it can't. it has been tested but if you add quickcast to your precast set, you can get instant cast heals.
By RolandJ 2015-12-05 17:12:27
Thanks Krystela! That's a good point that you mention about our cures already having progressed to being very potent as it is. To be honest I am sort of becoming more lenient to carrying a few extra WHM pieces here and there given that I am considering activating my alt account once more, which factors into my plan of making this char main WHM and GEO, therefore severely removing much of the inventory that my current 7 job-lineup imposes. Given that a weather set is only 3 extra pieces for me (staff/obi/cape) I don't feel much of an impact inventory-wise. It sure would be nice to not have this 7-job inventory problem anymore! XD
I very much like your point about whms needing to react fast and I also like to emphasize that the WHM -should- strive to have as good of a gearset as is possible within the inventory space that he or she is willing to devote to it. If you take the same person and put him on a WHM with -20% cure cast time, +23% cure potency, -3 enmity, bad merits, no idle refresh gear, no MP recovery pants and observe how he performs on very high-level content on that char, and then put him on a char that is superbly geared for the many different gear caps, I think you will notice that, while using the latter char, his reaction time is enhanced by his gear casting reduction time, the results of his actions are enhanced by the cure potency+ gear, and the cost of his actions are negated by his -enm gear (hate gain result) and mp recovery pants (unlimited MP), whereas his party would suffer attrition, while using the former char, from receiving cures slower than, at times, required, cures that are weaker than the damage recieved, and he would run out of MP due to his cures not curing for enough nor giving him any MP back in return and therefore costing him too much MP to keep up with the damage taken.
That was extremely long winded, lol. My point is that good gear makes a good WHM extremely better! :D at least in my opinion XD It just bugs me a little when people neglect to give credit to this side of the gear vs skill argument. Skill is important. Gear is important. Find both and you might have a winner whm XD I probably lack more on the skill side than the gear side, I guess, lol XD
Rolandj said: (You do me injustice with that quote of my post. I didn't claim that it does as I stated that I've not yet tested it and rather only heard that from an outside source. ; ;) Thanks for changing it :)
I look forward to seeing you ingame, too, thanks ^^
サーバ: Asura
Game: FFXI
Posts: 334
By Asura.Krystela 2015-12-05 17:31:55
Thanks Krystela! That's a good point that you mention about our cures already having progressed to being very potent as it is. To be honest I am sort of becoming more lenient to carrying a few extra WHM pieces here and there given that I am considering activating my alt account once more, which factors into my plan of making this char main WHM and GEO, therefore severely removing much of the inventory that my current 7 job-lineup imposes. It sure would be nice to not have this 7-job inventory problem anymore! XD
I very much like your point about whms needing to react fast and I also like to emphasize that the WHM -should- strive to have as good of a gearset as is possible within the inventory space that he or she is willing to devote to it. If you take the same person and put him on a WHM with -20% cure cast time, +23% cure potency, -3 enmity, bad merits, no idle refresh gear, no MP recovery pants and observe how he performs on very high-level content on that char, and then put him on a char that is superbly geared for the many different gear caps, I think you will notice that his reaction time is enhanced by his gear casting reduction time, the results of his actions are enhanced by the cure potency+ gear, and the cost of his actions are negated by his -enm gear (hate gain result) and mp recovery pants (unlimited MP), whereas he would run out of MP otherwise due to his cures not curing for enough and costing him too much MP to cast.
That was extremely long winded, lol. My point is that good gear makes a good WHM extremely better! :D at least in my opinion XD It just bugs me a little when people neglect to give credit to this side of the gear vs skill argument.
(You do me injustice with that quote of my post. I didn't claim that it does as I stated that I've not yet tested it and rather only heard that from an outside source. ; ;)
I look forward to seeing you ingame, too, thanks ^^
I am sorry, didn't meant to do injustice, I will fix it.
Gears helps a ton, we cannot deny this for sure, but skill is still a huge part of it(I have met a few well geared whms that wasn't very good).
I used to be that whm with 2x 80 inventory of whm gears (inventory + mog wardrobe) but it was my only job for a very long time. When I realised I didn't really needed most of it, diminished it to 30 inventory and 80 wardrobe(said bye to hmp gears and a lot of conserve mp pieces).Also it was because my ls leader would go full potato when I needed to change job, it was taking me 30 mins.
Cerberus.Conagh
サーバ: Cerberus
Game: FFXI
Posts: 3189
By Cerberus.Conagh 2015-12-05 17:33:40
With that said, put a hard toggle into your Gearswap to turn off weather cure even with the effect up for when you take threat. Solved.
Ooooh, how would I do that?! :D - That might be something I'd want to implement specifically for curagas given that they have a relatively long cast.
rather easily actually, I'll use the one I linked one Post 5/6.
Top
Code function midcast(spell,action)
if spell.skill =='Healing Magic' then
if Cures:contains(spell.name) then
if world.day =='Lightsday' or world.weather_element == 'Light' or buffactive == 'Aurorastorm' then
if player.status == 'Engaged' then
equip(sets.engaged.healing.weather)
elseif Amend == 0 then
equip(sets.midcast.healing.weather)
else
equip(sets.midcast.healing.cure)
end
else
if player.status == 'Engaged' then
equip(sets.engaged.healing.cure)
add_to_chat(8,'TP Sets Engaged')
elseif Emnity == 1 then
equip(sets.midcast.healing.cureemnity)
else
equip(sets.midcast.healing.cure)
end
end
Other stuff afterwards as normal.
Code to Toggle:
Code function self_command(command)
if command == 'Amend' then
if Amend == 1 then
Amend = 0
add_to_chat(8,'Amended Weather sets: [Off]')
else
Amend = 1
add_to_chat(158,'Amended Weather sets: [On]')
end
end
A more complex method would be to use the monsters position vectors and if it's vector means its facing you then it could ignore it, but without actually testing it, I'm not sure how that would work without you targetting the threat. I suppose there's a way to pull the monster strut data on every action you do even without targetting it, but not 100% sure. I know it's doable when tanking (I had this built for my Samurai to turn on PDT if the chat log had X included within in and the Target was facing me, yes I know super lazy but I wanted to watch Netflix.)
サーバ: Asura
Game: FFXI
Posts: 334
By Asura.Krystela 2015-12-05 18:57:18
Added weather sets HQ/NQ using af3 or not and with capped enmity.
Also a little section to choose sch as your one and only :D
Thanks to pergatory & Rolandj, for their contribution and ideas.
I will also add an all in one cure set (CCT/CP/Enmity) for our fellow console users/encumbrance/inventory freaks/casual whms soon andcuraga weather sets. Done
Stay tuned! :D
Cerberus.Conagh
サーバ: Cerberus
Game: FFXI
Posts: 3189
By Cerberus.Conagh 2015-12-05 19:33:41
Added weather sets HQ/NQ using af3 or not and with capped enmity.
Also a little section to choose sch as your one and only :D
Thanks to pergatory & Rolandj, for their contribution and ideas.
I will also add an all in one cure set (CCT/CP/Enmity) for our fellow console users/encumbrance/inventory freaks/casual whms soon and curaga weather sets.
Stay tuned! :D
UHG Combined sets!
This is why I never used to play with console users.
サーバ: Asura
Game: FFXI
Posts: 334
By Asura.Krystela 2015-12-05 19:41:38
Added weather sets HQ/NQ using af3 or not and with capped enmity.
Also a little section to choose sch as your one and only :D
Thanks to pergatory & Rolandj, for their contribution and ideas.
I will also add an all in one cure set (CCT/CP/Enmity) for our fellow console users/encumbrance/inventory freaks/casual whms soon and curaga weather sets.
Stay tuned! :D
UHG Combined sets!
This is why I never used to play with console users.
I played on xbox for so long, I know their feelings!
Cerberus.Conagh
サーバ: Cerberus
Game: FFXI
Posts: 3189
By Cerberus.Conagh 2015-12-05 19:47:53
Added weather sets HQ/NQ using af3 or not and with capped enmity.
Also a little section to choose sch as your one and only :D
Thanks to pergatory & Rolandj, for their contribution and ideas.
I will also add an all in one cure set (CCT/CP/Enmity) for our fellow console users/encumbrance/inventory freaks/casual whms soon and curaga weather sets.
Stay tuned! :D
UHG Combined sets!
This is why I never used to play with console users.
I played on xbox for so long, I know their feelings!
I played on XBOX, I don't know their feelings, if your net doesn't suck and you are fast at macros and know all the shortcut commands, it's so not an issue.
Bismarck.Ihina
サーバ: Bismarck
Game: FFXI
Posts: 3187
By Bismarck.Ihina 2015-12-05 21:42:32
So still no tests on fullcure cureskin?
I went and got thousand needled with rancor collar and +10dt shield on. Normally does 1211, cureskin made me take 0, so it's more than that.
サーバ: Asura
Game: FFXI
Posts: 334
By Asura.Krystela 2015-12-05 21:51:01
So still no tests on fullcure cureskin?
I went and got thousand needled with rancor collar and +10dt shield on. Normally does 1211, cureskin made me take 0, so it's more than that.
I am a gimp and don't have full cure, otherwise I would test it!
By Luminohelix 2015-12-06 07:52:15
main=gear.ElementalWeapon,
sub=gear.ElementalGrip,
back=gear.ElementalCape,
waist=gear.ElementalObi,
Can anyone help? Where do I find that? So I can implement the twilight cape, Korin obi, and Chatoyant staff. I can't seem to find that anywhere @-@.
Forum Moderator
サーバ: Sylph
Game: FFXI
Posts: 6115
By Sylph.Shadowlina 2015-12-06 08:22:08
So still no tests on fullcure cureskin?
I went and got thousand needled with rancor collar and +10dt shield on. Normally does 1211, cureskin made me take 0, so it's more than that. I would but i dont have a way to test it. =-= not easily anyways.
By RolandJ 2015-12-06 10:33:13
main=gear.ElementalWeapon,
sub=gear.ElementalGrip,
back=gear.ElementalCape,
waist=gear.ElementalObi,
Can anyone help? Where do I find that? So I can implement the twilight cape, Korin obi, and Chatoyant staff. I can't seem to find that anywhere @-@.
As for the weapon, cape, and obi, I think that you are missing something from your Motenten's Library. I ended up having to download someone else's Mote library, as something was missing from mine that was present in theirs - the staff was defined somewhere, I've yet to find where. I had put the staff in my Mote-Mappings.lua, the exact same way that it is in their library, before changing to their library yet that still didn't solve it for me, so the problem must have been something other than that.
As for the ElementalGrip... that is test code that I created that I haven't managed to get functioning properly. I've added the following code to my Mote-Mappings.lua which is derived from the framework of code that I found already in-place that the functioning ElementalWeapon code functions off of.
Code elements.grip_of = {['Light']='Thrace strap'}
and this code to my whm's .lua
Code gear.default.grip = "Genbu's shield"
...(skipping code for this example)...
sub=gear.ElementalGrip,
But it offers no functionality whatsoever. The grip never gets equipped ingame when weather is on.
I've also tried adding this following code to my whm's .lua.
Code gear.ElementalGrip = {name="Thrace strap"}
Which gave some progress - the grip got equipped ingame! But... whenever I cast without weather on gearswap still tries to equip the grip which causes a lengthy "You must have a two-handed weapon equipped in the..." message to print out each and every time that I cast without weather up as I do non-weather cures with a club equipped, which tells me that something is broke in my default.grip code; it should be trying to equip the default.grip, which is genbu's shield, instead of the elemental.grip whenever weather is not active...
I've also tried Code gear.default.ElementalGrip = "Genbu's shield"
But now I'm really stretching the limits of experimental code. "gear.default.ElementalANYTHING" is not already existing anywhere in Mote's library - meaning that I've created code that probably won't work anyways. Only "gear.default.weapon" or "gear.default.obi" etc exists in mote's library, not "gear.default.ElementalANYTHING". And no, that code doesn't get the genbu's shield to be equipped during non-weather cures, either.
I'm not sure what to try next. I want to be able to designate two separate items for my 'sub' slot; one for non-weather cures, one for weather cures.
Cerberus.Conagh
サーバ: Cerberus
Game: FFXI
Posts: 3189
By Cerberus.Conagh 2015-12-06 13:02:44
So still no tests on fullcure cureskin?
I went and got thousand needled with rancor collar and +10dt shield on. Normally does 1211, cureskin made me take 0, so it's more than that.
I am a gimp and don't have full cure, otherwise I would test it!
I believe Maeldiar was close to capping WHM Job Points, I'll send him a PM to test in Ballista against a form of static damage.
[+]
Cerberus.Conagh
サーバ: Cerberus
Game: FFXI
Posts: 3189
By Cerberus.Conagh 2015-12-06 13:13:25
As for the ElementalGrip... that is test code that I created that I haven't managed to get functioning properly. I've added the following code to my Mote-Mappings.lua which is derived from the framework of code that I found already in-place that the functioning ElementalWeapon code functions off of. Code
elements.grip_of = {['Light']='Thrace strap'}
and this code to my whm's .lua
gear.default.grip = "Genbu's shield"
...(skipping code for this example)...
sub=gear.ElementalGrip,
But it offers no functionality whatsoever. The grip never gets equipped ingame when weather is on.
I've also tried adding this following code to my whm's .lua. Code
gear.ElementalGrip = {name="Thrace strap"}
Reading through Motes gearswap, I don't see anything regarding elementgrip anywhere which is potentially why it's not checking your shield. He clearly defines each set differently.
sets.midcast.CureWithLightWeather for example has a full set fo gear including the grip, and it is this set that is called upon during light weather.
Rather than trying to use an overly complicated rule for light weather and a staff, just define it within the set and have that set called upon once you start casting stuff.
You also don't need this to be equipped in your precast set seeing as those stats are calculated at the end of a cast so defining them in say ~ Midcast would provide better results.
Obviously without seeing your full coded set I can't comment for definate about where you're calling this function but if you post it (Use the Spoiler tab to reduce peoples loading times on the page please!) I can have a look and make it work for you.
[+]
By RolandJ 2015-12-06 14:08:23
Thank you for the reply Conagh.
I created that line in Mote-Mappings.lua hoping that it would create the brand-new functionality for me.
My WHM lua uses motes files but it is not his whm.lua and so it uses a method other than sets.midcast.CureWithLightWeather. I'm only trying to get the shield in my midcast set, not my precast set.
Here is my whm.lua :) Code -------------------------------------------------------------------------------------------------------------------
-- Initialization function that defines sets and variables to be used.
-------------------------------------------------------------------------------------------------------------------
-- IMPORTANT: Make sure to also get the Mote-Include.lua file (and its supplementary files) to go with this.
send_command('unbind ^`')
send_command('unbind ^1')
send_command('unbind ^2')
send_command('unbind ^%numpad0')
send_command('unbind ^%numpad1')
send_command('unbind ^c')
send_command('unbind ^d')
send_command('unbind ^e')
send_command('unbind ^s')
send_command('bind ^` input /ma "Aurorastorm" <me>')
send_command('bind ^1 input /ja "Sublimation" <me>')
send_command('bind ^2 input /ja "Divine Caress" <me>;wait 1.2;input /ja "Accession" <me>')
send_command('bind ^%numpad0 input /ja "Penury" <me>')
send_command('bind ^%numpad1 input /ja "Celerity" <me>')
send_command('bind ^c input /ja "Divine Caress" <me>')
send_command('bind ^d input /ja "Divine Seal" <me>')
send_command('bind ^e input /ma "Esuna" <me>')
send_command('bind ^s input /ja "Sacrosanctity" <me>')
-- Initialization function for this job file.
function get_sets()
-- Load and initialize the include file.
include('Mote-Include.lua')
end
-- Setup vars that are user-independent.
function job_setup()
state.Buff['Afflatus Solace'] = buffactive['Afflatus Solace'] or false
state.Buff['Afflatus Misery'] = buffactive['Afflatus Misery'] or false
end
-- Setup vars that are user-dependent. Can override this function in a sidecar file.
function user_setup()
-- Options: Override default values
options.OffenseModes = {'None', 'Normal'}
options.DefenseModes = {'Normal'}
options.WeaponskillModes = {'Normal'}
options.CastingModes = {'Normal', 'Resistant', 'Dire'}
options.IdleModes = {'Normal', 'PDT'}
options.RestingModes = {'Normal'}
options.PhysicalDefenseModes = {'PDT'}
options.MagicalDefenseModes = {'MDT'}
state.Defense.PhysicalMode = 'PDT'
state.OffenseMode = 'None'
-- Default macro set/book
set_macro_page(2, 19)
end
-- Define sets and vars used by this job file.
function init_gear_sets()
--------------------------------------
-- Start defining the sets
--------------------------------------
-- Precast Sets
-- Fast cast sets for spells
sets.precast.FC = {main="Queller rod",ammo="Sapience orb",
head="Nahtirah Hat",neck="Orunmila's torque",ear1="Enchanter's earring +1",ear2="Loquacious Earring",
body="Anhur Robe",hands="Fanatic gloves",ring1="Weather. ring",ring2="Prolix Ring",
back="Swith Cape +1",waist="Witful Belt",legs="Artsieq hose",feet="Regal pumps +1"}
sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, {})
sets.precast.FC.Stoneskin = set_combine(sets.precast.FC['Enhancing Magic'], {})
sets.precast.FC.Arise = set_combine(sets.precast.FC, {legs="Ebers pant. +1"})
sets.precast.FC.Raise = set_combine(sets.precast.FC, {legs="Ebers pant. +1"})
sets.precast.FC['Healing Magic'] = set_combine(sets.precast.FC, {legs="Ebers Pant. +1"})
sets.precast.FC.StatusRemoval = set_combine(sets.precast.FC, {legs="Ebers pant. +1"})
sets.precast.FC.Cure = set_combine(sets.precast.FC['Healing Magic'], {main="Queller rod",ear2="Nourish. earring +2",legs="Ebers pant. +1"})
sets.precast.FC.Curaga = sets.precast.FC.Cure
-- Precast sets to enhance JAs
sets.precast.JA.Benediction = {body="Piety Briault +1"}
sets.precast.JA.Devotion = {}
-- Waltz set (chr and vit)
sets.precast.Waltz = {}
-- Weaponskill sets
-- Default set for any weaponskill that isn't any more specifically defined
gear.default.weaponskill_neck = "Asperity Necklace"
gear.default.weaponskill_waist = ""
sets.precast.WS = {}
sets.precast.WS['Flash Nova'] = {}
-- Midcast Sets
sets.midcast.FastRecast = {head="Nahtirah Hat",neck="Orunmila's torque",ear1="Enchanter's earring +1",ear2="Loquacious Earring",
body="Anhur Robe",hands="Fanatic gloves",ring1="Weatherspoon ring",ring2="Prolix Ring",
back="Swith Cape +1",waist="Witful Belt",legs="Telchine braconi",feet="Regal pumps +1"}
-- Cure sets
gear.default.obi_waist = "Pythia sash +1"
gear.default.obi_weapon = "Queller rod"
gear.default.grip = "Genbu's shield" -- not functioning --
gear.default.obi_back = "Mending Cape"
sets.midcast.CureSolace = {
main=gear.ElementalWeapon,
sub=gear.ElementalGrip,
ammo="Homiliary",
head="Gende. Caubeen",
neck="Nodens gorget",
ear1="Glorious earring",
ear2="Nourish. earring +1",
body="Ebers bliaud +1",
hands="Kaykaus cuffs",
ring1="Kuchekula ring",
ring2="Sirona's ring",
back=gear.ElementalCape,
waist=gear.ElementalObi,
legs="Ebers pant. +1",
feet="Kaykaus boots"}
sets.midcast.Cure = {
main=gear.ElementalWeapon,
sub=gear.ElementalGrip,
ammo="Homiliary",
head="Gende. Caubeen",
neck="Nodens gorget",
ear1="Glorious earring",
ear2="Nourish. earring +1",
body="Ebers bliaud +1",
hands="Kaykaus cuffs",
ring1="Kuchekula ring",
ring2="Sirona's ring",
back=gear.ElementalCape,
waist=gear.ElementalObi,
legs="Ebers pant. +1",
feet="Kaykaus boots"}
sets.midcast.Curaga = {
main=gear.ElementalWeapon,
sub=gear.ElementalGrip,
ammo="Homiliary",
head="Gende. caubeen",
neck="Nodens gorget",
ear1="Glorious earring",
ear2="Nourish. earring +1",
body="Ebers bliaud +1",
hands="Kaykaus cuffs",
ring1="Kuchekula ring",
ring2="Sirona's ring",
back=gear.ElementalCape,
waist=gear.ElementalObi,
legs="Ebers pant. +1",
feet="Kaykaus boots"}
sets.midcast.CureMelee = {main="Queller rod",
head="Gende. caubeen",neck="Nodens gorget",ear1="Glorious earring",ear2="Nourishing earring +1",
body="Ebers bliaud +1",hands="Kaykaus cuffs",ring1="Kuchekula ring",ring2="Sirona's ring",
back="Mending Cape",waist=gear.ElementalObi,legs="Ebers pant. +1",feet="Kaykaus boots"}
sets.midcast.Cursna = {main="Beneficus",ammo="Homiliary",
head="Ebers cap +1",neck="Malison Medallion",
body="ebers briault +1",hands="fanatic gloves",ring1="Haoma's Ring",ring2="Haoma's Ring",
back="Mending Cape",legs="Theo. pant. +1"}
sets.midcast.StatusRemoval = {
head="Ebers cap +1",legs="Ebers Pant. +1"}
-- 110 total Enhancing Magic Skill; caps even without Light Arts
sets.midcast['Enhancing Magic'] = {
main="Beneficus",
ammo="Homiliary",
head="Befouled crown",
neck="Enhancing torque",
body="Anhur robe",
back="Mending Cape",
legs="piety pantaln. +1",
feet="Ebers duckbills"}
sets.midcast.Stoneskin = {ammo="Homiliary",head="Befouled crown",neck="Nodens gorget",body="Anhur robe",legs="piety pantaln. +1",feet="Ebers duckbills"}
sets.midcast.Aquaveil = {main="Beneficus",head="Befouled crown",body="Anhur robe",back="Mending Cape",legs="piety pantaln. +1",feet="Ebers duckbills +1"}
sets.midcast.Auspice = {main="Beneficus",head="Befouled crown",body="Anhur robe",back="Mending Cape",legs="piety pantaln. +1",feet="Ebers duckbills +1"}
sets.midcast.Aurorastorm = {main="Beneficus",head="Befouled crown",body="Anhur robe",back="Mending Cape",legs="piety pantaln. +1",feet="Ebers duckbills +1"}
sets.midcast.BarElement = {
main="Beneficus",
sub="Genbu's Shield",
ammo="Homiliary",
head="Ebers cap +1",
body="ebers briault +1",
hands="ebers mitts +1",
back="Mending Cape",
legs="piety pantaln. +1",
feet="Ebers duckbills"}
sets.midcast.Haste = {}
sets.midcast.Regen = {main="Bolelabunga",
body="Piety briault +1",hands="Ebers mitts +1",legs="Theo. pant. +1"}
sets.midcast.Protectra = {}
sets.midcast.Shellra = {"piety pantaln. +1"}
sets.midcast['Divine Magic'] = {}
sets.midcast['Repose'] = {}
sets.midcast['Elemental Magic'] = {}
sets.midcast['Dark Magic'] = {}
-- Custom spell classes
sets.midcast.MndEnfeebles = {}
sets.midcast.IntEnfeebles = {}
-- Sets to return to when not performing an action.
-- Resting sets
sets.resting = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Moonshade Earring",
ear2="Nourishing earring +1",
body="Witching robe",
hands="Serpentes Cuffs",
ring1="Weatherspoon ring",
ring2="Defending Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
-- Idle sets (default idle set not needed since the other three are defined, but leaving for testing purposes)
sets.idle = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Glorious Earring",
ear2="Moonshade Earring",
body="Witching robe",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Weather. Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
sets.idle.PDT = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Glorious Earring",
ear2="Moonshade Earring",
body="Witching robe",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Weather. Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
sets.idle.Town = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Glorious Earring",
ear2="Moonshade Earring",
body="Councilor's garb",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Weather. Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Herald's Gaiters"}
sets.idle.Weak = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Glorious Earring",
ear2="Moonshade Earring",
body="Witching robe",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Weatherspoon Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
-- Defense sets
sets.defense.PDT = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Moonshade Earring",
ear2="Nourishing earring +1",
body="Witching robe",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Haoma's Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
sets.defense.MDT = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Moonshade Earring",
ear2="Nourishing earring +1",
body="Witching robe",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Haoma's Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
sets.Kiting = {feet="Herald's Gaiters"}
sets.latent_refresh = {waist="Fucho-no-obi"}
-- Engaged sets
-- Variations for TP weapon and (optional) offense/defense modes. Code will fall back on previous
-- sets if more refined versions aren't defined.
-- If you create a set with both offense and defense modes, the offense mode should be first.
-- EG: sets.engaged.Dagger.Accuracy.Evasion
-- Basic set for if no TP weapon is defined.
sets.engaged = {}
-- Buff sets: Gear that needs to be worn to actively enhance a current player buff.
sets.buff['Divine Caress'] = {hands="Ebers mitts +1",back="Mending Cape"}
end
-------------------------------------------------------------------------------------------------------------------
-- Job-specific hooks that are called to process player actions at specific points in time.
-------------------------------------------------------------------------------------------------------------------
-- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
-- Set eventArgs.useMidcastGear to true if we want midcast gear equipped on precast.
function job_precast(spell, action, spellMap, eventArgs)
if spell.english == "Paralyna" and buffactive.Paralyzed then
-- no gear swaps if we're paralyzed, to avoid blinking while trying to remove it.
eventArgs.handled = true
end
local map = spell_maps[spell.en]
if map == 'Cure' and player.sub_job == "SCH" and not buffactive.Aurorastorm then
add_to_chat(123,'Aurorastorm not active.')
windower.play_sound('C:\\Program Files (x86)\\Windower4\\addons\\GearSwap\\data\\wav\\Chime.wav')
end
if map == 'Curaga' and player.sub_job == "SCH" and not buffactive.Aurorastorm then
add_to_chat(123,'Aurorastorm not active.')
windower.play_sound('C:\\Program Files (x86)\\Windower4\\addons\\GearSwap\\data\\wav\\Chime.wav')
end
if spell.skill == 'Healing Magic' then
gear.default.obi_back = "Mending Cape"
gear.default.obi_waist = "Pythia sash +1"
else
gear.default.obi_waist = "Eschan stone"
gear.default.obi_back = "Toro Cape"
end
if state.Buff[spell.english] ~= nil then
state.Buff[spell.english] = true
end
end
function job_post_midcast(spell, action, spellMap, eventArgs)
-- Apply Divine Caress boosting items as highest priority over other gear, if applicable.
if spellMap == 'StatusRemoval' and buffactive['Divine Caress'] then
equip(sets.buff['Divine Caress'])
end
end
-- Return true if we handled the aftercast work. Otherwise it will fall back
-- to the general aftercast() code in Mote-Include.
function job_aftercast(spell, action, spellMap, eventArgs)
if state.Buff[spell.english] ~= nil then
state.Buff[spell.english] = not spell.interrupted or buffactive[spell.english]
end
end
-------------------------------------------------------------------------------------------------------------------
-- Customization hooks for idle and melee sets, after they've been automatically constructed.
-------------------------------------------------------------------------------------------------------------------
-- Custom spell mapping.
function job_get_spell_map(spell, default_spell_map)
if spell.action_type == 'Magic' then
if (default_spell_map == 'Cure' or default_spell_map == 'Curaga') and player.status == 'Engaged' then
return "CureMelee"
elseif default_spell_map == 'Cure' and state.Buff['Afflatus Solace'] then
return "CureSolace"
elseif spell.skill == "Enfeebling Magic" then
if spell.type == "WhiteMagic" then
return "MndEnfeebles"
else
return "IntEnfeebles"
end
end
end
end
function customize_idle_set(idleSet)
if player.mpp < 51 then
idleSet = set_combine(idleSet, sets.latent_refresh)
end
return idleSet
end
-------------------------------------------------------------------------------------------------------------------
-- General hooks for other events.
-------------------------------------------------------------------------------------------------------------------
-- Called when a player gains or loses a buff.
-- buff == buff gained or lost
-- gain == true if the buff was gained, false if it was lost.
function job_buff_change(buff, gain)
if state.Buff[buff] ~= nil then
state.Buff[buff] = gain
end
end
-------------------------------------------------------------------------------------------------------------------
-- User code that supplements self-commands.
-------------------------------------------------------------------------------------------------------------------
-- Called by the 'update' self-command.
function job_update(cmdParams, eventArgs)
if cmdParams[1] == 'user' and not areas.Cities:contains(world.area) then
local needsArts =
player.sub_job:lower() == 'sch' and
not buffactive['Light Arts'] and
not buffactive['Addendum: White'] and
not buffactive['Dark Arts'] and
not buffactive['Addendum: Black']
if not buffactive['Afflatus Solace'] and not buffactive['Afflatus Misery'] then
if needsArts then
send_command('@input /ja "Afflatus Solace" <me>;wait 1.2;input /ja "Light Arts" <me>')
else
send_command('@input /ja "Afflatus Solace" <me>')
end
end
end
end
-- Handle notifications of general user state change.
function job_state_change(stateField, newValue, oldValue)
if stateField == 'OffenseMode' then
if newValue == 'Normal' then
disable('main','sub')
else
enable('main','sub')
end
elseif stateField == 'Reset' then
if state.OffenseMode == 'None' then
enable('main','sub')
end
end
end
-- Function to display the current relevant user state when doing an update.
-- Return true if display was handled, and you don't want the default info shown.
function display_current_job_state(eventArgs)
local defenseString = ''
if state.Defense.Active then
local defMode = state.Defense.PhysicalMode
if state.Defense.Type == 'Magical' then
defMode = state.Defense.MagicalMode
end
defenseString = 'Defense: '..state.Defense.Type..' '..defMode..', '
end
local meleeString = ''
if state.OffenseMode == 'Normal' then
meleeString = 'Melee: Weapons locked, '
end
add_to_chat(122,'Casting ['..state.CastingMode..'], '..meleeString..'Idle ['..state.IdleMode..'], '..defenseString..
'Kiting: '..on_off_names[state.Kiting])
eventArgs.handled = true
end
-------------------------------------------------------------------------------------------------------------------
-- Utility functions specific to this job.
-------------------------------------------------------------------------------------------------------------------
Cerberus.Conagh
サーバ: Cerberus
Game: FFXI
Posts: 3189
By Cerberus.Conagh 2015-12-06 16:51:33
Thank you for the reply Conagh.
I created that line in Mote-Mappings.lua hoping that it would create the brand-new functionality for me.
My WHM lua uses motes files but it is not his whm.lua and so it uses a method other than sets.midcast.CureWithLightWeather. I'm only trying to get the shield in my midcast set, not my precast set.
Here is my whm.lua :) Code -------------------------------------------------------------------------------------------------------------------
-- Initialization function that defines sets and variables to be used.
-------------------------------------------------------------------------------------------------------------------
-- IMPORTANT: Make sure to also get the Mote-Include.lua file (and its supplementary files) to go with this.
send_command('unbind ^`')
send_command('unbind ^d')
send_command('unbind ^1')
send_command('unbind ^2')
send_command('unbind ^c')
send_command('unbind ^e')
send_command('unbind ^s')
send_command('unbind ^a')
send_command('bind ^` input /ma "Aurorastorm" <me>')
send_command('bind ^d input /ja "Divine Seal" <me>')
send_command('bind ^1 input /ja "Sublimation" <me>')
send_command('bind ^2 input /ja "Divine Caress" <me>;wait 1.2;input /ja "Accession" <me>')
send_command('bind ^c input /ja "Divine Caress" <me>')
send_command('bind ^e input /ma "Esuna" <me>')
send_command('bind ^s input /ja "Sacrosanctity" <me>')
send_command('bind ^a input /ja "Accession" <me>')
-- Initialization function for this job file.
function get_sets()
-- Load and initialize the include file.
include('Mote-Include.lua')
end
-- Setup vars that are user-independent.
function job_setup()
state.Buff['Afflatus Solace'] = buffactive['Afflatus Solace'] or false
state.Buff['Afflatus Misery'] = buffactive['Afflatus Misery'] or false
end
-- Setup vars that are user-dependent. Can override this function in a sidecar file.
function user_setup()
-- Options: Override default values
options.OffenseModes = {'None', 'Normal'}
options.DefenseModes = {'Normal'}
options.WeaponskillModes = {'Normal'}
options.CastingModes = {'Normal', 'Resistant', 'Dire'}
options.IdleModes = {'Normal', 'PDT'}
options.RestingModes = {'Normal'}
options.PhysicalDefenseModes = {'PDT'}
options.MagicalDefenseModes = {'MDT'}
state.Defense.PhysicalMode = 'PDT'
state.OffenseMode = 'None'
-- Default macro set/book
set_macro_page(2, 19)
end
-- Define sets and vars used by this job file.
function init_gear_sets()
--------------------------------------
-- Start defining the sets
--------------------------------------
-- Precast Sets
-- Fast cast sets for spells
sets.precast.FC = {main="Queller rod",ammo="Sapience orb",
head="Nahtirah Hat",neck="Orunmila's torque",ear1="Enchanter's earring +1",ear2="Loquacious Earring",
body="Anhur Robe",hands="Fanatic gloves",ring1="Weather. ring",ring2="Prolix Ring",
back="Swith Cape +1",waist="Witful Belt",legs="Artsieq hose",feet="Regal pumps +1"}
sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, {})
sets.precast.FC.Stoneskin = set_combine(sets.precast.FC['Enhancing Magic'], {})
sets.precast.FC.Arise = set_combine(sets.precast.FC, {legs="Ebers pant. +1"})
sets.precast.FC.Raise = set_combine(sets.precast.FC, {legs="Ebers pant. +1"})
sets.precast.FC['Healing Magic'] = set_combine(sets.precast.FC, {legs="Ebers Pant. +1"})
sets.precast.FC.StatusRemoval = set_combine(sets.precast.FC, {legs="Ebers pant. +1"})
sets.precast.FC.Cure = set_combine(sets.precast.FC['Healing Magic'], {main="Queller rod",ear2="Nourish. earring +2",legs="Ebers pant. +1"})
sets.precast.FC.Curaga = sets.precast.FC.Cure
-- Precast sets to enhance JAs
sets.precast.JA.Benediction = {body="Piety Briault +1"}
sets.precast.JA.Devotion = {}
-- Waltz set (chr and vit)
sets.precast.Waltz = {}
-- Weaponskill sets
-- Default set for any weaponskill that isn't any more specifically defined
gear.default.weaponskill_neck = "Asperity Necklace"
gear.default.weaponskill_waist = ""
sets.precast.WS = {}
sets.precast.WS['Flash Nova'] = {}
-- Midcast Sets
sets.midcast.FastRecast = {head="Nahtirah Hat",neck="Orunmila's torque",ear1="Enchanter's earring +1",ear2="Loquacious Earring",
body="Anhur Robe",hands="Fanatic gloves",ring1="Weatherspoon ring",ring2="Prolix Ring",
back="Swith Cape +1",waist="Witful Belt",legs="Telchine braconi",feet="Regal pumps +1"}
-- Cure sets
gear.default.obi_waist = "Pythia sash +1"
gear.default.obi_weapon = "Queller rod"
gear.default.grip = "Genbu's shield" -- not functioning --
gear.default.obi_back = "Mending Cape"
sets.midcast.CureSolace = {
main=gear.ElementalWeapon,
sub=gear.ElementalGrip,
ammo="Homiliary",
head="Ebers cap +1",
neck="Phrenic torque",
ear1="Glorious earring",
ear2="Nourish. earring +1",
body="Ebers bliaud +1",
hands="Kaykaus cuffs",
ring1="Kuchekula ring",
ring2="Sirona's ring",
back=gear.ElementalCape,
waist=gear.ElementalObi,
legs="Ebers pant. +1",
feet="Kaykaus boots"}
sets.midcast.Cure = {
main=gear.ElementalWeapon,
sub=gear.ElementalGrip,
ammo="Homiliary",
head="Ebers cap +1",
neck="Phrenic torque",
ear1="Glorious earring",
ear2="Nourish. earring +1",
body="Ebers bliaud +1",
ring1="Kuchekula ring",
ring2="Sirona's ring",
ring2="Mediator's ring",
back=gear.ElementalCape,
waist=gear.ElementalObi,
legs="Ebers pant. +1",
feet="Kaykaus boots"}
sets.midcast.Curaga = {
main=gear.ElementalWeapon,
sub=gear.ElementalGrip,
ammo="Homiliary",
head="Ebers cap +1",
neck="Phrenic torque",
ear1="Glorious earring",
ear2="Nourishing earring +1",
body="Ebers bliaud +1",
hands="Kaykaus cuffs",
ring1="Kuchekula ring",
ring2="Sirona's ring",
back=gear.ElementalCape,
waist=gear.ElementalObi,
legs="Ebers pant. +1",
feet="Kaykaus boots"}
sets.midcast.CureMelee = {main="Queller rod",
head="Ebers cap +1",neck="Nodens gorget",ear1="Nourishing earring",ear2="Nourishing earring +1",
body="Ebers bliaud +1",hands="Fanatic gloves",ring1="Haoma's ring",ring2="Haoma's ring",
back="Mending Cape",waist=gear.ElementalObi,legs="Ebers pant. +1",feet="Medium's sabots"}
sets.midcast.Cursna = {main="Beneficus",ammo="Homiliary",
head="Ebers cap +1",neck="Malison Medallion",
body="ebers briault +1",hands="fanatic gloves",ring1="Haoma's Ring",ring2="Haoma's Ring",
back="Mending Cape",legs="Theo. pant. +1"}
sets.midcast.StatusRemoval = {
head="Ebers cap +1",legs="Ebers Pant. +1"}
-- 110 total Enhancing Magic Skill; caps even without Light Arts
sets.midcast['Enhancing Magic'] = {
main="Beneficus",
ammo="Homiliary",
head="Befouled crown",
neck="Enhancing torque",
body="Anhur robe",
back="Mending Cape",
legs="piety pantaln. +1",
feet="Ebers duckbills"}
sets.midcast.Stoneskin = {ammo="Homiliary",head="Befouled crown",neck="Nodens gorget",body="Anhur robe",legs="piety pantaln. +1",feet="Ebers duckbills"}
sets.midcast.Aquaveil = {main="Beneficus",head="Befouled crown",body="Anhur robe",back="Mending Cape",legs="piety pantaln. +1",feet="Ebers duckbills +1"}
sets.midcast.Auspice = {main="Beneficus",head="Befouled crown",body="Anhur robe",back="Mending Cape",legs="piety pantaln. +1",feet="Ebers duckbills +1"}
sets.midcast.Aurorastorm = {main="Beneficus",head="Befouled crown",body="Anhur robe",back="Mending Cape",legs="piety pantaln. +1",feet="Ebers duckbills +1"}
sets.midcast.BarElement = {
main="Beneficus",
sub="Genbu's Shield",
ammo="Homiliary",
head="Ebers cap +1",
body="ebers briault +1",
hands="ebers mitts +1",
back="Mending Cape",
legs="piety pantaln. +1",
feet="Ebers duckbills"}
sets.midcast.Haste = {}
sets.midcast.Regen = {main="Bolelabunga",
body="Piety briault +1",hands="Ebers mitts +1",legs="Theo. pant. +1"}
sets.midcast.Protectra = {}
sets.midcast.Shellra = {"piety pantaln. +1"}
sets.midcast['Divine Magic'] = {}
sets.midcast['Repose'] = {}
sets.midcast['Elemental Magic'] = {}
sets.midcast['Dark Magic'] = {}
-- Custom spell classes
sets.midcast.MndEnfeebles = {}
sets.midcast.IntEnfeebles = {}
-- Sets to return to when not performing an action.
-- Resting sets
sets.resting = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Moonshade Earring",
ear2="Nourishing earring +1",
body="Witching robe",
hands="Serpentes Cuffs",
ring1="Weatherspoon ring",
ring2="Defending Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
-- Idle sets (default idle set not needed since the other three are defined, but leaving for testing purposes)
sets.idle = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Glorious Earring",
ear2="Moonshade Earring",
body="Witching robe",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Weather. Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
sets.idle.PDT = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Glorious Earring",
ear2="Moonshade Earring",
body="Witching robe",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Weather. Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
sets.idle.Town = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Glorious Earring",
ear2="Moonshade Earring",
body="Councilor's garb",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Weather. Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Herald's Gaiters"}
sets.idle.Weak = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Glorious Earring",
ear2="Moonshade Earring",
body="Witching robe",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Weatherspoon Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
-- Defense sets
sets.defense.PDT = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Moonshade Earring",
ear2="Nourishing earring +1",
body="Witching robe",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Haoma's Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
sets.defense.MDT = {
main="Queller rod",
sub="Genbu's shield",
ammo="Homiliary",
head="Befouled crown",
neck="Twilight torque",
ear1="Moonshade Earring",
ear2="Nourishing earring +1",
body="Witching robe",
hands="Serpentes Cuffs",
ring2="Defending ring",
ring1="Haoma's Ring",
back="Umbra cape",
waist="Fucho-no-Obi",
legs="Assid. Pants +1",
feet="Serpentes Sabots"}
sets.Kiting = {feet="Herald's Gaiters"}
sets.latent_refresh = {waist="Fucho-no-obi"}
-- Engaged sets
-- Variations for TP weapon and (optional) offense/defense modes. Code will fall back on previous
-- sets if more refined versions aren't defined.
-- If you create a set with both offense and defense modes, the offense mode should be first.
-- EG: sets.engaged.Dagger.Accuracy.Evasion
-- Basic set for if no TP weapon is defined.
sets.engaged = {}
-- Buff sets: Gear that needs to be worn to actively enhance a current player buff.
sets.buff['Divine Caress'] = {hands="Ebers mitts +1",back="Mending Cape"}
end
-------------------------------------------------------------------------------------------------------------------
-- Job-specific hooks that are called to process player actions at specific points in time.
-------------------------------------------------------------------------------------------------------------------
-- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
-- Set eventArgs.useMidcastGear to true if we want midcast gear equipped on precast.
function job_precast(spell, action, spellMap, eventArgs)
if spell.english == "Paralyna" and buffactive.Paralyzed then
-- no gear swaps if we're paralyzed, to avoid blinking while trying to remove it.
eventArgs.handled = true
end
local map = spell_maps[spell.en]
if map == 'Cure' and player.sub_job == "SCH" and not buffactive.Aurorastorm then
add_to_chat(123,'Aurorastorm not active.')
windower.play_sound('C:\\Program Files (x86)\\Windower4\\addons\\GearSwap\\data\\wav\\Chime.wav')
end
if map == 'Curaga' and player.sub_job == "SCH" and not buffactive.Aurorastorm then
add_to_chat(123,'Aurorastorm not active.')
windower.play_sound('C:\\Program Files (x86)\\Windower4\\addons\\GearSwap\\data\\wav\\Chime.wav')
end
if spell.skill == 'Healing Magic' then
gear.default.obi_back = "Mending Cape"
gear.default.obi_waist = "Pythia sash +1"
else
gear.default.obi_waist = "Eschan stone"
gear.default.obi_back = "Toro Cape"
end
if state.Buff[spell.english] ~= nil then
state.Buff[spell.english] = true
end
end
function job_post_midcast(spell, action, spellMap, eventArgs)
-- Apply Divine Caress boosting items as highest priority over other gear, if applicable.
if spellMap == 'StatusRemoval' and buffactive['Divine Caress'] then
equip(sets.buff['Divine Caress'])
end
end
-- Return true if we handled the aftercast work. Otherwise it will fall back
-- to the general aftercast() code in Mote-Include.
function job_aftercast(spell, action, spellMap, eventArgs)
if state.Buff[spell.english] ~= nil then
state.Buff[spell.english] = not spell.interrupted or buffactive[spell.english]
end
end
-------------------------------------------------------------------------------------------------------------------
-- Customization hooks for idle and melee sets, after they've been automatically constructed.
-------------------------------------------------------------------------------------------------------------------
-- Custom spell mapping.
function job_get_spell_map(spell, default_spell_map)
if spell.action_type == 'Magic' then
if (default_spell_map == 'Cure' or default_spell_map == 'Curaga') and player.status == 'Engaged' then
return "CureMelee"
elseif default_spell_map == 'Cure' and state.Buff['Afflatus Solace'] then
return "CureSolace"
elseif spell.skill == "Enfeebling Magic" then
if spell.type == "WhiteMagic" then
return "MndEnfeebles"
else
return "IntEnfeebles"
end
end
end
end
function customize_idle_set(idleSet)
if player.mpp < 51 then
idleSet = set_combine(idleSet, sets.latent_refresh)
end
return idleSet
end
-------------------------------------------------------------------------------------------------------------------
-- General hooks for other events.
-------------------------------------------------------------------------------------------------------------------
-- Called when a player gains or loses a buff.
-- buff == buff gained or lost
-- gain == true if the buff was gained, false if it was lost.
function job_buff_change(buff, gain)
if state.Buff[buff] ~= nil then
state.Buff[buff] = gain
end
end
-------------------------------------------------------------------------------------------------------------------
-- User code that supplements self-commands.
-------------------------------------------------------------------------------------------------------------------
-- Called by the 'update' self-command.
function job_update(cmdParams, eventArgs)
if cmdParams[1] == 'user' and not areas.Cities:contains(world.area) then
local needsArts =
player.sub_job:lower() == 'sch' and
not buffactive['Light Arts'] and
not buffactive['Addendum: White'] and
not buffactive['Dark Arts'] and
not buffactive['Addendum: Black']
if not buffactive['Afflatus Solace'] and not buffactive['Afflatus Misery'] then
if needsArts then
send_command('@input /ja "Afflatus Solace" <me>;wait 1.2;input /ja "Light Arts" <me>')
else
send_command('@input /ja "Afflatus Solace" <me>')
end
end
end
end
-- Handle notifications of general user state change.
function job_state_change(stateField, newValue, oldValue)
if stateField == 'OffenseMode' then
if newValue == 'Normal' then
disable('main','sub')
else
enable('main','sub')
end
elseif stateField == 'Reset' then
if state.OffenseMode == 'None' then
enable('main','sub')
end
end
end
-- Function to display the current relevant user state when doing an update.
-- Return true if display was handled, and you don't want the default info shown.
function display_current_job_state(eventArgs)
local defenseString = ''
if state.Defense.Active then
local defMode = state.Defense.PhysicalMode
if state.Defense.Type == 'Magical' then
defMode = state.Defense.MagicalMode
end
defenseString = 'Defense: '..state.Defense.Type..' '..defMode..', '
end
local meleeString = ''
if state.OffenseMode == 'Normal' then
meleeString = 'Melee: Weapons locked, '
end
add_to_chat(122,'Casting ['..state.CastingMode..'], '..meleeString..'Idle ['..state.IdleMode..'], '..defenseString..
'Kiting: '..on_off_names[state.Kiting])
eventArgs.handled = true
end
-------------------------------------------------------------------------------------------------------------------
-- Utility functions specific to this job.
------------------------------------------------------------------------------------------------------------------- Gearswap is case sensitive (Or at least it was), Genbu's Shield is in lower case, as is Queller Rod, which may be whats preventing them from equipping correctlt i.e it can't find the shield so it tries to use the grip instead. There's quiet a few items like that though in there, might be worth using //gs showswaps to see what gear is trying to be equipped.
I think thats just a pre-lim look and as I can't see how you edited the Libs files I can't comment on if there's a bug with those.
I hate Motes lua's sometimes.
Node 207
Disregardhope is now also contributing to the sets on this guide.
|
|