..:: PCSX2 Forums ::..

Full Version: DS4Windows -- yet another DualShock 4 driver! (No longer under active development)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(06-08-2014, 06:45 PM)shinra358 Wrote: [ -> ]"your comments come off more as complaints"

not once have I been rude to anyone in these threads. haven't been trying to curb anyone's anything. you said something about 'devs don't do something this way'. I just pointed out that in every game or emu I own, they do what you said they didn't do. I played both sides of the field. You were on one side, then switched to another. All I was doing was joining in on the convo because you said that you couldn't see a point in one way. I gave examples on how other ppl do it or would see it. If I was just looking out for just myself, I would have said "this way is stupid and this way isn't'. but instead I said 'I see how a person would use it this way and I see how a person would use it another way'. To be honest, I really think you misread something I posted again. You've been getting offended quite often when I speak I've seen for the longest. But I just never said anything about it because I was thinking 'well maybe he misread'. When somebody says 'here's the code, do it yourself', that's obvious that you are mad about something considering ppl already know where the source code is. And I've seen plenty of devs who get pissed because ppl find alot of issues with what they made and forget what a thread's purpose is supposed to be. And if you didn't want suggestions, what would be the purpose of any thread.

not once have i said 'i don't appreciate' and I do believe I gave compliments one time or another. you also said at one point that 'well nobody else is experiencing an issue'. that's probably because they haven't had a particular setup that would cause something or because you may get mad for them talking too much in a thread (like it seems here). So sorry if I talk too much bro. I mean you do have your thread. I kinda stuck to this thread because the 2 versions in this thread don't have installers. So if you got offended by something I said, then I didn't mean it to be read or interpreted that way and I didn't want any trouble nor intended to hurt anyone's feelings.

Again, only misinterpretation here is coming from your end, I was not rude nor did I say what you just quoted me so Im not sure where you pulled that quote from, but to clarify this is what I posted:

Quote:https://code.google.com/r/brianfundakows...ce/browse/ heres the code so you can develope your own.

I'm personally sticking to the industry standard and what is most beneficial to the most users.

If you take that as me being angry let me assure you, it takes far more than somebody in a forum to make me angry. What I am however is purposeful and direct in what I say. Im a business owner, not a customer relations, or account manager, or anything else that has to deal with sugar coating things and being PC conscious. What I say, I say the way I say to be direct and clear and should not be taken at more than face value.

Back to the original point though, You make a good case for why things would need to be a certain way in your specific situation (hence my last post giving you the code so you could do as is best suited for you) however, and I cannot speak for j2k here, I have to take into account the majority and develop accordingly. The root fact is that major applications that do sensing do so based on what window is active for the reasons I described earlier where users may have a movie or website open simultaneously, this could cause an obvious conflict if just using logic that determines if a program is open period because several would be open that (could) have unique profiles.

So to hopefully warp this all up as plainly as possible, the op was "could ds4tools detect which application is in the foreground?" I took foreground to mean active as I described, those that are not 'code initiated' usually do not know the difference. My response is that mine and J2Ks already do so but was corrected by j2k that he uses slightly different logic. I then made a case to j2k as why what the OP suggested is more common (in fact the only way ive ever seen used in such apps) and why it is as such. Things went pear shaped shortly after.
Okay, and I responded:

"@Jheb, so you're saying that if you just implement it to the foreground, and I only use it for games, and I only play one game at a time, and I have a notepad document open and it is in the foreground, that I will still be able to play the game in the background while I look at the document that's in the foreground at the same time?

And what about having two games up to try to compare framedata, attack data, etc. between the 2 versions of a character?"


What you posted after seemed like you thought I was being a smart alleck or something. But those 2 questions were serious questions. You never answered them. All in all, I just wanted to know if what you were talking about would make me not be able to do the above 2 things.
(06-08-2014, 07:11 PM)shinra358 Wrote: [ -> ]Okay, and I responded:

"@Jheb, so you're saying that if you just implement it to the foreground, and I only use it for games, and I only play one game at a time, and I have a notepad document open and it is in the foreground, that I will still be able to play the game in the background while I look at the document that's in the foreground at the same time?

And what about having two games up to try to compare framedata, attack data, etc. between the 2 versions of a character?"


