Check for the existence of Z:/etc/os-release and parse it
Check for the steamDeck environment variables set by Steam
Check that the current account’s username is “deck”
Use assembly to directly perform a Linux syscall that would crash the application on Windows but not on Linux.
It still can’t guarantee that the system is a Steam Deck, but combining all the above is reliable enough to that it would be easier to write an assembly patch for the game than to spoof all of those checks to pass.
That being said: any developer who adds an achievement just for playing on a specific piece of hardware deserves to be kicked in the groin.
Z:/etc/os-releaseand parse itsteamDeckenvironment variables set by SteamIt still can’t guarantee that the system is a Steam Deck, but combining all the above is reliable enough to that it would be easier to write an assembly patch for the game than to spoof all of those checks to pass.
That being said: any developer who adds an achievement just for playing on a specific piece of hardware deserves to be kicked in the groin.
7000 achievements available, one for each specific RAM kit. 6344 of these achievements earned by 0 people.
Achievement: kicked developer in the groin.