Alternative while-held glitch workaround

Post Reply
Primal Fear
Xpadder Xpert
Posts: 2437
Joined: 09 Feb 2010, 16:41
Location: Germany
Contact:

Alternative while-held glitch workaround

Post by Primal Fear »

My workaround addresses the same issue like Oke_Doke's solution, but it has one advantage and one disadvantage.

Code: Select all

;--- Xpadder Profile Data ---
DataType=Profile
Version=2012.12.31
Set1Button5Name=Oke_Doke
Set1Button5Toggle=1
Set1Button5Turbo=1
Set1Button5TurboRate=2
Set1Button5SetSelect=1
Set1Button6Name=Oke_Doke
Set1Button6Toggle=1
Set1Button6Turbo=1
Set1Button6TurboRate=2
Set1Button6SetSelect=2
Set1TriggerLeftName=Primal Fear
Set1TriggerLeftSlots=RELEASE ZONE 0.01s,PAUSE 0.02s
Set1TriggerLeftTurbo=1
Set1TriggerLeftTurboRate=2
Set1TriggerLeftSetSelect=1
Set1TriggerRightName=Primal Fear
Set1TriggerRightSlots=RELEASE ZONE 0.01s,PAUSE 0.02s
Set1TriggerRightTurbo=1
Set1TriggerRightTurboRate=2
Set1TriggerRightSetSelect=2
Set2Button5Toggle=1
Set2Button5SetSelect=0
Set2TriggerLeftSetSelect=0
Set3Button6Toggle=1
Set3Button6SetSelect=0
Set3TriggerRightSetSelect=0
Advantage: I keep the set selector as while-held and use, like Oke_Doke, a turbo in the source set of 0.02s. This is causing that the set selection is simply working as while-held when you normally press one of the triggers while being in Set1. That way you won't get stuck in one of the sets when tapping the button for only 0.01s ("If one mashes the set selectors faster than the turbo can repeat..."). So much for the advantage.

I have also assigned a Release Zone of 0.01s and a pause of 0.02s in the source set. This is causing that Xpadder doesn't switch quickly between Set1 and Set2 as long as you hold the left trigger after causing the while held glitch like explained in the hide box below. Now it works in that case exactly like Oke_Doke's solution. Actually I don't even know why this assignment is causing that it works, but it works.
Causing while-held glitch: Show
If you use multiple while-held set selectors in on set you can get stuck in a wrong set. To see how download the following example and do the steps explained below.

Code: Select all

;--- Xpadder Profile Data ---
DataType=Profile
Version=2012.12.31
Name=While-held glitch demonstration
Set1TriggerLeftSetSelect=1
Set1TriggerRightSetSelect=2
Set2TriggerLeftSetSelect=0
Set2TriggerRightSetSelect=0
  • 1.Press and hold the right trigger, Xpadder will switch to Set3
    2.Press and hold the left trigger
    3.Release the right trigger, Xpadder will return to Set1 but not switch to Set2
    4.Release the left trigger, Xpadder will switch to Set 2 and stay there
Disadvantage: Like with Oke_Doke's solution you will still get stuck in Set2 when you release the left trigger exactly 0.01s after coming from Set3 (or the other way around, releasing right trigger exactly 0.01s after coming from Set2), as the turbo now gets active. You are still able to return to Set1 by pressing the left trigger once, but in opposite to Oke_Doke's solution you have to press the trigger normally to not end up again in Set2 if you tap it only for 0.01s. This occurs because my solution fixes the issue in Set1 via the turbo while Oke_Doke's already fixes it in Set2 as it stays there until the button is released.

All in all, I would recommend my solution if you have a tap assignment on the buttons with the set selector in the destination set. If the button is a modifier only, so there is no real reason to tap it, then Oke_Doke's solution should be at least a bit easier to configure.

Post Reply

Return to “Sets”