Short version: switch to Desktop Mode, download the game, and add it to Steam as a non-Steam game. Ren'Py games usually have a native Linux build (the .sh file). For Windows-only games, force Proton in the game's compatibility settings. Then play from Game Mode like any Steam game.
Step by step
- Desktop Mode: hold the power button → Switch to Desktop.
- Download and unzip the game, for example into
~/Games/. - Add it to Steam: open Steam in Desktop Mode → Games → Add a Non-Steam Game → Browse → pick the game's
.sh(Linux) or.exe(Windows). - Windows-only game? In your library, right-click it → Properties → Compatibility → tick "Force the use of a specific Steam Play compatibility tool" and choose a Proton version.
- Back to Game Mode and launch it from your library.
Which build to use
| Engine | Best option on Deck |
|---|---|
| Ren'Py | Native Linux build (.sh); the Windows build with Proton also works |
| RPG Maker MV / MZ | Windows build with Proton |
| RPG Maker VX Ace and older | Windows build with Proton; may need extra runtime packages |
| Unity | Linux build if offered, otherwise Windows build with Proton |
Controls
- Most VNs only need clicks: use the right trackpad as a mouse and R2 as left-click.
- In Steam's controller settings, search community layouts for "Ren'Py" or "visual novel".
- Map rollback to a bumper and skip (Tab) to a back button.
Keep it private
Non-Steam games show their name in your library and can appear as "playing a non-Steam game" to friends. Rename the shortcut in Properties, and set your online status to Invisible or Offline if you prefer.
Saves for Ren'Py games are in ~/.renpy/. How to back them up.
FAQ
Can the Steam Deck play adult games not on Steam?
Yes. Add them as non-Steam games from Desktop Mode. Linux builds run natively, and Windows builds run through Proton.
Do Ren'Py games work on Steam Deck?
Yes, very well. Most Ren'Py downloads include a Linux launcher (.sh) that runs natively on the Deck.
Will friends see I'm playing an adult game?
They may see the shortcut's name. Rename the non-Steam shortcut and set your status to Invisible or Offline to keep it private.