Item Search
     
BG-Wiki Search
Page 35 of 302 FirstFirst ... 25 33 34 35 36 37 45 85 ... LastLast
Results 681 to 700 of 6036

Thread: Gearswap Help Thread!     submit to reddit submit to twitter

  1. #681
    New Merits
    Join Date
    Apr 2010
    Posts
    228
    BG Level
    4

    Hello,
    I've started using GearSwap and created a RNG lua off of the examples I've seen, but I have a few questions. If someone could take a look at my file, that would be great. For the most part everything works, but at line 410 the section for cancelling WS's. If i use my macro /ws "weaponskill name" <t> when over 21 yalms it works fine and cancels. But If I use the ws through the menu it does not cancel, and I've read through here and tried a few things and nothing seems to work.

    Also, all the self commands work but when I want to toggle through, lets say my Coronach sets via /gs c relicws. I don't want it swapping those sets mid fight or if I'm standing there idle if you know what I mean? I want the chat to say what it does when I toggle through but want the sets to take effect when I actually do the WS.

    Thanks, and here's the file. http://pastebin.com/tK6fKPZ2

  2. #682
    BG Content
    Join Date
    Jul 2007
    Posts
    22,378
    BG Level
    10
    FFXI Server
    Lakshmi
    Blog Entries
    1

    The problem is that your cancel rule is in pretarget and commands from the menu (which already have an explicit target) don't call pretarget. You need to move it to precast if you want it to affect those actions.

  3. #683
    Sea Torques
    Join Date
    Jun 2012
    Posts
    570
    BG Level
    5
    FFXI Server
    Asura
    WoW Realm
    The Scryers

    Quote Originally Posted by Sithel View Post
    Hello,
    I've started using GearSwap and created a RNG lua off of the examples I've seen, but I have a few questions. If someone could take a look at my file, that would be great. For the most part everything works, but at line 410 the section for cancelling WS's. If i use my macro /ws "weaponskill name" <t> when over 21 yalms it works fine and cancels. But If I use the ws through the menu it does not cancel, and I've read through here and tried a few things and nothing seems to work.

    Also, all the self commands work but when I want to toggle through, lets say my Coronach sets via /gs c relicws. I don't want it swapping those sets mid fight or if I'm standing there idle if you know what I mean? I want the chat to say what it does when I toggle through but want the sets to take effect when I actually do the WS.

    Thanks, and here's the file. http://pastebin.com/tK6fKPZ2

    Just remove the equip line on each command you don't want swaps just for pressing it...

    like on the coronach > equip(sets.Coronach[Coronach_Set_Names[Coronach_Index]]) ...

  4. #684
    New Merits
    Join Date
    Apr 2010
    Posts
    228
    BG Level
    4

    Thanks Byrth and JSH, both of those fixes seem to do what I want it to now.

    Even though my precast functions are working, could you take a quick look at the function? I'm a tad confused as to when and where to put the end tags or if/elseif tags. I suppose long as this is working it's fine , but wanted to be sure.

    Code:
    function precast(spell)	
        if sets.precast[spell.english] then
                    equip(sets.precast[spell.english])
    		elseif spell.type == 'WeaponSkill' then
    			if spell.target.distance > 21.0  then						
    			add_to_chat(167,''..spell.target.name..' is too far can not use '..spell.name..'!!!. Cancelling WeaponSkill ')                           
                    cancel_spell()
                    return			
    			elseif spell.name == "Coronach" then
                    equip(sets.Coronach[Coronach_Set_Names[Coronach_Index]])
    			elseif spell.name == "Last Stand" then
                    equip(sets.LS[LS_Set_Names[LS_Index]])
    			elseif spell.name == "Namas Arrow" then
                    equip(sets.NA[NA_Set_Names[NA_Index]])
    			elseif spell.name == "Jishnu's Radiance" then
                    equip(sets.JR[JR_Set_Names[JR_Index]])
    			elseif spell.name == "Sidewinder" then
                    equip(sets.SW[SW_Set_Names[SW_Index]])			
    		end		
    		elseif spell.name == "Ranged" then
    			equip(sets.precast.PreShot)
    			if player.equipment.range == 'Ajjub Bow' then
    			equip(sets.precast.arrow)            
    			elseif player.equipment.range == 'Yoichinoyumi' then
    			equip(sets.precast.arrow)            
    			elseif player.equipment.range == 'Annihilator' then
    			equip(sets.precast.bullet)            
    			elseif player.equipment.range == 'Astrild' then
    			equip(sets.precast.trialsammo)			
    		end
        end
    end

  5. #685
    Sea Torques
    Join Date
    Jun 2012
    Posts
    570
    BG Level
    5
    FFXI Server
    Asura
    WoW Realm
    The Scryers

    end tag, to close every "if"..
    elseif between if and end... if you have another condition you wanna check.
    else will kick if all the previous conditions didn't meet.
    Code:
    if...then
    ---
    end
    Code:
    if...then
    ---
    else
    ---
    end
    Code:
    if...then
    ---
    elseif...then
    ---
    elseif...then
    ---
    elseif...then
    ---
    end
    Code:
    if...then
    ---
    elseif...then
    ---
    elseif...then
    ---
    elseif...then
    ---
    else
    ---
    end

  6. #686
    New Merits
    Join Date
    Apr 2010
    Posts
    228
    BG Level
    4

    I want to ultimately use this when exiting DM for Battlefield status, but for testing purposes why doesn't this work?

    Code:
    function buff_change(name,gain_or_loss)
    	if name == 'Ice Spikes' and gain_or_loss == 'lost' then
    		send_command('input /ja "Scavenge" <me>')
    	end
    end

  7. #687
    BG Content
    Join Date
    Jul 2007
    Posts
    22,378
    BG Level
    10
    FFXI Server
    Lakshmi
    Blog Entries
    1

    gain_or_loss is a boolean now (true = gained, false = lost). It would be:
    Code:
    function buff_change(name,gain_or_loss)
        if name == 'Ice Spikes' and not gain_or_loss then
            send_command('scavenge')
        end
    end

  8. #688
    New Merits
    Join Date
    Apr 2010
    Posts
    228
    BG Level
    4

    Thanks! that was it.

  9. #689
    Sea Torques
    Join Date
    Jun 2012
    Posts
    570
    BG Level
    5
    FFXI Server
    Asura
    WoW Realm
    The Scryers

    Hmmm I guess(and not sure) after you exit the battlefield/lost the status they are some secs you cant do anything, would use

    Code:
    send_command('wait 3; input /ja Scavenge <me> ')
    or actually just add_to_chat(100,'Remember to use scavenge ~.~!...')

  10. #690
    D. Ring
    Join Date
    Feb 2007
    Posts
    4,736
    BG Level
    7
    FFXI Server
    Quetzalcoatl

    Finally converted a job to gearswap and i get the following errors. Used Mote's tempplates
    All i did was update some gear on it so that i wouldn't have to do so on spellcast as that's being phased out.
    Spoiler: show


    Also what are the triggers to use for changing mode?
    I want to make some modes for abyssea/voidwatch later on but first i should get rid of these errors.

  11. #691
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    Also what are the triggers to use for changing mode?
    Read the "Mote gearswap docs.txt" file.

    The rest of the errors look like an issue where gearswap (and other addons) was out of sync with luacore and/or resources. Make sure to get everything updated and try again.

  12. #692
    Relic Weapons
    Join Date
    Sep 2007
    Posts
    377
    BG Level
    4
    FFXIV Character
    Caprese Dionir
    FFXIV Server
    Hyperion
    FFXI Server
    Sylph

    So due to recurring bugs with aftermath tracking on StatusTimer, I'd like to drop that plugin, and get my GS to push out a custom Timers tracker for it and haste samba. I think the Aftermath one is fairly simple since AM3 doesn't overwrite itself, but I'm not sure how to handle Haste Samba, checking for extension gear (like if im in salvage), and cleaning up the timers if I'm overwriting it. Does someone have an example of something similar I can attempt to draw from?

  13. #693
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    Quote Originally Posted by Vyvian View Post
    So due to recurring bugs with aftermath tracking on StatusTimer, I'd like to drop that plugin, and get my GS to push out a custom Timers tracker for it and haste samba. I think the Aftermath one is fairly simple since AM3 doesn't overwrite itself, but I'm not sure how to handle Haste Samba, checking for extension gear (like if im in salvage), and cleaning up the timers if I'm overwriting it. Does someone have an example of something similar I can attempt to draw from?
    I have custom handling of timers for brd songs in my brd lua (which I mostly copied from Byrth's, so should be available in the sample folder as well). However tracking Haste Samba should be pretty trivial.

    Bare-bones implementation:

    Code:
    function aftercast(spell)
        if not spell.interrupted and spell.english == 'Haste Samba' then
            timer_haste_samba()
        end
        
        -- equip aftercast gear afterwards
    end
    
    function buff_change(buff, gain)
        if buff == 'Haste Samba' and not gain then
            send_command('timers delete "Haste Samba"')
        end
    end
    
    function timer_haste_samba()
        local duration = 90
        
        if player.main_job == 'DNC' then
            if player.equipment.head == "Dancer's Tiara" or player.equipment.head == "Dancer's Tiara +1" then
                duration = duration + 30
            elseif player.equipment.head == 'Maxixi Tiara' then
                duration = duration + 40
            elseif player.equipment.head == 'Maxixi Tiara +1' then
                duration = duration + 45
            end
            
            if buffactive['Saber Dance'] then
                local merits = player.merits.saber_dance
                if merits > 1 then
                    local extend = (merits - 1) * 5
                    duration = math.floor(duration + (duration * extend / 100))
                end
            end
        end
        
        send_command('timers create "Haste Samba" '..tostring(duration)..' down abilities/00216.png')
    end

  14. #694
    Relic Weapons
    Join Date
    Sep 2007
    Posts
    377
    BG Level
    4
    FFXIV Character
    Caprese Dionir
    FFXIV Server
    Hyperion
    FFXI Server
    Sylph

    Would spell.interrupted be true if the action fails to execute for either cost or recast timer reasons? I don't think I've seen that listed in the variables file before. Also, I just realized, if I'm waiting until aftercast to check spell.interrupted, is there anyway I can know how much TP I was at before starting for aftermath?

  15. #695
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    Would spell.interrupted be true if the action fails to execute for either cost or recast timer reasons?
    Yes.

    I don't think I've seen that listed in the variables file before.
    Hmm. You're right, it's not in the documentation. Need to get that added.

    Also, I just realized, if I'm waiting until aftercast to check spell.interrupted, is there anyway I can know how much TP I was at before starting for aftermath?
    Just store the value in precast if you're using the appropriate weaponskill, and then use it in your calculations in aftercast if you completed the action. Of course this is subject to ambiguity depending on whether the client is updated with your current TP by the time you actually perform the action (eg: hitting weaponskill macro slightly before you anticipate having 100+ TP), but it should be good for the vast majority of cases (eg: if you completed the weaponskill but only had 95 TP in precast, obviously you reached 100+ TP and would be in tier 1).

    (note: I would assume, but haven't verified, that things like weaponskilling from too far away and losing your TP will also register with spell.interrupted)

  16. #696
    Cerberus
    Join Date
    Feb 2009
    Posts
    462
    BG Level
    4
    FFXI Server
    Bahamut

    Hello, quick question on Mote's BRD. Being that I don't have a ghorn or daurdabla yet, i'm adding the range="instruments" for the specific midcast song types. (madrigal, march, etc)

    My question was specific to the set name sets.midcast.SongDebuff
    Would I be able to create sets.midcast.SongDebuff['Foe Requiem VII'] & sets.midcast.SongDebuff['Carnage Elegy'] since I have two different instruments for these two?

  17. #697
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    No. It equips sets.midcast.SongDebuff locally in the brd lua before going to the default equip handling. The default handling will then equip stuff like sets.midcast['Carnage Elegy'] (or songs.midcast.Elegy when mapped), so just define that set with only the song-specific instrument.

    Of course this also reminded me of more song groups that need to be mapped. Added Elegy and Requiem. Let me know if you notice any others missing.

  18. #698
    Relic Weapons
    Join Date
    Sep 2007
    Posts
    377
    BG Level
    4
    FFXIV Character
    Caprese Dionir
    FFXIV Server
    Hyperion
    FFXI Server
    Sylph

    Quote Originally Posted by Motenten View Post
    Just store the value in precast if you're using the appropriate weaponskill, and then use it in your calculations in aftercast if you completed the action. Of course this is subject to ambiguity depending on whether the client is updated with your current TP by the time you actually perform the action (eg: hitting weaponskill macro slightly before you anticipate having 100+ TP), but it should be good for the vast majority of cases (eg: if you completed the weaponskill but only had 95 TP in precast, obviously you reached 100+ TP and would be in tier 1).

    (note: I would assume, but haven't verified, that things like weaponskilling from too far away and losing your TP will also register with spell.interrupted)
    Ok, so I got my Samba code working, but I can't seem to get my aftermath code to work.

    Code:
    function job_aftercast(spell, action, spellMap, eventArgs)
            if not spell.interrupted then
                    add_to_chat(127,'Spell:'..spell.english..' used at '..tostring(precastTP)..' TP, with '..tostring(player.equipment.main))
    				if spell.english == "Wild Flourish" then
                            skillchainPending = true
                            send_command('wait 7;gs c clear skillchainPending')
                    elseif spell.type:lower() == "weaponskill" then
                            skillchainPending = not skillchainPending
                            send_command('wait 7;gs c clear skillchainPending')
    		elseif spell.type == "Samba" then
    					create_samba_timer(spell)
    		elseif spell.english == "Pyrrhic Kleos" and player.equipment.main == "Terpsichore" then
    					add_to_chat(127,'Spell:'..spell.english..' used at '..tostring(precastTP)..' TP, with '..tostring(player.equipment.main))
    					create_aftermath_timer()
                    end				
            end
    end
    
    function create_aftermath_timer()
    	add_to_chat(127,'Precast TP:'..tostring(precastTP)..' TP')
    	if precastTP > 0 and precastTP < 200 and not (buffactive['aftermath: lv.1'] or buffactive['aftermath: lv.2'] or buffactive['aftermath: lv.3']) then
    		send_command('timers create "Aftermath Level 1" 90 down')
    	elseif player.tp >= 200 and player.tp < 300 and not (buffactive['aftermath: lv.2'] or buffactive['aftermath: lv.3']) then
    		send_command('timers create "Aftermath Level 2" 120 down')
    	elseif player.tp == 300 and not buffactive['aftermath: lv.3'] then
    		send_command('timers create "Aftermath Level 3" 180 down')
    	end
    end
    The add_to_chats were my attempt to debug. When I use PK, it puts in echo: "Spell:Pyrrhic Kleos used at 116 TP, with Terpsichore"

    What I was able to determine with the add_to_chat placement is even though that is the sentence that was printed out at the beginning of Aftercast, the statement spell.english == 'Pyrrhic Kleos' and player.equipment.main == 'Terpsichore' is never considered true.

  19. #699
    Relic Weapons
    Join Date
    Sep 2007
    Posts
    377
    BG Level
    4
    FFXIV Character
    Caprese Dionir
    FFXIV Server
    Hyperion
    FFXI Server
    Sylph

    Nevermind.. it's flagging the /weaponskill type for skillchainPending before it ever got to my PK check.

  20. #700
    Cerberus
    Join Date
    Feb 2009
    Posts
    462
    BG Level
    4
    FFXI Server
    Bahamut

    Quote Originally Posted by Motenten View Post
    No. It equips sets.midcast.SongDebuff locally in the brd lua before going to the default equip handling. The default handling will then equip stuff like sets.midcast['Carnage Elegy'] (or songs.midcast.Elegy when mapped), so just define that set with only the song-specific instrument.

    Of course this also reminded me of more song groups that need to be mapped. Added Elegy and Requiem. Let me know if you notice any others missing.
    Thank you!

Page 35 of 302 FirstFirst ... 25 33 34 35 36 37 45 85 ... LastLast

Similar Threads

  1. Replies: 6547
    Last Post: 2014-07-08, 22:45