Closed JustArchi closed 1 year ago
@shigutso This looks like a bug to me. ASF currently does not check if we can play the game since, as stated in the FAQ, it used to work automagically just fine and backend didn't deny the request.
Perhaps this mechanism changed, maybe recently, maybe a while ago and nobody reported it. In any case, Steam client somehow knows if we can play the game or not in currently connected instance, ASF needs the same logic, which currently simply isn't available.
This will take a while, probably longer while, since it requires some reverse-engineering of finding out how Steam determines that first, and only then coding logic for it. I recommend you to use ibadd
command to blacklist that appID
for now - you can find more info about this on the wiki.
Thanks for the quick reply. I will try connecting to a temporary remote machine to drop these cards for this specific game. Let me know if you need more info from my side.
I'll most likely need a verification that the method I implement works as it should by determining your road 96 is unavailable to idle, but don't worry about that, not now since I don't have solution yet, neither time at the moment to dig into this.
If anybody is interested in digging into this for me, be my guest, I don't have much time lately for reverse-engineering matters.
@shigutso I'll need your help to go forward with this issue.
Please enable debug mode in ASF by setting Debug
global config property to true
, you can read more about debug mode on the wiki.
Afterwards, launch ASF with the affected (region locked) bot instance, let it log in and find stuff to idle, once it detects your faulty app and tries to idle it (and fails), simply close the app. If you don't have that game available for idling anymore, that's not a problem at this point, simply wait for it to start idling something else or for it to state that nothing is available to idle and then you can close the app.
In ASF directory there will be newly-generated debug
directory, pack this whole folder to a zip
file, then send to my e-mail address: JustArchi[at]JustArchi[dot]net. Please note that this folder and therefore zip file contains sensitive information, as stated on the wiki, therefore ensure you send it privately and NOT attach e.g. to this GitHub issue.
This will allow me to dig more into the data Steam sent you and try to guess what it uses to claim that app is restricted, as I have no access to region restricted apps myself.
Hi, sorry for the super late reply.
I got 2 more games with the same issue. I used "GamesPlayedWhileIdle" to force them to idle even without cards to drop. The following games are: https://store.steampowered.com/app/1577120/The_Quarry/ https://store.steampowered.com/app/1466640/Road_96/ https://store.steampowered.com/app/1286680/Tiny_Tinas_Wonderlands/
I sent you an email with the debug zip, as requested.
Good news is that after some web searches looks like region locked games on Steam are "unlocked" after 3 months, probably just to prevent people from abusing the regional prices of some countries. So eventually ASF would be able to drop the cards.
Alright, thanks a lot for your help, this took me extraordinary effort to code it in, but with the details you provided (especially debug zip), I believe I got all the parts right and ASF is now able to detect the situation above and gracefully skip apps that we're not allowed to idle at this point.
Whether it works properly or not, we'll find out, it did work properly when I faked your situation with your provided debug logs, so I'm optimistic about that - introduced firstly in V5.4.13.3.
Discussed in https://github.com/JustArchiNET/ArchiSteamFarm/discussions/2979