|
GearSwap for Dummies!
Phoenix.Xelnok
Server: Phoenix
Game: FFXI
Posts: 16
By Phoenix.Xelnok 2014-07-24 19:05:52
I have been having trouble with the command to cancel saber dance if i use a waltz (and fan dance if i use a samba), does anyone else have this problem, or know how to fix it?
Thanks.
Server: Asura
Game: FFXI
Posts: 670
By Asura.Izilder 2014-07-27 09:50:37
Can anyone tell me whats the best way i could globally bind my enter key to ALT+B?
Ive keybound stuff in past using windower scrips but never key-bound a function key like "Enter" so im not sure how.
Server: Asura
Game: FFXI
Posts: 2507
By Asura.Calatilla 2014-07-27 09:52:31
sharpkeys
By prncodrkns 2014-07-29 09:24:16
Been working on pup gearswap and found a problem with frame weapon skill midcast code. The coding on line 129 will not work for some reason but the the coding on lines 124 and 126 will. Can anyone determine what that problem is, and why it will not change my gear to the weapon skill gear when frames are doing weapon skills?
https://github.com/Kinematics/GearSwap-Jobs/blob/master/PLD.lua
Server: Odin
Game: FFXI
Posts: 84
By Odin.Celoria 2014-08-25 02:54:14
Hey I just got back from a nice long break, i am trying to figure out this gearswap but I keep running into this issue, (tried loading rdm and a drk version)
celoria_drk.lua:12: syntax error near '12'
or
celoria_rdm.lua:13: syntax error near '13'
Can someone please help me, I can post the file in spoiler alert or send to your inbox.
Thank you in advance.
Phoenix.Keme
Server: Phoenix
Game: FFXI
Posts: 29
By Phoenix.Keme 2014-08-25 03:08:36
Send me, I'll check.
Server: Odin
Game: FFXI
Posts: 84
By Odin.Celoria 2014-08-25 03:16:34
sent and thank you
Server: Bismarck
Game: FFXI
Posts: 239
By Bismarck.Bongarippa 2014-09-17 21:33:07
I just started looking into making a gearswap for my mules dnc and I grabbed the one off of bg, so I'm sure most are familiar with it. I'm just curious to know if theres a command to switch the binds with a macro. I play with a controller on my pc so hitting f9 each time I want to change a gearset is rather inconvienient. Sorry if it was previously stated in this thread as I didnt really read it thoroughly, more or less skimmed and tried to see if I found a post talking about what I'm asking :x
Bismarck.Inference
Server: Bismarck
Game: FFXI
Posts: 417
By Bismarck.Inference 2014-09-17 21:46:04
Preceded by /console
gs c cycle OffenseMode
gs c cycle HybridMode
gs c cycle RangedMode
gs c cycle WeaponskillMode
gs c set DefenseMode Physical
gs c cycle PhysicalDefenseMode
gs c toggle Kiting
gs c set DefenseMode Magical
gs c cycle CastingMode
gs c update user
gs c cycle IdleMode
gs c reset DefenseMode
List should be in order of F9>CTRL F9>ALT F9>F10, etc. more or less.
Server: Bismarck
Game: FFXI
Posts: 239
By Bismarck.Bongarippa 2014-09-17 21:53:59
Sweet thanks.
By bubba37343 2014-10-15 05:43:21
Work in Progress...
Once in the Data Folder, there should only be the ‘Instructions’ text file. (If I recall correctly)
From here, we now need to acquire Motenten’s Fancy Magic Files and place them into this “Data” folder.
They can be found at this link: https://github.com/Kinematics/GearSwap-Jobs
At the link above, there are 5 files you absolutely need.
You can either download them, or create new files within Notepad++, Copy/Paste and save them the exact way he has them listed.
The First 5 files you need are:
Mote-Globals
Mote-Include
Mote-Mappings
Mote-SelfCommands
Mote-Utility
I cannot find these files on this page. Could you please assist me by either sending me the files over skype or in email? I will be more than happy to give you the information needed to get these files. I need to learn Gearswap, and want to be able to peruse the files that I can't seem to locate. Thank you, and you can message me any time.
Leviathan.Syagin
Server: Leviathan
Game: FFXI
Posts: 999
By Leviathan.Syagin 2014-10-15 10:13:06
I hope it's okay to ask here, I want to add a "cure" precast to my GS. Currently my fastcast is triggering for my cure precast set.
Is there anywhere i should be looking to learn how to build it or can someone paste a template for precast? I'm learning this slowly so any help would be appreciated.
Quetzalcoatl.Orestes
Server: Quetzalcoatl
Game: FFXI
Posts: 430
By Quetzalcoatl.Orestes 2014-10-15 10:27:33
Work in Progress...
Once in the Data Folder, there should only be the ‘Instructions’ text file. (If I recall correctly)
From here, we now need to acquire Motenten’s Fancy Magic Files and place them into this “Data” folder.
They can be found at this link: https://github.com/Kinematics/GearSwap-Jobs
At the link above, there are 5 files you absolutely need.
You can either download them, or create new files within Notepad++, Copy/Paste and save them the exact way he has them listed.
The First 5 files you need are:
Mote-Globals
Mote-Include
Mote-Mappings
Mote-SelfCommands
Mote-Utility
I cannot find these files on this page. Could you please assist me by either sending me the files over skype or in email? I will be more than happy to give you the information needed to get these files. I need to learn Gearswap, and want to be able to peruse the files that I can't seem to locate. Thank you, and you can message me any time.
This is outdated information. These files are included with gearswap, and shouldn't be installed manually.
Leviathan.Syagin
Server: Leviathan
Game: FFXI
Posts: 999
By Leviathan.Syagin 2014-10-15 14:00:13
Quetzalcoatl.Orestes said: »Work in Progress...
Once in the Data Folder, there should only be the ‘Instructions’ text file. (If I recall correctly)
From here, we now need to acquire Motenten’s Fancy Magic Files and place them into this “Data” folder.
They can be found at this link: https://github.com/Kinematics/GearSwap-Jobs
At the link above, there are 5 files you absolutely need.
You can either download them, or create new files within Notepad++, Copy/Paste and save them the exact way he has them listed.
The First 5 files you need are:
Mote-Globals
Mote-Include
Mote-Mappings
Mote-SelfCommands
Mote-Utility
I cannot find these files on this page. Could you please assist me by either sending me the files over skype or in email? I will be more than happy to give you the information needed to get these files. I need to learn Gearswap, and want to be able to peruse the files that I can't seem to locate. Thank you, and you can message me any time.
This is outdated information. These files are included with gearswap, and shouldn't be installed manually.
Thanks but not quite what i'm looking for.
Necro Bump Detected!
[79 days between previous and next post]
Server: Ragnarok
Game: FFXI
Posts: 59
By Ragnarok.Flyingsquirrel 2015-01-02 02:23:07
I'm not sure if this is the right place to ask this, but I've been trying to work on my .lua and GS all day for my pup and I cant seem to get anything working...
I realized my game is in Japanese and all my gear, weaponskills, etc is in Japanese... is that mean GS is a lost cause for me?
Lakshmi.Byrth
VIP
Server: Lakshmi
Game: FFXI
Posts: 6187
By Lakshmi.Byrth 2015-01-02 02:27:22
No, it is not a lost cause. Use set_language('japanese') in your get_sets() function. It will also translate some values (spell names and such) that exist in the resources in both languages, so when you write your rules it will be important to make sure you are comparing in the right language. If you find problems, please report them here:
https://github.com/Byrth/Lua/issues
For spells, you can always specify spell.english or spell.japanese explicitly, which will be a safer way to make rules.
Server: Ragnarok
Game: FFXI
Posts: 59
By Ragnarok.Flyingsquirrel 2015-01-02 02:41:03
thank you so much for the quick reply. I'll try out all of these things tonight =D
Server: Ragnarok
Game: FFXI
Posts: 59
By Ragnarok.Flyingsquirrel 2015-01-02 02:51:52
I got manuevers working perfectly. I have to put the gear names in Japanese, but I was able to leave everything else in english! =D Nice this made me very happy. I'll start working on the rest of the gear now and ill report issues if there are any.
Thanks again for your help
Server: Ramuh
Game: FFXI
Posts: 6
By Ramuh.Alatariel 2015-01-16 12:22:50
Super dummy here, hoping someone might be able to hold my hand through this.
This most recent update in January finally killed spellcast for me and I have zero idea what I'm doing with GearSwap. So far, I've activated it in my plugins, I've downloaded a sample .lua for BST and when I log in, I receive an error saying
GearSwap: Lua runtime error: .../addons/GearSwap/flow.lua:295:
GearSwap has detected an error in the user function get_sets:
.../addons/GearSwap/data/BST.lua:220: attempt to index field 'sub' (a nil value)
Now I don't know what any of this means. I opened up the BST.lua file in Notepad++ and went to line 220, but there aren't any typos or anything so I don't know what to do?
Also! Real dumb. With Spellcast, I would be able to type // and then do anything. //poison2 would cast poison 2 on the target, //korumoru would summon the Koru-Moru Trust NPC, etc., you know what I mean.
Is there a command like that in GearSwap? I'm not sure what I have to do to start doing ... anything!
Please help! Thanks so much! :D
Cerberus.Conagh
Server: Cerberus
Game: FFXI
Posts: 3189
By Cerberus.Conagh 2015-01-16 13:03:24
Super dummy here, hoping someone might be able to hold my hand through this.
This most recent update in January finally killed spellcast for me and I have zero idea what I'm doing with GearSwap. So far, I've activated it in my plugins, I've downloaded a sample .lua for BST and when I log in, I receive an error saying
GearSwap: Lua runtime error: .../addons/GearSwap/flow.lua:295:
GearSwap has detected an error in the user function get_sets:
.../addons/GearSwap/data/BST.lua:220: attempt to index field 'sub' (a nil value)
Now I don't know what any of this means. I opened up the BST.lua file in Notepad++ and went to line 220, but there aren't any typos or anything so I don't know what to do?
Also! Real dumb. With Spellcast, I would be able to type // and then do anything. //poison2 would cast poison 2 on the target, //korumoru would summon the Koru-Moru Trust NPC, etc., you know what I mean.
Is there a command like that in GearSwap? I'm not sure what I have to do to start doing ... anything!
Please help! Thanks so much! :D
Download shortcut
Profit
Server: Ramuh
Game: FFXI
Posts: 6
By Ramuh.Alatariel 2015-01-16 15:23:22
... what? I know what each of those words means, but ... what?
Lakshmi.Byrth
VIP
Server: Lakshmi
Game: FFXI
Posts: 6187
By Lakshmi.Byrth 2015-01-16 15:33:11
Shortcuts is another addon in the windower launcher under the Addons tab. Use it and it'll solve your // shortcuts problem.
By Miang 2015-01-16 15:56:39
This most recent update in January finally killed spellcast for me and I have zero idea what I'm doing with GearSwap. So far, I've activated it in my plugins, I've downloaded a sample .lua for BST and when I log in, I receive an error saying
GearSwap: Lua runtime error: .../addons/GearSwap/flow.lua:295:
GearSwap has detected an error in the user function get_sets:
.../addons/GearSwap/data/BST.lua:220: attempt to index field 'sub' (a nil value)
Now I don't know what any of this means. I opened up the BST.lua file in Notepad++ and went to line 220, but there aren't any typos or anything so I don't know what to do? If you post your get_sets() function we can take a look and quickly tell you why you're getting an "attempt to index field 'sub' (a nil value)" not defined error, but from the error alone, it's going to be something like variable.sub="something" where variable hasn't been setup to be a table with variable = T{} earlier in the code.
Server: Ramuh
Game: FFXI
Posts: 6
By Ramuh.Alatariel 2015-01-16 16:04:22
Quote: Shortcuts is another addon in the windower launcher under the Addons tab. Use it and it'll solve your // shortcuts problem.
Cool, thanks guys! Below is the part of the code that is drawing the error. I did not write this, I copypastad it from the internet.
Quote: function update_combat_form()
if buffactive['Killer Instinct'] then
if (player.sub_job == 'NIN' or player.sub_job == 'DNC') and player.equipment.sub:endswith('Axe') then
state.CombatForm:set('KillerDW')
else
state.CombatForm:set('Killer')
end
elseif (player.sub_job == 'NIN' or player.sub_job == 'DNC') and player.equipment.sub:endswith('Axe') then
state.CombatForm:set('DW')
else
state.CombatForm:reset()
end
end
By Miang 2015-01-16 16:11:04
The error message you're getting indicates the problem is in the function get_sets() but you've posted a function that shouldn't be in get_sets(). Any way you can post your whole GS inside some <code> tags?
Server: Ramuh
Game: FFXI
Posts: 6
By Ramuh.Alatariel 2015-01-16 17:25:09
Code -- NOTE: I do not play bst, so this will not be maintained for 'active' use.
-- It is added to the repository to allow people to have a baseline to build from,
-- and make sure it is up-to-date with the library API.
-- Credit to Quetzalcoatl.Falkirk for most of the original work.
--[[
Custom commands:
Ctrl-F8 : Cycle through available pet food options.
Alt-F8 : Cycle through correlation modes for pet attacks.
]]
-------------------------------------------------------------------------------------------------------------------
-- Setup functions for this job. Generally should not be modified.
-------------------------------------------------------------------------------------------------------------------
-- Initialization function for this job file.
function get_sets()
mote_include_version = 2
-- Load and initialize the include file.
include('Mote-Include.lua')
end
function job_setup()
-- Set up Reward Modes and keybind Ctrl-F8
state.RewardMode = M{['description']='Reward Mode', 'Theta', 'Zeta', 'Eta'}
RewardFood = {name="Pet Food Theta"}
send_command('bind ^f8 gs c cycle RewardMode')
-- Set up Monster Correlation Modes and keybind Alt-F8
state.CorrelationMode = M{['description']='Correlation Mode', 'Neutral','Favorable'}
send_command('bind !f8 gs c cycle CorrelationMode')
-- Custom pet modes for engaged gear
state.PetMode = M{['description']='Pet Mode', 'Normal', 'PetStance', 'PetTank'}
ready_moves_to_check = S{'Sic','Whirl Claws','Dust Cloud','Foot Kick','Sheep Song','Sheep Charge','Lamb Chop',
'Rage','Head Butt','Scream','Dream Flower','Wild Oats','Leaf Dagger','Claw Cyclone','Razor Fang',
'Roar','Gloeosuccus','Palsy Pollen','Soporific','Cursed Sphere','Venom','Geist Wall','Toxic Spit',
'Numbing Noise','Nimble Snap','Cyclotail','Spoil','Rhino Guard','Rhino Attack','Power Attack',
'Hi-Freq Field','Sandpit','Sandblast','Venom Spray','Mandibular Bite','Metallic Body','Bubble Shower',
'Bubble Curtain','Scissor Guard','Big Scissors','Grapple','Spinning Top','Double Claw','Filamented Hold',
'Frog Kick','Queasyshroom','Silence Gas','Numbshroom','Spore','Dark Spore','Shakeshroom','Blockhead',
'Secretion','Fireball','Tail Blow','Plague Breath','Brain Crush','Infrasonics','1000 Needles',
'Needleshot','Chaotic Eye','Blaster','Scythe Tail','Ripper Fang','Chomp Rush','Intimidate','Recoil Dive',
'Water Wall','Snow Cloud','Wild Carrot','Sudden Lunge','Spiral Spin','Noisome Powder','Wing Slap',
'Beak Lunge','Suction','Drainkiss','Acid Mist','TP Drainkiss','Back Heel','Jettatura','Choke Breath',
'Fantod','Charged Whisker','Purulent Ooze','Corrosive Ooze','Tortoise Stomp','Harden Shell','Aqua Breath',
'Sensilla Blades','Tegmina Buffet','Molting Plumage','Swooping Frenzy','Pentapeck','Sweeping Gouge',
'Zealous Snort'}
end
-------------------------------------------------------------------------------------------------------------------
-- User setup functions for this job. Recommend that these be overridden in a sidecar file.
-------------------------------------------------------------------------------------------------------------------
function user_setup()
state.OffenseMode:options('Normal', 'Acc')
state.WeaponskillMode:options('Normal', 'Acc')
state.IdleMode:options('Normal', 'Refresh', 'Reraise')
state.PhysicalDefenseMode:options('PDT', 'Hybrid', 'Killer')
update_combat_form()
end
-- Called when this job file is unloaded (eg: job change)
function user_unload()
-- Unbinds the Reward and Correlation hotkeys.
send_command('unbind ^f8')
send_command('unbind !f8')
end
-- Define sets and vars used by this job file.
function init_gear_sets()
--------------------------------------
-- Precast sets
--------------------------------------
sets.precast.JA['Killer Instinct'] = {head="Ankusa Helm +1"}
sets.precast.JA['Feral Howl'] = {body="Ankusa Jackcoat +1"}
sets.precast.JA['Call Beast'] = {hands="Ankusa Gloves +1"}
sets.precast.JA['Familiar'] = {legs="Ankusa Trousers +1"}
sets.precast.JA['Tame'] = {head="Totemic Helm +1",ear1="Tamer's Earring",legs="Stout Kecks"}
sets.precast.JA['Spur'] = {feet="Ferine Ocreae +2"}
sets.precast.JA['Reward'] = {ammo=RewardFood,
head="Stout Bonnet",neck="Aife's Medal",ear1="Lifestorm Earring",ear2="Neptune's Pearl",
body="Totemic Jackcoat +1",hands="Totemic Gloves +1",ring1="Aquasoul Ring",ring2="Aquasoul Ring",
back="Pastoralist's Mantle",waist="Crudelis Belt",legs="Ankusa Trousers +1",feet="Ankusa Gaiters +1"}
sets.precast.JA['Charm'] = {ammo="Tsar's Egg",
head="Totemic Helm +1",neck="Ferine Necklace",ear1="Enchanter's Earring",ear2="Reverie Earring +1",
body="Ankusa Jackcoat +1",hands="Ankusa Gloves +1",ring1="Dawnsoul Ring",ring2="Dawnsoul Ring",
back="Aisance Mantle +1",waist="Aristo Belt",legs="Ankusa Trousers +1",feet="Ankusa Gaiters +1"}
-- CURING WALTZ
sets.precast.Waltz = {ammo="Tsar's Egg",
head="Totemic Helm +1",neck="Ferine Necklace",ear1="Enchanter's Earring",ear2="Reverie Earring +1",
body="Gorney Haubert +1",hands="Totemic Gloves +1",ring1="Valseur's Ring",ring2="Asklepian Ring",
back="Aisance Mantle +1",waist="Aristo Belt",legs="Osmium Cuisses",feet="Scamp's Sollerets"}
-- HEALING WALTZ
sets.precast.Waltz['Healing Waltz'] = {}
-- STEPS
sets.precast.Step = {ammo="Jukukik Feather",
head="Yaoyotl Helm",neck="Ziel Charm",ear1="Choreia Earring",ear2="Heartseeker Earring",
body="Mikinaak Breastplate",hands="Buremte Gloves",ring1="Mars's Ring",ring2="Oneiros Annulet",
back="Letalis Mantle",waist="Hurch'lan Sash",legs="Skadi's Chausses +1",feet="Gorney Sollerets +1"}
-- VIOLENT FLOURISH
sets.precast.Flourish1 = {}
sets.precast.Flourish1['Violent Flourish'] = {body="Ankusa Jackcoat +1",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"}
sets.precast.FC = {ammo="Impatiens",neck="Orunmila's Torque",ear1="Loquacious Earring",ring1="Prolix Ring"}
sets.precast.FC.Utsusemi = set_combine(sets.precast.FC, {neck="Magoraga Beads"})
-- WEAPONSKILLS
-- Default weaponskill set.
sets.precast.WS = {ammo="Cheruski Needle",
head="Otomi Helm",neck="Asperity Necklace",ear1="Kokou's Earring",ear2="Brutal Earring",
body="Gorney Haubert +1",hands="Mikinaak Gauntlets",ring1="Pyrosoul Ring",ring2="Epona's Ring",
back="Atheling Mantle",waist="Windbuffet Belt",legs="Gorney Brayettes +1",feet="Gorney sollerets +1"}
sets.precast.WS.WSAcc = {ammo="Jukukik Feather",
head="Yaoyotl Helm",neck="Ziel Charm",ear1="Steelflash Earring",ear2="Bladeborn Earring",
body="Mes'yohi Haubergeon",hands="Mikinaak Gauntlets",ring1="Pyrosoul Ring",ring2="Epona's Ring",
back="Letalis Mantle",waist="Hurch'lan Sash",legs="Mikinaak Cuisses",feet="Gorney sollerets +1"}
-- Specific weaponskill sets.
sets.precast.WS['Ruinator'] = set_combine(sets.precast.WS, {neck="Breeze Gorget",hands="Boor Bracelets",
back="Buquwik Cape",waist="Breeze Belt"})
sets.precast.WS['Ruinator'].WSAcc = set_combine(sets.precast.WS.WSAcc, {neck="Breeze Gorget",waist="Breeze Belt"})
sets.precast.WS['Ruinator'].Mekira = set_combine(sets.precast.WS['Ruinator'], {head="Mekira-oto +1"})
sets.precast.WS['Onslaught'] = set_combine(sets.precast.WS, {ear1="Steelflash Earring",ear2="Bladeborn Earring",
ring1="Rajas Ring",feet="Ejekamal Boots"})
sets.precast.WS['Onslaught'].WSAcc = set_combine(sets.precast.WSAcc, {hands="Buremte Gloves",ring1="Rajas Ring"})
sets.precast.WS['Primal Rend'] = {ammo="Erlene's Notebook",
head="Seiokona Beret",neck="Stoicheion Medal",ear1="Crematio Earring",ear2="Friomisi Earring",
body="Phorcys Korazin",hands="Ankusa Gloves +1",ring1="Acumen Ring",ring2="Demon's Ring",
back="Toro Cape",waist="Soil Belt",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"}
sets.precast.WS['Cloudsplitter'] = set_combine(sets.precast.WS['Primal Rend'], {waist="Thunder Belt"})
--------------------------------------
-- Midcast sets
--------------------------------------
sets.midcast.FastRecast = {ammo="Demonry Core",
head="Iuitl Headgear +1",neck="Orunmila's Torque",ear1="Loquacious Earring",
body="Totemic Jackcoat +1",hands="Iuitl Wristbands +1",ring1="Prolix Ring",ring2="Dark Ring",
back="Mollusca Mantle",waist="Hurch'lan Sash",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"}
sets.midcast.Utsusemi = sets.midcast.FastRecast
-- PET SIC & READY MOVES
sets.midcast.Pet.WS = {ammo="Demonry Core",
head="Totemic Helm +1",neck="Ferine Necklace",ear1="Domesticator's Earring",ear2="Sabong Earring",
body="Mirke Wardecors",hands="Ferine Manoplas +2",ring1="Angel's Ring",ring2="Angel's Ring",
back="Ferine Mantle",waist="Hurch'lan Sash",legs="Desultor Tassets",feet="Totemic Gaiters +1"}
sets.midcast.Pet.WS.Unleash = set_combine(sets.midcast.Pet.WS, {hands="Scorpion Mittens"})
sets.midcast.Pet.Neutral = {legs="Desultor Tassets"}
sets.midcast.Pet.Favorable = {head="Ferine Cabasset +2",legs="Desultor Tassets"}
--------------------------------------
-- Idle/resting/defense/etc sets
--------------------------------------
-- RESTING
sets.resting = {ammo="Demonry Core",
head="Twilight Helm",neck="Wiglen Gorget",ear1="Domesticator's Earring",ear2="Sabong Earring",
body="Twilight Mail",hands="Totemic Gloves +1",ring1="Paguroidea Ring",ring2="Sheltered Ring",
back="Pastoralist's Mantle",waist="Muscle Belt +1",legs="Ferine Quijotes +2",feet="Skadi's Jambeaux +1"}
-- IDLE SETS
sets.idle = {ammo="Demonry Core",
head="Twilight Helm",neck="Wiglen Gorget",ear1="Domesticator's Earring",ear2="Sabong Earring",
body="Twilight Mail",hands="Totemic Gloves +1",ring1="Paguroidea Ring",ring2="Sheltered Ring",
back="Pastoralist's Mantle",waist="Muscle Belt +1",legs="Ferine Quijotes +2",feet="Skadi's Jambeaux +1"}
sets.idle.Refresh = {head="Wivre Hairpin",body="Twilight Mail",hands="Ogier's Gauntlets",legs="Ogier's Breeches"}
sets.idle.Reraise = set_combine(sets.idle, {head="Twilight Helm",body="Twilight Mail"})
sets.idle.Pet = sets.idle
sets.idle.Pet.Engaged = {ammo="Demonry Core",
head="Anwig Salade",neck="Ferine Necklace",ear1="Domesticator's Earring",ear2="Sabong Earring",
body="Ankusa Jackcoat +1",hands="Totemic Gloves +1",ring1="Angel's Ring",ring2="Angel's Ring",
back="Ferine Mantle",waist="Hurch'lan Sash",legs="Ankusa Trousers +1",feet="Armada Sollerets"}
-- DEFENSE SETS
sets.defense.PDT = {ammo="Jukukik Feather",
head="Nocturnus Helm",neck="Twilight Torque",
body="Mekira Meikogai",hands="Iuitl Wristbands +1",ring1="Dark Ring",ring2="Defending Ring",
back="Mollusca Mantle",waist="Flume Belt",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"}
sets.defense.Hybrid = set_combine(sets.defense.PDT, {head="Iuitl Headgear +1",
back="Mollusca Mantle",waist="Hurch'lan Sash",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
sets.defense.Killer = set_combine(sets.defense.Hybrid, {body="Ferine Gausape +2"})
sets.defense.MDT = set_combine(sets.defense.PDT, {ammo="Sihirik",
head="Ogier's Helm",ear1="Flashward Earring",ear2="Spellbreaker Earring",
body="Nocturnus Mail",ring1="Shadow Ring",
back="Engulfer Cape",waist="Nierenschutz"})
sets.Kiting = {ammo="Demonry Core",
head="Iuitl Headgear +1",neck="Twilight Torque",
body="Mekira Meikogai",hands="Iuitl Wristbands +1",ring1="Dark Ring",ring2="Defending Ring",
back="Repulse Mantle",waist="Hurch'lan Sash",legs="Iuitl Tights +1",feet="Skadi's Jambeaux +1"}
--------------------------------------
-- Engaged sets
--------------------------------------
sets.engaged = {ammo="Paeapua",
head="Felistris Mask",neck="Asperity Necklace",ear1="Suppanomimi",ear2="Brutal Earring",
body="Mes'yohi Haubergeon",hands="Xaddi Gauntlets",ring1="Oneiros Ring",ring2="Epona's Ring",
back="Atheling Mantle",waist="Patentia Sash",legs="Xaddi Cuisses",feet="Whirlpool Greaves"}
sets.engaged.Acc = {ammo="Jukukik Feather",
head="Yaoyotl Helm",neck="Ziel Charm",ear1="Heartseeker Earring",ear2="Dudgeon Earring",
body="Mes'yohi Haubergeon",hands="Buremte Gloves",ring1="Mars's Ring",ring2="Oneiros Annulet",
back="Letalis Mantle",waist="Hurch'lan Sash",legs="Skadi's Chausses +1",feet="Whirlpool Greaves"}
sets.engaged.Killer = set_combine(sets.engaged, {body="Ferine Gausape +2",waist="Cetl Belt"})
sets.engaged.Killer.Acc = set_combine(sets.engaged.Acc, {body="Ferine Gausape +2",waist="Cetl Belt"})
-- EXAMPLE SETS WITH PET MODES
--[[
sets.engaged.PetStance = {}
sets.engaged.PetStance.Acc = {}
sets.engaged.PetTank = {}
sets.engaged.PetTank.Acc = {}
sets.engaged.PetStance.Killer = {}
sets.engaged.PetStance.Killer.Acc = {}
sets.engaged.PetTank.Killer = {}
sets.engaged.PetTank.Killer.Acc = {}
]]
-- MORE EXAMPLE SETS WITH EXPANDED COMBAT FORMS
--[[
sets.engaged.DW.PetStance = {}
sets.engaged.DW.PetStance.Acc = {}
sets.engaged.DW.PetTank = {}
sets.engaged.DW.PetTank.Acc = {}
sets.engaged.KillerDW.PetStance = {}
sets.engaged.KillerDW.PetStance.Acc = {}
sets.engaged.KillerDW.PetTank= {}
sets.engaged.KillerDW.PetTank.Acc = {}
]]
--------------------------------------
-- Custom buff sets
--------------------------------------
sets.buff['Killer Instinct'] = {body="Ferine Gausape +2"}
end
-------------------------------------------------------------------------------------------------------------------
-- Job-specific hooks for standard casting events.
-------------------------------------------------------------------------------------------------------------------
function job_precast(spell, action, spellMap, eventArgs)
-- Define class for Sic and Ready moves.
if ready_moves_to_check:contains(spell.english) and pet.status == 'Engaged' then
classes.CustomClass = "WS"
end
end
function job_post_precast(spell, action, spellMap, eventArgs)
-- If Killer Instinct is active during WS, equip Ferine Gausape +2.
if spell.type:lower() == 'weaponskill' and buffactive['Killer Instinct'] then
equip(sets.buff['Killer Instinct'])
end
end
function job_pet_post_midcast(spell, action, spellMap, eventArgs)
-- Equip monster correlation gear, as appropriate
equip(sets.midcast.Pet[state.CorrelationMode.value])
end
-------------------------------------------------------------------------------------------------------------------
-- Job-specific hooks for non-casting events.
-------------------------------------------------------------------------------------------------------------------
function job_buff_change(buff, gain)
if buff == 'Killer Instinct' then
update_combat_form()
handle_equipping_gear(player.status)
end
end
-- Called when the pet's status changes.
function job_pet_status_change(newStatus, oldStatus)
end
-- Handle notifications of general user state change.
function job_state_change(stateField, newValue, oldValue)
if stateField == 'Reward Mode' then
-- Thena, Zeta or Eta
RewardFood.name = "Pet Food " .. newValue
elseif stateField == 'Pet Mode' then
state.CombatWeapon:set(newValue)
end
end
-------------------------------------------------------------------------------------------------------------------
-- User code that supplements standard library decisions.
-------------------------------------------------------------------------------------------------------------------
function get_custom_wsmode(spell, spellMap, defaut_wsmode)
if defaut_wsmode == 'Normal' then
if spell.english == "Ruinator" and (world.day_element == 'Water' or world.day_element == 'Wind' or world.day_element == 'Ice') then
return 'Mekira'
end
end
end
-- Called by the 'update' self-command, for common needs.
-- Set eventArgs.handled to true if we don't want automatic equipping of gear.
function job_update(cmdParams, eventArgs)
update_combat_form()
end
-- Set eventArgs.handled to true if we don't want the automatic display to be run.
function display_current_job_state(eventArgs)
local msg = 'Melee'
if state.CombatForm.has_value then
msg = msg .. ' (' .. state.CombatForm.value .. ')'
end
msg = msg .. ': '
msg = msg .. state.OffenseMode.value
if state.HybridMode.value ~= 'Normal' then
msg = msg .. '/' .. state.HybridMode.value
end
msg = msg .. ', WS: ' .. state.WeaponskillMode.value
if state.DefenseMode.value ~= 'None' then
msg = msg .. ', ' .. 'Defense: ' .. state.DefenseMode.value .. ' (' .. state[state.DefenseMode.value .. 'DefenseMode'].value .. ')'
end
if state.Kiting.value then
msg = msg .. ', Kiting'
end
msg = msg .. ', Reward: '..state.RewardMode.value..', Correlation: '..state.CorrelationMode.value
add_to_chat(122, msg)
eventArgs.handled = true
end
-------------------------------------------------------------------------------------------------------------------
-- Utility functions specific to this job.
-------------------------------------------------------------------------------------------------------------------
function update_combat_form()
if buffactive['Killer Instinct'] then
if (player.sub_job == 'NIN' or player.sub_job == 'DNC') and player.equipment.sub:endswith('Axe') then
state.CombatForm:set('KillerDW')
else
state.CombatForm:set('Killer')
end
elseif (player.sub_job == 'NIN' or player.sub_job == 'DNC') and player.equipment.sub:endswith('Axe') then
state.CombatForm:set('DW')
else
state.CombatForm:reset()
end
end
Also, this:
Code --------------------------------------
-- Precast sets
--------------------------------------
sets.precast.JA['Killer Instinct'] = {head="Ankusa Helm"}
sets.precast.JA['Feral Howl'] = {body="Ankusa Jackcoat"}
sets.precast.JA['Call Beast'] = {hands="Ankusa Gloves +1"}
sets.precast.JA['Familiar'] = {legs="Ankusa Trousers"}
sets.precast.JA['Tame'] = {head="Totemic Helm +1",legs="Khimaira Kecks"}
sets.precast.JA['Spur'] = {feet="Ferine Ocreae +2"}
sets.precast.JA['Reward'] = {ammo=RewardFood,
head="Khimaira Bonnet",neck="Promise badge",ear1="Lifestorm Earring",ear2="",
body="Totemic Jackcoat",hands="Totemic Gloves +1",ring1="Aquasoul Ring",ring2="Aquasoul Ring",
back="Pastoralist's Mantle",waist="Crudelis Belt",legs="Ankusa Trousers",feet="Ankusa Gaiters"}
sets.precast.JA['Charm'] = {ammo="Tsar's Egg",
head="Totemic Helm +1",neck="Ferine Necklace",ear1="Reverie Earring +1",ear2="Reverie Earring +1",
body="Ankusa Jackcoat",hands="Ankusa Gloves +1",ring1="Dawnsoul Ring",ring2="Angel's Ring",
back="Ferine mantle",waist="Aristo Belt",legs="Ankusa Trousers",feet="Ankusa Gaiters"}
-- CURING WALTZ
sets.precast.Waltz = {ammo="Tsar's Egg",
head="Totemic Helm +1",neck="Ferine Necklace",ear1="Reverie Earring +1",ear2="Reverie Earring +1",
body="Gorney Haubert +1",hands="Totemic Gloves +1",ring1="Dawnsoul Ring",ring2="Angel's Ring",
back="Ferine mantle",waist="Aristo Belt",legs="Gorney brayettes +1",feet="Whirlpool greaves"}
-- HEALING WALTZ
sets.precast.Waltz['Healing Waltz'] = {}
-- STEPS
sets.precast.Step = {ammo="Jukukik Feather",
head="Otomi Helm",neck="Ej necklace",ear1="Steelflash Earring",ear2="Heartseeker Earring",
body="Gorney haubert +1",hands="Buremte Gloves",ring1="Thundersoul ring",ring2="Thundersoul ring",
back="Pastoralist's Mantle",waist="Anguinus belt",legs="Espial hose",feet="Whirlpool greaves"}
-- VIOLENT FLOURISH
sets.precast.Flourish1 = {}
sets.precast.Flourish1['Violent Flourish'] = {body="Ankusa Jackcoat +1",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"}
sets.precast.FC = {neck="Orunmila's Torque",ear1="Loquacious Earring",ring1="Prolix Ring"}
sets.precast.FC.Utsusemi = set_combine(sets.precast.FC, {neck="Magoraga Beads"})
-- WEAPONSKILLS
-- Default weaponskill set.
sets.precast.WS = {ammo="Demonry core",
head="Otomi Helm",neck="Justiciar's torque",ear1="Brutal Earring",ear2="Kokou's Earring",
body="Gorney Haubert +1",hands="Buremte gloves",ring1="Epona's Ring",ring2="Pyrosoul Ring",
back="Atheling Mantle",waist="Anguinus belt",legs="Gorney Brayettes +1",feet="Ejekamal boots"}
sets.precast.WS.WSAcc = {ammo="Demonry core",
head="Otomi Helm",neck="Ej necklace",ear1="Steelflash Earring",ear2="Bladeborn Earring",
body="Gorney Haubert +1",hands="Buremte gloves",ring1="Epona's Ring",ring2="Pyrosoul Ring",
back="Vespid Mantle",waist="Anguinus belt",legs="Gorney Brayettes +1",feet="Ejekamal boots"}
-- Specific weaponskill sets.
sets.precast.WS['Ruinator'] = set_combine(sets.precast.WS, {neck="Breeze Gorget",
back="Buquwik Cape",waist="Breeze Belt"})
sets.precast.WS['Ruinator'].WSAcc = set_combine(sets.precast.WS.WSAcc, {neck="Breeze Gorget",waist="Breeze Belt"})
--sets.precast.WS['Onslaught'] = set_combine(sets.precast.WS, {ear1="Steelflash Earring",ear2="Bladeborn Earring",
--ring1="Rajas Ring",feet="Ejekamal Boots"})
--sets.precast.WS['Onslaught'].WSAcc = set_combine(sets.precast.WSAcc, {hands="Buremte Gloves",ring1="Rajas Ring"})
sets.precast.WS['Primal Rend'] = {ammo="Tsar's egg",
head="Espial cap",neck="Stoicheion Medal",ear1="Friomisi Earring",ear2="Hecate's earring",
body="Gorney Haubert +1",hands="Totemic Gloves +1",ring1="Dawnsoul ring",ring2="Acumen Ring",
back="Toro Cape",waist="Soil Belt",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"}
--sets.precast.WS['Cloudsplitter'] = set_combine(sets.precast.WS['Primal Rend'], {waist="Thunder Belt"})
--------------------------------------
-- Midcast sets
--------------------------------------
sets.midcast.FastRecast = {ammo="Demonry Core",
head="Otomi helm",neck="Twilight Torque",ear1="Loquacious Earring",
body="Totemic Jackcoat",hands="Totemic gloves +1",ring1="Dark Ring",ring2="Dark Ring",
back="Iximulew cape",waist="Flume belt",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"}
sets.midcast.Utsusemi = sets.midcast.FastRecast
-- PET SIC & READY MOVES
sets.midcast.Pet.WS = {ammo="Demonry Core",
head="Totemic Helm +1",neck="Ferine Necklace",ear1="Domesticator's Earring",ear2="Sabong Earring",
body="Mirke Wardecors",hands="Ferine Manoplas +2",ring1="",ring2="Angel's Ring",
back="Ferine Mantle",waist="Moepapa stone",legs="Desultor Tassets",feet="Totemic Gaiters"}
sets.midcast.Pet.Neutral = {legs="Desultor Tassets"}
sets.midcast.Pet.Favorable = {head="Ferine Cabasset +2",legs="Desultor Tassets"}
sets.midcast.Pet.TPBonus = {hands="Ferine Manoplas +2"}
--------------------------------------
-- Idle/resting/defense/etc sets
--------------------------------------
-- RESTING
--sets.resting = {ammo="Demonry Core",
-- head="Twilight Helm",neck="Wiglen Gorget",ear1="Domesticator's Earring",ear2="Sabong Earring",
-- body="Twilight Mail",hands="Totemic Gloves +1",ring1="Sheltered Ring",ring2="Paguroidea Ring",
-- back="Pastoralist's Mantle",waist="Muscle Belt +1",legs="Ferine Quijotes +2",feet="Skadi's Jambeaux +1"}
-- IDLE SETS
sets.idle = {ammo="Demonry Core",
head="Quiahuiz Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Sabong Earring",
body="Gorney Haubert +1",hands="Ankusa Gloves +1",ring1="Sheltered Ring",ring2="Paguroidea Ring",
back="Oneiros Cappa",waist="Selemnus Belt",legs="Gorney Brayettes +1",feet="Skadi's Jambeaux"}
--sets.idle.Refresh = {head="Wivre Hairpin",body="Twilight Mail",hands="Ogier's Gauntlets",legs="Ogier's Breeches"}
sets.idle.Reraise = set_combine(sets.idle, {head="Twilight Helm",body="Twilight Mail"})
sets.idle.PetDD = {ammo="Demonry Core",
head="Anwig salade",neck="Ferine necklace",ear1="",ear2="",
body="Ankusa jackcoat",hands="Totemic Gloves +1",ring1="",ring2="Angel's Ring",
back="Pastoralist's Mantle",waist="Moepapa stone",legs="Ankusa trousers",feet="Totemic gaiters"}
sets.idle.PetPDT = {ammo="Demonry Core",
head="Anwig salade",neck="Shepherd's chain",ear1="Domesticator's Earring",ear2="Sabong Earring",
body="Ankusa jackcoat",hands="Ankusa Gloves +1",ring1="",ring2="Angel's Ring",
back="Oneiros cappa",waist="Moepapa stone",legs="Ferine Quijotes +2",feet="Ankusa gaiters"}
-- DEFENSE SETS
sets.defense.PDT = {ammo="Demonry Core",
head="Iuitl headgear +1",neck="Twilight torque",ear1="Phawaylla earring",ear2="Musical Earring",
body="Iuitl vest +1",hands="Ankusa Gloves +1",ring1="Dark Ring",ring2="Dark Ring",
back="Iximulew cape",waist="Flume belt",legs="Iuitl tights +1",feet="Iuitl gaiters +1"}
--sets.defense.Hybrid = set_combine(sets.defense.PDT, {head="Iuitl Headgear +1",
--back="Mollusca Mantle",waist="Hurch'lan Sash",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
sets.defense.Killer = set_combine(sets.defense.Hybrid, {body="Ferine Gausape +2"})
sets.defense.MDT = {ammo="Demonry Core",
head="Espial cap",neck="Twilight torque",ear1="Phawaylla earring",ear2="Musical Earring",
body="Iuitl vest +1",hands="Ankusa Gloves +1",ring1="Dark Ring",ring2="Dark Ring",
back="Engulfer cape",waist="Zoran's belt",legs="Iuitl tights +1",feet="Iuitl gaiters +1"}
sets.Kiting = {ammo="Demonry Core",
head="Iuitl headgear +1",neck="Twilight torque",ear1="Phawaylla earring",ear2="Musical Earring",
body="Iuitl vest +1",hands="Ankusa Gloves +1",ring1="Dark Ring",ring2="Dark Ring",
back="Iximulew cape",waist="Flume belt",legs="Iuitl tights +1",feet="Skadi's jambeaux +1"}
--------------------------------------
-- Engaged sets
--------------------------------------
sets.engaged = {ammo="Paeapua",
head="Otomi helm",neck="Asperity Necklace",ear1="Dudgeon earring",ear2="Heartseeker earring",
body="Skadi's cuirie +1",hands="Buremte gloves",ring1="Epona's Ring",ring2="Rajas ring",
back="Atheling Mantle",waist="Patentia Sash",legs="Iuitl tights +1",feet="Ejekamal boots"}
sets.engaged.Acc = {ammo="Paeapua",
head="Otomi helm",neck="Ej necklace",ear1="Steelflash Earring",ear2="Heartseeker Earring",
body="Gorney haubert +1",hands="Buremte Gloves",ring1="Epona's ring",ring2="Rajas ring",
back="Pastoralist's mantle",waist="Anguinus belt",legs="Espial hose",feet="Whirlpool Greaves"}
sets.engaged.Killer = set_combine(sets.engaged, {body="Ferine Gausape +2"})
sets.engaged.Killer.Acc = set_combine(sets.engaged.Acc, {body="Ferine Gausape +2"})
-- EXAMPLE SETS WITH PET MODES
--[[
sets.engaged.PetStance = {}
sets.engaged.PetStance.Acc = {}
sets.engaged.PetTank = {}
sets.engaged.PetTank.Acc = {}
sets.engaged.PetStance.Killer = {}
sets.engaged.PetStance.Killer.Acc = {}
sets.engaged.PetTank.Killer = {}
sets.engaged.PetTank.Killer.Acc = {}
]]
-- MORE EXAMPLE SETS WITH EXPANDED COMBAT FORMS
--[[
sets.engaged.DW.PetStance = {}
sets.engaged.DW.PetStance.Acc = {}
sets.engaged.DW.PetTank = {}
sets.engaged.DW.PetTank.Acc = {}
sets.engaged.KillerDW.PetStance = {}
sets.engaged.KillerDW.PetStance.Acc = {}
sets.engaged.KillerDW.PetTank= {}
sets.engaged.KillerDW.PetTank.Acc = {}
]]
--------------------------------------
-- Custom buff sets
--------------------------------------
sets.buff['Killer Instinct'] = {body="Ferine Gausape +2"}
Again, I just copy-pasted this from some google source.
Quetzalcoatl.Falkirk
Server: Quetzalcoatl
Game: FFXI
Posts: 683
By Quetzalcoatl.Falkirk 2015-01-16 18:03:41
[+]
Work in Progress...
Alright... as a follow up to my Spellcast for Dummies, here is the next stage in Dancer Technology Evolution Stuff...
I don't know much at all about GearSwap, but I've figured out how to get it to do what my old Spellcast use to do, as well as surpass it's usefulness in many other areas. It's also quicker, but probably the most impressive thing, to me at least, is that because Dancer can so easily hit the delay cap, Gearswap can and does, automatically change your gear each time a specified buff is active or wears off.
So, for example, A Victory March + Haste Samba is already enough for a Dancer to hit the cap. Because of this, you'll gain more Damage, by removing Dual Wield gear, and a more beneficial stat, since Dual Wield is no longer making you attack faster, because you've reached the cap.
Anywho, long story short, when it recognizes that Victory March has been cast on you, it will trigger your 'High Haste' gear set, without any input or command from you.
So, I'm going to start with the basics, which means I'll talk to you as if you were a child, because when it comes to all of this coding, that's how I wish people would explain it to me!
Step 0: Stuff I assume everyone has, but just in case...
A: Windower 4
Download Here: http://www.windower.net/
This is the program that makes all of the fancy applications work.
B: Notepad ++
Download Here: http://notepad-plus-plus.org/
This is the program that you use to actually create and edit the 'code' that spellcast uses and runs off of. For all intents and purposes, it's no more than a word document really.
Step 1: Obtaining Gearswap
Open Windower as usual. Before selecting a Profile, click “Addons”, scroll down until you see “GearSwap” and click the Download Button. Afterwards, ensure the Toggle Switch in in the “On” position, and then start FFXI as you always do.
Step 2: File Management
I use Windows 7, other Operating Systems may be slightly different, but should be close.
Right Click ‘Start’
Select “Windows Explorer”
Local Disk C:
Program Files (x86)
Windower4
Addons
GearSwap
Data
Once in the Data Folder, there should only be the ‘Instructions’ text file. (If I recall correctly)
From here, we now need to acquire Motenten’s Fancy Magic Files and place them into this “Data” folder.
They can be found at this link: https://github.com/Kinematics/GearSwap-Jobs
At the link above, there are 5 files you absolutely need.
You can either download them, or create new files within Notepad++, Copy/Paste and save them the exact way he has them listed.
The First 5 files you need are:
Mote-Globals
Mote-Include
Mote-Mappings
Mote-SelfCommands
Mote-Utility
And for us Dancers also:
Dnc
They all need to be labeled exactly as above, and saved as .lua files.
You do NOT alter these you your characters name, they will remain Mote- forever.
*The Dnc.lua file you can alter to your character’s name. This is only technically necessary if you use multiple characters but Cambion_Dnc will work, just like the plain Dnc will.
Step 2 (b): File Management Part 2
From there, we will now right click the “Dnc.lua” file and select “Open With Notepad++”
Once inside, you’ll now be able to view Mote’s Dnc “gearswap”. This .lua file has all of the Job Specific stuff related to Dnc as well as gear sets, rules, triggers, etc etc. The previous 5 files have… all sorts of stuff that’s far beyond my comprehension, but that apply to all of the jobs in the game and are universal. I recommend you don’t worry about them for now.
From the file as is today (2/3/14) you’ll want to scroll down to line 67.
In case the lines get pushed up/down over time, you’re looking for the following text: Code --------------------------------------
-- Start defining the sets
--------------------------------------
From here, you want to Highlight from the beginning of line 67 all the way down to line 303.
For those reading at a later date, you’re looking for the very first line, that simply says “end” and you want to stop just ABOVE the “end”. DO NOT include the “end” in your copy/paste. This is very important, and it can/will/has caused issues.
Every thing you’ve highlighted should be the numerous gearsets that we’ll be able to alter to our preference down the road. For the time being ‘Copy’ the entire text, and then ‘Delete’ it from the current file.
Create a new Notepad++ file and “Paste” what you just copy/deleted from the original Dnc.lua.
Now save this file as Dnc_Gear as a lua file. Alternatively, if you decided to use your character name, you’ll want to save this as Cambion_Dnc_Gear.
So in your Data file you should either have
A: Cambion_Dnc & Cambion_Dnc_Gear
or
B: Dnc & Dnc_Gear
both as lua files, along with the initial 5 files from Step 2 (a)
What we’ve just done, is separate our “gear” from our actual programming file.
I recommend doing this, so that any time there is an update to gearswap, that requires you to download the newest Dnc.lua from Mote’s files, you’ll be able to simply remove his gear sets, and continue using the one’s you’ve already customized.
|
|