Item Search
     
BG-Wiki Search
Page 134 of 302 FirstFirst ... 84 124 132 133 134 135 136 144 184 ... LastLast
Results 2661 to 2680 of 6036

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

  1. #2661
    Campaign
    Join Date
    Jul 2007
    Posts
    6,633
    BG Level
    8

    JSH and dlsmd, I implemented those line in my lua.
    In my precast and the boolean-reset in my aftercast.
    Everything works perfectly, but after some time, for reasons I cannot understand, the boolean gets stuck to "true". Wether because aftercast wasn't correctly called as it should or... I can't think of anything else.
    Once the variable is wrongly set to "true" (i.e. there is no casting going on) aftercast will never be called, with the result that you will basically be stuck into permaignoring your precast, hence "locking" your character from using any spells or abilities.

    I already deployed a temporary solution (I put a "casting = false" whenever I engage something) but I'm more curious to understand what could cause the boolean to get stuck on "true".


    Edit:
    A couple of times I've seen my char remain in Midcast set after a Resolution.
    That might be the moment where the mess happens. Aftercast doesn't get executed, hence the boolean doesn't get reset to false.
    Makes sense?
    I think it does. Wonder why sometimes (very rarely) it happens I get stuck on midcast gear after Resolution. Maybe it's a packetloss?

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

    Quote Originally Posted by Sechs View Post
    JSH and dlsmd, I implemented those line in my lua.
    In my precast and the boolean-reset in my aftercast.
    Everything works perfectly, but after some time, for reasons I cannot understand, the boolean gets stuck to "true". Wether because aftercast wasn't correctly called as it should or... I can't think of anything else.
    dropped packets

  3. #2663
    RIDE ARMOR
    Join Date
    Aug 2014
    Posts
    19
    BG Level
    1

    How do I get the thaumas coat part of my thf gearswap to work?

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

    Quote Originally Posted by holyshoot View Post
    How do I get the thaumas coat part of my thf gearswap to work?
    it would help if you posted your code because with out it we cant tell whats wrong

  5. #2665
    RIDE ARMOR
    Join Date
    Aug 2014
    Posts
    19
    BG Level
    1

    I am using the THF kinmatics gearswap xml. here is the line of code that uses thaumas, not sure how to activate it

    -- Mod set for trivial mobs (Thaumas)
    sets.engaged.Mod2 = {ammo="Raider's boomerang",
    head="Espial Cap",neck="Chivalrous chain",ear1="Dudgeon Earring",ear2="Heartseeker Earring",
    body="Thaumas coat",hands="Pillager's Armlets",ring1="Rajas Ring",ring2="Keen ring",
    back="Atheling Mantle",waist="Dynamic belt",legs="Quiahuiz trousers",feet="Plunderer's Poulaines"}
    Figured it out, had to add Mod2 which is thaumas to the

    options.OffenseModes =

    And then you cycle through with f9 until you hit mod2 mode.

  6. #2666
    Campaign
    Join Date
    Jul 2007
    Posts
    6,633
    BG Level
    8

    Quote Originally Posted by dlsmd View Post
    dropped packets
    Meh, which is exactely the same reason why midcast() was getting stuck.
    I guess there really is no easy solution, other than setting a selfcommand that manually triggers the boolean to go to default for those situations when it get stucked.

    I wonder though, what causes dropped packets? Bad connection on my side?

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

    No, SE not making a serious hardware and software commitment to upgrading their instancing system. They have a bad bottleneck problem at their end somewhere and there's all of jack shit you can do about it.

  8. #2668
    Old Odin
    Join Date
    Oct 2006
    Posts
    6,198
    BG Level
    8
    FFXI Server
    Asura

    Quote Originally Posted by Byrthnoth View Post
    No, SE not making a serious hardware and software commitment to upgrading their instancing system. They have a bad bottleneck problem at their end somewhere and there's all of jack shit you can do about it.
    tbh its not as bad as it was during delve 1.0 release and when legion was in full force. but still happens occasionally

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

    Quote Originally Posted by Sechs View Post
    JSH and dlsmd, I implemented those line in my lua.
    In my precast and the boolean-reset in my aftercast.
    Everything works perfectly, but after some time, for reasons I cannot understand, the boolean gets stuck to "true". Wether because aftercast wasn't correctly called as it should or... I can't think of anything else.
    Once the variable is wrongly set to "true" (i.e. there is no casting going on) aftercast will never be called, with the result that you will basically be stuck into permaignoring your precast, hence "locking" your character from using any spells or abilities.

    I already deployed a temporary solution (I put a "casting = false" whenever I engage something) but I'm more curious to understand what could cause the boolean to get stuck on "true".


    Edit:
    A couple of times I've seen my char remain in Midcast set after a Resolution.
    That might be the moment where the mess happens. Aftercast doesn't get executed, hence the boolean doesn't get reset to false.
    Makes sense?
    I think it does. Wonder why sometimes (very rarely) it happens I get stuck on midcast gear after Resolution. Maybe it's a packetloss?
    ok i have been thinking about this and this might work(not sure if its coded correctly tho)
    Code:
    function midcast ()
    	casting = true
    	coroutine.schedule(endcast, (spell.cast_time/4+.5))
    	...
    end
    function aftercast ()
    	...
    	casting = false
    end
    function endcast()
    	casting = false
    end

  10. #2670
    Campaign
    Join Date
    Jul 2007
    Posts
    6,633
    BG Level
    8

    Whoa! That's something new, never seen that command before. Mind explaining to me what "coroutine" does?
    That would likely work for spells or stuff that actually have a Precast>Midcast>Aftercast process, but what about JAs and WSs? Normally I go Precast>Aftercast for those. I can't think of any JA/WS where I have midcast gear atm, should check my files but I doubt I have any.


    Edit:
    Small edit because I don't want to sound like an ungrateful asshole. I'm really thankful about the support you folks have been giving me, but at the same time I'm a bit surprised. It seems like you're trying to solve this thing spefically for me. I mean, nobody else had this issue before? How have you people been handling this stuff so far?
    (for instance I don't need a "casting" rule for many of my jobs, I use it only for jobs that cast spell/magic, atm SCH, BRD and RUN)

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

    Quote Originally Posted by Sechs View Post
    Whoa! That's something new, never seen that command before. Mind explaining to me what "coroutine" does?
    That would likely work for spells or stuff that actually have a Precast>Midcast>Aftercast process, but what about JAs and WSs? Normally I go Precast>Aftercast for those. I can't think of any JA/WS where I have midcast gear atm, should check my files but I doubt I have any.
    go to the wiki to see info
    here= http://dev.windower.net/doku.php?id=...unctions:start

    Quote Originally Posted by Sechs View Post
    Small edit because I don't want to sound like an ungrateful asshole. I'm really thankful about the support you folks have been giving me, but at the same time I'm a bit surprised. It seems like you're trying to solve this thing spefically for me. I mean, nobody else had this issue before? How have you people been handling this stuff so far?
    (for instance I don't need a "casting" rule for many of my jobs, I use it only for jobs that cast spell/magic, atm SCH, BRD and RUN)
    i try to help people with there issues when i have time to do so and if what i post does not quite work ill try to fix it if i can but that some times takes time

  12. #2672
    Campaign
    Join Date
    Jul 2007
    Posts
    6,633
    BG Level
    8

    Thanks for the link!
    Think I got how it works. Basically it forces to execute the "endcast" custom function after the specified amount of seconds.
    With such a rule the worst case scenario is being locked for that amount of seconds.
    I think I really like this. For Melee jobs there's many ways I could solve the "lock" once it happens, but for caster jobs I definitely need something like this.
    Thanks!


    And rereading the second part of my previous post it sounded really wrong D:
    Please accept my apologies!
    What I wanted to say is: haven't you guys been having "packet loss" issues as well? How have you been handling them so far? Nobody else uses a rule to prevent swapping gear while casting? (to avoid situations like when you press macros multiple times in a row and similar, because that's kinda the reason why I started to desire to implement such a rule)

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

    Quote Originally Posted by Sechs View Post
    Thanks for the link!
    And rereading the second part of my post it sounded really wrong D:
    What I wanted to say is: haven't you guys been having "packet loss" issues as well? How have you been handling them so far? Nobody else uses a rule to prevent swapping gear while casting? (to avoid situations like when you press macros multiple times in a row and similar, because that's kinda the reason why I started to desire to implement such a rule)
    i just deal with it
    but i have a huge list of rules to check if i can cast anyways

    Code:
    function pretarget(spell)
    	if spell_stopper(spell) then cancel_spell() return end
    end
    function spell_stopper(spell)
    	if spell.english ~= 'Ranged' and spell.type ~= 'WeaponSkill' then
    		if spell.action_type == 'Ability' then
    			if spell and (windower.ffxi.get_ability_recasts()[spell.recast_id] > 0) then
    				return true
    			end
    		elseif spell.action_type == 'Magic' then
    			if spell and (windower.ffxi.get_spell_recasts()[spell.recast_id] > 0)then
    				return true
    			elseif spell then
    				if spell.tp_cost > player.tp then
    					return true
    				end
    				if spell.mp_cost > player.mp and not (buffactive['Manawell'] or buffactive['Manafont']) then
    					return true
    				end
    			end
    		end
    	end
    	if buffactive['sleep'] then
    		return true
    	end
    	if spell.type == "Trust" and party.count > 1 then
    		if player.in_combat then
    			return true
    		end
    		if partynames.party1:contains(string.gsub(spell.english, "%s+", "")) then
    			return true
    		end
    	end
    	-- if windower.wc_match(spell.english, 'Warp*|Teleport*|Recall*|Retrace|Escape') then
    		-- return true
    	-- end
    	if midaction() or pet_midaction() then
    		return true
    	end
    	if  player.tp < 1000 and spell.type == 'WeaponSkill'  then
    		return true
    	end
    	if nin_tool_check(spell) then return true end
    	return false
    end

  14. #2674
    Campaign
    Join Date
    Jul 2007
    Posts
    6,633
    BG Level
    8

    scrap this, misread everything

  15. #2675
    Sea Torques
    Join Date
    Nov 2007
    Posts
    694
    BG Level
    5
    FFXI Server
    Asura

    Quote Originally Posted by Motenten View Post
    This is what I did for mine, for Arciela's Grace. This is placed in "Motenten-Globals.lua" in data/Motenten (note: -not- the same as "Mote-Globals.lua" in GearSwap/libs). You'd create a "Suteru-Globals.lua" (or whatever, for your character name) file and put it in your character directory.
    Spoiler: show

    Code:
    -------------------------------------------------------------------------------------------------------------------
    -- An example of setting up user-specific global handling of certain events.
    -- This is for personal globals, as opposed to library globals.
    -------------------------------------------------------------------------------------------------------------------
    
    sets.reive = {neck="Arciela's Grace +1"}
    
    -- Global intercept on midcast.
    function user_post_midcast(spell, action, spellMap, eventArgs)
        if buffactive['Reive Mark'] and (spell.skill == 'Elemental Magic' or spellMap == 'Cure' or spellMap == 'Curaga') then
            equip(sets.reive)
        end
    end
    
    function user_customize_idle_set(idleSet)
        if buffactive['Reive Mark'] then
            idleSet = set_combine(idleSet, sets.reive)
        end
        return idleSet
    end
    For the Ygnas neckpiece, revise it slightly to:

    Code:
    -------------------------------------------------------------------------------------------------------------------
    -- An example of setting up user-specific global handling of certain events.
    -- This is for personal globals, as opposed to library globals.
    -------------------------------------------------------------------------------------------------------------------
    
    sets.reive = {neck="Ygnas's Resolve +1"}
    
    -- Global intercept on midcast.
    function user_post_precast(spell, action, spellMap, eventArgs)
        if buffactive['Reive Mark'] and spell.type == 'WeaponSkill' then
            equip(sets.reive)
        end
    end
    
    function user_customize_idle_set(idleSet)
        if buffactive['Reive Mark'] then
            idleSet = set_combine(idleSet, sets.reive)
        end
        return idleSet
    end
    
    function user_customize_melee_set(meleeSet)
        if buffactive['Reive Mark'] then
            meleeSet = set_combine(meleeSet, sets.reive)
        end
        return meleeSet
    end


    Note: The customize idle/melee global intercepts only works in the current dev; should go to live soonish. The post_precast intercept works in current live.

    Note 2: If you -only- want to have this apply in cor, and not in any other jobs (or manually update each other job individually), just use the job-local versions of those functions (job_post_precast, customize_idle_set, customize_melee_set).
    Just a note, this works for my idle set, but it doesn't seem to work with Weaponskills (Wildfire, Leaden, or Last Stand, haven't tried any melee ones)
    Here's my COR.lua:
    http://pastebin.com/i3V34WXd
    And Suteru-globals:
    http://pastebin.com/rCXFMN3j

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

    Quote Originally Posted by Suteru View Post
    Just a note, this works for my idle set, but it doesn't seem to work with Weaponskills (Wildfire, Leaden, or Last Stand, haven't tried any melee ones)
    Here's my COR.lua:
    http://pastebin.com/i3V34WXd
    And Suteru-globals:
    http://pastebin.com/rCXFMN3j
    Put in an add_to_chat() command in the user_post_precast() function to make sure it's being run? And that it's passing your if check? I don't see anything obviously wrong with the code you have.

  17. #2677
    Campaign
    Join Date
    Jul 2007
    Posts
    6,633
    BG Level
    8

    Is there a way to display the content of a variable on screen each time it changes? I don't mean in the chatbox, I mean somewhere else in the screen.
    I guess you would need a custom function display(varname) that does the job, and call it each time you change the var value?

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

    Quote Originally Posted by Sechs View Post
    Is there a way to display the content of a variable on screen each time it changes? I don't mean in the chatbox, I mean somewhere else in the screen.
    I guess you would need a custom function display(varname) that does the job, and call it each time you change the var value?
    i was thinking about doing that as well but im not sure how to

  19. #2679
    Campaign
    Join Date
    Jul 2007
    Posts
    6,633
    BG Level
    8

    I think I know how.
    Take the "Speedchecker" addon made by Arcon on my request. It's a very simple (it's literally a few lines) function that displays a small box with a number inside.
    That number is movement speed but I'm confident we could use the same instructions to display the content of a variable in the same way.

    I wanted to display to test it the lines I "stole" from you (the boolean and the automatic timed reset) to see how often I lose packets and how often your function "saves" me.


    Speaking of which, I had to make a few changes to those line of code because you put a dynamic wait time for the schedule function, and that dynamic time was calculated as "(spell cast time / 4) + 0.5".
    This calculation works good for spells, but it was giving error for JAs and WSs since they do not have a spell cast time value.
    Can either set a fixed time value for JA/Ws or make so when the action is a JA or a WS you automatically reset the casting variable to "false" (they do not have a "casting" time after all, so you don't really need the rule for those)
    Anyway, as far as I could see it works like a charm, I love it. Thanks dlsmd <3

  20. #2680
    Campaign
    Join Date
    Jul 2007
    Posts
    6,633
    BG Level
    8

    In particular, this is what I consider the relevant part of that addon I was talking of:

    Code:
    windower.register_event('prerender', function()
        local me = windower.ffxi.get_mob_by_target('me')
        if me then
            speed:text('%+.0f %%':format(100*(me.movement_speed / 5 - 1)))
            speed:show()
        else
            speed:hide()
        end
    end)
    Would just need a different value inside that speed:text line, would be actually simpler than that since you would just have to put the variable name in there, with no calculation needed.

Page 134 of 302 FirstFirst ... 84 124 132 133 134 135 136 144 184 ... LastLast

Similar Threads

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