Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Mescal
Jul 23, 2005

THESE LINKS TO REMAIN STICKIED
https://goondeckwiki.com/ WIKI
https://discord.gg/hXZeMPF27y DISCORD
dec 3 2022

BEGINNERS GUIDE
by Heran Bago
https://forums.somethingawful.com/showthread.php?noseen=1&threadid=4017580

https://forums.somethingawful.com/showthread.php?noseen=1&threadid=4017580

dec 23
emulation guide



for all the frameworks/dependencies taking up SSD space from no longer installed games

(to find which game is what folder)

Antigravitas posted:

You can plug the App ID into https://steamdb.info/app/305620/ (replace the number in the url with App ID) to resolve it to the name of a game.

parasyte posted:

Someone on reddit made a script that'll create symlinks to the compatdata folders with the name of the game, both in a shortcuts folder as well as in the compatdata folder itself: https://github.com/DevGuyRash/random_steamdeck_scripts/blob/main/docs/create_links.md That way you have a list of game names and can go delete what's not needed.

There's also this script that can scan your shadercache and compatdata and select what to delete: https://github.com/scawp/Steam-Deck.Shader-Cache-Killer

I have not used either of these, so I do not know if they will do something wrong.



11 16 2022

four steps to get unsupported games to launch!

go to game library, highlight game, press start -> properties -> compatibility -> force the use of a specific steam play compatibility tool. proton experimental will be selected. if that doesn't work?

Mescal posted:

speaking of which, if proton experimental isn't working for a non-playable game, you can try Protontricks. Idk if anybody's mentioned tht in here yet. For horizon's gate here, i'm installing d3dcompiler_47.dll which is something that is in windows but it's not in steamos or proton. once I click OK, the game will probably launch just fine.

The crucial question, of course, is how the hell I'd figure out what's missing for another game where you can't just google the answer.

History Comes Inside! posted:

You use steamdb and check the depots section for the game which lists all the redistributables needed to run it, and then choose them accordingly from the list of tricks.

If the game isn’t on steamdb then :shrug:


Gay Retard posted:

It's also worth booting into Desktop mode and downloading "ProtonUp-Qt" - add it to your Steam Library, and now you can easily download and use Proton GE Custom, which fixes a ton of games that won't run in regular Proton and includes a ton of improvements:

DXVK patched with Async, which can be toggled with DXVK_ASYNC=1
Additional media foundation patches for better video playback support
AMD FSR patches added directly to fullscreen hack that can be toggled with WINE_FULLSCREEN_FSR=1
FSR Fake resolution patch details here
Nvidia CUDA support for PhysX and NVAPI
Raw input mouse support
'protonfixes' system -- this is an automated system that applies per-game fixes (such as winetricks, envvars, EAC workarounds, overrides, etc).
Various upstream WINE patches backported
Various wine-staging patches applied as they become needed



11 4 2022

A WIKI HAS BEEN CREATED

Vic posted:

:siren: In spirit of just post I went ahead and created an open Goon Deck Wiki

There's a ton of useful info and helpful people ITT so having the wiki space available would be nice. No ads or other nonsense, it's a clean wikipedia everyone's used to. I registered a domain for it too but I'll have to wait a bit before it processes.

:justpost:

GOON DECK DISCORD HAS BEEN ACTIVE FOR A WHILE
https://discord.gg/5Aum7dXZ

what are these scaling options?

homeless snail posted:

They don't have any impact on power, except for FSR maybe but then only extremely slightly. If you ever hosed around with the scaling options in an emulator its a similar idea but the main thing is, they only get used when the resolution you're running the game at is less than the output resolution, either 1280x800 if you're portable or normally the resolution of your TV/monitor if you're docked. If you're playing the game at the same resolution you're outputting they do nothing. Short answer though is just set it to FSR, unless you're playing a 2D game and then maybe look at integer scaling under certain circumstances. If you're downressing or docked to a TV though just gently caress with it, it'll be immediately apparent which one looks best.

Linear is what you'd normally expect to see plugging an old console or running an old game on a HD screen, it stretches the image in a way that tends to make it really soft and blurry. Nearest neighbor preserves detail but tends to make things look overly sharp or jaggy. Integer scaling only scales it up to the nearest multiple of the input resolution, it will look perfectly scaled but it will be postage stamped in the middle of the screen if the output resolution isn't a multiple of the input. FSR is the new AMD advanced scaler that generally is just going to look better than any of those, 720p FSR scaled to 1080p looks almost as good as native 1080p, at a much higher framerate.

ExcessBLarg! posted:

The scaling filter affects how the video output is scaled for display--it's not intended to be a power/performance option. Scaling is only applied when the game window resolution (#3 in this long rear end post) doesn't match either the internal or external display resolution. Most of the time, when running handheld games will run at 1280x800 and display without scaling, so it doesn't actually matter what you have the filter set to. When docked, games will usually run at 1280x720 and then get scaled to your external display, whether 1920x1080, 2560x1440, 3840x2160, or others, and the scaling filter is applied here. That said, there can be instances--especially with emulators--where the game window is only 640x480 or something and so could be scaled up to 1280x800 in handheld too.

It doesn't really matter which filter you use since it's all preference, but here's a rundown on how I use the filters:

Linear: This is a good default in that it's equally (in)offensive on most content, but rarely do I think it's the best filter to use in any specific situation. Maybe if you're playing a live-action game like one of Sam Barlow's (Telling Lies, Immortality) you'd want to use this.

Nearest and Integer: Preferred for emulators, retro-inspired games, or really anything with pixel graphics. I also use these for early FPSes that use software rendering with sprite-based enemies (DOOM), and boomer shooters intended to have an early FPS aesthetic (Dusk, Proteus). Dusk, notably, actually includes a "pixelization" slider as part of its in-game graphics settings, so nearest-neighbor scaling is best for preserving that aesthetic.

Now, the difference between Nearest and Integer is that the former will use non-integer scaling if needed, while the latter will postage-stamp the game window to nearest integer scale. You almost certainly want to use Integer for emulators and side-scrollers since uneven pixel scaling results in bad shimmer. For early 3D games you could go either way. In my case I'm docking to a 4K monitor where Nearest/Integer behave the same for 3D content anyways so I always use Integer, but if you were running on a 1080p display you probably wouldn't want to play DOOM in a postage-stamp window and would probably prefer Nearest.

FSR: Preferred for modern(ish) 3D games. FSR "requires" that you enable good-quality in-game anti-aliasing (MSAA, TAA, SMAA, maybe FXAA) to get good results. Turning on FSR adds a sharpness slider but I've always left that at the default as I can't really tell the difference.

Now, if you're playing a game that implements FSR 2.0 (many new releases) you might want to go into your Steam game properties and set the Game Resolution to Native, then in-game enable dynamic resolution scaling with FSR 2.0 (or force an rendering resolution of 1280x720 with FSR 2.0). The performance should be about the same as using the FSR scaling filter but you'll get better results this way.



FTP: don't use it, despite what i quoted earlier. i will find the post where they said how to set up SSHD...

ExcessBLarg! posted:

Don't use FTP. Set a strong user password and enable sshd, then you can SFTP to your Deck anytime you want even in game mode and stuff.

how to set up SSH on steam deck https://shendrick.net/Gaming/2022/05/30/sshonsteamdeck.html
it's an explainer, not a quick guide. got the link from this post:

Heran Bago posted:

Here is a step-by-step for SFTP. It actually explains what you're doing so it's not a quick 'here are three lines that'll do it.'


Other popular options for ferrying files include:
- Warpinator
- AnyDesk
- Any external storage with a USB-C adapter
- Mount your home NAS as an SMB share

You may need to use flatseal to allow whatever you are using access to the micro SD card.

airplane mode and steam's play offline mode: avoid these. don't use them until you know you will need to, and then test them before you get on that airplane so you figure out what order of operations doesn't render your games unplayable. i've heard too many bad things.

wireless: get bluetooth, not 2.4--the deck doesn't have usb slots for dongles. and get a MULTI DEVICE bluetooth accessory with quick-switch connectivity becaues you will want to quick swap it with your laptop, ipad, or whatever device is nearby. for example, this keyboard i just got: https://www.logitech.com/en-us/products/keyboards/k380-multi-device.920-011135.html
it's almost the same height/width as the steam deck. it would fit in the first-party steam deck case, i think, if the lining/padding were pop-out. unfortunately it's sewed in. logitech doesn't have software to customize the keyboard use for linux (for function keys as default rather than function key + press F11, etc) and the windows version almost certainly won't work with WINE.



11 3 2022
shader caches taking up too much ssd space? try this
https://steamdeckhq.com/tips-and-gu...cache%20folder.

11/2/2022
if your SD card stops being recognized, turn it off, take it out, turn in on, then put it in again.
if that don't fix it, go to desktop mode and open steam and add a games folder to steam in settings, pick the sd card.if that doesn't work, do step 1 again.

28 oct 22

some itch.io tips

JLaw posted:

I do. For itch games that don't have a Linux version, I have itch install the Windows version, but then I don't try to play it using itch... instead I play it through Steam, i.e. add it as a non-Steam game, drilling down into .config/itch/apps to find the appropriate executable. Then I explicitly set the compatibility doohickey in the steam-shortcut properties. FWIW I've been using Proton GE for that, but I'm sure Steam's default Proton would also generally work ... I just ran into one instance (Signs of the Sojourner) where Steam's Proton wouldn't play cutscene video.

OK the potential stumbling-block for this approach is that itch wants to run a "wine" command to do its Windows game installs. If you haven't really reconfigured with your deck's OS then that is not something that is going to happen. Instead, I followed the pointers in this reddit comment to get itch to use the Wine flatpack to install Windows games: https://www.reddit.com/r/SteamDeck/comments/tynrsh/comment/i9tt302/?utm_source=share&utm_medium=web2x&context=3

There's one glitch in the code in that reddit comment... if you do those things exactly as shown, your little "wine" script won't end up with the "$*" at the end because it's not properly quoted in that example. The "cat" command there should really look like this instead (with the extra backslash added in there):
code:
cat <<EOF > ~/.local/bin/wine
#!/bin/sh
exec flatpak run org.winehq.Wine \$*
EOF
... buuuuut it took me a while to notice that because itch installs seem to work fine even without that fix, so, ¯\_(ツ)_/¯

One more thing: I do generally use BoilR to help create Steam shortcuts, and it has an option to handle itch games, BUT that only works for Linux-native itch games. This is an issue that the BoilR dev is aware of but there's something (I forget what) standing in the way of addressing it, so manually creating those Steam shortcuts is the way to go for those Windows itch games.



25 oct 2022

THIS IS THE ONLY WAY TO ENJOY THE DECK AND IF YOU DON'T DO THIS YOURE NOT A GAMER

Disappointing Pie posted:

Ok I think I'm insane and what I have done is a little convoluted but I may have discovered the easiest exercise thing ever.

Steam Deck + Dock + TV + Joycons + Treadmill = the easiest "exercise" I have ever gotten. I've been doing this for the past week and it's been wild.

I have a treadmill and a TV mounted over it but I've been pretty burnt out on rewatching sitcoms while exercising, I don't like anything too intense while walking. For kicks and giggles I hooked my steam deck and dock up to the tv and I was like huh that works. I at first was using an xbox controller but that was kinda weird, you really need free hand movement and not be holding something on a treadmill.

So then I was like, well this things just a linux box right? Joycons will probably connect to it.

Sure as hell. They connected right up the Steam UI changed to Nintendo button prompts and I the first day walked two miles playing Persona and it felt like the time passed so fast. Then I fired up Hades, that might be a little too much action as one time I realized I was trying to walk like Zagreus and I've got pretty good support handles so I wasn't going to fall or anything but there is definitely a sweet spot on what games would work with it. Final Fantasy Pixel Remasters seem perfect as well. But yeah I've clocked like 8 hours on the treadmill this last week while playing RPGs.

Hot drat dudes.

Edit: Oh holy poo poo all those old SNES / PS1 RPGs would be amazing for this also. Oh boy.

sigher posted:

Someone clever actually did this with Ring Fit and some joycons, and modded Elden Ring so all actions required excercise:
https://www.youtube.com/watch?v=l6cC-T3a-Y0&t=26s




20 oct 22

"cloud" saves for emulation

loquacius posted:

Okay, so here's a guide to getting emulator save files shared between your Deck and your PC:

1) Download/install Syncthing on your PC
2) Get the flatpak Syncthing GTK on your Deck, and also Flatseal
3) Go through the initial configuration for each until you can see the main GUI for Syncthing
4) Pair the two Syncthing instances with each other. You might have to type a really long ID into one or the other; in my case Syncthing was able to just find the other instance for me so I didn't have to do it.
5) Go into Flatseal, and give Syncthing permission to view the directory /home/deck/.var/app/org.libretro.RetroArch/ in Filesystem
6) Do this thing to make Syncthing automatically start in the background whenever your Deck is on
7) Add a Shared Directory on your Deck; point it at /home/deck/.var/app/org.libretro.RetroArch/config/saves (or states if you want to share savestates rather than save files). Share it with your PC. Make sure it's not set to be send-only, or receive-only.
8) On your PC, accept this link, and point it at whatever directory you save your emulator save files to.
9) Restart your Deck. I can't think of a reason you would have to do this, but, I had to do this, so

Now, check the shared directory in whichever device didn't already have your save files on it. It should have the save files now. :toot:

If any of this doesn't work, bug somebody else and not me I dunno

as with every other emulator tweak I have done on my Deck I have as yet only tried it with Mario World but it worked on that like a charm :v:

17 oct 22

hotkeys

quote:

Steam + B (long press): Force game shutdown
Steam + X: Show keyboard
Steam + L1: Toggle magnifier
Steam + R1: Take screenshot
Steam + L2: Right mouse click (this is correct, believe it or not)
Steam + R2: Left mouse click
Steam + Right joystick: Joystick mouse
Steam + Right trackpad: Trackpad mouse
Steam + Right trackpad (click): Left mouse click
Steam + Left joystick up: Increase screen brightness
Steam + Left joystick down: Decrease screen brightness
Steam + D-pad right: Enter key
Steam + D-pad down: Tab key
Steam + D-pad left: Escape key


notice about save files: updating emudeck right now might wipe your rom saves. multiple steam user logins might wipe your steam/cloud saves.

BT

loquacius posted:

Update on my Bluetooth controller-lag issues: I followed this guide, changed a config file, and from my desk anyway, the lag issue appears to have been solved. I am flabbergasted. I love Linux.

hard reset device

Heran Bago posted:

