Gearswap Support Thread

Eorzea Time
 
 
 
Langues: JP EN FR DE
users online
Forum » Windower » Support » Gearswap Support Thread
Gearswap Support Thread
First Page 2 3 ... 42 43 44 ... 181 182 183
 Sylph.Leafe
Offline
Serveur: Sylph
Game: FFXI
user: Leafe
Posts: 27
By Sylph.Leafe 2014-12-11 08:39:27
Link | Citer | R
 
I'm having an issue where my aftercast sets are not properly equipping after I perform a job ability or weaponskill. I turned showswaps on to be sure, and it shows gear equipping for precast or when I'm switching between modes like engaged/idle/resting, but it does not show swaps taking place for aftercast.

Just as an example, if I use Focus it will equip my Anchor. Crown +1 properly for the JA, but it will leave the piece equipped afterwards instead of switching back to my TP/Idle piece. If I perform a WS it will properly equip my WS set, but I will continue to fight in this set until I manually hit a macro to switch back into my TP set.

My .lua was working properly before the December version update and I've not edited it in any way since then, so has something changed that I may need to account for or is this a known issue?
 Ragnarok.Flippant
Offline
Serveur: Ragnarok
Game: FFXI
user: Enceladus
Posts: 658
By Ragnarok.Flippant 2014-12-11 11:55:35
Link | Citer | R
 
I haven't heard anything from anyone else that would suggest that something has changed to cause this. Seeing your file might help, though.
 
Offline
Posts:
By 2014-12-11 14:06:49
 Undelete | Edit  | Link | Citer | R
 
Post deleted by User.
 Cerberus.Conagh
Offline
Serveur: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-12-11 15:07:29
Link | Citer | R
 
Ragnarok.Flippant said: »
I haven't heard anything from anyone else that would suggest that something has changed to cause this. Seeing your file might help, though.

