Gearswap Support Thread

Language: JP EN DE FR
2010-09-08
New Items
users online
Forum » Windower » Support » Gearswap Support Thread
Gearswap Support Thread
First Page 2 3 4 5 ... 183 184 185
 Sylph.Atigevomega
Offline
Server: Sylph
Game: FFXI
By Sylph.Atigevomega 2014-01-12 20:44:54
Link | Quote | Reply
 
Ok having an issue again and I'm not totally sure why. Basically my GS is locking me into my PDT set on war, even after hitting my toggle and it /echo in game the dd set. Can anyone help me, here is my pastebin:

http://pastebin.com/t4R24inf

Also is there a way to add a delay in GS? As in on my RNG one I'm afraid that the acc set is not actually procing if that makes sense....
 Ragnarok.Flippant
Offline
Server: Ragnarok
Game: FFXI
user: Enceladus
Posts: 660
By Ragnarok.Flippant 2014-01-12 21:07:04
Link | Quote | Reply
 
Sylph.Atigevomega said: »
Ok having an issue again and I'm not totally sure why. Basically my GS is locking me into my PDT set on war, even after hitting my toggle and it /echo in game the dd set. Can anyone help me, here is my pastebin:

http://pastebin.com/t4R24inf

Also is there a way to add a delay in GS? As in on my RNG one I'm afraid that the acc set is not actually procing if that makes sense....

In the case that you use 'toggle DT' and sets.aftercast.TP is currently sets.TP.PDT, you are sending a function to equip sets.aftercast.TP (which we know is equal to sets.TP.PDT) on line 97 rather than, I assume as you'd like to, setting sets.aftercast.TP to sets.TP.DD.

I'm kinda guessing here, I don't know anything about Lua ^_^
 Asura.Aikchan
Offline
Server: Asura
Game: FFXI
user: Aikawa
Posts: 373
By Asura.Aikchan 2014-01-12 21:38:10
Link | Quote | Reply
 
Sylph.Atigevomega said: »
Ok having an issue again and I'm not totally sure why. Basically my GS is locking me into my PDT set on war, even after hitting my toggle and it /echo in game the dd set. Can anyone help me, here is my pastebin:

http://pastebin.com/t4R24inf

Also is there a way to add a delay in GS? As in on my RNG one I'm afraid that the acc set is not actually procing if that makes sense....
Code
        if command == 'toggle DT' then
                if sets.aftercast.TP == sets.TP.DD  or sets.aftercast.TP == sets.TP.DW then
                        sets.aftercast.TP = sets.TP.PDT
                        send_command('@input /echo PDT SET ON!')
                elseif sets.aftercast.TP == sets.TP.PDT then
                        equip(sets.aftercast.TP)
                        send_command('@input /echo BEAT *** SET ON!')
                end


have to be :
Code
        if command == 'toggle DT' then
                if sets.aftercast.TP == sets.TP.DD  or sets.aftercast.TP == sets.TP.DW then
                        sets.aftercast.TP = sets.TP.PDT
                        equip(sets.aftercast.TP)
                        send_command('@input /echo PDT SET ON!')
                elseif sets.aftercast.TP == sets.TP.PDT then
                        sets.aftercast.TP = sets.TP.DD
                        equip(sets.aftercast.TP)
                        send_command('@input /echo BEAT *** SET ON!')
                end

you DW have the same problem w/ the Equip... you press it and "nothing happens" till the next action
 Ragnarok.Flippant
Offline
Server: Ragnarok
Game: FFXI
user: Enceladus
Posts: 660
By Ragnarok.Flippant 2014-01-12 22:30:39
Link | Quote | Reply
 
He should not need the equip line twice. He has it on line 100 for the DT toggle; but he does have to change line 109 to the same thing for the DW toggle to work.
 Lakshmi.Byrth
VIP
Offline
Server: Lakshmi
Game: FFXI
user: Byrthnoth
Posts: 6188
By Lakshmi.Byrth 2014-01-13 15:47:01
Link | Quote | Reply
 
No, Aikchan's edit was correct. It's true that you could move the equip command to after the if/elseif/end, but the important part is "sets.aftercast.TP = sets.TP.DD"
 Ragnarok.Flippant
Offline
Server: Ragnarok
Game: FFXI
user: Enceladus
Posts: 660
By Ragnarok.Flippant 2014-01-13 16:02:32
Link | Quote | Reply
 
My point was that he already has the equip command after the if/elseif/end (line 100), so if he copy and pastes the above, he's just going to process it twice every time. All he needs is to change is line 97 to "sets.aftercast.tp=sets.TP.DD".

Additionally, to fix the DW, all he needs it to change is line 109 to "equip(sets.aftercast.TP)".

Or in fact, just switch those two lines around.
 Sylph.Atigevomega
Offline
Server: Sylph
Game: FFXI
By Sylph.Atigevomega 2014-01-14 09:46:38
Link | Quote | Reply
 
Code
if command == 'toggle DT' then
        if sets.aftercast.TP == sets.TP.DD  or sets.aftercast.TP == sets.TP.DW then
                sets.aftercast.TP = sets.TP.PDT
                equip(sets.aftercast.TP)
                send_command('@input /echo PDT SET ON!')
        elseif sets.aftercast.TP == sets.TP.PDT then
                sets.aftercast.TP = sets.TP.DD
                equip(sets.aftercast.TP)
                send_command('@input /echo BEAT *** SET ON!')
        end


Ok I did this, and it works, mostly. However, say, I am in town and testing gear sets, I hit my macro and boom I am in PDT, nice. Now i hit my macro again, boom I am in TP gear, it does not put me into idle gear. Is there a part of the code I am missing to auto put me into engage/idle/resting etc sets?
 Cerberus.Conagh
Offline
Server: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-01-15 19:25:51
Link | Quote | Reply
 
Sylph.Atigevomega said: »
if command == 'toggle DT' then
if sets.aftercast.TP == sets.TP.DD or sets.aftercast.TP == sets.TP.DW then
sets.aftercast.TP = sets.TP.PDT
equip(sets.aftercast.TP)
send_command('@input /echo PDT SET ON!')
elseif sets.aftercast.TP == sets.TP.PDT then
sets.aftercast.TP = sets.TP.DD
equip(sets.aftercast.TP)
send_command('@input /echo BEAT *** SET ON!')
end


try
Code
if command == 'toggle DT' then
        if sets.aftercast.TP == sets.TP.DD  or sets.aftercast.TP == sets.TP.DW then
                sets.aftercast.TP = sets.TP.PDT
                equip(sets.aftercast.TP)
                send_command('@input /echo PDT SET ON!')
        elseif sets.aftercast.TP == sets.TP.PDT then
				if new=='Engaged' then
                sets.aftercast.TP = sets.TP.DD
                equip(sets.aftercast.TP)
                send_command('@input /echo BEAT *** SET ON!')
				else
				sets.aftercast.TP = sets.TP.DD
                equip(sets.aftercast.Idle)
                send_command('@input /echo BEAT *** SET ON!')
				end
        end
 Asura.Aikchan
Offline
Server: Asura
Game: FFXI
user: Aikawa
Posts: 373
By Asura.Aikchan 2014-01-15 20:11:02
Link | Quote | Reply
 
the only error I see in Conagh's code is that: use "player.status" instead "new"
not sure if that's what you want... it will put you from DD to PDT while idle, and if you're not engage when you do it again, should switch you to idle
Code
if command == 'toggle DT' then
        if sets.aftercast.TP == sets.TP.DD  or sets.aftercast.TP == sets.TP.DW then
            sets.aftercast.TP = sets.TP.PDT
            equip(sets.aftercast.TP)
            send_command('@input /echo PDT SET ON!')
        elseif sets.aftercast.TP == sets.TP.PDT then
                if player.status =='Engaged' then
					sets.aftercast.TP = sets.TP.DD
					equip(sets.aftercast.TP)
					send_command('@input /echo BEAT *** SET ON!')
                else
					sets.aftercast.TP = sets.TP.DD
					equip(sets.aftercast.Idle)
					send_command('@input /echo BEAT *** SET ON!')
                end
		end