When it's shut down, hold volume down + power until you hear the beep. I'm not sure if it's both right at the same time or volume down then power.

HUMBLE

ExcessBLarg! posted:

Folks, I spent some time figuring out how to get the Humble Games Collection and the Humble app working. I mostly wanted to try Moonscars, but with Signalis coming out next week I figured this might be helpful to others. Or maybe you just want to play Void Bastards or something. Anyways, this is a long one:

1. Switch to Desktop mode and install the Firefox and Bottles flatpaks from Discover and use Flatseal (also in Discover) to set a filesystem override on Bottles for "xdg-data". Alternatively if you prefer to install these from a terminal, run these commands:
code:
flatpak install flathub org.mozilla.firefox com.usebottles.bottles
sudo flatpak override --filesystem=xdg-data com.usebottles.bottles
2. Open Firefox, go to https://www.humblebundle.com/membership/collection and download the Humble App installer.

3. Open Steam, add a non-Steam game, and select the installer exe (/home/deck/Downloads/Humble-App-Setup-1.1.5+370.exe). Open the game properties, rename it as the "Humble Games Collection" and set the compatibility tool to the latest stable version of Proton (7.0-4).

4. Start the Humble installer, and select to install for "all users". Do not run the Humble App when finishing installation.

5. Open the game properties again, and Browse for a new executable. You want to look for /home/deck/.local/share/Steam/steamapps/compatdata/APP_ID/drive_c/Program Files/Humble App/Humble App.exe, where APP_ID is a moderately-lengthy random number. To help find it, it's going to be a longer number than any native Steam game, and look for the most recent date in the Modified column as the directory was created in step #4. When you find it, write down the APP_ID as you'll need it later.

6. Open Bottles, go through the initial setup, then create a new bottle named "Humble Games Collection" (without quotes) with a custom environment.