Actually this happens to me also since the update on sam (I added a rule so after a WS event it sends "gs c TP" to counteract it temporarily...
 Cerberus.Conagh
Offline
Serveur: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-12-11 15:16:16
Link | Citer | R
 
Lakshmi.Byrth said: »
ActionPacket = require 'actions'
ActionPacket.open_listener(function (act)
local actionpacket = ActionPacket.new(act)
for target in actionpacket:get_targets() do
for action in target:get_actions() do
local event = action:get_basic_info()
if event.type == 'damage' then
windower.add_to_chat(8,'Damage: '..tostring(event.value))
end
end
end
end)

Got home to test this, this actually produces an error

Attempt to index global"ActionPacket" (a nil value)

:3
 Cerberus.Conagh
Offline
Serveur: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-12-11 17:39:23
Link | Citer | R
 
ok thanks to reading the actions packets and the examples provided I've managed to throw together a messy code to get the "nuts and bolts" however I had an issue with making event 1, 2, 3 etc stating they would error.

leaving it as 1 it include critical hits which throws it off, reading the libraries it talks about the reaction (8 being the code for just melee no crit, no blocks etc).

If I could either add this so it would update o every single attack (this gives no average and isn't as efficient as I'd like or a method for it to add the last 8 attack rounds together and average them.

As it stands it gives relatively accurate returns on targets etc when it doesn't crit (minus anomalous results here and there).

Any ideas?

Here's a Snippet ~
VIP
Offline
Posts: 111
By Iryoku 2014-12-12 04:57:30
Link | Citer | R
 
First, you should be doing this in a loop and summing the damage to get an average, right now you're assuming every hit does the same damage, which isn't the case. Also, actor == (player.id or player.index) doesn't do what you think it does, it's functionally equivalent to actor == player.id. Finally, as you said, you can check if reaction is 8 to check for noncritical hits.

Code
windower.register_event('action',function (act)
    local actor = act.actor_id
    local category = act.category
    local player = windower.ffxi.get_player()
 
    if actor == player.id and category == 1 then
        local total_hits = act.targets[1].action_count
        local avg_damage = 0;
        local avg_hits = 0;

        for i = 1, i <= total_hits do
            if act.targets[1].actions[i].reaction == 8 then
                avg_damage = avg_damage + act.targets[1].actions[i].param
                avg_hits = avg_hits + 1
            end
        end
        avg_damage = avg_damage / avg_hits

        -- use avg_damage and avg_hits to calculate whatever you want.
    end
end)
Note: this is completely untested, may have syntax or logic errors.
 Cerberus.Conagh
Offline
Serveur: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-12-12 06:56:35
Link | Citer | R
 
Iryoku said: »
First, you should be doing this in a loop and summing the damage to get an average, right now you're assuming every hit does the same damage, which isn't the case. Also, actor == (player.id or player.index) doesn't do what you think it does, it's functionally equivalent to actor == player.id. Finally, as you said, you can check if reaction is 8 to check for noncritical hits.

Code
windower.register_event('action',function (act)
    local actor = act.actor_id
    local category = act.category
    local player = windower.ffxi.get_player()
 
    if actor == player.id and category == 1 then
        local total_hits = act.targets[1].action_count
        local avg_damage = 0;
        local avg_hits = 0;

        for i = 1, i <= total_hits do
            if act.targets[1].actions[i].reaction == 8 then
                avg_damage = avg_damage + act.targets[1].actions[i].param
                avg_hits = avg_hits + 1
            end
        end
        avg_damage = avg_damage / avg_hits

        -- use avg_damage and avg_hits to calculate whatever you want.
    end
end)
Note: this is completely untested, may have syntax or logic errors.

Edited cos lolwtf Phones Text

I managed to get the code for reactions - I had not managed to loop it however (Your usage of i and <= seems to of nailed this, I use something similar in what Flippant helped (most of) with for WHM)

Will Test this later.
 Sylph.Leafe
Offline
Serveur: Sylph
Game: FFXI
user: Leafe
Posts: 27
By Sylph.Leafe 2014-12-12 12:11:53
Link | Citer | R
 
Ragnarok.Flippant said: »
I haven't heard anything from anyone else that would suggest that something has changed to cause this. Seeing your file might help, though.

Sorry for the delayed response, wanted to confirm that the issue was still occurring before troubling people further with this. In hindsight I probably should've included my .lua to begin with. Here's the whole thing:
I had no experience with lua prior to gearswap, and I made this from what I learned by looking at a couple guides and a few examples of how others had done theirs. So I wouldn't be too surprised if there are some mistakes or inefficient coding in there (and I'm pretty sure there's a non-functional gearset or two that I never got around to finishing), but like I said this was working before the December update. Anyway thanks to anyone who might be willing to take a look at it, if you see anything that could be causing issues with my aftercast sets (or sets swapping in general) please let me know!
 Ragnarok.Flippant
Offline
Serveur: Ragnarok
Game: FFXI
user: Enceladus
Posts: 658
By Ragnarok.Flippant 2014-12-12 19:46:21
Link | Citer | R
 
You do a number of odd things (and your buff_change function won't work, because gain_or_loss is boolean, true for gain), but that aside, I cannot reproduce your issue. Are there any commands or actions you do before this occurs, or even just after loading for the first time and using Focus, your aftercast does not work?
 Cerberus.Conagh
Offline
Serveur: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-12-12 19:49:18
Link | Citer | R
 
Ragnarok.Flippant said: »
You do a number of odd things (and your buff_change function won't work, because gain_or_loss is boolean, true for gain), but that aside, I cannot reproduce your issue. Are there any commands or actions you do before this occurs, or even just after loading for the first time and using Focus, your aftercast does not work?

I just managed to replicate it on Windows 8 however,, not sure if this is the issue, used his copied file as is. Tried on Alt on Windows 7 - it worked perfectly fine.......????
 Sylph.Leafe
Offline
Serveur: Sylph
Game: FFXI
user: Leafe
Posts: 27
By Sylph.Leafe 2014-12-12 23:20:46
Link | Citer | R
 
Ragnarok.Flippant said: »
You do a number of odd things (and your buff_change function won't work, because gain_or_loss is boolean, true for gain)
Honestly, I was expecting someone to say as much lol. It's probably a combination of me not knowing better/more efficient ways of doing certain things, and the way I would sort of frankenstein together pieces of different .lua files in an attempt to get it to work the way I wanted. Thanks for pointing out the issue with my buff_change, I'll need to look into that a bit more.

Ragnarok.Flippant said: »
I cannot reproduce your issue. Are there any commands or actions you do before this occurs, or even just after loading for the first time and using Focus, your aftercast does not work?
When I originally noticed the issue I was fighting mobs in one of the Gates zones, so I had switched to one of my Acc. sets, had my Mecisto. Mantle locked on, and had probably hit a few other macros along the way. However the issue seems to occur even when I'm just standing around in town.

Just now I switched my job to MNK, stepped outside of my Mog House, and waited for all items in my inventory to load. I loaded gearswap and my .lua file, enabled showswaps, and used Focus by selecting the ability from the Job Abilities menu (mostly to ensure it's not something in my macros that's interfering). Gearswap properly equipped my Anchor. Crown +1 before performing Focus, but it left the piece equipped afterwards instead of switching back to my idle piece.

Actually I did notice something interesting just now while testing this. If the recast timer for the ability is not up and I hit a macro that attempts to perform that job ability, gearswap will equip the precast set, I'll get the standard "Unable to use job ability." message in chat, and then sometimes it will equip the aftercast set. Almost just as often it will still get "stuck" in the precast gear though, and I can't really see a noticeable pattern to it. When the ability is successfully performed it always seems to get stuck in the precast set.

Cerberus.Conagh said: »
I just managed to replicate it on Windows 8 however,, not sure if this is the issue, used his copied file as is. Tried on Alt on Windows 7 - it worked perfectly fine.......????
That's interesting. For what it's worth I'm playing on a computer that's running Windows 7.

Also - thanks to both of you for actually taking the time to look into this for me. I really do appreciate it! :)
 Ragnarok.Flippant
Offline
Serveur: Ragnarok
Game: FFXI
user: Enceladus
Posts: 658
By Ragnarok.Flippant 2014-12-13 00:09:50
Link | Citer | R
 
Since I can't seem to reproduce it, I just want to make sure that it's not some of the other stuff you're doing that I'm not used to

Load this:
Code
function get_sets()
    sets.precast = {}
    sets.precast.Boost = {hands="Anch. Gloves +1"}
    sets.precast.Focus = {head="Anchor. Crown +1"}
    sets.precast.Dodge = {feet="Anch. Gaiters +1"}
    sets.precast.Counterstance = {feet="Hes. Gaiters +1"}
    sets.precast.Mantra = {feet="Hes. Gaiters +1"}
    sets.precast['Hundred Fists'] = {legs="Hes. Hose +1"}
    sets.precast['Formless Strikes'] = {body="Hes. Cyclas +1"}
    
    sets.aftercast = {}
    sets.aftercast.TP = {main="Spharai", ammo="Ginsen", head="Uk'uxkaj Cap", neck="Asperity Necklace",
        ear1="Steelflash Earring", ear2="Bladeborn Earring", body="Qaaxo Harness", hands="Hes. Gloves +1",
        ring1="Rajas Ring", ring2="Epona's Ring", back="Atheling Mantle", waist="Windbuffet Belt +1",
        legs="Hes. Hose +1", feet="Anch. Gaiters +1"} 

    sets.aftercast.Idle = set_combine(sets.aftercast.TP, {ammo="Brigantia Pebble", neck="Wiglen Gorget", ear1="Colossus's Earring",
        ear2="Darkness Earring", ring1="Paguroidea Ring", ring2="Sheltered Ring", back="Repulse Mantle",
        waist="Black Belt", feet="Hermes' Sandals"})
        
    sets.aftercast.Resting = set_combine(sets.aftercast.Idle, {back="Mollusca Mantle", legs="Qaaxo Tights", feet="Qaaxo Leggings"})

end
 
function precast(spell,action)
    equip(sets.precast[spell.english])
end
 
function aftercast(spell,action)
    if player.status =='Engaged' then
        equip(sets.aftercast.TP)
    else
        equip(sets.aftercast.Idle)
    end
end
 
function status_change(new,old)
    if new == 'Engaged' then
        equip(sets.aftercast.TP)
    elseif new == 'Resting' then
        equip(sets.aftercast.Resting)
    else
        equip(sets.aftercast.Idle)
    end
end


and if you are still having a problem after using any of those JAs whose sets are still listed, you may need to try reporting it on the Windower GitHub 'cause they'd be much better help if it comes down to that.
Offline
Posts: 117
By Mozhat 2014-12-13 08:21:18
Link | Citer | R
 
Is it just me or we have not had a windower update since 2 days before the update.

None of the GS commands show up in chat log.
SMN still don't work on the new BPs using GS.

I use macros to change gear between jobs because I want my pcs of gear not scattered every where. The scripts I made still work but don't show up in the chat log.

Any help here. Thx in advance.
 Lakshmi.Byrth
VIP
Offline
Serveur: Lakshmi
Game: FFXI
user: Byrthnoth
Posts: 6137
By Lakshmi.Byrth 2014-12-13 08:33:43
Link | Citer | R
 
You appear to be having proxy problems or antivirus problems. Something is blocking your connection to the windower servers.
 Cerberus.Conagh
Offline
Serveur: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-12-13 12:01:32
Link | Citer | R
 
Mozhat said: »
Is it just me or we have not had a windower update since 2 days before the update.

None of the GS commands show up in chat log.
SMN still don't work on the new BPs using GS.

I use macros to change gear between jobs because I want my pcs of gear not scattered every where. The scripts I made still work but don't show up in the chat log.

Any help here. Thx in advance.

Uninstall Norton, this is currently known to be blocking the ports used for Windower. (Had this with a LS mate, uninstalling Norton followed by a Huge Windower update and fixed 99.9999% of issues)

And no, adding this to your whitelist does NOT SOLVE THE ISSUE Uninstall Norton if you use it and it will probably work fine.
Offline
Posts: 117
By Mozhat 2014-12-13 12:24:56
Link | Citer | R
 
Don't use Norton.[can't stand that ram hog pc of software]
Have Avast Internet Security. Disabled the shields and got the updates. Never had to do that before...hmm
Thanks for help everyone /smile
 Cerberus.Conagh
Offline
Serveur: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-12-13 12:28:14
Link | Citer | R
 
Mozhat said: »
Don't use Norton.[can't stand that ram hog pc of software]
Have Avast Internet Security. Disabled the shields and got the updates. Never had to do that before...hmm
Thanks for help everyone /smile

Yeah it seems something in FFXI (Vanilla version) raised a Red FLag with Virus protection and thus anything manipulating data based on the process i.e Windower gets *** blocked by the filter.
Offline
Posts: 117
By Mozhat 2014-12-13 13:01:33
Link | Citer | R
 
? for Byrth
You think its possible to be able to use the Equipment sets[1-100] in Gearswap?
It would make it allot easier to edit the macros in stead of the GS script.
 Cerberus.Conagh
Offline
Serveur: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-12-13 13:31:30
Link | Citer | R
 
Mozhat said: »
? for Byrth
You think its possible to be able to use the Equipment sets[1-100] in Gearswap?
It would make it allot easier to edit the macros in stead of the GS script.

Equipsets has alot of lag and delay inbuilt. While I can't speak for Byrth, you can just type the following in your "new set to be equipped" and then copy this new gear over your old set in your GS file in a matter of seconds.

//gs export lua

done!

However what you propose is entirely doable, but the amount of rework for one person would require adding a command for every single actions/packet event and then testing to see if it worked......................

 Odin.Tamoa
Offline
Serveur: Odin
Game: FFXI
user: Tamoa
Posts: 197
By Odin.Tamoa 2014-12-13 14:01:37
Link | Citer | R
 
Not sure if this is the appropriate thread to post this, but trying anyway. Since the game update on Dec. 10th GS has been kind of sluggish and unreliable. I'll weaponskill and it won't swap back to tp gear, it's happening very often and is really annoying. This specific problem was something I disliked about spellcast, and I really like GS because I can count on one had the number of times it's happened. Up until 3 days ago, that is. I've made no changes whatsoever to any of my GS files.
 Odin.Llewelyn
Offline
Serveur: Odin
Game: FFXI
user: Llewelyn
Posts: 2254
By Odin.Llewelyn 2014-12-13 14:06:45
Link | Citer | R
 
Had that problem for a little as well, but it was only during a BC fight in Cirdas_U (might've happened a bit in a Yorcia_U BC fight as well, but don't remember). After that I stopped having that issue. Might be zone related somehow?
 Odin.Tamoa
Offline
Serveur: Odin
Game: FFXI
user: Tamoa
Posts: 197
By Odin.Tamoa 2014-12-13 14:46:37
Link | Citer | R
 
It's happened in salvage, Einherjar and in Qufim (while doing Kaggen). That's pretty much all I've done these last few days, too busy to play much this close to Christmas.
 Cerberus.Conagh
Offline
Serveur: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-12-13 15:32:07
Link | Citer | R
 
I'm getting this in every zone, however I added this in my GS to double ensure it swaps
Code
	elseif command == 'TP' then
		add_to_chat(158,'TP Return: ['..tostring(player.tp)..']')
		status_change(player.status)


Then here ~
Code
	if spell.type == "WeaponSkill" then
		send_command('wait 0.3;gs c TP')


It's not perfect! But it definitely updates your status forcefully and checks your TP after WS in Green Party chat.

SO 0.3 seconds after a WS it send this command to the game (which works perfectly) so as long as you get a TP return value (should be 250~500 depending on JA / WS on SAM for example) then it updates your status which in turn triggers an event swapping you from W.E gear you're in (I.e makes the game think you went from idle to TP for example although without doing a if Idle check)
 Sylph.Leafe
Offline
Serveur: Sylph
Game: FFXI
user: Leafe
Posts: 27
By Sylph.Leafe 2014-12-13 18:47:54
Link | Citer | R
 
Ragnarok.Flippant said: »
Since I can't seem to reproduce it, I just want to make sure that it's not some of the other stuff you're doing that I'm not used to

Load this:
and if you are still having a problem after using any of those JAs whose sets are still listed, you may need to try reporting it on the Windower GitHub 'cause they'd be much better help if it comes down to that.

Just loaded up the lua you posted and the issue is still occurring with it the same as before (only JA that I didn't test was Hundred Fists). I suppose I'll head over to the GitHub as you suggested and see about reporting the issue there in a minute or so.

Some of the issues I'm seeing others mention on here do sound similar to mine (GS acting sluggish, not switching gear after a WS, etc.) only mine seems to be affecting my job abilities as well. I might play around with the code Conagh's posted and see if it helps anything on my end when I get a chance (busy, busy weekend for me).

I did try disabling my antivirus to see if Windower updated but it downloaded nothing for me. I do remember Windower updating right after the December version update, but I don't think it's downloaded anything in the past day or two if there's another update that was pushed more recently.
 Cerberus.Conagh
Offline
Serveur: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-12-13 19:43:08
Link | Citer | R
 
Sylph.Leafe said: »
Ragnarok.Flippant said: »
Since I can't seem to reproduce it, I just want to make sure that it's not some of the other stuff you're doing that I'm not used to

Load this:
and if you are still having a problem after using any of those JAs whose sets are still listed, you may need to try reporting it on the Windower GitHub 'cause they'd be much better help if it comes down to that.

Just loaded up the lua you posted and the issue is still occurring with it the same as before (only JA that I didn't test was Hundred Fists). I suppose I'll head over to the GitHub as you suggested and see about reporting the issue there in a minute or so.

Some of the issues I'm seeing others mention on here do sound similar to mine (GS acting sluggish, not switching gear after a WS, etc.) only mine seems to be affecting my job abilities as well. I might play around with the code Conagh's posted and see if it helps anything on my end when I get a chance (busy, busy weekend for me).

I did try disabling my antivirus to see if Windower updated but it downloaded nothing for me. I do remember Windower updating right after the December version update, but I don't think it's downloaded anything in the past day or two if there's another update that was pushed more recently.


I plugged into your code and yours has not acted up for 7 hours since.
Offline
Posts: 570
By dustinfoley 2014-12-16 14:23:53
Link | Citer | R
 
Random questions.

I keep hearing that gearswap can auto weapon skill for you. Is this true, because i cant seem to find a single example of it?

Can you set it up for for mythics so that it blocks ws unless you are at 3000 tp?

Anyone got an update pup one for mythics?
VIP
Offline
Posts: 111
By Iryoku 2014-12-16 14:56:51
Link | Citer | R
 
dustinfoley said: »
Random questions.
Random answers.

dustinfoley said: »
I keep hearing that gearswap can auto weapon skill for you. Is this true, because i cant seem to find a single example of it?
It's true in the sense that, like Spellcast before it, it doesn't provide any built in support for this. However, you can fairly easily jury-rig something to do this. For whatever that's worth.

dustinfoley said: »
Can you set it up for for mythics so that it blocks ws unless you are at 3000 tp?
Certainly!
Code
if player.tp < 3000 then cancel_spell() end
 Cerberus.Conagh
Offline
Serveur: Cerberus
Game: FFXI
user: onagh
Posts: 3189
By Cerberus.Conagh 2014-12-16 15:15:49
Link | Citer | R
 
Iryoku said: »
dustinfoley said: »
Random questions.
Random answers.

dustinfoley said: »
I keep hearing that gearswap can auto weapon skill for you. Is this true, because i cant seem to find a single example of it?
It's true in the sense that, like Spellcast before it, it doesn't provide any built in support for this. However, you can fairly easily jury-rig something to do this. For whatever that's worth.

dustinfoley said: »
Can you set it up for for mythics so that it blocks ws unless you are at 3000 tp?
Certainly!
Code
if player.tp < 3000 then cancel_spell() end

Code
if AutoFudo == 1 then
		if not buffactive['amnesia'] then
			if player.tp > 999 and   player.status == 'Engaged' then
				windower.send_command('input /ws "Tachi: Fudo" <t>')
			end
		end
	end


Example ~

Better rule for Auto WS and Am3 managment however though is..
Code
windower.register_event('tp change', function(tp)
		if Autows == 1 then
		if not buffactive['amnesia'] then
			if buffactive["Aftermath: Lv.3"] then
				if player.tp > 999 and   player.status == 'Engaged' then
					windower.send_command('input /ws "Tachi: Fudo" <t>')
				end
			elseif player.tp > 2999 then
				windower.send_command('input /ws "Tachi: Rana" <t>')
			end
		end
	end	
end)


Or for just *** blocking if not AM3 and using Koga then ~
Code
AM == 1
Mythic = S{"Tachi: Rana"}
	
if player.main == 'Koga' then
	if AM == 1
		if spell.type == "Weaponskill" then
			if not buffactive['amnesia'] then
				if not buffactive["Aftermath: Lv.3"] then
					if player.tp < 2999 or not Mythic[spell.name] then
					cancel_spell()
					return
					end
				end
			end
		end
	end
end


Or for Normal play ~
Code
If player.main == @Koga' then
if
First Page 2 3 ... 42 43 44 ... 181 182 183