end
 Cerberus.Conagh
Offline
Server: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-01-21 13:28:54
Link | Quote | Reply
 
Asura.Aikchan said: »
the only error I see in Conagh's code is that: use "player.status" instead "new"
not sure if that's what you want... it will put you from DD to PDT while idle, and if you're not engage when you do it again, should switch you to idle
Code
if command == 'toggle DT' then
        if sets.aftercast.TP == sets.TP.DD  or sets.aftercast.TP == sets.TP.DW then
            sets.aftercast.TP = sets.TP.PDT
            equip(sets.aftercast.TP)
            send_command('@input /echo PDT SET ON!')
        elseif sets.aftercast.TP == sets.TP.PDT then
                if player.status =='Engaged' then
					sets.aftercast.TP = sets.TP.DD
					equip(sets.aftercast.TP)
					send_command('@input /echo BEAT *** SET ON!')
                else
					sets.aftercast.TP = sets.TP.DD
					equip(sets.aftercast.Idle)
					send_command('@input /echo BEAT *** SET ON!')
                end
		end
end

Both work, I snipped a piece of my code that uses Current status and defines it as "new" I like shortcuts :3
 Cerberus.Conagh
Offline
Server: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-01-21 13:32:11
Link | Quote | Reply
 
Code
function aftercast(spell,act)
    if new == 'Engaged' then
        equip(sets.TP[sets.TP.index[TP_ind]])
    else
        equip(sets.Idle[sets.Idle.index[Idle_ind]])
    end
end
 
function status_change(new,old)
    if new == 'Engaged' then
        equip(sets.TP[sets.TP.index[TP_ind]])
    else
        equip(sets.Idle[sets.Idle.index[Idle_ind]])
    end
end
 
function equip_TP_set()
        equip(sets.TP[sets.TP.index[TP_ind]])
    end
 
function self_command(command)
    if command == 'toggle TP set' then
        TP_ind = TP_ind +1
        if TP_ind > #sets.TP.index then TP_ind = 1 end
        send_command('@input /echo <----- TP Set changed to '..sets.TP.index[TP_ind]..' ----->')
        equip(sets.TP[sets.TP.index[TP_ind]])
	
	elseif command == 'toggle Earring set' then
        Earring_ind = Earring_ind +1
        if Earring_ind > #sets.Earring.index then Earring_ind = 1 end
        send_command('@input /echo <----- Earring Set changed to '..sets.Earring.index[Earring_ind]..' ----->')
        equip(sets.Earring[sets.Earring.index[Earring_ind]])
		
		
    elseif command == 'toggle Idle set' then
        Idle_ind = Idle_ind +1
        if Idle_ind > #sets.Idle.index then Idle_ind = 1 end
        send_command('@input /echo <----- Idle Set changed to '..sets.Idle.index[Idle_ind]..' ----->')
        equip(sets.Idle[sets.Idle.index[Idle_ind]])
    elseif command == 'toggle Req set' then
        Requiescat_ind = Requiescat_ind +1
        if Requiescat_ind > #sets.Requiescat.index then Requiescat_ind = 1 end
        send_command('@input /echo <----- Requiescat Set changed to '..sets.Requiescat.index[Requiescat_ind]..' ----->')
    elseif command == 'toggle CDC set' then
        ChantDuCygne_ind = ChantDuCygne_ind +1
        if ChantDuCygne_ind > #sets.ChantDuCygne.index then ChantDuCygne_ind = 1 end
        send_command('@input /echo <----- Chant du Cygne Set changed to '..sets.ChantDuCygne.index[ChantDuCygne_ind]..' ----->')
    elseif command == 'equip TP set' then
        equip_TP_set()
    elseif command == 'equip Idle set' then
        equip_Idle_set()
    end
end


I use this and I have no issues, this is loosely built on Prothescars Gearswap but I added little things within sets.
Code
 --TP Sets--
    sets.TP = {}
 
    sets.TP.index = {'Standard', 'AccuracyLite', 'AccuracyMid', 'AccuracyHigh', 'AccuracyExtreme', 'AccuracyFull', 'DT', 'DTAccuracy'}
    --1=Standard, 2=AccuracyLite, 3=AccuracyMid, 4=AccuracyHigh, 5=AccuracyEx, 6=AccuracyFull, 7=DT, 8=DTAccuracy--
    TP_ind = 1
     
    sets.TP.Standard = set_combine(sets.Earring[sets.Earring.index[Earring_ind]],{ammo="Cheruski needle",
                        head="Thurandaut chapeau +1",neck="Asperity necklace",
                        body="Thaumas coat",hands="Iuitl Wristbands",ring2="Epona's ring",ring1="Rajas ring",
                        back="Atheling mantle",waist="Twilight belt",legs="Iuitl tights",feet="Manibozho boots"})
                


You can place an Index check within a Combine rule, which I thought was kinda cool :x
 Cerberus.Conagh
Offline
Server: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-01-21 17:03:00
Link | Quote | Reply
 
That said, using new is a little buggy, where as "player.status" works everytime so I amended my GS for this :£ Thanks for the Hot tip!
 Ragnarok.Flippant
Offline
Server: Ragnarok
Game: FFXI
user: Enceladus
Posts: 660
By Ragnarok.Flippant 2014-01-21 20:28:48
Link | Quote | Reply
 
Cerberus.Conagh said: »
You can place an Index check within a Combine rule, which I thought was kinda cool :x

Although you can do this, you may want to be aware that it is, from inside get_sets(), not dynamically changing. get_sets() is only called once and each value is interpreted at that time. If you change a variable used in a set later, the set will not be updated.

You could (re)define the set inside a function that could then be regularly called to update it appropriately. Could also possibly call get_sets() from inside a function in order to update the all sets, but I am not familiar enough know of any unwanted consequences or to think of a way to declare your variables at the beginning that won't also re-declare them when called again.

On a side note, I suggest avoiding redundant code. There should ideally be one function that handles your idle/engaged sets and everywhere else should then call that function. This way, your sets are far more maintainable.
 Phoenix.Abigheadhum
Offline
Server: Phoenix
Game: FFXI
user: andy1110
Posts: 1
By Phoenix.Abigheadhum 2014-01-22 02:28:55
Link | Quote | Reply
 
can someone help me with this >_< in spellcast, it's easy to use variables to store results from certain condition rules then get to the final set i want to equip, how can i make that happen in gearswap? for example: weapon: GS, SJ: SAM, Low accuracy, Low buff, then i get GS-SAM-LowAcc-LowBuff set. Thx in advance!
 Ragnarok.Sharain
Offline
Server: Ragnarok
Game: FFXI
user: Sharain
Posts: 88
By Ragnarok.Sharain 2014-01-22 04:58:05
Link | Quote | Reply
 
Phoenix.Abigheadhum said: »
can someone help me with this >_< in spellcast, it's easy to use variables to store results from certain condition rules then get to the final set i want to equip, how can i make that happen in gearswap? for example: weapon: GS, SJ: SAM, Low accuracy, Low buff, then i get GS-SAM-LowAcc-LowBuff set. Thx in advance!
Something like this should work (I'm a newbie to gearswap as well, but I'm using something like this for branching for different ws with different acc levels):
Code
sub_index = 1
weapon_index = 1
acc_index = 1
buff_index = 1

weapons = {GS, scythe}
subs = {war, sam}
acc = {LowAcc, MediumAcc, HighAcc}
buffs = {LowBuff, MediumBuff, HighBuff}

--Then define the sets:

sets.TP = {}