7. Open a terminal (Konsole) and run these commands to replace and link the Wine prefix with the one created by Steam:
code:
cd ~/.var/app/com.usebottles.bottles/data/bottles/bottles/Humble-Games-Collection 
rm -rf dosdevices drive_c
ln -snf ~/.local/share/Steam/steamapps/compatdata/3116947765/pfx/* .
ln -s steamuser drive_c/users/deck
8. Open Bottles again, select "Humble Games Collection" from the Bottles tab. You should see "Humble App" listed under Programs. Open the "..." menu and select "Add Desktop Entry".

9. Open a file browser (Dolphin) and look for the file ~/.local/share/applications/"Humble Games Collection--Humble App--(numbers).desktop". Edit this file and replace the line starting with "Exec=" with the following:
code:
Exec=bash -c 'exec "$0" "${@/\?/\/}"' flatpak run --command=bottles-cli com.usebottles.bottles run -e 'C:\Program Files\Humble App\Humble App.exe' -b 'Humble Games Collection' -a '"%u"'
Copy and paste the above if you can, but if you're typing it in manually beware the last bit has single quotes wrapping around the double quotes. Save.

10. Open a terminal again and run this command:
code:
systemctl --user restart xdg-desktop-portal
11. Open Bottles (again!), select "Humble Games Collection", and start the "Humble App". Once the Humble App opens, select "Sign in to your Humble account" which should open Firefox to the Humble login page. Login, then select "Allow Access" and "Open Link" which should popup the "Open with..." dialog. Select "Show More" and from the list "Humble App". The Humble app should restart in a few seconds and you'll be logged in.

12. Open the Settings page (gear icon) in the Humble App and under General, disable "Keep running app when window closed." Close the Humble App and Bottles.

At this point you can return to Gaming mode and run the Humble Games Collection from your non-Steam Library page. It should already be logged in and good to go. If at some point you need to login again switch to Desktop mode and follow steps #10-11 again.

One issue when using the Humble app is that the scroll bars don't work. I think this is a Wine problem as I couldn't get them to work on my desktop either. To scroll you can use arrow keys once you've focused the tab with the mouse, or you can use the mouse scroll wheel. On the Deck itself, I recommend using Steam Input to assign the left trackpad to Scroll Wheel (Clockwise Command: SW Down, CCW Command: SW Up). I prefer to set the Swipe Direction to Vertical, but some folks like Circular as this lets you use it like a crank.

If you want to install games to the SD card for space reasons, save to the E:\ drive when downloading. Proton assigns this to the SD card.

The Humble app will crash on startup if you try to use it in Desktop mode--it's the same error that Vampire Survivors emits when you try to run that in Desktop mode too. If you really want to run it in Desktop mode, you can open the game properties and set the Launch Options to "PROTON_LOG=1 PROTON_LOG_DIR=/tmp %command%" (without quotes), but I'd just recommend running it in game mode. I guess you could use Bottles too, but I don't know how much you can actually use this under Bottles since we didn't setup any of the compatibility libraries.

OK, so why is this so messy? Well, when the Humble app installs, it registers a URI scheme handler in Windows for "humble://" links. Wineserver either doesn't support this, or if it does it requires a web browser to be installed within the same Wine prefix--not sure. Anyways, when you use the sign-in option, the app opens a web (https) URL with a challenge string. This does correctly open in Firefox and will let you login, but when you select "Allow Access" the site passes a "humble://" URL back to Firefox, and the purpose of steps #8-10 is to plumb this back to the Humble app.

The second issue is that for the Humble app to process the login successfully, it has to run two instances of the app under the same Wineserver instance--it's not good enough to just open the "humble://" URL, it has to communicate the response back to the first instance of the app which matches up the challenge/response strings. Steam/Proton fundamentally won't let you run two instances of an app at the same time, which is why we have to use Bottles to do it. Separately, Bottles is supposed to automatically import Steam Proton prefixes but that appears not to work, which is why we have to manually link it in step #7.

The last issue is that, since the Deck runs the flatpak version of Firefox, it uses the xdg-desktop-portal mechanism to open links outside of its sandbox, but if you don't run the command in step #10 the "Open with..." dialog never appears. This is beacuse the Deck uses the xdg-desktop-portal-kde backend, but for some reason, when xdg-desktop-portal is started in Game mode the -kde backend errors out. Restarting xdg-desktop-portal in Desktop mode fixes that until the next reboot.






OCT 11 22


v1ld posted:

Quick PSA that the new Steam Input virtual menus are a huge step forward on the Deck. I've moved a bunch of the touchpad bindings that made them d-pads into virtual menus and couldn't be happier. The new UI is a bit cleaner too, it's responsive and easy to read.

You can stick a large number of options into a virtual radial menu and it still works well - putting all of the 0-9 number keys as Skyrim hotkeys for example. It's easy to select accurately even with all those options. Use click to select, not touch release - you're not losing anything because the old click to modeshift is either broken or they took it out.

You can also have a virtual menu entry itself be a virtual menu, so there's a lot of flexibility there. I've also got them on some Active Layers now. Great for games that will take mixed keyboard / gamepad input.

You can no longer make a touchpad into both a d-pad and a touchpad as you used to be able to with a click modeshift back on the original Steam Controller. But with the new virtual menus, I don't really miss that any more.

This is as good an introduction to them as any:
https://www.youtube.com/watch?v=vorhbmYIFpg

oct 5 2022:

Suburban Dad posted:

Boilr needs added to the OP. It's great to make your non-steam games not look like 2nd class citizens. It will allow you to import logos and box art from steamgriddb and makes it nearly effortless. It's in the discover store and pretty easy to get setup and use. Here's the short video for how to set it up.

https://www.youtube.com/watch?v=a3SA-fOs0H4


oct 4 2022: there is as good as no more queue. If you preorder one now, you will be able to order it almost immediately,

oct 1 2022: here is an emulation vidoe

XenoCrab posted:

I've seen a couple people mention wanting/needing a dock or installing some remote desktop software to make it easier to do desktop stuff on Deck and I just wanted to remind everyone that Valve makes a version of Steam Link that runs on Windows, Mac and Linux PCs (and also phones). This is exclusively what I've used for remote connecting to my Deck and it is definitely the easiest and best software I've used for providing a seamless & smooth remote desktop and I would recommend that everyone try it first before anything else.

-Link that provides downloads for all platforms https://store.steampowered.com/remoteplay#anywhere
-Direct link to the Windows version https://media.steampowered.com/steamlink/windows/latest/SteamLink.zip

Note that you don't need Steam installed on the computer that you're using Steam Link on and it's not just (or even primarily) for using the Steam Deck in desktop mode. If you connect to the Deck in gaming mode you can play your games and even on my crappy Wifi network the latency is low enough to play platformers or action games. I think the only downside I've found is that it doesn't let you do copy & pasting of files between your client computer and the Deck the way some other remote control programs might.


As of 8/30/2022, people who preordered in nov-jan are receiving their order emails and getting their decks like really soon. Somebody who ordered in june has q3 estimate. I just preordered one in canada and it's q4 estimate. edit: paid for it on 9/29

Here is a starter guide: https://overkill.wtf/steam-deck-starter-guide-start-here/

memory cards: lots of people say amazon ships counterfeits sometimes, which might have lower read/write speeds, less reliability, and in rare cases less capacity than advertised. if you buy from them, test the card and return it if it's no good. Do all non-counterfeit sd cards have the same read speeds? nope! will you notice a difference in speed loading your games from a fast sd card vs an SSD? also nope!

which model to buy: in my opinion, the cheapest model is a really good value for your money, and the others less so. The most expensive model has a matte/antiglare screen, which is a sidegrade depending on your preferences. (you can get an antiglare screen cover for anything.) If you install lots of games, get the middle model because the games' shaders fill up the main drive fairly quickly. You can replace the drive with a 2230 sized drive. Valve recommends againt that.

The power supply 45w and (the specs page doesn't say this) 15v. not all 45w power supplies support 15v, apparently it's unusual? Check it before ordering something.

grieving for Gandalf posted:

didn't see if this was answered correctly but no, it'll drain while playing even with the included charger. I recommend getting a 60w charger

it comes with a case. don't buy an extra case. it doesn't come with a dock, and first party docks are not yet available.

it has one usb c port. steam's page implies there are two. only one.


HERE ARE SOME COPY PASTED POSTS FROM HERAN BAGO

Heran Bago posted:

Two super quick and easy ways to drop files on your deck.

1. World's Easiest FTP

Go to desktop mode and open the terminal, paste these lines in to install a little ftp server:
code:
python -m venv ~/MyVirtualEnv
source ~/MyVirtualEnv/bin/activate
pip install pyftplib
And then these to run it:
code:
source ~/MyVirtualEnv/bin/activate
cd ~
python -m pyftpdlib --write
An FTP server is now running until you close the terminal window.


Over on your Windows PC, open a new explorer window and click on a blank spot in the address bar. Type ftp://steamdeck:2121 and cross your fingers. It should open up your user folder on the device.


If you changed your hostname, replace "steamdeck" with the new one. If your network does not allow hostname resolution, replace "steamdeck" with the device's local IP address ("ip a" in terminal to find).
If you want to use a better FTP client go for it. The one built into Windows Explorer is serviceable.

This is lifted from someone named oh-nyoo on GitHub. If you just want to copy over a few small files, it's kind of overkill, and you should only do it on a Network you trust. If you are copying a LOT, like all of FFXIV for example, be aware of the Deck's auto-sleep as it will interrupt the transfer.


2. Onedrive

Check that OneDrive in Windows is logged in. In explorer, drag and drop your desired files into a OneDrive folder.

On the Steam Deck, go to desktop mode and open Firefox. Login at https://onedrive.live.com/ . Download your files and then delete them from onedrive. You can use the file explorer to move them from Downloads to your desired location.

You can totally do this with Google Drive, Dropbox etc. I just already have Onedrive logged in and syncing folders.

Heran Bago posted:

3DS hacking-era step by step on checking that your SD card is healthy and reporting the correct size:

https://3ds.hacks.guide/h2testw-(windows).html
https://3ds.hacks.guide/f3-(linux)
https://3ds.hacks.guide/f3xswift-(mac)


I have never been burned buying from official channels, but you hear rumors.

Heran Bago posted:

Here are some links I've been collecting.

List of games that play nicely with bsnes-hd's forced widescreen:
https://gamefaqs.gamespot.com/boards/916396-super-nintendo/79857973
In retroarch, with the bsnes-hd core loaded, change "Widescreen - Sprites" from "Mode 7" to "Render anywhere (unsafe)" and set aspect ratio to 16:10 just under that. This list is not perfect. It is missing On the Ball and Super Metroid patches.

List of games that play nicely with Genesis Plus GX Wide:
https://www.reddit.com/r/RetroArch/comments/lr0v7f/genesis_plus_gx_wide_test_results_wip/

Super Mario World widescreen ROM patch:
https://github.com/VitorVilela7/wide-snes

Super Metroid widescreen ROM patch:
https://git.libretro.com/libretro/bsnes-hd/-/tree/master/pack/gamefixes/Super%20Metroid%20widescreen%20patch

Sonic 1 or 2 widescreen ROM patch:
https://heyjoeway.github.io/sonic-wide-autopatcher/

Wario World widescreen patch:
https://www.romhacking.net/hacks/6725/

The Ocarina of Time native port "Ship of Harkinian".
Deck footage: https://www.youtube.com/watch?v=P0oyNE8eNAk
Build Instructions: https://github.com/HarbourMasters/Shipwright/blob/develop-rachael/BUILDING.md
https://github.com/HarbourMasters/Shipwright

The Mario 64 Native port "Render96ex"
Deck footage: https://www.reddit.com/r/SteamDeck/comments/us11jv/render96_sm64_running_through_proton_on_steamos/
Build instructions: https://github.com/Render96/Render96ex/wiki/How-To-Compile-ENG-Linux
https://github.com/Render96

The Sonic 1, 2 and CD's best versions have decompilations and native ports. There are Linux build instructions, so this could be a neat Deck option. Between this, Sonic Origins, and the widescreen ROM patch, there are three options to play Sonic 1 or 2 in Widescreen on the deck.
https://github.com/Rubberduckycooly See individual project pages for build instructions

The Jax & Daxter Native port also has Arch build instructions. Really looking forward to trying this one eventually.
Deck footage: https://youtu.be/na9Jj2LEYK0?t=167
Build Instructions: https://github.com/open-goal/jak-project

The Sonic 2006 remake Project '06 runs ok. Videos need GE-Proton.
Deck footage: https://www.youtube.com/watch?v=WNUvrvbkqIo

I guess this is a good inexpensive "dock" without a device case/holder:

Heran Bago posted:

https://a.co/d/7uEX07A

I got exactly this 4-port dongle during the Prime sale.

The Ethernet port is 1Gbit/s.

The HDMI port can output 4k at 60 Hz, says xrandr.

The USB-C power passthrough works. Using a 65W USB-C laptop charger.
If not used for that, lsusb says it's USB 3.2, 10000Mb/s.

The USB type-A is reported as USB 2.0, 480Mb/s.

It gets hot.


MINECFCAFT

Heran Bago posted:

SevTech Ages is running super well. Controls better than expected, and I'll have to try gyro eventually.


Idiot's step-by-step for vanilla or modded Java Minecraft on Deck


Switch to Desktop mode.

In the Discover store, install GDLauncher.

Open GDLauncher from the start menu > Games.

Click Automatic Setup.

Sign in.

Click the arrow in the bottom-right four times, close the pop-up.

Click the gear icon in the upper-right.

Click General in the left pane. Enable Hide Launcher While Playing.

Click Java in the left pane. Change Game Resolution to 1280 x 700 (for some reason not 800). Increase the Java Memory slider bar to 8192 or more.

Click the boxed X in the upper-right area (don't close the window).

Click the + in the bottom-left. Search for and select your desired vanilla version or modpack. You will be given a chance to name the instance. Click the right arrow to install. If your mod pack has any "opted out" mods, allow the browser window pop-up to automate downloading them for you.

Right-click your installed instance. Click Manage then click Mods in the left pane. Click the Add Mod button. Search for and install Controllable.

Click the boxed X in the upper-right area (don't close the window).

Click the steam icon on the task bar. Click Library. Click the boxed + in the bottom left and click Add a Non-Steam Game... Check the box next to GDLauncher and add game.

In the Steam Library window, search for GDLauncher. Right-click it in the list and click Properties...

Rename it Minecraft: Java Edition.

Close all open windows. Return to Gaming Mode.

Select, but don't start Minecraft: Java Edition. Open the control settings.

From templates, choose Gamepad with Mouse Trackpad.

Edit the template and go to trackpads, set the left trackpad to button only and map it to left click.

Start Minecraft: Java Edition.

Click on your instance to start it. If using a big modpack it will take some time to load.

From the title screen enter the options.

Click the small controller icon added by the mod. Make sure that you see a green check mark. You can change controller mapping under Bindings. Click Settings. Disable Virtual Mouse and Render Mini Player. Return to Options.

In video settings turn on Fullscreen and reduce Framerate to 60 or lower. You may want to reduce graphics options or increase brightness.

That's all! You can now join a server or start a new world. Steam button + X will bring up the on-screen keyboard at any time. Sometimes it may take a few presses.


+++++++++++++THE FOLLOWING IS THE ORIGINAL OP, IGNORE

The Steam Deck is a portable PC from Valve shipping next year. People are really excited about the loss-leader price and stuff.

:siren: Thread Tips, Tricks and Guides: :siren:

Cowman posted:

Since I can't take screenshots in Desktop mode I figured I'd go ahead and do a writeup of what to do:
To get to Desktop Mode just push the steam button, navigate down to Power and select Switch to Desktop Mode

Definitions:
Dolphin is referring to the file explorer not the gamecube/wii emulator.
Discover is the app store to install various free programs specifically for Linux. It's very easy to navigate and the shortcut is the second icon from the steam deck logo at the bottom left of the screen. It looks like a shopping bag to me. EmuDeck is not on there so don't bother searching for it.

Notes before we begin:
Some emulators require a BIOS file. PS1,2,3 WiiU and Switch as examples need them. If a game won't start, check to see if that emulator requires a BIOS file.
on Windows, internal files are saved in paths like: "C:\<whatever>", but on the Deck, internal files are saved under "home\deck". For example your downloads on Windows are saved in C:\Users\<My Name>\Downloads. But on the Deck, downloads are saved to the Deck in home\deck\Downloads (Thanks jokes for explaining this)
Don't try to test ROMs in Desktop mode, they boot up in full screen and won't read your inputs. It's a real pain in the rear end to shut them down too. Save yourself the hassle and just test them in gaming mode.
An easy way to handle this is to install the steam link app onto your laptop/desktop and then remotely connect to your deck so you can use a mouse/keyboard instead of the touchpads. It's 100% doable with just the steam deck, this is just another option.

In Gaming Mode:
Some useful key presses via emudeck:

-STEAM+left on the DPAD shows PPSSPP settings
-Retroarch settings are accessible by pressing L3+R3.
(Thanks again jokes)

Basic controls for Desktop mode are:
Right Trigger is left mouse click
Right touchpad controls the mouse
Clicking the right touchpad is a left mouse click (I find it easier to just do R2 for clicking)
Right stick controls the mouse
Left stick scrolls up and down
Steam + X brings up the keyboard
Either use the left stick or the right/left touchpads to type (click on the thumbpad or hit A to select the letter)

1. Install Firefox via the convenient shortcut on the start menu on the bottom of the screen.
2. Go to https://www.emudeck.com and download the app
3. You'll download a file called EmuDeck.desktop, move it to the desktop and double click it.
4. EmuDeck will begin to install itself
5. Select Expert Mode (Don't worry it's mostly defaults here)
6. Select SD Card for the Install Location if you have one, otherwise select Internal
7. Turn off the ones that require a password (unless you have a password and want to install them. I haven't so I don't know what they do) and deselect Bezels because they're apparently extremely ugly.
8. Hit OK and then select a Theme (Doesn't really matter which one you pick afaik)
9. Hit OK and then you get a list of Emulators to install. The only one I'd recommend deselecting is PS2-Legacy but it's up to you.
10. Select the ones you want to use widescreen hacks. You can always change this in emulator options later. (I deselect all of them because widescreen looks really stretched).
11. Hit OK and then Hit OK on the reset configurations screen (This might be only if you're updating/reinstalling, if it doesn't show up don't worry about it)
12. Wait for EmuDeck to install! It'll automatically go through everything and install everything to the right locations.
13. It'll pop up asking you for login info for RetroArch Achievements. I don't have an account there so I just hit cancel and it continues along.
14. For me it pops up a warning about Yuzu not being configured, it might do this for you or it might not. I haven't messed with Yuzu so that's probably why. Just hit OK if it does pop up.
15. You're done! EmuDeck is installed! Hit Exit because you don't have any ROMs yet so you don't need to go to the Steam ROM Manager.

Installing ROMs:
After downloading some ROMs onto the Deck, it's time to install them. This is extremely easy and intuitive so don't worry. For this example, I'll install some PS2 ROMs and also walk you through where to put the BIOS that you obtained legally just like the ROMs. This is going to be assuming you selected SD Card for the previous steps. If you didn't, try to find the folder I mention at first and then follow the instructions. Hopefully someone else can fill in the blanks for that part.

1. The default download folder is the aptly named "Downloads" folder. Your ROMs and BIOS that you download are going to be here.
2. Open Dolphin (the file explorer not the emulator)
3. On the menu on the far left, scroll all the way down and under "Removable Devices" you'll see your SD Card called "primary". Double click that and open it up.
4. You'll see a folder called "Emulation" open that up
5. There's a folder called ROMs, open that up
6. Navigate to the folder named after the console your ROMs are on. In this example it's a PS2 ROM so we'll go to the ps2 folder.
7. Drop all your ROMs in this folder
8. Run EmuDeck Compression Tool, this will optimize the ROMs into the most compressed version to save you space. Hit OK on everything that pops up and let it run. This will take a while.
9. Open Steam ROM Manager
10. It'll shut down Steam so wait a minute and the controls will come back to you
11. Under Parsers, disable EmulationStationDE, Emulators and Sony Playstation 2 - old version (This only needs to be done once or when you reset settings on Steam ROM Manager)
12. Go back up to the top and select "Preview" at the top left
13. Click Generate App List
14. Wait for the "Remaining Providers" at the top middle to go away (It's gathering images for your steam library)
15. When that's done, click "Save app list" and then you're done! Return to gaming mode and play your games!

The nice thing is that this installs the ROMs into everybody's library. No matter how many accounts you have attached to the deck, they all will get the ROMs added to their library with images and everything.

Installing a BIOS for emulators that need it:
I haven't messed with Yuzu so I can't write anything for that unfortunately. This is specifically for PS1,2,3 and WiiU emulation. It's all the same process so it's probably the same with the Switch emulator. I'm assuming you've downloaded the BIOS and it's sitting in the Downloads folder.

1. Open up the emulator in Desktop Mode by clicking the steam deck logo in the lower left and navigating to "Games" and then clicking the emulator you want in the menu to the right
2. Find the BIOS option for the specific emulator. I'll be using DuckStation- QT as my example (It's Settings -> BIOS Settings)
3. You'll see a directory option, go back to Dolphin the file explorer and navigate to that directory (You can cheat by clicking the Folder title at the top and just copying over the directory. I don't know if you can copy/paste but you can go to the base directory and just navigate from there.) Make sure you enable seeing hidden folders by clicking the 3 bars at the upper right and enabling "Show Hidden Files". Some BIOS folders might be in hidden directories.
4. If needed make a folder in the base folder for your specific console. As an example, in Duckstation QT the default pathway was /run/media/mmcblk0p1/Emulation/bios so I made a psx_bios folder and then copied my BIOS files to there.
5. If you had to make a folder, go back to the emulator and add on the folder name to the end of the directory (you can either click Browse or just click the pathway and manually enter it)

With that the BIOS is installed, it's slightly different per emulator so you'll have to do some navigating yourself to find the right setting and folder locations.

If I got anything wrong please correct me, I did a reinstall of EmuDeck instead of a clean install but I believe it just runs through a clean install anyways so it should be the same regardless. If someone installed it Internally instead of the SD Card please do a separate writeup of the differences.

Aardvark Barber posted:



Here's the official shortcuts list from

https://github.com/dragoonDorise/EmuDeck



It's got your $400 price, that's cool. You can pay more for more storage, it doesn't come with much. 64GB up to 512. Quad core Zen 2 CPU, 16GB ram. There is a microSD port. The USB-C connector thingie comes out the top. The expensive version has a non glossy screen?

You can play all your steam games. You can install windows on it if you want. Hello emulation city. It's got a built in controller. It's got like, technology in it. A lot for the low price. It should be able to play most stuff just fine, might struggle on AAA games that are coming out like right now. The screen is 1200x800, which will be good for encouraging developers to... make their text bigger.

It looks loving massive in the dude's hand https://www.youtube.com/watch?v=oLtiRGTZvGM

The excitement about this computer is palpable and catching! Cheers to Valve for making something cool and affordable

More info should go right here in the OP? Say it and i'll add it

Mescal fucked around with this message at 23:05 on Mar 9, 2023

Adbot
ADBOT LOVES YOU

Mescal
Jul 23, 2005

flavor.flv posted:

lol I forgot that it was my post that started all this

I don't even have a vr headset

I'm gonna tell the mods that this thread is ONLY for apartment posting and we can spin off the other content somewhere else.

Mescal
Jul 23, 2005

that steam deck sure looks cool. Should i get the cheap model and run games from an SD card or get a more expensive one? What are the wait times looking like in canada? is it easy or hard to get it connected wirelessly to my switch pro controller and dumb TV?

Mescal
Jul 23, 2005

MarcusSA posted:

lol you made this thread and never ordered one?

Also the base model has the best price to performance ratio imo. Just get a 512 SD card and call it good.

Yeah, I've wanted one since they were announced, but I didn't need one until the laptop gave up the ghost, and I'm kinda sharing the other PC. I only made this thread because the steam thread turned into the steam deck thread for about 20 pages. Maybe I'll be able to give it a real OP!

Mescal
Jul 23, 2005

Nukelear v.2 posted:

I've had the Magglass Matte screen protector on my glossy 256 for a week now. $20 on amazon. For anyone with a glossy deck, I'd say it's very worth it.

+ It does an excellent job eliminating reflections and glare
+ Fit was perfect and installation was easy since you can lift it back up and adjust

- Screen protector is probably entirely pointless on a device this size
- Viewed straight on there is a slight amount of blurring, at an angle it's pretty significant

There's matte and glossy? I don't see mention of them on steam's product page

Mescal
Jul 23, 2005

on google, i see advice against replacing the hard drive. good idea, bad idea?

Mescal
Jul 23, 2005

Heran Bago posted:

Just get a 1 or 2 TB MicroSD card.

do they all have the same read speeds?

Mescal
Jul 23, 2005

i preordered one! thanks for your help with my questions

Nukelear v.2 posted:

https://www.rockpapershotgun.com/best-microsd-cards-for-steam-deck suggests that U3 vs U1 doesn't matter too much. I ended up with the Sandisk ultra largely because Amazon had it next day shipping.

article says they're just barely slower than the internal SSD. cool.

Mescal
Jul 23, 2005

Heran Bago posted:

Anecdotally, I've bought from them over the years and never had one that reports the wrong size. I could believe I've had counterfeits on like brand or speed.


I've heard more anecdotes about the latter than the former.

Mescal
Jul 23, 2005

https://www.pcgamer.com/emulating-3ds-games-with-a-steam-deck-proves-that-the-wii-u-was-right/ this is clever: using the deck and a tv to emulate wiiU games.

what info should i add to the OP for people who haven't followed the thread yet?

Mescal
Jul 23, 2005

Veotax posted:

3DS games actually, just WiiU styled by having the top screen on another monitor and the bottom screen on the Deck.

Oh. the article linked within implies that the same for wiiu should be coming soon with the emulator releasing its source code, though.

Mescal
Jul 23, 2005

so it has one usb-c port and one usb-a port?

Mescal
Jul 23, 2005

v1ld posted:

Really wish Valve would add a medium setting between "get every shader cache update for every game you have installed" and "turn of shader caching entirely and enjoy stutter". A perfect medium for me would be "update shader caches only on game launch" + a "update all shader caches now" button somewhere.

What's annoying is that I like having multiple games installed but won't most of them all the time. So one large shader cache update when I do launch a game after a month is preferable to 20 updates for it over the month I didn't play it.


i don't understand. why would a game update its shaders while you're not playing it?

Hiro Protagonist posted:

I was in the Oct-Dec order queue, now I'm in July-Sept order queue! Very excited to get my hands on it.

when'd you order?

Mescal
Jul 23, 2005

i added a little info to the op--please help me continue to improve it!

Mescal
Jul 23, 2005

v1ld posted:

The Deck is basically a Linux PC that can run Steam and all of its controller code so there are no limitations there in terms of choice.

The DS4/5 are the most fully featured controllers out there with gyro/touchpad/haptics and the kitchen sink, but that's all meaningless if you don't like the ergonomics of the controller.

If you like tweaking controller settings to, say, enable gyro aiming on trigger press in a PC game that doesn't even know about gyros I'd say the DS4 or 5 are your best bets by a long shot. If you don't care about gyro, just go with whatever feels best in hand to you and is reasonably priced I'd say.

The DS4 and 5 have another feature that doesn't work on for example the Microsoft Elite 2. The Steam Controller code has a binding that lets you turn off the controller remotely. This works with the DS4/5 on Windows but not in Arch Linux even though I can do it from the cli bluetoothctl command. So it probably won't work on the Deck too - in other words, probably not a differentiator but it would be very nice to have if Valve fixed this.

The Steam Controller code lets you turn off the DS4/5's led by the way - this has a significant effect on battery life. Just turn brightness to 0 in the controller options.

Are you the foretold one? The person who knows about controllers and steam and how the two interact? does that stuff have something to do with why i couldn't get gyro to work at all on switch pro controller with steam?

Mescal
Jul 23, 2005

Heran Bago posted:

^^^ A USB-C dock from like Dell or HP should Just Work. Not 1st party Nintendo. Can't comment on power delivery.

Check Cowman and my post history ITT. I've linked a bunch of stuff but it's your call what's OP-worthy.

Maybe some info on chargers, SD cards, docks, and options for transferring files. These topics come up often.

I've added some quotes from you, but Cowman's stuff, if useful, doesn't provide much help out of context. You and cowman should take a look and tell me what's missing. OP is kind of slapdash but JUST POST right?

Mescal
Jul 23, 2005

jokes posted:

The fan when I play GW2 kinda goes up and down a lot and it's pretty frustrating but usually stays pretty quiet.

is there a low power mode that would choke it back so the fan wouldn't spin hard so often?

Mescal
Jul 23, 2005

here is my "how's the controller" question: I don't feel I can play smash bros well with the switch in handheld mode. would the deck be better or worse for that? like, action games where you have to use all the buttons with good reflexes and stuff.

Mescal
Jul 23, 2005

v1ld posted:

lol. I used a switch pro controller with the switch and it broke, never got to use it with Steam. According to this post from the Steam developers from 4 years ago the pro controller's gyro should just work in Steam: Nintendo Switch Pro Controller support via Steam Input.

Are you sure you've bound the gyro input in your config? It's the infinity symbol like thing in the bottom left of the last pic in that article. Click it and make sure it's bound to some action when you move the controller.

It's not bound to anything by default.

E: I've only skimmed, but this video seems to cover it in possibly too much detail and in a very excited voice:
https://www.youtube.com/watch?v=CenJLOTGxLc

that really does go into detail, great helper video. If he said you can, I missed it, but can you go gyro for the up-down and stick for the left-right?

ExcessBLarg! posted:

This is a whole thing. Fan running loud also means that the system is using a fair bit of power which cuts down on battery life. I generally try to tune games so they won't run the fan much and get 3-4 hours handheld (if possible), and if I'm docked the extra power goes to FSR scaling.

How long do you get handheld out of, say, slay the spire vs death stranding vs an snes emulator?

Mescal fucked around with this message at 02:52 on Sep 2, 2022

Mescal
Jul 23, 2005

Nukelear v.2 posted:

For me, I run P4G just fine with every power saving measure on and it reports ~6 hours.
The highest power drain I've seen has been Xenoblade 3 in yuzu and that was ~3 hours.

Beyond draining the battery quickly; the heat, noise and plastic smell make running higher drain games much less enjoyable.

plastic smell?? that's a terrible omen.

Mescal
Jul 23, 2005

slagmatic posted:

I added GZDoom as a non-Steam game, then used one of the community bindings. It works well in Gaming mode for me, but I haven't yet set it up for the controls to work on Desktop mode. If you prefer to run it in Desktop I think there are a couple Youtube videos out there that show how to do just that, as well as add Brutal Doom mods / mod managers.

is gaming mode like big picture mode? why would controls work differently between them?

Mescal
Jul 23, 2005

Heran Bago posted:

Running out of steam on Dark Cloud 2 in the ocean area. Since discovering I can run NGU Idle and level FFXIV crafters at the same time that's what's been happening. NGU has a decent official layout even. All without turning into a jet engine. What a nice little machine.

I've been on a Widescreen kick with this thing. So bsnes-hd.

i've wondered if you can do this. so cool! i linked your thread in the games index thread

Mescal
Jul 23, 2005

I'm not keeping up to date reading this thread at the moment, please PM me if there's something that should be added to OP.

edit: if i ordered about a month ago, when should i start obsessively checking my email?

Mescal fucked around with this message at 17:33 on Sep 25, 2022

Mescal
Jul 23, 2005

Tamba posted:

They've already caught up to orders from August now, so you unless something unexpected happens (like the shipment problems in Canada), you might actually get your mail in a week or two

drat. they said q4 and i thought christmas. that's an insane acceleration, isn't it?

Mescal
Jul 23, 2005

i should have jumped on that sd card sale, i thought i'd be waiting longer. any good sales on em rn?

Mescal
Jul 23, 2005

GreenBuckanneer posted:

based on user submissions it's around 2-6 of september or so, so next thursday will probably all caught up at this rate

nothing here from the 30th. a little later in canada maybe? edit: it was the 29th

Mescal
Jul 23, 2005

leftist heap posted:

Canadian orders are paused for the time being

paused, eh?

Mescal
Jul 23, 2005

Waltzing Along posted:

98% so I should get my invite on Thursday, 15 days after the reservation. I'm guessing that we are really close to the end of the wait list.

what's this percentage?

Mescal
Jul 23, 2005

Party Boat posted:

https://getmydeck.ingenhaag.dev/

Reddit people have been tracking who gets invited to order when to estimate where Valve is in the order queue (or queues given there's different ones for each model and region)

oddly, there's no canada in the dropdown menu. just us uk and eu

Mescal
Jul 23, 2005

8-bit Miniboss posted:

Probably disabled while the backlog is active.

i have no information, what is the canadian backlog?

Mescal
Jul 23, 2005

got my email and ordered. canada, preordered 29th of last month

Mescal
Jul 23, 2005

ExcessBLarg! posted:

I'm sure this information is useful to no one, but I was digging around the Gamescope source code trying to understand how vsync, frame limiting, and screen tearing all work on the Deck since it's a bit of a mystery. This is in part due to regular reports of input lag when using the frame limiter--not that I personally can tell the difference--and also claims that the frame limiter screws with emulators. So here's what I've figured out:

The Performance overlay enables the frame limiter in gamescope by setting the GAMESCOPE_FPS_LIMIT xprop (on the root window of xwayland display :0). For 60 Hz refresh, the possible values are 0 (off), 15, 30, or 60. The gamescope frame limiter used to be a fancy thing that would withhold buffers to minimize latency, but apparently xwayland caused problems with this and it got nuked. The new frame limiter does a simpler thing whereby it sends a (wayland) frame callback either every vblank (limiter set to either 0 or 60), or every other vblank (30), or every fourth (15). Note that the behavior of gamescope with regard to sending callbacks is the same whether the limiter is disabled or if it's set to the refresh rate (60). Also, this only works when games use vsync (a FIFO presentation mode in Vulkan, or a swap interval of 1 in OpenGL), which leads to:

When gamescope detects a change to the GAMESCOPE_FPS_LIMIT xprop, it writes out a value to a /tmp/gamescope-limiter.XXXXXXXXX file (set by the GAMESCOPE_LIMITER_FILE environment variable). The value is 0x00000000 if the frame limiter is disabled (GAMESCOPE_FPS_LIMIT=0) only, otherwise it is set to 0x00000001. Apparently, the Deck also ships with modified version of Mesa that effectively forces vsync when this value is 1, i.e., when the frame limiter is set at all even to the refresh rate, which makes sense since that's the only way this frame limiter implementation would work. As far as I can tell, the modified version of Mesa isn't open source? At least, I couldn't find the sources for it (not here or here). I'd assume this is an oversight? I mean, there's no reason gamescope has to be open-source either.

So, to summarize: frame limiter off" and in-game vsync off results in an uncapped frame rate. Turning the frame limiter on forces in-game vsync. Now, if you enable vsync in game, it shouldn't matter if the frame limiter is off or set to the refresh rate (60), everything else should behave the same.

How does this effect input latency? In Vulkan, "vsync" means to use a FIFO presentation mode and there's a queue (swapchain) of render buffers used for this. I didn't look too deeply at this, but the RADV driver might require a minimum of four buffers which would easily explain the increased latency over running uncapped (mailbox presentation mode--grab the latest rendered frame before scanout). One thing I've seen is the claim that using in-game vsync results in lower input latency than using the 60 Hz frame limiter, but the behavior of gamescope doesn't support this--they should be identical. That said, if the game has an internal frame limiter, turning that on, vsync off, and Performance-overlay frame limiter off, should have lower input latency.

What about screen tearing? The other main reason for turning vsync on in games (in Windows I guess) is to avoid screen tearing. Right now, the way gamescope commits frames to the kernel they won't tear regardless of vsync/frame limiting/running uncapped, etc. Recently, support was added to gamescope for asynchronous flips which could result in screen tearing as a trade for low latency, but this requires setting a GAMESCOPE_ALLOW_TEARING xprop and hasn't even hit the stable/beta branches yet. I assume if Valve decides to enable support for this it will be a toggle on the Performance overlay.

So one other thing: I started looking into this after reading claims that the frame limiter causes issues with emulators, specifically Dolphin. Normally I run emulators with vsync off since they're going to be frame capped to the emulated GPU/PPU rate anyways, but I don't think the frame limiter even works on Dolphin unless you enable vsync in the emulator. Again, without the Mesa code I can't confirm, but I think the patch to force vsync is only applied to render surfaces in the "main" window of the game, and Dolphin uses a secondary window for this. If you turn vsync off in Dolphin, you'll see that the frame limiter doesn't do anyhting.

i have no idea what this means. should i add it to op?

Mescal
Jul 23, 2005

Rupert Buttermilk posted:

My deck has entered :canada:, from Indiana to Mirabel airport.

Le :toot:

Je suis tres heureux!

when'd you pay for it?

Mescal
Jul 23, 2005

can the person who was posting long technical dives give a few bullet points for practical tips for the OP

Mescal
Jul 23, 2005

Nate RFB posted:

Having gone through it recently whenever you have settings not sticking it's almost certainly because you haven't saved them in whatever labyrinthine method that Retroarch wants you to. I'm sure a degree of this is overkill but it's what got it working consistently for me:
1). In RA's Settings->Configuration, make sure the two Save settings and Use Global Core Options File are On.
2). After doing anything else in these menus before jumping into a core (such as setting up hot keys under "Input"), go into Main Menu->Configuration File and "Save New Configuration". For whatever reason Current seems to fail to write. At this point what you've set up should stick (I hope!!).
3). Now launch a game in a core, and then go to that core's menu. With the except of any Controller Remaps or Shaders, any settings you change in the core should then be able to saved by going into Overrides at the bottom and doing both "Save Core Overrides" and "Save Content Directory Overrides".
4). With per-Core Controller Remaps and Shaders, those have their own saving menus that you'll want to save (same "Save Core" and "Save Content Directory" options for shaders, and "Manage Remap Files" for Controllers). After saving there, it's back to step 3 to save the Overrides again.

Speaking of hot keys, something I ran into that I couldn't find a more elegant way to solve is that there doesn't seem to be a way to "clear" a hotkey so that it's not assigned to a controller button. I basically could only just sacrifice a button that I hopefully wouldn't need otherwise. On a PC all of this is easily solved if it really came to it by just editing the .cfg file manually but obviously it's a bit more of a howtodo on the Deck. If you go into desktop mode and navigate to /home/.var/app/org.libretro.Retroarch/config/retrorarch you can then edit the .cfg files to your heart's content, which for me was finding the appropriate hotkey I wanted fully unassigned and changing it to "nul".

not being able to clear hotkeys on 3DS is loving maddening. not being able to clear them on a TV without a keyboard was also maddening.

Mescal
Jul 23, 2005

Shaman Tank Spec posted:

Has anyone played Darkest Dungeon II from EGS on the Deck? People on Reddit are claiming it works "really well" but I haven't found a way to make it work with a gamepad or anything, so basically I have to play it with touch pad mouse and by mapping WASD onto the keypad, which is ... doable, but a drat distance from "really well".

darkest dungeon I has poo poo controller support, i doubt they're doing a hell of a lot better for steam deck controls in the sequel

Mescal
Jul 23, 2005

what are the delivery protocols with their canadian fedex or whatev? I'm in an apartment building and i'm worried they'll dump it in the lobby or in front of the door. i might even be gone for thanksgiving when they come. please tell me they require a signature from someone in the household... i know i can't trust the people in this building, residents or management, to not take a nice looking box.

Mescal
Jul 23, 2005

The Gunslinger posted:

Fedex left mine on the porch, no signature/etc. It's been that way with all of them ever since COVID, I can't even remember the last time I had a signature door knocker. It's in a weird looking brown outer box that was totally unlabeled except for the california battery warning. I wouldn't sweat it too much, get a relative/friend to grab it for you if you're going to be gone.

so what, there's basically no way to get delivery instructions to them since it's an outside party shipping and valve doesn't really have anything for customer support?

i can't just have somebody swing by sometime that day, i'll have to be there. this apartment has been burgled twice this year. a tasty package won't be sitting around for long.

Mescal
Jul 23, 2005

The Gunslinger posted:

Yes basically, sorry dude. You're probably nowhere near me otherwise I would offer to go pick it up for you. The date Fedex gives you was pretty accurate in my case so at least you can try to make arrangements with work/etc. Maybe the protocol is different for apartment buildings, who knows.

it will be a bummer if i have to skip thanksgiving to wait on my gizmo

MockingQuantum posted:

How does Nintendo DS/3DS emulation work on the Deck? Do you have to have a hotkey to switch between screens or something like that?

if you have extra money you should get a 3ds before they get too expensive. hack it. i'm not getting rid of mine; it's a much better device for retro nintendo emulation.

Adbot
ADBOT LOVES YOU

Mescal
Jul 23, 2005

Suburban Dad posted:

Boilr needs added to the OP. It's great to make your non-steam games not look like 2nd class citizens. It will allow you to import logos and box art from steamgriddb and makes it nearly effortless. It's in the discover store and pretty easy to get setup and use. Here's the short video for how to set it up.

https://www.youtube.com/watch?v=a3SA-fOs0H4

added!

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply