ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.27k stars 174 forks source link

Discovery queue customization #4500

Closed antonkurkin closed 5 years ago

antonkurkin commented 8 years ago

Your system information

There is new "Customize your queue" button on discovery queue page http://store.steampowered.com/explore/ and in customization menu there is no OS filtering. After some changes in there my queue is now full of windows-only titles and I can't get back to what it was. I'm not sure how I did filtering for linux support in the first place. I believe there was another customization menu some time before that

ragsu commented 8 years ago

I am having the same kind of issue. I can't filter out the non-linux games at all anymore. Been that way for about over a week. There was already some others discussing about it at the forums: http://steamcommunity.com/app/221410/discussions/0/358415206081937798/

magiruuvelvet commented 8 years ago

This "new" bug is very annoying. Since the queue customization feature, I'm only seeing windows-only games in my queue ;( The discover queue is now literally garbage. What did you guys do that the OS filter broke so hard? Please fix ASAP, thank you.

soverton commented 8 years ago

Same problem here. Is there any sort of work-around? Discovery queue is useless to me as it stands now.

antonkurkin commented 8 years ago

And it looks like "Popular New Releases"/"Top Sellers"/"Upcoming"/"Specials" default filter is now set to Windows+Mac. Yep, linux/steamOS isn't even selected in "See more", not that it really matters of course

oprypin commented 8 years ago

Some people say the queue still works fine for them (they see Linux games). It is possible that the queue shows only Windows games to people who had previously entirely depleted the queue.

Not much else to add, but I will note that this is a big problem for me.

isage commented 8 years ago

It starts showing Windows-only games after customization. Resetting filters afterwards does not fix it.

tesfabpel commented 8 years ago

I think it is a store bug, since it affects me on the browser too... Seems like when you customize your Discovery Queue it will clear the Linux / SteamOS filter that likely was there before...

benopotamus commented 8 years ago

I have this problem too. It does still showing Linux games, but it isn't showing only Linux games anymore.

MegaMissingno commented 8 years ago

The queue used to only show me Linux games. This is a pretty bad regression.

eNTi commented 8 years ago

please fix this. the queue is basically useless now.

fuxoft commented 8 years ago

Seconding this. I have ONLY Linux and 95% of my queues are now non-Linux games, i.e. the queues are useless to me. Before, I was shown only Linux games. Now I have no idea where to even configure that I have Linux...?

tesfabpel commented 8 years ago

I've tried going here: https://store.steampowered.com/account/preferences/ and I found there is a section called something like "Platform settings" where you can select the platforms you're interested in... (I didn't have any platform selected...) Anyway nothing changed yet... I suppose I have to wait a little bit (if it works :P)...

fuxoft commented 8 years ago

tesfabfel, I tried that, selected Linux only and now, 12 hours later, I am still seeing Windows games everywhere... :(

antonkurkin commented 8 years ago

I found "Browse All New Releases" button today on the store's main page. There is "Your New Release Queue" and it is actually linux-only (at least for me). Queue on the store's main page still doesn't filter by OS though.

philipl commented 8 years ago

And as soon as you customize it, you're back to seeing windows/mac games.

fuxoft commented 8 years ago

Is this even acknowledged as a bug? Or are we doing something wrong?

antonkurkin commented 8 years ago

Actually, I believe it's more of feature request (or a bug if you like it more) for steam store (web page) than real bug of steam client (application) for linux. I only thought about it after I posted the issue. But this report was tagged as "reviewed" so it should have passed some perfunctory check.

oprypin commented 8 years ago

I hate this so much.

Every time someone says "Oh cool, such and such game is now on Linux!", all I can think of is "Damn you Valve, I used to have a reliable way to find out about these"

Not to mention having to wade through the "early access" and even completely unaccessible games in the "new releases" section.

at46 commented 8 years ago

@BlaXpirit You can check https://steamdb.info/linux/ for new games with Linux support.

oprypin commented 8 years ago

@at46 Yes, except someone has to try out the games and add them to the list first (as I often do). And there still are "Game possibly works: 621".

Also, some partially working games never end up there.

Not reliable, unfortunately.

aaronfranke commented 8 years ago

I have the same issue, the OS filter settings do not work, and the Discovery queue is affected as well. I can see non-Linux games even after activating the setting, as seen here: https://imgur.com/a/2f1iQ

ememoho commented 8 years ago

TL;DR - An illustrated guide to re-enable OS filters for your account: https://imgur.com/a/kYYbd

Since this issue has, apparently, only hit those curious enough to try out the new filtering system, and did not affect other users (anecdotal evidence), I figured the OS-filtering capabilities were still intact on the backend. So I've poked around a bit with the Network Console in the Firefox's WebDev tools, and here's what I discovered.

Clicking the "Customize your queue" button sends a GET http://store.steampowered.com/explore/discoveryqueuesettings

In response to this, Steam sends a JSON wherein alongside the html code for the settings popup window and popular tags, you can find the "Settings" object with the current DQ options:

"settings": {
    "os_win": null,
    "os_mac": null,
    "os_linux": null,
    "full_controller_support": null,
    "native_steam_controller": null,
    "include_coming_soon": 0,
    "excluded_tagids": [],
    "exclude_early_access": 1,
    "exclude_videos": null,
    "exclude_software": 1
  }

Note how the os_ settings are all null-ed out. This is because when you click "OK" in the customization window, a POST http://store.steampowered.com/explore/updatediscoveryqueuesettings request goes out with the following form data:

sessionid: xxxxxxxxxxxxxxxxxxxxxxxx
settings: {"exclude_early_access":true,"exclude_software":true,"include_coming_soon":true,"excluded_tagids":[]}"
queuetype: 0

A much smaller set of parameters is sent when you update the settings.

Next thing I've tried is the "Edit and Resend" button in the Network Console, and my resulting request looked like this: POST http://store.steampowered.com/explore/updatediscoveryqueuesettings Request body: sessionid=xxxxxxxxxxxxxxxxxxxxxxxx&settings=%7b%22exclude_early_access%22%3atrue%2c%22exclude_software%22%3atrue%2c%22include_coming_soon%22%3atrue%2c%22excluded_tagids%22%3a%5b%5d%2c%22os_win%22%3a0%2c%22os_mac%22%3a0%2c%22os_linux%22%3a1%7d&queuetype=0 which is the same set with the addition of my preferred OS settings (win:0, mac:0, linux:1).

And Voila! The settings are back. Refresh the Discovery Queue page, and enjoy the relevant results.

This is definitely something that should be fixed, and fixed on the Store's frontend (not specific to steam-for-linux), but in case anyone is looking for a workaround - look no further.

magiruuvelvet commented 8 years ago

@ememoho The POST request worked for me, and I finally see Linux games again in my discovery queue. Thanks for this awesome finding :heart:

Valve, PLEASE FIX ASAP! Thanks

For reference this were the settings I sent: settings=%7b%22exclude_early_access%22%3afalse%2c%22exclude_software%22%3atrue%2c%22include_coming_soon%22%3atrue%2c%22excluded_tagids%22%3a%5b%5d%2c%22os_win%22%3a0%2c%22os_mac%22%3a0%2c%22os_linux%22%3a1%7d

Suppen commented 8 years ago

Beautiful! Worked for me too! Should be very easy to fix for Valve. When I contacted Steam Support about it a few months ago, they said "We're looking into it"

oprypin commented 8 years ago

Here is an easier way to apply this workaround (no need to fiddle with percent-encoded data).

Go to any page on the Steam Store, open the browser's JS console (usually F12), paste the code, customize it if needed, press Enter:

jQuery.post('//store.steampowered.com/explore/updatediscoveryqueuesettings', {
    sessionid: g_sessionID, queuetype: 0,
    settings: JSON.stringify({
        exclude_early_access: true, exclude_software: true,
        exclude_videos: true, include_coming_soon: false,
        excluded_tagids: [],
        os_win: 0, os_mac: 0, os_linux: 1
    })
})
tesfabpel commented 8 years ago

@Plagman @ememoho has found the solution... The fix should be very simple to implement on the frontend.

fuxoft commented 8 years ago

@BlaXpirit Clarification: It does not work on ANY page in the store. E.g. the game profile pages don't contain jQuery.

ragsu commented 8 years ago

I get "bad request" when doing this. I tried many times already and it does not change. For some reason my edited POST 0.04KB next to the original 0.89KB. What am I doing wrong? Thank you @ememoho for your great work!

Suppen commented 8 years ago

I also got "400 Bad request" and "401 Not authorized" a few times. Figured out I was URL-encoding too much. Make sure you don't URL-encode the ='s and &'s

ragsu commented 8 years ago

Apparently I had removed the queuetype accidentally so that was fixed and I got the change through. However even if the options changed, I see no difference in the discovery queue nor the store. @BlaXpirit where do I paste this code in the console? I want to try out this way too.

RomanHargrave commented 8 years ago

It seams that the os_ queue settings have silently been "fixed" as it were, and no longer affect the queue.

Back to receiving a windfall of Windows-only unity asset flips and boring overhyped games.

Suppen commented 8 years ago

@RomanHargrave Looks like you are right. I got windows-only bullcrap in my queue again...

Suppen commented 8 years ago

I still get {os_win: 0, os_mac: 0, os_linux: 1} in the JSON response to the "customize" HTTP request, so now it is a backend problem too

Suppen commented 8 years ago

{os_win: 0, os_mac: 0, os_linux: 1} appears to no longer be processed on the server if I modify the POST request as described earlier in this thread.

After changing my customization, it now says {os_win: null, os_mac: null, os_linux: null}, even after going through the above procedure

aaronfranke commented 8 years ago

At this point Valve simply doesn't care anymore about Linux gaming. This is completely pathetic. Not only this, but also the lack of Vive/SteamVR support, the lack of Alien Swarm and Left4Dead 1 on Linux, the abundant delay or cancellation of Valve-sponsored Linux ports of games, and the complete lack of any media center features such as Netflix on SteamOS.

ememoho commented 8 years ago

@RomanHargrave That is odd. My Discovery queue has been Linux-friendly since POSTing the OS filters. Just now I've clicked through 12 Linux-compatible items, generated another one, and it's all good again. Is it the same within the Steam client and a generic web browser?

Are you sure you have not exhausted the whole SteamOS/Linux library? In one of the recent seasonal sales, Steam was giving away trading cards for completing discovery queues (limited to 3 per day), and it automatically threw 3 cards at me, because there simply was not enough non-viewed offers in the catalogue (with my OS preferences applied) to populate a queue. They could have possibly tweaked that bit.

@Suppen Note: If you save the customization settings via the webpage itself, you reset the "hidden" filters.

pwcjr commented 8 years ago

I abandoned Steam discovery queues a bit ago after noticing them full of non-Linux games, but after finding this issue, I gave the POST described above a shot. No dice, unfortunately. I still see almost no Linux-compatible games via browser or Steam Linux client. le sigh

PVince81 commented 8 years ago

Strange thing. For me the discovery queue was always Linux only for more than a year. It's only since a few days, possibly with the start of the Halloween sale that it started to show only Windows titles. I thought that maybe they added a special override because the queue only showed Halloween sale title. But now that the sale is over it still only stuck on non-Linux titles.

This is sad because the queue used to be quite useful for discovering new titles.

This is on build from Oct 13th 2016 at 00:48:25. Running on openSUSE Tumbleweed.

benopotamus commented 8 years ago

The POST method worked for me (I did it early October). I just checked and everything on the store front page is Linux(SteamOS) compatiable.

RomanHargrave commented 8 years ago

Odd. I wouldn't be surprise at this point if three different variations of the store backend are going around right now.

ragsu commented 8 years ago

After I did the POST fix it took a few days and the steam store was fixed. Now all I see is Linux games.

stratus-ss commented 8 years ago

I usually only use the steam client... this should be configurable in the client itself

I did the post, I got the response and I see os_linux:1 but I am still getting windows only games... guess it didnt work for me

kisak-valve commented 5 years ago

Hello, is anyone still seeing an issue with the discovery queue and the desired platforms set in your account's preferences?

at46 commented 5 years ago

Everything is fine for me with the discovery queue.

oprypin commented 5 years ago

The behavior of the discovery queue definitely went back to its prior state at some point, and this particular issue is gone.

kisak-valve commented 5 years ago

Thanks for the feedback, closing as fixed some time ago.