Giter Site home page Giter Site logo

Comments (7)

evilC avatar evilC commented on July 22, 2024 2

ButtonsToAxis is for mapping two buttons to one centered axis. You want the ButtonToAxis plugin with a press value of 100 and a release value of -100

from ucr.

evilC avatar evilC commented on July 22, 2024

L2 and R2 are not logically "Buttons", they are axes.
When you connect a real DS4 to a PC and press the L2 trigger, then it triggers an axis and a button.
However, this is just for the DirectInput representation of a DS4 pad.
I am unsure if, while plugged into a PS4 console, there is actually any such thing as a button for L2.
Many games may let you treat it as a button, but that does not mean it actually is one.
I have already mentioned this to the author of ViGEm - that when I send a press event to button L2, it should also set the Axis L2 to pressed, but he disagrees, so there is nothing I can do.
TLDR - You should try sending output to the Axis L2 instead of the Button L2.
If you need to map a button (eg keyboard key) to L2, then use a ButtonToAxis plugin

from ucr.

habeelmazhar avatar habeelmazhar commented on July 22, 2024

screenshot 1

is this an issue that LT and RT does not work properly? Because in the preview and html5 tester it does not respond properly e.g the value in html tester is 1.00 on press and on release its gets stuck to 1.00 as you can see the values are properly 0 and 100.

from ucr.

evilC avatar evilC commented on July 22, 2024

It is an issue to do with the emulation.
If you plug a real DS4 into a PC, when you press a trigger, BOTH a button AND and axis change state.
I can't remember the exact details, but for argument's sake, lets say that When you press L2, then both button 5 and axis 5 change state.

It is impossible, with a real DS4, to move axis 5 without making button 5 light up.
However, in ViGEm, this IS possible - setting button 5 to pressed does NOT set the state of axis 5

As far as I am aware, most DS4 stuff on PC will only pay attention to the state of axis 5 and ignore button 5, so in general the solution is simply to use a ButtonToAxis instead of a ButtonToButton.
If you need it to totally replicate how a real DS4 works, then add both a ButtonToButton and a ButtonToAxis

from ucr.

TimAkgayev avatar TimAkgayev commented on July 22, 2024

@evilC I'm using a PS2 controller with a USB adapter to map to a DualShock 4. I've tried to switch the L2 and R2 to use Button To Axis plugin (Axis to Axis doesn't work because I think on PS2 L2/R2 were still buttons). The thing is when I switch it there is weird behaviour. For example the R2 works once. If I press it right after I load the profile the character begins to "charge" the attack however when I let go of R2 the game doesn't register the release and just keeps the character in "charging to attack" mode. If I press other buttons it gets out of that state, however the next time I press R2 nothing happens at all. I'm guessing it somehow doesn't return to released state. Now, if I go into a menu (in this game menu tabs are switched by L2/R2) and try to switch tabs with then I can switch once with L2 and once with R2 but after I press each button once it stops registering following presses.

from ucr.

TimAkgayev avatar TimAkgayev commented on July 22, 2024

@evilC Ok, so I kind of got it work but it's still not really correct behaviour. I tried using "Buttons (plural) to Axis", this plugin has a high and low, if I just assign the high portion and leave the low slot empty then the attack works however it doesn't work on R2 release, it works if I press it a second time. In other words in the game you press R2 to charge the attack and release it when you want to attack with that amount of charge, however when I press it now it charges and I have to press it again to actually perform the attack, so something is not right, but it does work at least somewhat. Also the menu tab switching works with this technique as well.

from ucr.

TimAkgayev avatar TimAkgayev commented on July 22, 2024

Setting it to -100 fixed the problem, thanks.

from ucr.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.