Last year I pre-ordered a Steam Deck. I said it seemed like an "obvious winner move on Valve's part". People want a portable that plays their Steam library. I like a big screen for some kinds of games, but then there are little thinky puzzlers which I want to pick up and play one or two levels over lunch. For that, a portable device is ideal.
Supply chains being what they are, my Steam Deck shipped just about exactly a year after my pre-order went in. And then shipping was a bit of a clown show. (No props to Fedex for delivering my package to the building next door, where it sat in the lobby for three days... but I got it eventually.)
I've only tried out a few games so far. But: so far, I like it! The thing does what I want. Mission success.
Yes, it is big and clunky. It is not a carry-everywhere-in-your-bag device like an iPad or a Switch. It's a hang-out-on-the-coffee-table device.
The biggest constraint on the hardware is obviously the Intel architecture. Steam (Windows) games are x86 binaries, so the Steam Deck can't go ARM like every other portable device. That means it sucks power like a newborn calf. If calves sucked electricity. You know what I mean. The Steam Deck's battery is more than twice the size of the Switch's, and reviews are still frowny about the play time. (Another reason to keep it on the coffee-table -- next to the charger.)
(But, again, I didn't buy this thing to play God of War. 2D puzzle games are way less battery strain.)
The good news is the OS. It's Linux. Nobody cares! It doesn't matter! Windows games just run. Proton (WINE) is that solid now.
The compatibility headaches I ran into were all about input. The thing is definitely thumbstick-first, touchscreen second, keyboard a distant third. Games that support controller input will either work out of the box, or will require minimal updates. Everything else is iffy.
I tried one indie game that I thought supported controller input. Nope, it really wanted WASD keyboard control. I couldn't even get past the "Hit any key to begin" prompt. Another WASD-and-mouse game was playable -- the thumbsticks worked and it accepted touchscreen input -- but the screen was too small or my fingers too fat for the "mouse control" to be practical.
The Steam Deck UI has extensive support for customizing each game's controller input. I haven't looked at it much because I want things to magically work. In theory, even if a game doesn't have official controller support, players can contribute mappings (under "Community Layouts"). I'm not seeing it yet, but as I said, I've only looked at a handful of games.
Naturally, I've tested my own games! Here's what I've got:
Meanwhile magically works. This is where Valve's efforts really pay off. Meanwhile uses a five-year-old Unity build with a third-party controller toolkit grafted on, and it works perfectly on Steam Deck.
The only nuisance is that you have to click through the pick-your-resolution dialog box when you launch. This requires a touchscreen tap to hit "Ok". After that, controller buttons work as expected. You can play directly on the touchscreen, too -- that's no problem.
(I will do my best to get rid of the launch dialog in a future build.)
Hadean Lands, um, not so magical. Don't bother trying. It runs but the on-screen keyboard covers up half the screen. And then the keyboard gets confused and starts flickering on and off. Not playable.
The Steam developer SDK must have ways to stick the keyboard in place and position the game window above it. But plumbing that into the Lectrote interpreter (Electron framework) is probably not worth it. The screen is small, the on-screen keyboard is small, you're locked in landscape mode. This is not a device for lots of typing.
(I thought maybe a bluetooth keyboard? But I couldn't get mine to pair with the Steam Deck. Oh well.)
Upshot for Windows developers: I think Steam Deck support is now a big deal. Surprise: your game already runs on Linux! Test it, yeah, but don't be scared. But: you must have game controller support if that makes sense for your game at all. If not, dive into Steam's controller template docs and start tweaking.
And raise a glass to the Proton/WINE people. This is their moment of quiet glory.
What about a vertical split for the text/keyboard or the speech recognition?ReplyDelete
Speech recognition isn't supported. Custom positioning of the keyboard is (I think), but it's a C API and it's not obvious how to get Electron to make use of it for its (Chromium-hosted) text input.Delete