Godot Engine on the Steam Deck – Developing games on the go?
Once I found out about the Steam Deck’s Desktop Mode, it got even more interesting.
Steam Deck’s Gaming Mode vs Desktop Mode
You see, the Steam Deck defaults to an analog of Big Picture mode on PC. It runs full screen in “Steam Deck gaming console” mode. But underneath all that is a Linux system (runs Arch, btw), and it comes with a desktop environment as well. To access it, hold down the Steam Deck Power button, and it will give you the Power menu:
A tap on Switch to Desktop, and Steam shuts down, and a more Linux-y window manager pops up:
At this point, only Steam Deck’s touchpads work. The right touchpad controls the mouse pointer and the left button, and the left touchpad acts as the right mouse button when pressed. There doesn’t seem to be any way to enter characters with the Steam Deck alone. Well, there may be, but it’ll probably require installing packages from the Linux distribution ecosystem.
Desktop Mode needs a keyboard and mouse
If you really want to interact with this thing, you need a keyboard, and ideally a mouse. And since the Steam Deck only has a USB-C connector, you’ll need to find a way to connect your (probably) USB Type A keyboard and mouse to that.
In my case, I’m using a USB-C male to USB Type A female adapter that came with a Nexus or Pixel phone, and I’m plugging in a Logitech Touch TV Keyboard.
I used to use these to control Media Center PCs, but those have all been replaced by Chromecasts.
Let’s get Godot running. First, we’ll need to download and extract it:
Launch the extracted Godot executable:
And look, it’s running.
With this, it’s possible to create games directly on the Steam Deck. It’s not the most practical thing, but it could work in a pinch.
The main issue is powering/charging the Steam Deck while using it. It probably needs a powered USB-C hub, so it can deliver power along with supporting additional peripherals.
A new version of the Inventory System is available with more multiplayer-related features. The Multiplayer Interaction Demo can now run in multiple modes, through two separate implementations of the Character scene: The simple character scene leverages the MultiplayerSynchronizer and can either let the client have authority and move the character, or have the client send …
Godot-matcha is an addon that lets you use WebRTC for multiplayer games by handling matchmaking using WebTorrent trackers. Conceptually it’s quite an interesting, novel approach. WebTorrent uses a modified BitTorrent protocol that allows it to work with WebSockets. A WebTorrent tracker is essentially a directory service that keeps track of torrents offered by users. A …
Years ago I purchased a game dev bundle on HumbleBundle. Part of that was a sound library called Pro Sound Collection. It’s pretty comprehensive, whether RPG or FPS, there are sounds for a ton of use cases. I might as well use them for something. Luckily for me, the sound collection is pretty well organized. …
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 …
Godot Engine on the Steam Deck – Developing games on the go?
Once I found out about the Steam Deck’s Desktop Mode, it got even more interesting.
Steam Deck’s Gaming Mode vs Desktop Mode
You see, the Steam Deck defaults to an analog of Big Picture mode on PC. It runs full screen in “Steam Deck gaming console” mode. But underneath all that is a Linux system (runs Arch, btw), and it comes with a desktop environment as well. To access it, hold down the Steam Deck Power button, and it will give you the Power menu:
A tap on Switch to Desktop, and Steam shuts down, and a more Linux-y window manager pops up:
At this point, only Steam Deck’s touchpads work. The right touchpad controls the mouse pointer and the left button, and the left touchpad acts as the right mouse button when pressed. There doesn’t seem to be any way to enter characters with the Steam Deck alone. Well, there may be, but it’ll probably require installing packages from the Linux distribution ecosystem.
Desktop Mode needs a keyboard and mouse
If you really want to interact with this thing, you need a keyboard, and ideally a mouse. And since the Steam Deck only has a USB-C connector, you’ll need to find a way to connect your (probably) USB Type A keyboard and mouse to that.
In my case, I’m using a USB-C male to USB Type A female adapter that came with a Nexus or Pixel phone, and I’m plugging in a Logitech Touch TV Keyboard.
I used to use these to control Media Center PCs, but those have all been replaced by Chromecasts.
Let’s get Godot running. First, we’ll need to download and extract it:
Launch the extracted Godot executable:
And look, it’s running.
With this, it’s possible to create games directly on the Steam Deck. It’s not the most practical thing, but it could work in a pinch.
The main issue is powering/charging the Steam Deck while using it. It probably needs a powered USB-C hub, so it can deliver power along with supporting additional peripherals.
It would be more useful to interact with it remotely.
Related Posts
Inventory System v1.14 available
A new version of the Inventory System is available with more multiplayer-related features. The Multiplayer Interaction Demo can now run in multiple modes, through two separate implementations of the Character scene: The simple character scene leverages the MultiplayerSynchronizer and can either let the client have authority and move the character, or have the client send …
godot-matcha: Free multiplayer without a server
Godot-matcha is an addon that lets you use WebRTC for multiplayer games by handling matchmaking using WebTorrent trackers. Conceptually it’s quite an interesting, novel approach. WebTorrent uses a modified BitTorrent protocol that allows it to work with WebSockets. A WebTorrent tracker is essentially a directory service that keeps track of torrents offered by users. A …
Audio Manager to handle the loading of sound effects in bulk
Years ago I purchased a game dev bundle on HumbleBundle. Part of that was a sound library called Pro Sound Collection. It’s pretty comprehensive, whether RPG or FPS, there are sounds for a ton of use cases. I might as well use them for something. Luckily for me, the sound collection is pretty well organized. …
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 …