Getting Star Citizen working on the SteamDeck was actually a bit easier than I thought it would be. A lot of the heavy lifting has already been accomplished thanks to the Linux Users Group. The game usually runs around 15-20 fps which is somewhat playable, although there are some places that will bring it down to 5-10 fps (certain parts of cities). You'll see better FPS when you're out away from Cities/Stations. 25+fps in space, 15-20fps on moons, 20-30fps at Onyx facilities. These are the results without using any frame generation. Total RAM used seems to be a little over 21GB with the default SteamDeck zswap compression values (in SC v4.5). You can get it down to ~19GB if you use all low graphic settings.
Controller-wise, the SteamDeck is advantageous in SC because of the extra buttons and trackpads which really unlocks the full potential of playing with a gamepad in this game.
Some pre-setup:
You'll need to increase the swapfile on the Steam Deck to use a small portion of the built-in SSD as some slower RAM. I set it to 16GB and I haven't had any out of memory crashes.
Switch the SteamDeck to Desktop Mode
- Go to "Power" -> Switch to Desktop
Open up a console and enter the following commands, one at a time:
passwd # Create a root password for sudo commands
sudo steamos-readonly disable # Disable the read only FS
cd /home # There is a "swapfile" located here we'll reuse it
sudo swapoff -a # Stop swap process
sudo dd if=/dev/zero of=swapfile bs=1G count=16 # Increase swap to 16GB
sudo mkswap swapfile # swap ready file again
sudo swapon swapfile # Activate swap
sudo steamos-readonly enable # re-enable the read only FS
Download the Launcher for Star Citizen
Download the flatpak made available by the Linux Users Group and run the script for installing the Launcher.
Add the repo
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak remote-add --user --if-not-exists RSILauncher https://mactan-sc.github.io/rsilauncher/RSILauncher.flatpakrepo
install the RSI launcher flatpak
flatpak install -y --user --noninteractive RSILauncher io.github.mactan_sc.RSILauncher
run the RSI launcher flatpak
flatpak run io.github.mactan_sc.RSILauncher
Add the Launcher to Steam
While in Desktop Mode, open up the desktop version of Steam.
Go to "Games" -> "Add a Non-Steam Game to My Library..." And select the RSI Launcher
Note: The launcher works better in Gaming Mode.
Add icons for the RSI Launcher in Steam (Optional)
While in Desktop Mode, open up the desktop version of Steam.
Right click on the RSI Launcher
Go to "Properties" -> "Customization"
"Change" the "background" and "Wide Cover" to the splash screen. Browse to this folder for the icon:
/home/deck/.var/app/io.github.mactan_sc.RSILauncher/data/prefix/drive_c/Program Files/Roberts Space Industries/StarCitizen/LIVE/EasyAntiCheat/
Note: Delete the *.jpg filter at the bottom to reveal the icons and select SplashScreen.png
For the "Cover" and "Logo" a logo from the StarCitizen Subreddit works very well:
https://b.thumbs.redditmedia.com/EmKaZzz1TqvrqdV2qbpqbXEHD9hRMrxK13aALdIb3IE.png
Full Screen Launcher Fix
While in Desktop Mode, load up the launcher. First, drag the window to the top of the screen to maximize it, then click on the ◇ at the top right of the window to restore it.
This way, when you launch the program in Gaming Mode, it will fill the screen correctly and you won't have to resize it every time.
Don't try to sign in just yet, there are virtual keyboard issues with the launcher when using desktop mode.
Installing the game
Return to Gaming Mode, then bring up the launcher, log in as normal, and install the game.
After installing, don't launch the game just yet, there are a few more settings to work out.
Fix Mouse Warping Issues
Sometimes entering interaction mode will make your view warp quickly to another direction which can be annoying when trying to use kiosks/ASOPs/shops. To fix this, go back to Desktop Mode, then go to the following folder location:
/home/deck/.var/app/io.github.mactan_sc.RSILauncher/data/prefix/drive_c/Program Files/Roberts Space Industries/StarCitizen/LIVE/
Then create a file called user.cfg
Edit the file and enter the following:
#use software cursor
pl_pit.forceSoftwareCursor = 1
Graphics Renderer:
For 4.5, Vulkan isn't currently working on the SteamDeck without some further modification, For now we'll force DX11 instead, but use Vulkan if a fix has already been implemented for the current AMD driver issues.
Modify the user.cfg file we created/edited before, add a new line and enter:
#DX11 = 0, Vulkan = 1
r.graphicsRenderer = 0
Restart SteamDeck
After setting everything up. I recommend restarting the SteamDeck at this point
Disable animations on launcher (optional)
On the RSI Launcher
Click the gear icon -> Game Settings -> Accessibility:
Then disable background video.
Enable close-to-quit on launcher (optional)
On the RSI Launcher
Click the gear icon -> Game Settings -> Application -> Enable close-to-quit
This will help the launcher to act as you would expect while in game mode (if you close the window with the window's 'x' button).
Setup Useful Keybinds
After launching the game, press the "Steam" button, then go to "Controller Settings".
The default controller keybinds usually have issues with the normal mouse button clicks, but using trackpads for the mouse works very well.
My configuration:
L4 - Spacebar
L5 - Ctrl
R4 - '[' key (for accepting shared missions/invites)
R5 - 'B' key (The Cycling mastermode keybind isn't set by default for GamePads).
Switch this up however you want, but I found that the R4 and R5 keybinds were essential to being able to play the game without any mouse/keyboard hooked up to it.
L4 and L5 can be whatever you want. I use it this way to avoid having to use a modifier in the middle of a dogfight when orbiting an enemy.
Setting an 'N' key might be another good option in case you use autodocking.
Under Current Button Layout, Click Edit Layout -> Trackpads
For "Right Trackpad Behavior" set this to "As Mouse"
- Set Click to "Left Mouse Click"
For "Left Trackpad Behavior" set this to "Scroll Wheel"
- For Clockwise Command click "Add command" and set it to "Scroll Wheel Down"
- For Counter-Clockwise Command set it to "Scroll Wheel Up" (or vice versa depending on what you like).
- Set Click to "Right Mouse Click"
Note - The Mobiglass works really well with the SteamDeck's touchscreen.
Additionally, there are some community layouts available.
Graphics Optimizations:
I initially used the Performance Tuning guide from the LUG wiki for some settings, but ultimately set most options to Low/Very Low to minimize RAM/VRAM usage.
If anyone finds some better settings feel free to comment below.
Game Options -> Graphics:
Overall Quality Preset -> Low
Set Motion Blur to Off
Set Sharpening to 100
Some troubleshooting:
Sometimes, if the game is having issues loading up the first time, simply restarting the SteamDeck gets everything working.
Launcher issues:
-
Launcher Error Code 60101 - Just ignore this error, it happens sometimes, but the game will continue to launch even after this appears.
-
Unable to use on-screen keyboard - Use the Launcher in Gaming Mode instead of Desktop Mode to enter credentials.
-
Acknowledge button is cut off
Temporary fix: Drag launcher window to the top of the screen. Permanent fix: Open the launcher in Desktop Mode, drag the window to the top of the screen to maximize it, click on the
◇to restore it, close the window, then relaunch in Game Mode.
- Launcher thinks it has no internet connection
Temporary workaround: log out and then log in again to the launcher. A more permanent fix is to clear the launcher's cache:
RSI Launcher -> Gear icon -> Game Settings -> Application -> Clear Launcher Cache
- If the Launcher logs you out after each session, clear the Launcher's cache
Sources:
- https://wiki.starcitizen-lug.org/Alternative-Installations#flatpak-installation
- https://wiki.starcitizen-lug.org/Troubleshooting/mouse-keyboard-issues
- https://old.reddit.com/r/SteamDeck/comments/waiujt/how_to_increase_the_swap_on_the_deck/
Edit:
Added notes about restarting the SteamDeck.
Added trackpad layout configuration.
Reordered Graphics Renderer section.
Added fullscreen step for the Launcher and installing step.
4.5 notes, various improvements
The game would definitely run a lot better if it didn't use up all of the RAM. In the current version of SC, I usually see it using about 5-6GB of the swapfile. I'm curious to know what the results would be if someone ran this on a modded SteamDeck with 32GB of RAM.
I haven't messed around with the upscaling a whole lot. Star Citizen offers DLSS, FSR, and their own personal upscaling technique. I've usually left it on the "CIG TSR" technique that's available.
I'm still fairly new to the SteamDeck, so I'll need to play around with this a bit more to see what works best. Let me know if you have any tips!