Gearswap Support Thread

言語: JP EN DE FR
2010-06-21
New Items
users online
フォーラム » Windower » Support » Gearswap Support Thread
Gearswap Support Thread
First Page 2 3 ... 152 153 154
 Valefor.Prothescar
Guide Master
Offline
サーバ: Valefor
Game: FFXI
Posts: 16199
By Valefor.Prothescar 2014-01-05 19:39:09  
Well, got it to load.

--I was missing a comma after the ammo slot on like 200something, not 9.

--All of the commas separating spells were wrong, had to change them to or.


Now I know! Time to find out which rules work, which don't, and how to get it to work the way I want it...
 Lakshmi.Byrth
VIP
Offline
サーバ: Lakshmi
Game: FFXI
user: Byrthnoth
Posts: 5491
By Lakshmi.Byrth 2014-01-05 20:05:30  
Quetzalcoatl.Mystery said: »
Does GearCollector work with Gearswap?
Use //gs export sets xml
Then copy the created file (in gearswap/data/export) to spellcast and rename it appropriately.
 Valefor.Prothescar
Guide Master
Offline
サーバ: Valefor
Game: FFXI
Posts: 16199
By Valefor.Prothescar 2014-01-05 20:30:52  
Seem to have worked out how to do what I want except for one thing: can I add multiple spells to one rule? Or do I need a bunch of separate rules?

i.e.
Code
function midcast(spell,act)
        if spell.english == 'Quad. Continuum' or 'Delta Thrust' or 'Cannonball' or 'Glutinous Dart' then
		equip(sets.BlueMagic.STRVIT)
		if buffactive['Chain Affinity'] then
			equip(sets.JA.ChainAffinity)
		end
		if buffactive['Efflux'] then
			equip(sets.JA.Efflux)
		end
        end

        if spell.english == 'Acrid Stream' then
		equip(sets.BlueMagic.INT)
		if buffactive['Burst Affinity'] then
			equip(sets.JA.BurstAffinity)
		end
	end	

end


doesn't seem to work, however...

Code
function midcast(spell,act)
	if spell.english == 'Quad. Continuum' then
		equip(sets.BlueMagic.STRVIT)
		if buffactive['Chain Affinity'] then
			equip(sets.JA.ChainAffinity)
		end
		if buffactive['Efflux'] then
			equip(sets.JA.Efflux)
		end
	end

	if spell.english == 'Acrid Stream' then
		equip(sets.BlueMagic.INT)
		if buffactive['Burst Affinity'] then
			equip(sets.JA.BurstAffinity)
		end
	end	
end


works fine. both spells get their proper sets equipped, whereas the code above has every action I do equip the STRVIT set.
 Lakshmi.Byrth
VIP
Offline
サーバ: Lakshmi
Game: FFXI
user: Byrthnoth
Posts: 5491
By Lakshmi.Byrth 2014-01-05 20:34:30  
if spell.english =='Quad. Continuum" or spell.english == 'Acrid Stream' or ...

alternatively:
T{'Quad. Continuum','Acrid Stream','etc.'}:contains(spell.english)
 Valefor.Prothescar
Guide Master
Offline
サーバ: Valefor
Game: FFXI
Posts: 16199
By Valefor.Prothescar 2014-01-05 20:37:07  
okay thanks
 Phoenix.Cliamain
Offline
サーバ: Phoenix
Game: FFXI
user: Cliamain
Posts: 64
By Phoenix.Cliamain 2014-01-05 21:08:18  
How does this see what job you are on? Is there a rule or a command in the .lua that detects it?

In spellcast it's something like <group name="PLD" default="yes">.
 Valefor.Prothescar
Guide Master
Offline
サーバ: Valefor
Game: FFXI
Posts: 16199
By Valefor.Prothescar 2014-01-05 21:39:26  
far as I can tell it does it automatically without any input required.


final stupid question from me: any way to get gearsets into my macros? I want to add PDT and MDT sets to my BLU lua, but idk how i'd be able to actually use them. Typing in //gs equip sets.PDT or something every time would be too clunky, and I don't know any workarounds to getting // commands to work via in-game macros.
 Lakshmi.Byrth
VIP
Offline
サーバ: Lakshmi
Game: FFXI
user: Byrthnoth
Posts: 5491
By Lakshmi.Byrth 2014-01-05 21:54:00  
/console gs equip sets.PDT
 Fenrir.Motenten
VIP
Offline
サーバ: Fenrir
Game: FFXI
user: Motenten
Posts: 764
By Fenrir.Motenten 2014-01-06 01:12:39  
Phoenix.Cliamain said: »
How does this see what job you are on? Is there a rule or a command in the .lua that detects it?