sets.TP['GS'] = {stuff you wear when you're using GS}
sets.TP['scythe'] = {stuff you wear when you're using scythe}

-- Then define children with set_combine
sets.TP['GS']['war'] = set_combine(sets.TP['GS'], {stuff you only use when your sub is war})



and so on, finally you'll have sets like sets.TP['GS']['sam'][LowAcc][LowBuff]

Then you need
Code
function status_change(new,old)
	if T{'Idle','Resting'}:contains(new) then
		something
	elseif new == 'Engaged' then
		equip(sets.TP[weapons[weapon_index]][subs[sub_index]][acc[acc_index]][buffs[buff_index]])
	end
end


and in self_command
Code
function self_command(command)
	if command == 'toggle weapon' then
		weapon_index = weapon_index +1
		if weapon_index > #weapons then weapon_index = 1 end
        -- same for all the indexes
        end


You can find the sub automatically of course, make it check on loading and set accordingly. Weapon could also check when engage and change sets accordingly. But that could cause an issue if you change weapons midfight.
Offline
Posts: 47
By andy1110 2014-01-22 11:08:06
Link | Quote | Reply
 
ty so much! i'm getting the idea, i will give it a try later! weapon could also check means something like this? if player.equipment.main == 'Ragnarok' then weapon_index = 1, what would happen when i change weapons midfight? maintenance atm, cant test it lol
 Leviathan.Arcon
VIP
Offline
Server: Leviathan
Game: FFXI
user: Zaphor
Posts: 666
By Leviathan.Arcon 2014-01-22 13:03:20
Link | Quote | Reply
 
Just fyi:
Code
        weapon_index = weapon_index +1
        if weapon_index > #weapons then weapon_index = 1 end

This can be rewritten to:
Code
        weapon_index = (weapon_index % #weapons) + 1
[+]
 Hades.Triet
Offline
Server: Hades
Game: FFXI
user: Sirseiko
Posts: 1615
By Hades.Triet 2014-01-22 14:22:58
Link | Quote | Reply
 
Curious is there a way to set it up so that you have your engaged set, lets say PDT, and it detect if you are being targeted by a spell (or someone within range of you) to have it automatically switch to a MDT set until the spell hits you? Or is that too far fetched?
 Fenrir.Jinjo
VIP
Offline
Server: Fenrir
Game: FFXI
user: Minjo
Posts: 2269
By Fenrir.Jinjo 2014-01-22 14:39:32
Link | Quote | Reply
 
It's possible, but it'd take significant effort to make it work properly and you'd likely need to be familiar with Lua to tune it to what you specifically need.
 Lakshmi.Byrth
VIP
Offline
Server: Lakshmi
Game: FFXI
user: Byrthnoth
Posts: 6188
By Lakshmi.Byrth 2014-01-22 14:42:19
Link | Quote | Reply
 
Yeah, there is no built-in functionality that would allow that. GearSwap does not have an event that informs you when there is an action targetting you. However, it would not be impossible for a user to make one.
 Asura.Gabba
Offline
Server: Asura
Game: FFXI
user: Aikawa
Posts: 86
By Asura.Gabba 2014-01-22 15:54:06
Link | Quote | Reply
 
Hades.Triet said: »
Curious is there a way to set it up so that you have your engaged set, lets say PDT, and it detect if you are being targeted by a spell (or someone within range of you) to have it automatically switch to a MDT set until the spell hits you? Or is that too far fetched?

...that's making it like a bot, is not in the same category as "gear swaps", you could have 4 Macros for 1 ws depending the conditions, GS helps to just have 1, but you still decide when to WS.

Swapping gear in response to some mob action is botting (not that no ones have a stun bot or healing bot...)
 Carbuncle.Anesthesia
Offline
Server: Carbuncle
Game: FFXI
user: analgesia
Posts: 845
By Carbuncle.Anesthesia 2014-01-22 16:07:57
Link | Quote | Reply
 
Asura.Gabba said: »
Hades.Triet said: »
Curious is there a way to set it up so that you have your engaged set, lets say PDT, and it detect if you are being targeted by a spell (or someone within range of you) to have it automatically switch to a MDT set until the spell hits you? Or is that too far fetched?

...that's making it like a bot, is not in the same category as "gear swaps", you could have 4 Macros for 1 ws depending the conditions, GS helps to just have 1, but you still decide when to WS.

Swapping gear in response to some mob action is botting (not that no ones have a stun bot or healing bot...)


And...?

The discussion is regarding technicality, not morality.
[+]
 Asura.Gabba
Offline
Server: Asura
Game: FFXI
user: Aikawa
Posts: 86
By Asura.Gabba 2014-01-22 16:17:16
Link | Quote | Reply
 
Carbuncle.Anesthesia said: »
Asura.Gabba said: »
Hades.Triet said: »
Curious is there a way to set it up so that you have your engaged set, lets say PDT, and it detect if you are being targeted by a spell (or someone within range of you) to have it automatically switch to a MDT set until the spell hits you? Or is that too far fetched?

...that's making it like a bot, is not in the same category as "gear swaps", you could have 4 Macros for 1 ws depending the conditions, GS helps to just have 1, but you still decide when to WS.

Swapping gear in response to some mob action is botting (not that no ones have a stun bot or healing bot...)


And...?

The discussion is regarding technicality, not morality.

sorry my master forgot this place is to make/create bots...
 Carbuncle.Anesthesia
Offline
Server: Carbuncle
Game: FFXI
user: analgesia
Posts: 845
By Carbuncle.Anesthesia 2014-01-22 16:17:59
Link | Quote | Reply
 
as long as you know your place
 Cerberus.Conagh
Offline
Server: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-01-22 16:28:06
Link | Quote | Reply
 
Ragnarok.Flippant said: »
Cerberus.Conagh said: »
You can place an Index check within a Combine rule, which I thought was kinda cool :x

Although you can do this, you may want to be aware that it is, from inside get_sets(), not dynamically changing. get_sets() is only called once and each value is interpreted at that time. If you change a variable used in a set later, the set will not be updated.

You could (re)define the set inside a function that could then be regularly called to update it appropriately. Could also possibly call get_sets() from inside a function in order to update the all sets, but I am not familiar enough know of any unwanted consequences or to think of a way to declare your variables at the beginning that won't also re-declare them when called again.

On a side note, I suggest avoiding redundant code. There should ideally be one function that handles your idle/engaged sets and everywhere else should then call that function. This way, your sets are far more maintainable.

It might not be the "cleanest" method, however once the earring set is defined, it seems to work everytime in every situation, until I come across an instance where this does not work, I won't be changing it.

However for the interests of learning, could you show an example of the coding you are talking about so we can see a working example and perhaps use this in the future ~
 Hades.Triet
Offline
Server: Hades
Game: FFXI
user: Sirseiko
Posts: 1615
By Hades.Triet 2014-01-22 17:28:28
Link | Quote | Reply
 
Well I was more so wondering for another reason, not botting.

For instance you have PDT set, MDT set and TP set. You decide to solo something like Azdaja. Is it possible, when engaged, to equip your TP set when you HP >75%. If its below that then you TP in PDT set and when incoming nukes it switches to MDT set vs. having to toggle between sets while meleeing and having to cycle through them. Unless there is a way to switch to specific sets, which there probably is? Didn't make it seem to be seen as botting.
Offline
Posts: 429
By Selindrile 2014-01-23 00:39:08
Link | Quote | Reply
 
I notice things like "/ma cure4 me" don't work under gearswap like they did in spellcast, do I have to write all those thousands of alias's myself? or is there a way to get that functionality back, I know it was mentioned that gearswap does it, but I guess it's not innate like it was in spellcast. Or should I leave spellcast running but with an empty XML or will that cause conflicts?

Edit: Tried running both, and the spellcast alias do seem to work, and nothing crashes however anything that spellcasts alias fixes, gearswap doesn't swap gear for, which, I suppose I should've expected.
 Lakshmi.Rooks
Administrator
Offline
Server: Lakshmi
Game: FFXI
user: Rooks
Posts: 1566
By Lakshmi.Rooks 2014-01-23 00:59:00
Link | Quote | Reply
 
Selindrile said: »
I notice things like "/ma cure4 me" don't work under gearswap

Have you looked at Shortcuts? It handles that part of Spellcast.
Offline
Posts: 429
By Selindrile 2014-01-23 01:16:20
Link | Quote | Reply
 
I have not, I'll look into it, thanks.
First Page 2 3 4 5 ... 183 184 185
Log in to post.