..:: PCSX2 Forums ::..

Full Version: DS4 To XInput Wrapper
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
When that DS4Tool will have great UI ?
thx tox I will check that.

inhexster if the future mapping window will be like this, it's gonna be awesome ! plus it would add all the things I asked for earlier Smile
(03-14-2014, 12:18 AM)InhexSTER Wrote: [ -> ]So to map to triangle you right click on it choose X360 and then press a button on controller (Square) and it creates a mapping with Triangle to X (Square) (box will show Xbox X icon)

That's actually why I exposed each button publically, so that Custom Mapping can see what button(s) are pressed. Can still be an event though. We just haven't done it yet.

Also the initial idea was to allow clicking on the image's buttons to select the corresponding mapping - but I'm hesitant to just do this with click event args and manually mapping out each button's area in some kind of switch or if combination. Just putting buttons on top looks awkward to me personally, but that's me.

Side note, are we actually allowed to use a picture we didn't make ourselves (or receive from someone who did) like in that snapshot?
(03-14-2014, 12:47 AM)HecticSeptic Wrote: [ -> ]Just putting buttons on top looks awkward to me personally, but that's me.

Side note, are we actually allowed to use a picture we didn't make ourselves (or receive from someone who did) like in that snapshot?
Well essentially DS4State is already exposed, but i think your idea is good. I think we should rename DS4ExposedState to just DS4State and rename DS4State to DS4Internal.

It might look a bit weird, but it allows us to put any icon over the control with so many possibilities (Keybind, mouse buttons, x360 controls) it will be easier to perceive when there is the icon with a specific control overlayed. Also buttons can be made look transparant with only with icon visible. (We would need to make DS4 image without buttons or make make icons correct size to overlap nicely)
Also having this option of right clicking and choosing type of control allows us to do something like when reading keystroke if its 1 press it no repeat if its held for 3 seconds then enable repeat. And over all will allow us more flexibility if everything is more divided.

About the pictures i also wonder, we can always make our own, but i wonder if Xinput icons have legal limitation on usage.
(03-14-2014, 12:55 AM)InhexSTER Wrote: [ -> ]Well essentially DS4State is already exposed, but i think your idea is good. I think we should rename DS4ExposedState to just DS4State and rename DS4State to DS4Internal.

Sure. Whether one says exposed or the other says internal so long as there's distinction in what we make public I think.

(03-14-2014, 12:55 AM)InhexSTER Wrote: [ -> ]It might look a bit weird, but it allows us to put any icon over the control with so many possibilities (Keybind, mouse buttons, x360 controls) it will be easier to perceive when there is the icon with a specific control overlayed.
Also having this option of right clicking and choosing type of control allows us to do something like when reading keystroke if its 1 press it no repeat if its held for 3 seconds then enable repeat. And over all will allow us more flexibility if everything is more divided.

I think we could make it look natural if we had someone good with graphics keen to provide the visuals. For example showing L/R/1/2 from a different angle and providing slots/gaps in each button to fit an icon/short description.

Context menus aren't anything special in .NET, it'd be fairly easy I think to have what's shown in that image. We'd of course still need to map Mouse movement to each control in the mapping code behind...
I also wonder if 1.3 needs any more features/bug fixes. I think we should be wrapping it up and starting 2.0 Dev. We really need to add hot - swapping custom mapping contigs and profiles.
We should talk on exactly how it will work first.
ok tox thank you for xpadder, it works well and compatible with ds4 tool so I can use the touchpad along Smile

and inhexster I've tried to map the touchpad to stroke keys, works fine except multitouch. I remember it worked before as right click when you didn't use upperpad yet so idk what's wrong (I've got 1.2.2)
I'd like to bring back up an old post that summarized development direction discussions we already had:
http://forums.pcsx2.net/Thread-DS4-To-XI...#pid355277

I think we can add profiles to 1.3-Final without compromising the quality. I'd add a few new sections to the configuration XML and not do banks but do profiles and caching of the used profile/mode now:
<Profiles>
<Profile name="Brian">
<Controllers>
<Bluetooth>AA:BB:CCLaughD:EE:FF</Bluetooth>
</Controllers>
<Settings>
<!-- mostly what is in Controller1/2/3/4 -->
</Settings>
<Mapping>
<!-- contents of existing Control XML format -->
</Mapping>
<!-- save current touchpad mode and sub-mode configuration -->
<Touchpad mode="Button"><option name="ButtonLock" value="true"/></Touchpad>
</Profile>
</Profiles>
(03-14-2014, 01:28 AM)InhexSTER Wrote: [ -> ]I also wonder if 1.3 needs any more features/bug fixes. I think we should be wrapping it up and starting 2.0 Dev. We really need to add hot - swapping custom mapping contigs and profiles.
We should talk on exactly how it will work first.

If I can toss in $0.02 from the peanut gallery, I urge you to consider forgoing "hot swapping" profiles for auto-app-association, a la xpadder/joytokey/PGP/etc. Once you're up to 2+ dozen profiles trying to manually swap between them, even with hotkey combos, is gonna be a real nightmare.

Off-hand I'm trying to come up with a situation where you'd need to swap between two different profiles in the middle of a single game and I can't think of any; it seems like you'd remap the keys to suit the application you're currently using, and would only need to change profiles when you changed active programs anyway.
(03-14-2014, 02:22 AM)electrobrains Wrote: [ -> ]I'd like to bring back up an old post that summarized development direction discussions we already had:
http://forums.pcsx2.net/Thread-DS4-To-XI...#pid355277

I think we can add profiles to 1.3-Final without compromising the quality.

Considering how many issues araised with custom mappings i am not sure if we can create bug free profile system for 1.3, also changing to by mac address saving and so will require extensive rework of existing code. As well as introducing new elements in GUI to enable functionality. I'd rather do it once right than rewriting it for the next release. I also belive there should be fast custom mappings switching (as many as you want each in separate file in "mappings" folder). So this will allow re-use of mapping for 2 profiles. So all mappings will be available to every controller. Profiles will save all the data from the options, and again each profile in separate file in "profiles" folder. This approach will allow easy to copy/share individual profiles/mappings

Swtiching a profile will apply all settings of that profile (each profile can have its own color)
Switching a custom mapping will flash led once or twice with predefined color for that custom mapping.
Profile can save current mapping selected or have a default one.

This is sounding not that complex but if we would implement this it should be carefully though out first. As with custom mappings the way its implemented atm poses quite few limitations that can only be resovled rewriting the logic (specifically ability to bind multiple inputs to 1 input).

Anyways implementation of this all depends on what it should be, profiles per controller, profiles per game and so on. Imho we shouldn't rush this.