Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] Sunshine support #4

Closed
eVenent opened this issue Sep 2, 2024 · 6 comments
Closed

[Feature Request] Sunshine support #4

eVenent opened this issue Sep 2, 2024 · 6 comments
Assignees
Labels
enhancement New feature or request

Comments

@eVenent
Copy link

eVenent commented Sep 2, 2024

Hello,

I saw in other recent DS4Windows forks that Sunshine support is one of the most important commit. Maybe it's worth to add some checkbox, where users can enable optional Sunshine support like they have in forks below:

Shev0@2dbac2b
BotAlejandro@09913e7
ragestaker21@9abf11c
galax20002@a718f3a

Related to:
Ryochan7#3152

@schmaldeo
Copy link
Owner

schmaldeo commented Sep 2, 2024

Should be released tomorrow or maybe even today in the evening :)

@schmaldeo
Copy link
Owner

schmaldeo commented Sep 2, 2024

The logic used in all those forks is faulty, when you reconnect a physical (EDIT: even with Sunshine virtual controller the behaviour is the same) controller, the program will just keep detecting new devices, e.g.:

Normal behaviour:

2024-09-02.17-54-07.mp4

Behaviour with the faulty code:

2024-09-02.17-53-04.mp4

I will investigate and try making it work properly but it might take longer than previously anticipated.

@schmaldeo schmaldeo added the enhancement New feature or request label Sep 2, 2024
@schmaldeo schmaldeo self-assigned this Sep 2, 2024
@schmaldeo
Copy link
Owner

schmaldeo commented Sep 3, 2024

A temporary solution that I will be adding to the newest beta (available here) is a 5-second detection cooldown which makes the program ignore the virtual devices that appear after the real one, however there are 2 tradeoffs:

  1. 2 or more devices cannot connect at once, you need to wait for at least 5 seconds before connecting another controller
  2. If you connected a controller during that 5 second cooldown, you will need to disconnect all connected devices and reconnect them one by one, respecting the cooldown.

This solution is temporary and should be ultimately replaced by code that actually detects whether or not the detected device should be added to the controllers list.

@schmaldeo
Copy link
Owner

Having tried the code on my laptop, I found out that I cannot replicate the behaviour from #4 (comment), therefore I've decided to add that code as the default Moonlight support and kept #4 (comment) as an optional, Advanced Support.
I've created a doc explaining the differences, and released a new beta version with these features.

If there are no bugs reported related this feature this week, I'll close the issue.

@Phantom2332
Copy link

Phantom2332 commented Sep 10, 2024

Advanced mode working perfectly here!

"Simple mode" gives me 8 controllers issue as expected in the documentation

@markandgo
Copy link

markandgo commented Sep 30, 2024

Advanced mode working perfectly here!

"Simple mode" gives me 8 controllers issue as expected in the documentation

Working great with a hacked Nintendo Switch and motion control. Simple mode gave me 2 extra virtual controllers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants