Go, Go, Godot!
  • 0

Running Godot Games on Steam Deck

August 1, 2022

Right after I got my Steam Deck, I wanted to know how hard it is to get a Godot game running on it. What’s the developer experience for someone who’s stepping through this for the first time? It was really easy to do, so I’m sharing this here, whether you’re following along or like to live vicariously.

Developing vs Publishing

It’s worth noting that this is not the same as getting the game published on Steam. I’m just using a Godot 4 tilemap proof-of-concept code doodle with some purchased assets. Nothing to write home about. I’m only taking a quick peek at this from a development feedback perspective:

  • I have a Steam Deck
  • I have Godot and made something.
  • I’d like to see my Godot thing running on the actual Steam Deck hardware.

If you’re developing a game, it’s incredibly helpful to get feedback for the gaming experience from the actual, physical device. At a high level, a Steam Deck roughly “works the same as a controller.” But it’s important to get a feel for the minutiae. Are the controls mapped to the right buttons? Is the text too small? Is the camera shake effect too much? Things hit differently when you’re looking at a 7″ screen, not a 35″ monitor, a large TV, or something even bigger. Getting feedback early and often is valuable during development.

What’s the process

In a nutshell, your game should be compiled/exported for Linux (the native Steam Deck OS), and then, per the official Steamworks instructions, use the SteamOS Devkit Client to “package it up” and install it to your Steam Deck as a playable title.

It’s easy and doesn’t take long, depending on your Internet speed.

You’ll need:

  • The Godot Engine along with the Godot Export templates, if you don’t have them already. They’re 500MB+ and may take some time depending on your connection. So if you’re planning on trying this out, kick off the download for the export templates first. I’ve tested both Godot 3.5-rc7 and Godot 4-alpha12/13.
    • Downloads for Godot 3.4.4
    • Downloads for Godot 3.5-rc7
    • Downloads for Godot 4-alpha13
  • Download the SteamOS Devkit Client, directly from Steam.
  • Set your game to run in full-screen at a resolution of 1280×800 (WXGA, an aspect ratio of 16:10 ).
  • Export your Godot Game for Linux ( Linux/X11 in the UI)

Switch the Steam Deck into Developer / Devkit mode

The Steam Deck settings experience feels almost Android-like. Go to Settings and enable Developer mode, then scroll down to the Development Kit section, and click Pair new host

SteamOS Devkit Client

Run the SteamOS Devkit Client, which can be done either directly in Steam or from the command line.

I’m running it from the command line because I’m gonna leave it open for days, so I can quickly reopen it, and so it doesn’t tie up my Steam client.

gray@Battlestation MINGW64 /d/SteamLibrary/steamapps/common/SteamOSDevkitClient
$ ./windows-client/devkit-gui.exe
Setting PYSDL2_DLL_PATH: 'D:\\SteamLibrary\\steamapps\\common\\SteamOSDevkitClient\\windows-client\\lib\\devkit_client\\gui2'

This is what the thing looks like:

Enter the Steam Deck’s IP. Once confirmed, your computer is connected / the devkit is registered:

Head over to the Title Upload tab, you can configure your game.

You create a configuration, specify the source directory on your computer, and the command to start the game.

Once you click Upload the tool will bundle up your files (usually that’s just the game.x86_64 and the game.pck ), uploads the package to the Steam Deck, and create a non-steam game called “devkit: your game name“

My two test installations. The cleverly named arpg is a Godot 4 project, and the even more descriptive arpg_game one is Godot 3.5 project:

launch them like any other title and load right up.

Seeing your game in action

It’s quite thrilling to see your game in action on a real device. Probably even more so if it were not just a thrown together barely there proof of concept.

All in all, this is quite exciting. This stuff used to be reserved for console developers that had to sign Non-disclosure agreements (NDAs) with game console companies.

Yep, that’s a portion of a Godot 4 TileMap.

I didn’t add any UI, or handling for Godot to exit the game. During development on PC, I just press F8, but that doesn’t help with an exported game on the Steam Deck. The Steam button (to the left of the screen) has a menu that will let you end the game, even if the game doesn’t provide a way to exit.

godotSteam Deck
Posted in Godot, Steam.
Share
PreviousGodot Engine on the Steam Deck – Developing games on the go?
NextMy Steam Deck has arrived!

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Related Posts

  • February 6, 2024

    Inventory System v1.4.1 available

    This small update addresses inventory serialization to persist the allow_gaps and expiration_multiplier settings. These were previously overlooked.

  • Godot Game Engine Logo
    March 1, 2023

    Godot Engine 4.0 released!

    Godot Engine 4.0 has been released per official announcement. With version 4.0, Godot has gone through “3+ years of breaking and rebuilding from the ground up, a complete core overhaul and a full engine rewrite, through 17 alphas, 17 betas and 6 release candidates“. The announcement post is credited to “2000+ Godot contributors.” It’s a …

  • July 6, 2023

    Making breakable objects in Godot

    Here’s a tutorial on how to create breakable objects in Blender and Godot. It covers the steps needed to design and implement breakable objects, including scripting and using physics properties to make objects break apart into smaller pieces upon collision or other interactions.

  • October 24, 2024

    Inventory System v1.17 available

    A new version of the Inventory System is available. This release includes various refinements to existing systems to flesh out more combat-related functionality. Inventory Ammo Provider The GGAmmoProvider component is responsible for providing ammunition to equipped weapons. Previously, it only had a “simple” strategy: Creating ammunition out of thin air. The new GGAmmoProviderInventoryStrategy pulls ammunition …

    © 2026 GoGoGodot.io. All rights reserved.