In spellcast it's something like <group name="PLD" default="yes">.

That example isn't Spellcast seeing what job you're on, that's just Spellcast using the default group, which you happened to have named after the job you were on. Completely coincidental. For spellcast, it'd be <if mainjob="pld">...

However, to see your current job information, look at player.main_job and player.sub_job. There are some other variants as well. You can find all of them in the spreadsheet provided in the beta_examples_and_information subfolder of Gearswap (Windower/addons/GearSwap/beta_examples_and_information).
 Phoenix.Cliamain
Offline
サーバ: Phoenix
Game: FFXI
user: Cliamain
Posts: 64
By Phoenix.Cliamain 2014-01-06 08:27:30  
Fenrir.Motenten said: »
Phoenix.Cliamain said: »
How does this see what job you are on? Is there a rule or a command in the .lua that detects it?

In spellcast it's something like <group name="PLD" default="yes">.

That example isn't Spellcast seeing what job you're on, that's just Spellcast using the default group, which you happened to have named after the job you were on. Completely coincidental. For spellcast, it'd be <if mainjob="pld">...

However, to see your current job information, look at player.main_job and player.sub_job. There are some other variants as well. You can find all of them in the spreadsheet provided in the beta_examples_and_information subfolder of Gearswap (Windower/addons/GearSwap/beta_examples_and_information).

Ah well now I know where it's finding out what your main job is now then. Where is it seeing what job you're on? Or is it just going off of what the .Lua is named? I'd think most things are smart enough now to just go off of that.
 Quetzalcoatl.Mystery
Offline
サーバ: Quetzalcoatl
Game: FFXI
user: Thps
Posts: 15
By Quetzalcoatl.Mystery 2014-01-06 16:08:29  
Lakshmi.Byrth said: »
Quetzalcoatl.Mystery said: »
Does GearCollector work with Gearswap?
Use //gs export sets xml
Then copy the created file (in gearswap/data/export) to spellcast and rename it appropriately.

If I'm understanding this right, then every time I get a new piece of gear I'll need to be sure to change it in the xml for gc as well?

Not too much of a hassle I guess!
 Lakshmi.Toioiz
Guildwork Premium
Offline
サーバ: Lakshmi
Game: FFXI
user: Toioiz
By Lakshmi.Toioiz 2014-01-06 18:33:52  
When setting up gearswap for a whm mule, I used the scholar example, and likely broke something. When using 'Cure' from the menu, the gear changes, and everything works fine. when using /ma cure4 <name>, it doesn't appear to change gear at all. Is there a section that sees those differently?

Basically, here is the only section referencing cure spells:
Quote:
if string.find(spell.english,'Cur') then
equip(sets.midcast_Cure)
end
 Odin.Jassik
VIP
Offline
サーバ: Odin
Game: FFXI
user: Jassik
Posts: 9534
By Odin.Jassik 2014-01-06 19:27:57  
Quetzalcoatl.Mystery said: »
Lakshmi.Byrth said: »
Quetzalcoatl.Mystery said: »
Does GearCollector work with Gearswap?
Use //gs export sets xml
Then copy the created file (in gearswap/data/export) to spellcast and rename it appropriately.

If I'm understanding this right, then every time I get a new piece of gear I'll need to be sure to change it in the xml for gc as well?

Not too much of a hassle I guess!

considering you should be using something like Notepad++ to edit the files, you can use the "find and replace" features to speed that process. If you get a new WS body, and have many WS sets for different situations, you can Find all the places the old body shows up and replace them with the new body.

Lots of slick ways to speed that process. I've changed setups midway through an event because a piece that I needed dropped at some point.
 Quetzalcoatl.Mystery
Offline
サーバ: Quetzalcoatl
Game: FFXI
user: Thps
Posts: 15
By Quetzalcoatl.Mystery 2014-01-06 19:57:23  
Yes, I do this too.

I was just making sure that GC won't read the lua files.

Thanks Byrth!
Offline
Posts: 108
By Treizekordero 2014-01-06 20:28:04  
Lakshmi.Byrth said: »
Quetzalcoatl.Mystery said: »
Does GearCollector work with Gearswap?
Use //gs export sets xml
Then copy the created file (in gearswap/data/export) to spellcast and rename it appropriately.

I tried to use //gs export sets xml for gear collector but it didn't work for me. Gives no errors just nothing happens.

Edit:
Got it to work.. had to use //gearswap export sets xml
 Leviathan.Nitenichi
Offline
サーバ: Leviathan
Game: FFXI
user: camaroz
Posts: 264
By Leviathan.Nitenichi 2014-01-07 16:20:04  
I apologize if I missed somewhere, is there a list of commands?
 Fenrir.Motenten
