Item Search
     
BG-Wiki Search
Page 110 of 302 FirstFirst ... 60 100 108 109 110 111 112 120 160 ... LastLast
Results 2181 to 2200 of 6036

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

  1. #2181
    Bagel
    Join Date
    Dec 2012
    Posts
    1,488
    BG Level
    6

    Quote Originally Posted by Darkmagi View Post
    Thanks! worked like a charm.
    if its because ranged ws's will not fire then you can do this
    all other ws's need to be engaged to use

    Code:
     	if player.status ~= 'Engaged' and not windower.wc_match(spell.skill, "Archery|Marksmanship|Throwing") then -- Cancel WS If You Are Not Engaged. Can Delete It If You Don't Need It --
    		cancel_spell()
    		add_to_chat(123,'Unable To Use WeaponSkill: [Disengaged]')
    		return
    	else

  2. #2182
    RIDE ARMOR
    Join Date
    Jan 2010
    Posts
    24
    BG Level
    1
    FFXI Server
    Leviathan

    Quote Originally Posted by Motenten View Post
    Took a bit to work out what might be happening, but I think I figured it out. Fixed and pushed a new version.
    Just tried this out for first time after maintenance today and I am getting an error on line 321 of brd.lua, "attempt to call field 'get_spell_recasts' (a nil value)"



    EDIT:
    also a question on mote's BLM.lua, I just noticed that no matter what spell I cast my midcast is always going to sets.midcast.FastRecast instead of the appropriate low/high tier sets. I haven't used BLM in like 2 weeks, something changed I don't know about? I already tried updating the BLM.lua file same result.

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

    Quote Originally Posted by wigmasterflex View Post
    Just tried this out for first time after maintenance today and I am getting an error on line 321 of brd.lua, "attempt to call field 'get_spell_recasts' (a nil value)"
    Bah, stupid error. Change windower.get_spell_recasts to windower.ffxi.get_spell_recasts on line 321. Will push a fixed version shortly.

  4. #2184
    RIDE ARMOR
    Join Date
    Jan 2010
    Posts
    24
    BG Level
    1
    FFXI Server
    Leviathan

    Ahhh, figured it was syntax.

    So on the BLM thing, my sch seems to work fine but my blm and my other char's blm's all doing the same thing. going to fast recast midcast sets instead of low/high tier...

    I will test the auto pianissimo thing when I am done with WoE ~

    EDIT:

    ok tested pianissimo out, still broke. I did notice something however: i noticed that what sent into the infinite loop this time didnt appear to be a lack of timer availability but you know how if you spam a JA too quickly after casting a song/spell you get the "unable to use JA" message...that is what happened. Via the Timers plugin i could see the JA should have been available for use but i got that message and it started the loop. Again a quick //gs reload resets everything fine.

  5. #2185
    Sea Torques
    Join Date
    Aug 2006
    Posts
    518
    BG Level
    5
    FFXI Server
    Leviathan

    doh

  6. #2186
    Bagel
    Join Date
    Dec 2012
    Posts
    1,488
    BG Level
    6

    Quote Originally Posted by stamos View Post
    Everything but midcast cure is working. Not sure what it is
    http://pastebin.com/smVFkURy
    try changing them to this(respectively)
    equipSet = [equipSet].Cure
    equipSet = [equipSet].Curaga

    if not that
    just do this(respectively)
    equipSet = sets.Midcast.Cure
    equipSet = sets.Midcast.Curaga

  7. #2187
    RIDE ARMOR
    Join Date
    Oct 2013
    Posts
    18
    BG Level
    1

    figured it out

  8. #2188
    Smells like Onions
    Join Date
    Jun 2014
    Posts
    7
    BG Level
    0

    This was posted awhile back in this thread and it appeared to be resolved, however I'm still having issues with it. The automatic cure correction, based on missing HP and remaining MP. Here's the code:
    Code:
    function get_sets()
        include('Mote-Include.lua')
    end
     
    function init_gear_sets()
       
        sets.precast.JA['Benediction'] = {body="Piety Briault"}
        sets.precast.JA['Devotion'] = {head="Piety Cap"}
        sets.precast.JA['Martyr'] = {hands="Piety Mitts"}
        sets.precast.JA['Divine Caress'] = {hands="Orison Mitts +2",back="Mending Cape"}
                   
        sets.precast.FC = {ammo="Incantor Stone",head="Haruspex Hat",neck="Orison Locket",ear2="Loquacious Earring",
                    hands="Gendewitha Gages",ring2="Prolix Ring",back="Swith Cape",legs="Orvail Pants +1"}
                   
            sets.precast.Cure = set_combine(sets.precast.FC, {head="Piety Cap",back="Pahtli Cape",
                    legs="Orison Pantaloons +2",feet="Cure Clogs"})
                   
        sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, {back="Ogapepo Cape",waist="Siegel Sash"})
           
        sets.midcast.Cure = {
                    ammo="Mana Ampulla",
                    head="Gendewitha Caubeen",
                    neck="Nesanice Torque",
                    ear1="Roundel Earring",
                    ear2="Beatific Earring",
                    body="Orison Bliaud +2",
                    hands="Theophany Mitts",
                    ring1="Ephedra Ring",
                    ring2="Sirona's Ring",
                    back="Tempered Cape",
                    waist="CCleric's Belt",
                    legs="Orison Pantaloons +2",
                    feet="Piety Duckbills"
                    }
     
        sets.midcast['Enhancing Magic'] = {
                    ear1="Gifted Earring",
                    back="Vita Cape",
                    waist="Austerity Belt",
                    feet="Umbani Boots"
                    }
           
            sets.midcast.Holy = {
                    main="Baqil Staff",
                    sub="Mephitis Grip",
                    ammo="Witchstone",
                    head="Buremte Hat",
                    neck="Eddy Necklace",
                    ear1="Friomisi Earring",
                    ear2="Hecate's Earring",
                    body="Haruspex Coat",
                    hands="Otomi Gloves",
                    ring1="Acumen Ring",
                    ring2="Sangoma Ring",
                    back="Toro Cape",
                    waist="Aswang Sash",
                    legs="Gendewitha Spats",
                    feet="Umbani Boots"
                    }
                   
            sets.midcast.Protectra = {ring1="Sheltered Ring",feet="Piety Duckbills"}
     
            sets.midcast.Shellra = {ring1="Sheltered Ring",legs="Piety Pantaloons"}
     
        sets.idle = {
                    main="Owleyes",
                    sub="Sors Shield",
                    ammo="Incantor Stone",
                    head="Gendewitha Caubeen",
                    neck="Orison Locket",
                    ear1="Gifted Earring",
                    ear2="Moonshade Earring",
                    body="Piety Briault",
                    hands="Serpentes Cuffs",
                    ring1="Sangoma Ring",
                    ring2="Mediator's Ring",
                    back="Pahtli Cape",
                    waist="Cleric's Belt",
                    legs="Piety Pantaloons",
                    feet="Serpentes Sabots"
                    }
     
    end
     
    function precast(spell)
            if spell.english:startswith('Cure') then
                    refine_cure(spell, action, spellMap, eventArgs)
            end
    end
     
    local cureMPCost = {['Cure'] = 8, ['Cure II'] = 24, ['Cure III'] = 46, ['Cure IV'] = 88, ['Cure V'] = 135, ['Cure VI'] = 230}
     
    -- Utility function for automatically adjusting the cure spell being used to match HP needs and MP limits.
    -- Handle spell changes before attempting any precast stuff.
    function refine_cure(spell, action, spellMap, eventArgs)
        -- Only handles single-target cures.
        if not spell.english:startswith('Cure') then
            return
        end
     
        -- Get the estimated amount of HP the target of the spell is below max.
        -- Returns nil for targets outside of alliance (no info available).
        local missingHP = get_targets_missing_hp(spell)
       
            local preferredCure = spell.english
     
            -- If we have an estimated missing HP value, we can adjust the preferred spell used.
        if missingHP then
            -- Whm has high skill and up to Cure VI
            if player.main_job == 'WHM' then
                if missingHP < 150 then
                    preferredCure = 'Cure'
                elseif missingHP < 350 then
                    preferredCure = 'Cure II'
                elseif missingHP < 650 then
                    preferredCure = 'Cure III'
                elseif missingHP < 1000 then
                    preferredCure = 'Cure IV'
                elseif missingHP < 1600 then
                    preferredCure = 'Cure V'
                else
                    preferredCure = 'Cure VI'
                end
                    -- Rdm, Sch and Pld have high skill and up to Cure IV
            elseif player.main_job == 'RDM' or player.main_job == 'SCH' or player.main_job == 'PLD' then
                if missingHP < 150 then
                    preferredCure = 'Cure'
                elseif missingHP < 350 then
                    preferredCure = 'Cure II'
                elseif missingHP < 650 then
                    preferredCure = 'Cure III'
                else
                    preferredCure = 'Cure IV'
                end
            -- Subbing /whm or /rdm gets you up to Cure IV
            elseif player.sub_job == 'WHM' or player.sub_job == 'RDM' then
                if missingHP < 150 then
                    preferredCure = 'Cure'
                elseif missingHP < 300 then
                    preferredCure = 'Cure II'
                elseif missingHP < 550 then
                    preferredCure = 'Cure III'
                else
                    preferredCure = 'Cure IV'
                end
            -- Subbing /sch or /pld gets you up to Cure III
            else
                if missingHP < 150 then
                    preferredCure = 'Cure'
                elseif missingHP < 300 then
                    preferredCure = 'Cure II'
                else
                    preferredCure = 'Cure III'
                end
            end
        end
           
            local mpCost = cure_mp_cost[preferredCure]
           
            if buffactive['Light Arts'] or buffactive['Addendum: White'] then
            mpCost = math.floor(mpCost * 0.9)
        elseif buffactive['Dark Arts'] or buffactive['Addendum: Black'] then
            mpCost = math.floor(mpCost * 1.1)
        end
           
            local downgrade_msg
           
            -- Downgrade the spell to what we can actually afford
        if player.mp < mpCost and not (buffactive['Manafont'] or buffactive['Mana Well']) then
            if player.mp < 8 then
                add_to_chat(122, 'Insufficient MP ['..tostring(player.mp)..']. Cancelling.')
                eventArgs.cancel = true
                return
            elseif player.mp < 24 then
                preferredCure = 'Cure'
            elseif player.mp < 46 then
                preferredCure = 'Cure II'
            elseif player.mp < 88 then
                preferredCure = 'Cure III'
            elseif player.mp < 135 then
                preferredCure = 'Cure IV'
            elseif player.mp < 227 then
                preferredCure = 'Cure V'
            end
           
            downgrade_msg = 'Insufficient MP ['..tostring(player.mp)..']. Downgrading to '..preferredCure..'.'
        end
           
            if preferredCure ~= spell.english then
            eventArgs.cancel = true
            send_command('@input /ma "'..preferredCure..'" '..tostring(spell.target.raw))
            if downgrade then
                add_to_chat(122, downgrade_msg)
            end
            return
        end
           
            if missingHP and missingHP > 0 then
            add_to_chat(122,'Trying to cure '..tostring(missingHP)..' HP using '..preferredCure..'.')
        end
    end
     
    function get_targets_missing_hp(spell)
        local missingHP
           
        -- If curing ourself, get our exact missing HP
        if spell.target.type == "SELF" then
            missingHP = player.max_hp - player.hp
        -- If curing someone in our alliance, we can estimate their missing HP
        elseif spell.target.isallymember then
            local target = find_player_in_alliance(spell.target.name)
            local est_max_hp = target.hp / (target.hpp/100)
            missingHP = math.floor(est_max_hp - target.hp)
        end
       
        return missingHP
    end
    I copied everything right from Motenten's earlier posts but it still doesn't seem to be working. I'm not sure if I called the function properly or not as I'm still very, very green with GearSwap. Any help would be greatly appreciated. Thanks!

    -Vaf

  9. #2189
    Melee Summoner
    Join Date
    Apr 2014
    Posts
    28
    BG Level
    1

    -- This is a function that can be attached to a registered event for 'time change'.
    -- It will send a call to the update() function if the time period changes.
    -- To use in your job lua, add this line:
    -- windower.register_event('time change', time_change)
    function time_change(new_time, old_time)
    local was_daytime = classes.Daytime
    local was_dusktime = classes.DuskToDawn

    if new_time >= 8*60 and new_time < 18*60 then
    classes.Daytime = true
    else
    classes.Daytime = false
    end

    if new_time >= 17*60 or new_time < 7*60 then
    classes.DuskToDawn = true
    else
    classes.DuskToDawn = false
    end

    if was_daytime ~= classes.Daytime or was_dusktime ~= classes.DuskToDawn then
    if job_time_change then
    job_time_change(new_time, old_time)
    end

    handle_update({'auto'})
    end
    end
    How do I use this exactly? Currently, this is what I have to handle day/night specific gear:

    function job_status_change(new_status, old_status)
    if new_status == 'Idle' then
    select_regen_ear()
    select_movement_feet()
    end
    end
    function select_movement_feet()
    if world.time >= 17*60 or world.time <= 7*60 then
    gear.MovementFeet.name = gear.NightFeet
    else
    gear.MovementFeet.name = gear.DayFeet
    end
    end

    function select_regen_ear()
    if world.time >= (18*60) or world.time <= (8*60) then
    gear.RegenEar.name = gear.NightEar
    else
    gear.RegenEar.name = gear.DayEar
    end
    end

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

    Quote Originally Posted by wigmasterflex View Post
    ok tested pianissimo out, still broke. I did notice something however: i noticed that what sent into the infinite loop this time didnt appear to be a lack of timer availability but you know how if you spam a JA too quickly after casting a song/spell you get the "unable to use JA" message...that is what happened. Via the Timers plugin i could see the JA should have been available for use but i got that message and it started the loop. Again a quick //gs reload resets everything fine.

    You're going to have to give me more exact replication methods, because I can't make that bug happen. Constant spamming attempts to cast a song caused only the normally expected error messages.

    What I have:

    When Pianissimo is used (precast), the state variable is set to true. In aftercast, if spell.interrupted is true (ie: waiting on recast, or otherwise can't complete the action), state.Buff.Pianissimo is set to false -if- the buff is not active.

    Thus:
    Use Pianissimo (precast). state.Buff is immediately set to true.
    Use Pianissimo (aftercast). state.Buff remains true.
    Buff_change: Pianissimo buff registers. state.Buff set to true.
    Use Pianissimo again manually (precast). state.Buff is set to true (thus, doesn't change)
    Second Pianissimo attempt, aftercast, interrupted because recast wasn't up. state.Buff remains true because buffactive is true.
    Repeat attempt to cast song in a very fast interval: Once Pianissimo is used, further use attempts are blocked.

    Attempt to auto-pianissimo: Is skipped if state.Buff.Pianissimo is true. Thus, should be impossible to spam the JA in an infinite loop.

    Note: There was an infinite loop in the code a -very- long time ago. If you somehow managed to copy that code in, rather than use the latest updates, that could be the cause. Otherwise, I have no clue.




    Minor fix, though: Adjusted so that it recognizes Trust NPCs as valid targets for auto-pianissimo.

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

    Quote Originally Posted by Santi
    How do I use this exactly?
    Did you read the comments on the function? Maybe I should expand the details a little:

    -- This is a function that can be attached to a registered event for 'time change'.
    -- It will send a call to the update() function if the time period changes.
    -- It will also call job_time_change when any of the specific time class values have changed.
    -- To activate this in your job lua, add this line to your user_setup function:
    -- windower.register_event('time change', time_change)
    --
    -- Variables it sets: classes.Daytime, and classes.DuskToDawn. They are set to true
    -- if their respective descriptors are true, or false otherwise.
    Though I'll note that job_time_change is largely redundant for most purposes since you'll likely want to update values when calling update() anyway (either manually or from this function).

    In any case, check classes.Daytime or classes.DuskToDawn, depending on the functionality of the gear you're deciding on. You can make adjustments based on calls to update(), or on calls to job_time_change().

    EG:
    Code:
    function job_update(cmdParams, eventArgs)
        update_time_based_gear()
    end
    
    function update_time_based_gear()
        if classes.Daytime then
            gear.RegenEar.name = gear.DayEar
        else
            gear.RegenEar.name = gear.NightEar
        end
        
        if classes.DuskToDawn then
            gear.MovementFeet.name = gear.NightFeet        
        else
            gear.MovementFeet.name = gear.DayFeet        
        end
    end

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

    Quote Originally Posted by Vafruvant View Post
    This was posted awhile back in this thread and it appeared to be resolved, however I'm still having issues with it.
    Quick bug I noticed: should be checking if downgrade_msg, not just if downgrade, before printing out the message.

    To get an answer for your more general question, you'll have to be more specific than "doesn't seem to be working".

  13. #2193
    Smells like Onions
    Join Date
    Jun 2014
    Posts
    7
    BG Level
    0

    Quote Originally Posted by Motenten View Post
    Quick bug I noticed: should be checking if downgrade_msg, not just if downgrade, before printing out the message.

    To get an answer for your more general question, you'll have to be more specific than "doesn't seem to be working".
    Thank you for your response. What I mean to say is the entire part is non-functional, almost as if the entire code doesn't exist. It doesn't downgrade the spell if I'm low on MP or if the target (myself, party member or alliance member) is only missing a few HP.

    I had a very similar code in the same file for Waltz and that functioned perfectly, doing essentially the same thing. I attempted to just change it to MP and Cures instead of TP and Waltzes, respectively, but when that didn't work, I sought out your posts in this thread. The original Waltz one used "cancel_spell()" not "eventArgs.cancel = true", so I even tried plugging that into your code in it's place to, yet to no avail.

    I apologize for not being more descriptive in the initial post. I did change the
    Code:
    if preferredCure ~= spell.english then
            eventArgs.cancel = true
            send_command('@input /ma "'..preferredCure..'" '..tostring(spell.target.raw))
            if downgrade then
                add_to_chat(122, downgrade_msg)
            end
            return
        end
    to
    Code:
    if preferredCure ~= spell.english then
            eventArgs.cancel = true
            send_command('@input /ma "'..preferredCure..'" '..tostring(spell.target.raw))
            if downgrade_msg then
                add_to_chat(122, downgrade_msg)
            end
            return
        end
    though that didn't fix it either. I hope that's what your quick bug was referencing. Thanks again for your help.

  14. #2194
    Melee Summoner
    Join Date
    Apr 2014
    Posts
    28
    BG Level
    1

    Quote Originally Posted by Motenten View Post
    Did you read the comments on the function? Maybe I should expand the details a little:



    Though I'll note that job_time_change is largely redundant for most purposes since you'll likely want to update values when calling update() anyway (either manually or from this function).

    In any case, check classes.Daytime or classes.DuskToDawn, depending on the functionality of the gear you're deciding on. You can make adjustments based on calls to update(), or on calls to job_time_change().

    EG:
    Code:
    function job_update(cmdParams, eventArgs)
        update_time_based_gear()
    end
    
    function update_time_based_gear()
        if classes.Daytime then
            gear.RegenEar.name = gear.DayEar
        else
            gear.RegenEar.name = gear.NightEar
        end
        
        if classes.DuskToDawn then
            gear.MovementFeet.name = gear.NightFeet        
        else
            gear.MovementFeet.name = gear.DayFeet        
        end
    end

    Thanks, this helped

  15. #2195
    Relic Shield
    Join Date
    Jan 2013
    Posts
    1,868
    BG Level
    6

    OK wow, I am glad you posted bout the downgrade stuff cause i couldnt get that to work either before (least the message) So i figured it was either not happening or just broke. I will change that to have _msg at the end and see whats up now

  16. #2196
    Bagel
    Join Date
    Dec 2012
    Posts
    1,488
    BG Level
    6

    here is a function i wrote for thoes who want to save specific global variables between times that thay change jobs,log out and in so thay can have thoes variables set to what thay were the last time
    this also creates the files in GearSwap\data\"charname"\Data

    Code:
    function file_write()
    	local file = io.open(lua_base_path..'data/'..player.name..'/Data/'..player.main_job..'var.lua',"w")
    	file:write(
    		--replace var1 and var2 with the varable that you want to save then add it to extras function file_write() under file:write(
    		--'\nvar1 = '..tostring(var2).. --var type Number
    		--'\nvar1 = '..tostring(var2).. --var type Boolean
    		--'\nvar1 = "'..tostring(var2)..'"'.. --var type String
    		'')
    	file:close() 
    end
    to use find that variable you want to save and then find out what type it is
    Number example:
    my.var = 1
    use this
    '\nmy.var = '..tostring(my.var)..

    Boolean(true or false) example:
    my.var = true
    use this
    '\nmy.var = '..tostring(my.var)..

    String example:
    my.var = "left"
    us this
    '\nmy.var = "'..tostring(my.var)..'"'..

    after that you must place them
    Code:
    function file_write()
    	local file = io.open(lua_base_path..'data/'..player.name..'/Data/'..player.main_job..'var.lua',"w")
    	file:write(
    		HERE(do not include this)
    		'')
    	file:close() 
    end
    example:
    Code:
    function file_write()
    	local file = io.open(lua_base_path..'data/'..player.name..'/Data/'..player.main_job..'var.lua',"w")
    	file:write(
    		'\nStepmax = '..tostring(Stepmax)..
    		'\nStopsteps = '..tostring(Stopsteps)..
    		'\nChangestaff = '..tostring(Changestaff)..
    		'\nUsestaff = "'..tostring(Usestaff)..'"'..
    		'\nspecialweaponwscount = '..tostring(specialweaponwscount)..
    		'')
    	file:close() 
    end
    then to recover your variable settings
    place this at the bottom of your get_sets function (this is because you want to make sure all variable are loaded) i do recomend that you only add this after you have created the jobs saved var file
    Code:
    	include('Data/'..player.main_job..'var.lua')
    to get it to save your variables you need to add file_write() to your code
    if you want to save user command variables put file_write() at the bottom of your self_command function
    example:
    Code:
    function self_command(command)
    	...
    	file_write()
    end
    if you want to save a varable that is changed automaticaly by gearswap code you need to put file_write() after each variables change line
    example:
    Code:
    if player.equipment.main == "Molva Maul" then --club
    	if specialweaponwscount < 13 then
    		specialweaponwscount = specialweaponwscount +1
    		file_write()
    	elseif specialweaponwscount == 13 then
    		cancel_spell()
    		send_command('input /ws "Randgrith" <t>')
    		specialweaponwscount = 0
    		file_write()
    	end
    end
    i also recomend that you put file_write() at the bottom of your file_unload function just to catch any errors
    examples:
    Code:
    function file_unload()
    	...
    	file_write()
    end
    this is how your file will look
    example:
    Code:
    Stepmax = 1
    Stopsteps = false
    Changestaff = false
    Usestaff = "Atk"
    specialweaponwscount = 0

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

    Nice job

  18. #2198
    Bagel
    Join Date
    Dec 2012
    Posts
    1,488
    BG Level
    6

    Quote Originally Posted by JSHidaka View Post
    Nice job
    i just hope people can understand what i wrote

  19. #2199
    RIDE ARMOR
    Join Date
    Jan 2010
    Posts
    24
    BG Level
    1
    FFXI Server
    Leviathan

    Quote Originally Posted by Motenten View Post
    You're going to have to give me more exact replication methods, because I can't make that bug happen. Constant spamming attempts to cast a song caused only the normally expected error messages.
    I made a quick video with windower if you would be interested ^^

    Quote Originally Posted by Motenten View Post
    What I have:

    When Pianissimo is used (precast), the state variable is set to true. In aftercast, if spell.interrupted is true (ie: waiting on recast, or otherwise can't complete the action), state.Buff.Pianissimo is set to false -if- the buff is not active.

    Thus:
    Use Pianissimo (precast). state.Buff is immediately set to true.
    Use Pianissimo (aftercast). state.Buff remains true.
    Buff_change: Pianissimo buff registers. state.Buff set to true.
    Use Pianissimo again manually (precast). state.Buff is set to true (thus, doesn't change)
    Second Pianissimo attempt, aftercast, interrupted because recast wasn't up. state.Buff remains true because buffactive is true.
    Repeat attempt to cast song in a very fast interval: Once Pianissimo is used, further use attempts are blocked.

    Attempt to auto-pianissimo: Is skipped if state.Buff.Pianissimo is true. Thus, should be impossible to spam the JA in an infinite loop.
    That flow logic makes sense to me as well, whats really weird is that I only noticed this starting to happen about a week and half maybe two weeks ago now, thats honestly the main reason why i brought it up because I thought something broke. I use BRD a lot, and I would think I would have noticed this earlier if it was a pre-existing condition but can't be 100% on that of course.

    Quote Originally Posted by Motenten View Post
    Note: There was an infinite loop in the code a -very- long time ago. If you somehow managed to copy that code in, rather than use the latest updates, that could be the cause. Otherwise, I have no clue.
    Well I updated all your job.lua files as of about 30 minutes ago, the windower updates the core files in the libs folder now automatically so that should be good. I double check'd and manually updated those as well just to be sure. I know that this shouldn't matter but in my sidecar files are just gear and minor updates to custom binds and the info.DaurdablaInst variable(i use JSE). I have my own globals as well, again just binds mostly with a couple global variables (since before you made your rings variables global). I have a user precast in my globals for default utility function calls as well. My friend is having the exact same issue and our job files, excuse me your job files , are shared between us via a drop box account and linked folders that only I update because she is lucky and I do all the work, and she has her globals and sidecar's for gear but they are basically my same files with her gear in them. Anyways I appreciate you trying to help me figure this out, it seems kind of strange, I really did make a quick video I can get to you as I don't know how else to describe it with words, otherwise I will macro smash less and make a custom bind for //gs reload just in case lol.

    So as I was sifting through my files and double checking stuff pertaining to my BRD issue I saw this in my global:

    Code:
    -- Global intercept on midcast.
    function user_midcast(spell, action, spellMap, eventArgs)
    	-- Default base equipment layer of fast recast.
    	if spell.action_type == 'Magic' and sets.midcast and sets.midcast.FastRecast then
    		equip(sets.midcast.FastRecast)
    	end
    end
    Is this some how causing my BLM issue? Basically my BLM is casting in sets.midcast.FastRecast no matter what spell I use so my damage is absolutely garbage, however my SCH works perfectly fine so that should mean this code isn't the culprit? I don't know. This also happened (or I noticed cause I don't BLM much) randomly like 2 weeks ago too. Ugh.

    Thank you so much for your time and help!

  20. #2200
    New Spam Forum
    Join Date
    Dec 2009
    Posts
    158
    BG Level
    3
    FFXI Server
    Quetzalcoatl

    Any idea what might be causing duplicate messages for Curing Waltz?



    I've got refine_waltz(spell, action, spellMap, eventArgs) in the job_precast, and this happens whether I use a Curing Waltz macro or use the menus.

Page 110 of 302 FirstFirst ... 60 100 108 109 110 111 112 120 160 ... LastLast

Similar Threads

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