|
Gearswap Support Thread
Serveur: Phoenix
Game: FFXI
Posts: 1245
By Phoenix.Gaiarorshack 2015-11-25 21:43:54
some syntaxt/command help is neede
What is the command to cancel the current action ?
What is the command to remove a buff ?
if i otherwise have missed a command index please slap me the right way
found the answer to my second question on page 2 after rearading though the post a little slower.
if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)']) then
send_command('@wait 3.3; cancel 66; cancel 444')
end
Bismarck.Speedyjim
Serveur: Bismarck
Game: FFXI
Posts: 516
By Bismarck.Speedyjim 2015-11-28 00:58:07
Equip Purity Ring when cursed or using Holy Water command anyone?
By Ragnark 2015-11-29 14:57:40
i'm getting the following error ...
Gearswap: Lua runtime error: GearSwap/refresh.lua:234: attempt to index field '?' (a nil value)
Ramuh.Austar
Serveur: Ramuh
Game: FFXI
Posts: 10481
By Ramuh.Austar 2015-11-29 20:35:58
Looking at the Mote-Mappings file he has mappings for fast cast and recast staves. I'm looking to add damage and accuracy in a similar way, does anyone know how I can go about doing that?
Serveur: Odin
Game: FFXI
Posts: 36
By Odin.Danial 2015-11-30 13:32:36
Is there a way to create a custom timer for whatever spell (say haste) using gearswap? Motetenten has something along that line in his brd GS, I was hoping to make custom timers for haste and other buffs as Timers can't recognize the enh duration on Telchine stuff. Thanks!
Just wanted to bump this as I had the same question.
Serveur: Odin
Game: FFXI
Posts: 943
By Odin.Calipso 2015-11-30 18:27:20
Not taking credit for this, Lygre wrote this for me, and it was too awesome to not share. I know some other people were asking for it before, too. Basically just edit in your own augments on telchine gear, or anything else you want to tweak. Since it uses the custom timer function in timers and not the original timers, you might have to filter some spells. You should just be able to plunk it into the end of your GS.
Code
function job_setup()
custom_timers = {}
end
function job_aftercast(spell, action, spellMap, eventArgs)
if spell.skill == 'Enhancing Magic' then
adjust_timers(spell, spellMap)
end
end
function adjust_timers(spell, spellMap)
local current_time = os.time()
-- custom_timers contains a table of song names, with the os time when they
-- will expire.
-- Eliminate songs that have already expired from our local list.
local temp_timer_list = {}
local dur = calculate_duration(spell, spellName, spellMap)
custom_timers[spell.name] = nil
send_command('timers delete "'..spell.name..' ['..spell.target.name..']"')
custom_timers[spell.name] = current_time + dur
send_command('@wait 1;timers create "'..spell.name..' ['..spell.target.name..']" '..dur..' down')
end
-- Function to calculate the duration of a song based on the equipment used to cast it.
-- Called from adjust_timers(), which is only called on aftercast().
function calculate_duration(spell, spellName, spellMap)
local mult = 1.00
if player.equipment.Head == 'Telchine Cap' then mult = mult + 0.09 end
if player.equipment.Body == 'Telchine Chas.' then mult = mult + 0.09 end
if player.equipment.Hands == 'Telchine Gloves' then mult = mult + 0.09 end
if player.equipment.Legs == 'Telchine Braconi' then mult = mult + 0.08 end
if player.equipment.Feet == 'Telchine Pigaches' then mult = mult + 0.08 end
if player.equipment.Feet == 'Estq. Houseaux +2' then mult = mult + 0.20 end
if player.equipment.Legs == 'Futhark Trousers' then mult = mult + 0.10 end
if player.equipment.Legs == 'Futhark Trousers +1' then mult = mult + 0.20 end
if player.equipment.Hands == 'Atrophy Gloves' then mult = mult + 0.15 end
if player.equipment.Hands == 'Atrophy Gloves +1' then mult = mult + 0.16 end
if player.equipment.Back == 'Estoqueur\'s Cape' then mult = mult + 0.10 end
if player.equipment.Hands == 'Dynasty Mitts' then mult = mult + 0.05 end
if player.equipment.Body == 'Shabti Cuirass' then mult = mult + 0.09 end
if player.equipment.Body == 'Shabti Cuirass +1' then mult = mult + 0.10 end
if player.equipment.Feet == 'Leth. Houseaux' then mult = mult + 0.25 end
if player.equipment.Feet == 'Leth. Houseaux +1' then mult = mult + 0.30 end
if player.equipment.Head == 'Erilaz Galea' then mult = mult + 0.10 end
if player.equipment.Head == 'Erilaz Galea +1' then mult = mult + 0.15 end
local base = 0
if spell.name == 'Haste' then base = base + 180 end
if spell.name == 'Stoneskin' then base = base + 300 end
if spell.name:startswith("Bar") then base = base + 480 end
if spell.name == 'Blink' then base = base + 300 end
if spell.name == 'Aquaveil' then base = base + 600 end
if string.find(spell.english,'storm') then base = base + 180 end
if spell.name == 'Auspice' then base = base + 180 end
if spell.name:startswith("Boost") then base = base + 300 end
if spell.name == 'Phalanx' then base = base + 180 end
if spell.name:startswith("Protect") then base = base + 1800 end
if spell.name:startswith("Shell") then base = base + 1800 end
if spell.name:startswith("Refresh") then base = base + 150 end
if spell.name:startswith("Regen") then
base = base + 60
if buffactive['Light arts'] and player.main_job == 'SCH' then
base = base*2+60
-----the *2 here is the additional 60sec from Light Arts job points maxed
-----+48 is from light arts, +12 more from telchine chas.
elseif player.main_job == 'WHM' then
base = base + 60
if player.equipment.Hands == 'Ebers Mitts' then
base = base + 20
elseif player.equipment.Hands == 'Ebers Mitts +1' then
base = base + 22
end
if player.equipment.Legs == 'Theo. Pantaloons' or player.equipment.Legs == 'Theo. Pant. +1' then
base = base + 18
end
end
end
if spell.name == 'Adloquium' then base = base + 180 end
if spell.name:startswith("Animus") then base = base + 180 end
if spell.name == 'Crusade' then base = base + 300 end
if spell.name == 'Embrava' then base = base + 90 end
if spell.name:startswith("En") then base = base + 180 end
if spell.name:startswith("Flurry") then base = base + 180 end
if spell.name == 'Foil' then base = base + 30 end
if spell.name:startswith("Gain") then base = base + 180 end
if spell.name == 'Reprisal' then base = base + 60 end
if spell.name:startswith("Temper") then base = base + 180 end
if string.find(spell.english,'Spikes') then base = base + 180 end
if buffactive['Perpetuance'] then
if player.equipment.Hands == 'Arbatel Bracers' then
mult = mult*2.5
elseif player.equipment.Hands == 'Arbatel Bracers +1' then
mult = mult*2.55
else
mult = mult*2
end
end
if buffactive['Composure'] then
if spell.target.type == 'SELF' then
mult = mult*3
else
mult = mult
end
end
local totalDuration = math.floor(mult*base)
--print(totalDuration)
return totalDuration
end
function reset_timers()
for i,v in pairs(custom_timers) do
send_command('timers delete "'..i..'"')
end
custom_timers = {}
end
[+]
Serveur: Odin
Game: FFXI
Posts: 36
By Odin.Danial 2015-12-02 08:01:59
Sweet, thanks!
Ragnarok.Trixi
Serveur: Ragnarok
Game: FFXI
Posts: 120
By Ragnarok.Trixi 2015-12-03 16:10:21
I am getting a random error when ever I get/move/sell an item, any AH action, daily gobbie reward, item dropped from mob, etc.
"Lua runtime error: gearswap/gearswap.lua:362: attempt to index field '?' (a nil value)"
Looking at the lua.. Code
elseif id == 0x01E then
local bag = to_windower_api(res.bags[data:byte(0x09)].english)
local slot = data:byte(0x0A)
local count = data:unpack('I',5)
if not items[bag][slot] then items[bag][slot] = make_empty_item_table(slot) end
items[bag][slot].count = count
if count == 0 then
items[bag][slot].id = 0
items[bag][slot].bazaar = 0
items[bag][slot].status = 0
end
Line 362 is:
if not items[bag][slot] then items[bag][slot] = make_empty_item_table(slot) end
Any idea on why this is happening? Bug?
Very annoying, especially when in a PT..
Byrth asked if I had all the inventories, and i'm pretty sure I do:
Mog Safe
Mog Safe 2
Storage
Mog Locker
Mog Satchel
Mog Sack
Mog Case
Mog Wardrobe
-All with 80 item capactiy
Phoenix.Sevrina
Serveur: Phoenix
Game: FFXI
Posts: 30
By Phoenix.Sevrina 2015-12-05 00:51:44
Working on a gearswap for pld (Motenten's with addition of a few acc arrays and AM3 now) and added this to the function customize_melee_set(meleeSet)
Code
if buffactive['Aftermath: Lv.3'] then
meleeSet = set_combine(meleeSet, sets.engaged.aftermath, sets.engaged.aftermath[state.OffenseMode.value])
end
Not sure if this was the correct spot, but I know it works fine, it equips my AM3 set with all the acc levels when I toggle through them. The only problem I'm having now is that my PDT set will not equip/lock-in while I'm meleeing with AM3 up. It will lock me in my PDT set when I do not have AM3 up though, and when I'm disengaged.
Leviathan.Tsoi
Serveur: Leviathan
Game: FFXI
Posts: 19
By Leviathan.Tsoi 2015-12-05 06:03:35
Hello! I recently started a lua for my Rune Fencer using moten basic run lua. But its not going into its engaged sets, at all. It will cast, and ws, but it will never enter its engaged sets. Its working fine on my other jobs. Any solutions?
pastebin.com/gTCL2TTN ( my rune lua )
Serveur: Asura
Game: FFXI
Posts: 48
By Asura.Mcdonalds 2015-12-05 07:23:43
Would anyone know why gearswap loads successfully but when I change jobs the red words don't pop up and my gear doesn't change on any command. Nothing wrong with the script. I used it last week. I did, however change servers and my name. Would that affect anything?
By Sidiov 2015-12-05 14:32:36
Would anyone know why gearswap loads successfully but when I change jobs the red words don't pop up and my gear doesn't change on any command. Nothing wrong with the script. I used it last week. I did, however change servers and my name. Would that affect anything? It will if your /Gearswap/data/ files are named like: name_job_gear.lua that some people use. If so, just rename the first part to the new character.
Serveur: Asura
Game: FFXI
Posts: 48
By Asura.Mcdonalds 2015-12-05 15:34:42
You're amazing. Thanks, Sidiov
By RolandJ 2015-12-06 19:10:59
Rolandj said: Rolandj said: Hello,
My gs is loading a ghost file. I've deleted my whm.lua, as a test, and gs still loads it after //lua u gearswap > //lua l gearswap and after rebooting ffxi. Where this file is is located unbeknownst to me; I have been using 'C:\Program Files (x86)\Windower4\addons\GearSwap\data\Rolandj' as my directory and gs has been updating my lua properly until this evening afaik as I have made tons of changes the past few days & they all took effect ingame. Is there any way to trace what file is actually loaded ingame? I want to see its filepath! There is no way that it could be loading from the recycle bin, lol.
Any ideas? I'll keep looking.
Ok, lol, it was loading a 'whm.lua' file that I had in my 'GearSwap\libs' folder for some reason. A search of my entire hard drive for whm.lua is how I found this sneaky little stinker.
Ok, so I deleted that file, replaced my whm.lua back to my chars file, and when I did //lua u gearswap > //lua l gearswap ingame it created another outdated whm.lua in the libs folder.
I've been using this method to update my whm.lua each time that I've made changes and this is the first time I've encountered this. I'll have my eyes on the lib folder from now on, I guess.
Does anyone know what triggers gs to do this?
Thanks,
Roland
By Jorel85 2015-12-07 00:07:07
Hey guys, I'm getting a lua runtime error. /windower4//addons/gearswap/equip_processing.lua:258: attempt to index field '?' (a nil value)
Gearswap will load but it immediately gives this error. None of my luas will load either. I tried looking into the equip processing file to try and see if i could fix the problem, but I haven't got the foggiest clue. If anyone could help me figure this out I'd greatly appreciate it. Following is the code for the equip_processing.lua around line 258. is there something that needs to be fixed?
function equip_piece(eq_slot_id,bag_id,inv_slot_id)
-- Many complicated, wow!
local cur_eq_tab = items.equipment[toslotname(eq_slot_id)]
if cur_eq_tab.slot ~= empty then
items[to_windower_api(res.bags[cur_eq_tab.bag_id].english)][cur_eq_tab.slot].status = 0
end
if inv_slot_id ~= empty then
items.equipment[toslotname(eq_slot_id)] = {slot=inv_slot_id,bag_id=bag_id}
items[to_windower_api(res.bags[bag_id].english)][inv_slot_id].status = 5
return string.char(inv_slot_id,eq_slot_id,bag_id,0)
else
items.equipment[toslotname(eq_slot_id)] = {slot=empty,bag_id=0}
return string.char(0,eq_slot_id,0,0)
end
end
By kithaofcerb 2015-12-10 00:44:17
Hey folks, is there going to be an update that fixes Gearswap for the December update? Apparently it's loading my LUA, but not swapping anything. Thanks in advance
By Sidiov 2015-12-10 00:48:36
Hey folks, is there going to be an update that fixes Gearswap for the December update? Apparently it's loading my LUA, but not swapping anything. Thanks in advance No.
Game over, bro.
By kithaofcerb 2015-12-10 00:51:57
Hey folks, is there going to be an update that fixes Gearswap for the December update? Apparently it's loading my LUA, but not swapping anything. Thanks in advance No.
Game over, bro.
I genuinely can't tell if you're being sarcastic or not
Serveur: Bismarck
Game: FFXI
Posts: 206
By Bismarck.Diablosword 2015-12-10 01:10:10
Im pretty sure that if GearSwap ever did quit working forever, I'd quit. You guys are doing the Lord's work here.
Leviathan.Frotaut
Serveur: Leviathan
Game: FFXI
Posts: 281
By Leviathan.Frotaut 2015-12-10 01:12:07
give them a few to see what broke what, they generally have fast updates. It is late though, might just have to wait a few.
Serveur: Asura
Game: FFXI
Posts: 59
By Asura.Orangebear 2015-12-13 09:10:58
Can anyone advise how to include a specific set for an individual spell?
Eg, Death, Impact etc... ?
By geigei 2015-12-13 09:16:10
Can anyone advise how to include a specific set for an individual spell?
Eg, Death, Impact etc... ?
sets.midcast.Death = {}
Serveur: Asura
Game: FFXI
Posts: 59
By Asura.Orangebear 2015-12-13 09:21:01
Oh that simple? Damn thanks lol
Ragnarok.Nep
Serveur: Ragnarok
Game: FFXI
Posts: 18
By Ragnarok.Nep 2015-12-13 17:01:09
I know this topic has been brought up numerous times before, but I'm going out of my mind trying to get an Aurorastorm set to work for my WHM and I'm starting to get desperate.
I have used Motenten's default Gearswap files since the beginning, the "libs" files are all unedited and the only thing I've done with Kinematics' WHM file is edit the gear sets. I've been trying to add a rule for swapping to a certain midcast set when Aurorastorm is up following the many examples and variations I've seen in this thread and elsewhere, but none will work and I cast in my normal Cure set no matter what.
I even went so far as to delete all of Gearswap's files in the entire "addons" folder, redownloaded it through Windower, downloaded Kinematics' SCH file (a job I don't even play) from here which has a weather curing set by default that I presumed would work. I did absolutely nothing to the file, and then tried casting Cure again while on SCH. Still no change when Aurorastorm is up. I must be missing something fundamental and obvious, but I am clueless as to what that might be.
If anyone has any ideas on what I could try, I would be so grateful!
Edit: solved by Krystela in the WHM guide, thank you again! Here's the post that helped me, in case someone else runs into the same problem I did.
Serveur: Bahamut
Game: FFXI
Posts: 879
By Bahamut.Seekerstar 2015-12-14 14:28:49
Okay so I have what is likely a hardware issue but maybe you guys can get me a workaround.
My original laptop crashga V'd and I got another, a Lenovo.
I cannot use my f9 etc keys to cycle anything because it does crap like shuts my screen off, and I don't know what to do. I crashed myself trying to swap to an accuracy set once before, and hell if I know what to do.
Can I use alternate keybinds for this stuff, and if so, how the hell do I format it in my luas? This is killing me. :(
Serveur: Asura
Game: FFXI
Posts: 59
By Asura.Orangebear 2015-12-18 10:07:52
Hi,
Since one of the recent updates, my toggle to use AF Body doesn't seem to be working... but I can't work out why :-/
Can anyone see something I'm missing?
Thanks!
http://pastebin.com/cqu5vACi
By Sidiov 2015-12-18 12:28:46
Hi,
Since one of the recent updates, my toggle to use AF Body doesn't seem to be working... but I can't work out why :-/
Can anyone see something I'm missing?
Thanks!
http://pastebin.com/cqu5vACiDoes the value of state.ArtifactBody actually change when you hit the key? If not, try moving it to another keybind temporarily and see if it works.
I've had a lot of problems with the ` keybinds. They only worked on full keyboard style, and I'm thinking that the new keyboard stuff may have messed with it.
Serveur: Shiva
Game: FFXI
Posts: 167
By Shiva.Applesmash 2015-12-18 16:10:33
Might be a long shot but is there a way to distinguish .lua files for 2 characters with the same name/jobs but on different servers?
Sorry if this was already addressed
Just looking for someone to explain this addon a bit for me. It looks like it is an alternative to Spellcast.
Is it going to be replacing Spellcast? In which ways is it better or worse. I don't know any programming but I've slowly learned more and more about spellcast and the 'language' used in gearswap is confusing to me.
It says it uses packets so it potentially could be more detectable? but does that also eliminate any lag that spellcast may encounter?
I plan on redoing my PUP xml to include pet casting sets thanks to the new addon petschool. I'm just not sure if it's worth it to just wait until gearswap gets more popular or to go ahead and do it in spellcast.
If anyone could give me more info I'd greatly appreciate it.
|
|