VIP
Offline
サーバ: Fenrir
Game: FFXI
user: Motenten
Posts: 764
By Fenrir.Motenten 2014-01-07 16:28:55  
You'll need to be a little more precise regarding exactly which commands you mean.

If you mean commands directly to GearSwap (ie: from the command line or console), yes -- it's at the bottom of the included spreadsheet.

If you mean commands that you can use to refer to game information, or execute rules within the lua itself, yes -- that's the majority of what the included spreadsheet provides.

If you mean commands that the user can issue to their own job file, no. That's something you make yourself.
 Fenrir.Motenten
VIP
Offline
サーバ: Fenrir
Game: FFXI
user: Motenten
Posts: 764
By Fenrir.Motenten 2014-01-07 16:31:32  
Phoenix.Cliamain said: »
Fenrir.Motenten said: »
Phoenix.Cliamain said: »
How does this see what job you are on? Is there a rule or a command in the .lua that detects it?

In spellcast it's something like <group name="PLD" default="yes">.

That example isn't Spellcast seeing what job you're on, that's just Spellcast using the default group, which you happened to have named after the job you were on. Completely coincidental. For spellcast, it'd be <if mainjob="pld">...

However, to see your current job information, look at player.main_job and player.sub_job. There are some other variants as well. You can find all of them in the spreadsheet provided in the beta_examples_and_information subfolder of Gearswap (Windower/addons/GearSwap/beta_examples_and_information).

Ah well now I know where it's finding out what your main job is now then. Where is it seeing what job you're on? Or is it just going off of what the .Lua is named? I'd think most things are smart enough now to just go off of that.

You either have things backwards, or you're just being confusing in your question. GearSwap knows your job based on information it can pull from Windower. Your custom job lua files know your job because they can look at player.main_job whenever they want. GearSwap chooses which lua file to use based on the job you're on. Absolutely nothing determines what your job is based on the name of the file.
 Leviathan.Nitenichi
Offline
サーバ: Leviathan
Game: FFXI
user: camaroz
Posts: 264
By Leviathan.Nitenichi 2014-01-07 16:35:48  
Didn't see the spreadsheet in gearswap folder, ill locate it off github. Basic commands ie in spellcast: //sc load nite_mnk would be to load monk.
 Cerberus.Conagh
Offline
サーバ: Cerberus
Game: FFXI
user: onagh
Posts: 3187
By Cerberus.Conagh 2014-01-07 18:24:37  
I know there is a Spellcast COde > Gearswap converter, but I remember there being some issues with SPellcast variables not translating correctly (including gearsets) the gearsets are not my concern, but I wondered if the Variables are fixed yet?

here is my Blue Spellcast and I wondered how it should look in Gearswap

http://guildwork.com/characters/ffxi/cerberus/conagh/spellcast#Conagh_BLU.xml

I had some major issues trying to impliment these variables into Gearswap but I had success making a WHM (although after the last update it stopped reading a current spell status and refused to change my idle set)
 Cerberus.Conagh
Offline
サーバ: Cerberus
Game: FFXI
user: onagh
Posts: 3187
By Cerberus.Conagh 2014-01-07 18:45:51  
Lakshmi.Toioiz said: »
When setting up gearswap for a whm mule, I used the scholar example, and likely broke something. When using 'Cure' from the menu, the gear changes, and everything works fine. when using /ma cure4 <name>, it doesn't appear to change gear at all. Is there a section that sees those differently?

Basically, here is the only section referencing cure spells:
Quote:
if string.find(spell.english,'Cur') then
equip(sets.midcast_Cure)
end


Quote:
function precast(spell,action)
if spell.skill=='HealingMagic' then
if T{"Cure*","Curaga*"}:contains(spell.name) and spell.casttime < 6 then
cast_delay(0.1)
equip(sets.precast_Cure)
end
end

I'm not a fan of the if string.find command as it can't be used in multiple's for the thing ie

Quote:
if string.find(spell.english,'Cur') or (spell.english, 'lyna') then

Wouldn't work as it can;t parse both lines at once, beter off using the one above works similar to spellcast and a little smoother.
 Lakshmi.Toioiz
Guildwork Premium
Offline
サーバ: Lakshmi
Game: FFXI
user: Toioiz
By Lakshmi.Toioiz 2014-01-07 21:33:54  
Thanks, here is the one I currently ended up with after recommendations:
http://pastebin.com/KwGc1jA1
[+]
 Lakshmi.Byrth
VIP
Offline
サーバ: Lakshmi
Game: FFXI
user: Byrthnoth
Posts: 5491
By Lakshmi.Byrth 2014-01-08 04:40:51  
Conagh:
Code
if string.find(spell.english,'Cur') or string.find(spell.english, 'lyna') then
 Leviathan.Arcon
VIP
Offline
サーバ: Leviathan
Game: FFXI
user: Zaphor
Posts: 657
By Leviathan.Arcon 2014-01-08 08:22:47  
Code
if T{'Cure*', 'Curaga*'}:any(string.wcmatch+{spell.name}) then


More general (t is a T-table and fn is a function):
Code
t:any(fn)


This will return true iff fn is not nil/false for any of the elements in t. And further:
Code
t:all(fn)


This will return true iff fn is not nil/false for all of the elements of t.
Offline
Posts: 103
By Miang 2014-01-08 09:13:01  
Question, you've used spell.name whereas Byrth is using spell.english (and I've always used spell.english). Which should it be?
 Leviathan.Arcon
VIP
Offline
サーバ: Leviathan
Game: FFXI
user: Zaphor
Posts: 657
By Leviathan.Arcon 2014-01-08 10:30:57  
Up to you, really. spell.english is safer if you use hard-coded names, unless you explicitly specify the language (by setting the _addon.language variable). spell.name defaults to your FFXI language or the language specified in your addon (if specified), which can be overwritten in your settings XML. If your language is English, spell.name will default to spell.english, German to spell.german, and so on. In most cases it doesn't matter, but if you use .name instead of .english then people can adjust the spells, items, etc. to their own language and have it work. On the other hand, if you have hard coded names and use spell.name, then it will fail for them, so that requires you to specify the language in your file, if you wanna make it portable.

Personally I think the best way is to use spell.english when you use hard coded names (like Cure IV above, unlike what I did), but spell.name for generic output. For example, if you wanna output the remaining sleep time every time you cast sleep on targets, you should use spell.name instead of spell.english, so if someone else with a different language uses your file it will show the spell in their language instead.

One of the more obvious uses is for other addons (since this is not GS exclusive). For example, the FindAll addon can make use of that to allow french people to search for french item names. And it could output the found items again in french.
Offline
Posts: 413
By Selindrile 2014-01-08 11:38:40  
Gearswap question, I found the gearswap shop thread on BG (Which, many thanks for the people who have contributed, can understand and follow/modify Prothescar's Blu, and JSHidaka's Mnk for my own purposes. Much <3)

But I have a few things I'd like to know how to do in if someone can dumb them down for me.

1.) Utsusemi: Ichi auto cancelling Ni midcast.
2.) Spectral Jig auto cancelling Sneak.
3.) Disabling single slots with console commands (Say I'm doing a trial in dyna, or curing with Whm while meleeing.)
 Sylph.Atigevomega
Offline
サーバ: Sylph
Game: FFXI
By Sylph.Atigevomega 2014-01-08 12:32:56  
Can anyone help me out, im writing a script for mnk thats not overly complicated, but does what I need it to do. Now Im using pretty much byrths template but with a few additions (not much). The issue im having is that it will swap my DD/ACC sets but will not swap my PDT/DD sets can anyone please help and tell me where I went wrong and how to do this? I want it to be a toggle, thank you so much in advance. Here is the pastebin:

http://pastebin.com/Q0iqVeq3
 Lakshmi.Snozeberry
Guildwork Premium
Offline
サーバ: Lakshmi
Game: FFXI
user: Toioiz
By Lakshmi.Snozeberry 2014-01-08 12:44:47  
1.
Quote:
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

Edit: Updated bad code

2. Use above, with spectral jig
Quote:
if spell.english == 'Spectral Jig' then
send_command('cancel 71;')
end

3.
Quote:
if zone == "Dynamis - Windurst"
disable('legs')
elseif zone == "Dynamis - Jeuno"
disable('hands')
else
blah
end

Quote:
if player.status =='Engaged' then
disable('main','sub')
end
 Leviathan.Arcon
VIP
Offline
サーバ: Leviathan
Game: FFXI
user: Zaphor
Posts: 657
By Leviathan.Arcon 2014-01-08 12:57:17  
Lakshmi.Snozeberry said: »
1.
Quote:
if S{"Utsusemi*"}:contains(spell.name) and buffactive['Copy Image*'] then
send_command('@wait 3.3;cancel 66;')
end

This will not work for several reasons:
1. :contains doesn't work with wildcards (as detailed above)
2. buffactive does not perform wildcard checking
3. This will only cancel 1 remaining shadow, not 2 remaining shadows.

And while it's not a Lua error, the first wildcard check isn't even needed, as the cancel command is only needed for Utsusemi: Ichi. Hence:
Code
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


Finally, if you use the cancel addon instead of the plugin, you can just write "cancel copy image*" instead of the numbers.
Log in to post.