What you posted after seemed like you thought I was being a smart alleck or something. But those 2 questions were serious questions. You never answered them. All in all, I just wanted to know if what you were talking about would make me not be able to do the above 2 things.

Again, my lack of answer is not to be taken as rudeness or anger. Trust me, if I were angry id simply close my laptop and head down to the hotel bar. I simply either didn't see it or was too focused on answering other posts. To finally answer your questions though;

If you have two copies of an identical game open the both would be using the same profile anyway as they would be picked up as matching identical logic in the 'sense' code, so this is kind of moot. As for your notepad question the best way I can answer this is if you start typing does input go into the notepad? If so then notepad has stolen focus and this would cause you issues if you were to use it in that specific method, but this is the exception not the rule as people more commonly with run in windowed mode and have the notepad beside the game or have multiple monitors, wither way I still am not sure how notepad can appear in front of a game as unless you are in windowed mode (which you say you are not) directx typically takes exclusive access of that display and gets top layer priority. If you have a situation that behaves differently than 1: it will take testing on your end to see what will actually happen and 2: shame on that game developer...

Further clarification "that's in the foreground at the same time?" this simply is not possible, only one window can have focus at a time regardless what odd circumstances make it appear as otherwise, its like to objects occupying the same space at the same time kind of thing, simply not possible without collapsing the space time continuum.
Hey I have a question and I know this is a long shot and most likely falls under '3rd party messing up' but I figured I should at least ask for any kind of idea of what's going wrong with my setup.

First off, the ds4window tool works perfectly for me and finally allowed me to dump the cable when playing Dark Souls 2, so thank you for that! Now, the problem arises when I try to use it together with Nvidias Gamestream tech and stream it to a device running limelight (android or linux doesn't matter). The app launches steam big picture mode and all is well, the controller works ok until I eventually step into a game. Then the input from the controller becomes sporadic at best and eventually cuts out completely. The ds4windows window shows no change in controller status, it's just as as if nothing gets sent to the game except random events that may or may not briefly trigger a button press/depress or just 'holding it down'.

Any theories as to what happens here? Does the tool simply run out of available resources and gets bogged down fighting the nvidia streamer for priority? I wish I could tab out to look at task manager etc but limelight instantly crashes when you try to tab out of stream which halts the app right then and there. I did other tests to rule out other factors and the one thing that remains is that running ds4windows either tethered or bluetooth will cause controller input to disappear shortly after launching a game through the nvidia streamer/limelight.

I realize this is not really your problem but it can never hurt to ask for some insight. Smile

Cheers and thanks again for a great tool!
Yes, I have already stated that the game would be in windowed mode if I'm looking at a walkthrough. As for the framedata thing, one program could be the SF4 and another could be SSF4AE. Or one would be the game and the other would be the fan made game that one would be trying to get the data for. I did not say I was not in windowed mode. I gave an example of a setup with and without windowed mode. The full screen one would be the dual screen monitors comment and the windowed mode would be the windowed mode comment. And ppl have been using walkthroughs since gamefaqs or pdfs were invented so that is not too far fetched.

Whether notepad or browser, when looking at the walkthrough, it would be focused on and not just on top. As I'm typing here, I'm also playing a game (at the same time I'm putting inputs on the controller while grinding on Final Fantasy and firefox is in the foreground and I'm typing in it.

The comment I made about the pc/emu games earlier, I tested to make sure and I can still put inputs in the game that isn't focused on while the same inputs still go into the game that is focused on.
(06-08-2014, 07:44 PM)Telsak Wrote: [ -> ]Hey I have a question and I know this is a long shot and most likely falls under '3rd party messing up' but I figured I should at least ask for any kind of idea of what's going wrong with my setup.

First off, the ds4window tool works perfectly for me and finally allowed me to dump the cable when playing Dark Souls 2, so thank you for that! Now, the problem arises when I try to use it together with Nvidias Gamestream tech and stream it to a device running limelight (android or linux doesn't matter). The app launches steam big picture mode and all is well, the controller works ok until I eventually step into a game. Then the input from the controller becomes sporadic at best and eventually cuts out completely. The ds4windows window shows no change in controller status, it's just as as if nothing gets sent to the game except random events that may or may not briefly trigger a button press/depress or just 'holding it down'.

Any theories as to what happens here? Does the tool simply run out of available resources and gets bogged down fighting the nvidia streamer for priority? I wish I could tab out to look at task manager etc but limelight instantly crashes when you try to tab out of stream which halts the app right then and there. I did other tests to rule out other factors and the one thing that remains is that running ds4windows either tethered or bluetooth will cause controller input to disappear shortly after launching a game through the nvidia streamer/limelight.

I realize this is not really your problem but it can never hurt to ask for some insight. Smile

Cheers and thanks again for a great tool!

Im not familiar with limelight so I cannot comment too specifically, but I can say that there shouldn't be anything causing any type of 'bogg down', my first suggestion whenever hearing about controllers acting sporadically in certain situations is to make sure the "Hide DS4 Controller" option is checked. This keeps programs that cant differentiate between 2 controllers (due to poor programming) from seeing the DS4. My other question would be is the app capable of running without using the DS4Tool, ie just using the DS4 controller as a DS4 controller?
(06-08-2014, 07:49 PM)shinra358 Wrote: [ -> ]Yes, I have already stated that the game would be in windowed mode if I'm looking at a walkthrough. As for the framedata thing, one program could be the SF4 and another could be SSF4AE. Or one would be the game and the other would be the fan made game that one would be trying to get the data for. I did not say I was not in windowed mode. I gave an example of a setup with and without windowed mode. The dual screen one would be the dual screen monitors comment and the windowed mode would be the windowed mode comment. And ppl have been using walkthroughs since gamefaqs or pdfs were invented so that is not too far fetched.

You could still set both of them up to use the same profile, there is no correlation where each profile can only be assigned to one game, it could be assigned to both SF4 and SSF4AE. As for situations where you wish to be able to use another and have it maintain active focus while still using the controller in the BG, in this case if you were to use my program you would have to turn off auto profile and just set a single static profile as notepad would likely be what the app reports as active. But to an earlier comment that sometimes taskbar items steal focus, unless they are poorly coded they do not, they pop up with a higher Z order and sometimes fight with fullscreen DX games and flicker in, but they don't ever actually have focus so the app will not swap profiles in that case. Even when i'm watching movies in fullscreen my taskbar has a nasty habit of popping on top of my fullscreen video but it hasnt actually stolen focus once (that is unless i accidently click on it but then thats my fualt and not the apps).
It ran with the "hide ds4" option checked before btw.

Ok have done some more testing now:

Without the tool running I get controls in Big Picture Mode and I can launch my game.
Inside the game (Dark Souls 2) I have responsive controls, but they are horribly mapped and the the camera keeps spinning. No input lag of any kind.
Tried another controller title (FFXIV) and again no input lag but mappings are all messed up as you'd expect.

Both these were running with the limelight app when I tested this.

edit: Another quick check I ran ffxiv with the tool active, hide enabled and limelight and the controller randomly took off pressing 'down' without any prompt from me and then stopped responding. I noticed this before as well in Big Picture Mode where I somehow jumped into a trailer video and it would pause/play it 10times/second until I had to alt-f4 out of it.
(06-08-2014, 08:42 PM)Telsak Wrote: [ -> ]It ran with the "hide ds4" option checked before btw.

Ok have done some more testing now:

Without the tool running I get controls in Big Picture Mode and I can launch my game.
Inside the game (Dark Souls 2) I have responsive controls, but they are horribly mapped and the the camera keeps spinning. No input lag of any kind.
Tried another controller title (FFXIV) and again no input lag but mappings are all messed up as you'd expect.

Both these were running with the limelight app when I tested this.

Ill have to set up a test environment when I get home, from what I can tell though its a content streaming service that allows you to cloud game basically like OnLive but a local self hosted setup am I correct?
Correct, although there is a caveat and that is you need a Nvidia card that is in the 600series or higher. Basically, if you have GeForce Experience and can use Shadowplay to stream/record video on the fly you can use this. Limelight allows you to trick the Nvidia streaming service into thinking you have a Shield handheld device and stream the video to that.

I have only tried the ARM & Android versions of limelight, I suppose I could test Limelight PC on the second monitor and see how that runs. edit: It's impossible to run Limelight on the PC you're launching the game from, it throws an error if you try it. I suppose you could try it in a virtual box. Or try it on an android device if you have one of those.