Packaging a game for Steam Deck from UE4? Need advice!

Hello all! What is the best approach to publishing on the steam deck? I’m running UE4.23 on a Windows machine.

I’ve read this guide: Steam Deck Quick Start in Unreal Engine | Unreal Engine 5.0 Documentation

But it doesn’t say anything about actually packaging and shipping your build to steam. Is the best approach to build a Linux build or a Windows build and use proton? Are there any guides out there that could point me in the right direction?

I’ve been googling but I haven’t really found anything so far.

Thanks!
P

Hey @Pontypants
So it would seem that Steam itself has a compatibility verifier, that says that they’re constantly updating new games to the lists and checking them off.
I think one of the biggest requirements is a Native Linux build, but I’ll attach the links to stuff that I’ve found:

I’d say if a Native Linux build doesn’t get verified for you, then maybe try checking out the Proton.
I hope this can help!
-Zen

Thank you for your reply.

I was more referring to just getting a build that will actually run on the deck. Since I don’t have a Linux machine, is it possible at all to build a Linux build from a Windows machine?

I guess I was hoping that there was some trick to building for the steam deck. The guide I referred to above mentions step by step instructions to test and packaging but then there was no info on how to actually package for the deck :sob: Anyways :slight_smile:

Many thanks!
P

@Pontypants
Sorry for the misinterpretation! I think you can use the Cross-Compiler Toolchain plugin to be able to build projects targeting Linux from Windows. I think that should be enough because the Documentation says it supports testing - but it may be possible for optimal results to look into building a Linux virtual machine on Windows. Epic recommends Ubuntu and Centros 7.
I hope some of this can help!
-Zen

You can build for Linux from Windows:

Just make sure you have the right Clang version for your engine version. The first link corresponds to UE4, the second to UE5+. v20 works for 5.1.

Wohooo gonna give this a shot. Thank you!

I will report back if it works or not on the steam deck shortly!

Cheerios

Here’s my solution in case anyone is curious.

In the end I opted not to package as a linux build. The game is running fine through proton on the Steam Deck so I don’t see any need to make things a lot more complicated by supporting different Operating Systems.

Note: At first my game was NOT even starting on the Steam Deck. To get my game running on the Steam Deck I had to switch to an older Proton version in the settings on the Deck. Specifically Proton V5 worked for me so I assume it has to do which UE4 version you are using.

I’ll report back here if I encounter any issues.

Cheers

If it works, it works! It won’t be as fast as native Linux, but at a certain point that probably doesn’t matter.

The only hard issue you may encounter is multiplayer with anti-cheat. That isn’t yet supported via Proton. If your game doesn’t use anti-cheat or isn’t multiplayer at all, you’re probably fine with just using Proton to handle the Windows interpretation.

Hey Pontypants,

I’m in a similar situation where my game only runs on Proton Experimental, but have you found a way to force the steamdeck version of the game to run that version of proton? (Can’t expect users to change compatibilty mode themselves, after all)

I seem to be going through a similar issue where my attempt at a native Linux build resulted in being unable to launch the game from Game Mode, but works fine in Desktop Mode. There’s also other issues in UE 5.4 on Linux that don’t seem to happen on a windows build. I guess I’ll be sticking to Windows…