-
Notifications
You must be signed in to change notification settings - Fork 73
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] Discord Rich Presence #511
Comments
Hi, thanks for the feedback and the suggestion. I barely use discord, but this looks easy to implement and also very useful for many people, I have some questions, though:
|
Alternatively, I just did some more digging, and found this project: wine-discord-ipc-bridge. It seems to be more up to date, though it still seems to share the quirk of sometimes showing the wrong app name. The problem with this one is that the rpc-bridge seems to linger so even though I've closed the game, Steam still thinks the game is still running, requiring manual Stop command from Steam. Overall, both project seems to work, but there are quirks that has to be accounted for. If this gets implemented, I'll make sure to make a note of it for the Wiki page. |
Thank you for elaborating. I'm confident that an automatic stop can be added to steamtinkerlaunch, so this likely won't be an issue. Seems like everything is clarified and you're willing to contribute the wiki (it doesn't have to be big, just a basic description what it does and how to use/enable it in steamtinkerlaunch), so I'll accept the feature request. 👍 (likely won't happen too soon though) |
I think either one is fine, whichever works better for you. The wine-discord-ipc-bridge seems to account for Discord Flatpak (and planning for Discord Snap as well, from the look of it) as well, so I think that is the better option. For the wiki, I'll prepare it once I could see how it's going to be implemented (I'd assume it's going to be a toggle in the per-game and global menu). Just give me a ping here or something. Thanks for the consideration! |
Just tested the commit from yesterday by installing discord via flatpak, commenting in the line The No idea where to go from here :) |
oh, sorry forgot to mention that the automatic download is not implemented yet as well. |
"complete" so far (see above commits). please test. |
I'm pretty new to github, do I just I'll try to test it today or tomorrow, but it's been kinda a headache today because my govt decided to ban Steam. |
and then a this should just work in the most cases, but it depends a bit on how you installed it previously (package management? - if you use arch for example there is also a steamtinkerlaunch-git package, which you could use - using the package management instead of a manual install is always, for every program the better and safer choice) Oh my, sorry to hear that. I hope you find a stable workaround quickly... :( |
The stable workaround is a VPN, which usually works, but Surfshark isn't exactly great or the most stable, and that applies double on Linux rn. But it's better than plain dnscrypt, which gets around the issue, but sometimes fails requiring manual retries (though unlike VPN, it is free with no risk). Sucks, but good enough is good. Hopefully it gets sorted out in the next few days. Testing the WDIB on a freshly installed Manjaro with the steamtinkerlaunch-git AUR package and Discord Flatpak, the pipe-server did start: But Discord didn't register any games. Tested with natively installed vanilla Discord, and the result is this: sometimes it goes from and as can be seen by the history, it seems to register as a confirmed game as well. I don't know how to make it consistent, but it seems to work 50-80% of the time? So I guess we can just add that disclaimer in the wiki page and note that the user can at least edit the game name manually because at least a game IS detected by the Discord client. That said, tested with both Discord Flatpak and Native, the game wouldn't run until I close the pipe-server terminal first. I don't know if that pipe-server terminal output affects anything, but it does work best when I close it as fast as I can. I'm not sure how you'd go about the Discord Flatpak, which is supposed to work, both by your testing and upstream release. I tried it both before and after doing the symlink, but it didn't work? Is there a flatseal/flatpak overried I'm supposed to do on Discord Flatpak? I can confirm that the symlink doesn't affect Discord Native, though. Nor does betterdiscord seems to affect anything. |
this is weird. No idea what else could be done, I don't use discord generally. |
Alright, I tested it on my main gaming machine, a Garuda Linux (also Arch-based) older install on my PC. The behavior is almost the same -- works on normal Discord, doesn't work on Discord flatpak -- only the game managed to launch without requiring me to close the WIDB pipe terminal first. I have stl set as a compatibility tools here, though, where on the Manjaro one I use it through the launch options. Also, maybe it's because I have Steam installed as a normal package? Maybe to use the Flatpak Discord Rich Presence I have to also run Flatpak Steam? I'll just attach the logs that I got to not clutter the thread, but please tell me if there's something else you'd want to know or for me to try -- I'll try it as soon as I have some time. 453480_flatpak.log |
Thanks for testing. I do not use Steam Flatpak here, so flatpak discord seems to work without Steam Flatpak (or is "Flatpak Discord Rich Presence" a different program/discord plugin which needs to be installed? I seriously do not know that stuff :)) I still wonder why you need to close the WIDB pipe terminal - it should start forked in the background and the game should start at the same time. your steamtinkerlaunch_flatpak.log is the log of steam starting "d3ddriverquery64.exe -d3d12" (it occasionally does that - for example when starting steam), so doesn't show anything related, and steamtinkerlaunch_native.log looks normal. I'll try to test a bit more myself, but I do not really have a clue what it does or where it does it :D |
Just started Grip again with WIDB enabled, but this time using native discord instead of the flatpak. |
Alright, it's weekend and I can do some testing. I'll try to test it on a clean Fedora and Ubuntu VM as well. Are there something in particular you want me check? Maybe some of the journalctl? I'll send you the Reddit PM now, though I did tested it with a few different games. On my main Garuda (Arch-based) PC, using WIDB creates two issues for a while:
I said for a while, because I disabled GameMode and FSR on the settings page, and now I can't reproduce it. The WIDB terminal output is still the same though, but overall it seems to work fine, now, barring Flatpak. Could the WIDB taking the wrong sockets or too much sockets? One thing that's a commonality between my Garuda PC and Manjaro Laptop is that they're both KDE, and I think they both use pipewire, so maybe it's the way the session is set up between either Garuda, Manjaro, KDE, or WirePlumber. Here's my system details for the PC one, if that matters: System Information
I did caught a different issue, though, and that's if you have CheatEngine enabled, Discord says I'm playing Cheat Engine 7.2, most likely because it loads before the game's loaded. At this point, maybe we should just put in the wiki, a note that WIDB is experimental and asking people to report their issues? |
Nah, there's nothing special to test, but I'd just like to see at least one game where the steamtinkerlaunch implementation is functional (so you can enable the option and get WDIB running automatically on game launch). As it seems to do what it is supposed to do (so far) using both discord native and discord flatpak here, I'd assume that your flatpak "problem" is not steamtinkerlaunch related. What do you think? Thanks for the CheatEngine glitch. I'll see if this is fixable easily. An experimental note in the wiki is a good idea, but I doubt that there can be done much from steamtinkerlaunch side, so I'd leave out the report issues part (else issues might be reported which should be reported on WIDB side). |
Yeah, seems about right. I've tested with GRIP, and it does function correctly with GRIP. What the WDIB cannot do seems to be help with flatpak Discord if the game itself doesn't use I'll make sure to note the relevant caveats in the Wiki page. Will stl be able to download the WIDB automatically, or will that remain manual for now? On that note, is there a place to discuss things or asks questions that aren't on Github Issues? |
Yeah, until nothing dramatically changes on the WDIB project page, steamtinkerlaunch will always download the latest version automatically. Until they are steamtinkerlaunch related, you could always open a discussion on r/SteamTinkerLaunch |
Alright, I've submitted the WDIB wiki page. Please check and tell me if there's any issues. If there's not, I'll add it to the wiki's index page tomorrow -- should be in the Tools section, right? |
Wow, great wiki! Thanks a lot for the contribution! 👍 |
Hi, first, I want to thank you for the amazing tool. Recently I found this guide on how to get Discord Rich Presence working on Linux, however, the guide says that it has to be done manually per game. I simply think that steamtinkerlaunch would be the place that would make sense to automate its installation, as a global toggle of some sort.
I'm not sure if this is the right place to make this sort of request or even within the scope of stl, but I hope that it could be considered, thank you for your time.
The text was updated successfully, but these errors were encountered: