-
-
Notifications
You must be signed in to change notification settings - Fork 41
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
Link to specific Are We Anti-Cheat yet page #346
Comments
This one isn't that easy as we would need to determine how AWACY creates the urls from the game title. We could look it up in the source code, but it is subject to change.
ProtonUp-Qt is actually doing this, but only if the AWACY status is known. If it is unknown, it will just open the page without searching: ProtonUp-Qt/pupgui2/pupgui2gamelistdialog.py Lines 166 to 167 in c834be5
Is there any game which has an entry on AWACY, but ProtonUp-Qt shows a question mark and won't open the page with a search term? Please let me know. Otherwise, we can close this issue. I guess there are also the options of (a) not opening the URL at all if the status is unknown and (b) opening the URL with search parameters anyway, even if the status is unknown. But I think option a would make it inconsistent and option b gives an empty page which looks like an issue occured. This way the users can manually search for the game if they are unsure. |
The URL for the page is built based on the {
"url": "",
"name": "Halo: The Master Chief Collection",
"logo": "",
"native": false,
"status": "Supported",
"reference": "",
"anticheats": [
"Easy Anti-Cheat"
],
"notes": [
[],
[]
],
"storeIds": {
},
"slug": "halo-the-master-chief-collection",
"dateChanged": "2024-01-19T04:40:56.000Z" For MCC, its page is This JSON is downloaded by ProtonUp-Qt already, and for anyone unaware, is publicly available at (and retrieved by ProtonUp-Qt from) AreWeAntiCheatYet's GitHub repository, in the file
I think this is the ideal solution. I agree that an empty page may look strange, but that's not really ProtonUp-Qt's issue. Imo upstream can always change the page layout. If a user were to manually visit this page they would have the same experience, so the ball isn't really in our court here so-to-speak, and it may also not be as big of a problem as we're anticipating if the AWACY folks haven't had any issues yet :-) |
The question now becomes, if we are going forward with this, how best to store this. One solution I thought of is, we could modify Although, if we're going with this dictionary approach, we're essentially mapping elements from the AreWeAntiCheatYet |
Ah, I wasn't aware of that. Should be possible to store the slug inside SteamApp (
Hmm, yeah. I guess you're right about that users manually entering the details have the same issue.
In theory we could add another (data)class for storing awacy info. That could also be adopted by LutrisGame and HeroicGame.
Yeah, I agree that dicts are not clean (at all). I would go for a dataclass then. Maybe like that: # datastructues.py
@dataclass
class AWACYInfo:
""" Data class to store game-specific information from areweanticheatyet.com's games.json """
status: AWACYStatus
slug: str
class SteamApp:
...
awacy_info: AWACYInfo
# steamutil.py
def update_steamapp_awacystatus(steamapp_list: List[SteamApp]) -> List[SteamApp]:
...
gm = {g.get('name') : g for g in json.load(f)}
status = ...
slug = g[game_name].get('slug', '')
app.awacy_info = AwacyInfo(status, slug) |
A dataclass that represents the AWACY object sounds like a good solution to me :-) Better to map it onto a dataclass than a dict. I guess then each SteamApp would have some AWACY info as a dataclass, and it would contain our I won't be available to tackle this but this sounds like a good enhancement and I hope I was able to help 😄 |
Is your feature request related to a problem? Please describe.
On show game list double clicking the anticheat icon will open https://areweanticheatyet.com/?search=&sortOrder=&sortBy=
Describe the solution you'd like
It could/should open the site's specific page, either by direct URL (https://areweanticheatyet.com/game/team-fortress-2), though I'm not sure on the exact way they're escaping titles to make them, or just by using the search query string (https://areweanticheatyet.com/?search=Team+Fortress+2)
The text was updated successfully, but these errors were encountered: