this post was submitted on 21 May 2024
48 points (98.0% liked)

Steam Deck

14843 readers
136 users here now

A place to discuss and support all things Steam Deck.

Replacement for r/steamdeck_linux.

As Lemmy doesn't have flairs yet, you can use these prefixes to indicate what type of post you have made, eg:
[Flair] My post title

The following is a list of suggested flairs:
[Discussion] - General discussion.
[Help] - A request for help or support.
[News] - News about the deck.
[PSA] - Sharing important information.
[Game] - News / info about a game on the deck.
[Update] - An update to a previous post.
[Meta] - Discussion about this community.

Some more Steam Deck specific flairs:
[Boot Screen] - Custom boot screens/videos.
[Selling] - If you are selling your deck.

These are not enforced, but they are encouraged.

Rules:

Link to our Matrix Space

founded 3 years ago
MODERATORS
 

I have unfortunately not been able to figure out how to load controller configurations that I have shared to steam into games that weren’t the original game I made that controller config in. I click on the controller layout and it fails to load and reverts back to the layout I already had selected.

My recommendation (cobbled together from recommendations from others) for getting around this is adding the file manager "Dolphin" (steam deck already has it) as a non-steam game to steam as well as “Corehunt” (which you have to download from Discover, it is made by the same people that made CoreKeyboard). Or you can just use Dolphin and Corehunt in desktop mode.

https://flathub.org/apps/org.cubocore.CoreHunt

https://gitlab.com/cubocore/coreapps/corehunt

(you already have Dolphin)

Before I start, if y'all have a better way feel free to chime in and show me the light :P.

——

Go to the game you want to copy a controller layout into. Edit one of the default controller layouts, make a random change to it, rename the controller layout to a unique name like TARGET_game then export the file as a personal save (or a personal shareable save I can’t remember which).

———

In Corehunt, search for the file, Corehunt should find the file fairly quickly (it is muchhhh faster, fuzzier and more thorough than the other file search programs I have used on the Steam Deck so far). Note the file path.

———-

If needed, also search the name of the controller layout you want to copy into the game (name that layout something you can search for easily too).

————-

Navigate to the file path for your controller layout you want to copy, click split view in dolphin and then open up the controller layout for the game you want to copy the controller layout into (that contains your “Target_game” file) and… drag and drop copy!

————

Done! Now when you go to browse layouts for your new game, the layout from your old game will show up and be loadable.

Note… you can also look up your steam deck’s file path to controller layouts in a guide or documentation but the filepath is really annoying and one of the folder steps is your steam user-id… so I actually think this explanation is much more concise and easy to do. Just let Corehunt find the folder location for you and then pin it to Dolphin’s sidebar so you can quickly jump to it again.

Steam games should name themselves according to the name you have in Steam, but sometimes the folder name is a number (the steam game’s id number or something).


top 14 comments
sorted by: hot top controversial new old
[–] DualPad@lemmy.one 8 points 5 months ago (1 children)

Simplest way I think is saving the controller layout as a template and then you should be available to see in all games when you go to templates.

I do this for the Steam Controller where I saved a general template to use across games so I don't need to reconfigure every single part from scratch.

[–] supersquirrel@sopuli.xyz 1 points 5 months ago (1 children)

I can see it in all the games but when I try to load the template it just fails to load. The UI makes it look like it is going to switch to a different layout for a second but then it fails to and reverts to the layout you are currently on. I am wondering if it is a weird permissions error in linux or something.

[–] DualPad@lemmy.one 1 points 5 months ago* (last edited 5 months ago) (1 children)

Do you encounter the same issue in desktop mode too?

I tried it on my steam deck and was able to apply my custom template to another game in the normal Steam Deck mode so I wonder if maybe the config is corrupted? Maybe make a simple test config template to check out if it applies to other games is worth trying before making your main config from scratch again.

[–] supersquirrel@sopuli.xyz 1 points 5 months ago

Do you encounter the same issue in desktop mode too? I feel like I have encountered the issue while in desktop mode but I am fuzzy on it, I will try. At any rate I find it really annoying to go into desktop mode if I don't have too. The Steam Deck takes awhile to switch and sometimes it just gets hung up for me when switching for some reason.

[–] klangcola@reddthat.com 2 points 5 months ago

Good explanation! And thanks for the CoreHunt suggestion :)

[–] saintshenanigans@programming.dev 2 points 5 months ago (1 children)

I was going to build a simple profile manager program to help do this, but never got around to doing it. If anyone else wants to steal it, my idea was:

Steam stores a single file holding each controller layout, it was going to be very jank because directly editing those files is tricky and could break things. Instead, the idea was that you would create a profile in steam's interface as your default or desktop layout, and then my program would take that layout and back up the file as a different name, then when you wanted to swap between them the program would simply rename the files, all with a barebones ui maybe just displaying the profile names. Would work out of a console window if it weren't for no keyboard lol

[–] supersquirrel@sopuli.xyz 1 points 5 months ago

Yeah, that seems like it would be nice.

Honestly, this process is so annoying that I am also considering just sharing from my Steam Deck a Syncthing folder with the controller layout to my phone running Syncthing. Then every time I want to copy a controller layout to a new folder I could pull out my phone, create a new folder pointing to the folder shared from the Steam Deck containing the layout in question, and set the folder to "send only" (so edits are propagated back up, I edit the original controller layout file and let the edits propagate) and then share with my Steam Deck.

It is basically the equivalent of mailing something to yourself, but I think it might actually be less of an annoyance than any of the other methods I have found (save for the one above, but the Syncthing method still might be faster) and I already use the shit out of Syncthing so I wouldn't need to learn anything new.

Hopefully one day soon Valve will fix this weird messed up state of affairs.

Also, I wonder if you copied the controller layout and ran some kind of batch file copying command that placed the controller layout in every single subfolder of the config folder if that would be a good solution. This might be the easiest way to distribute your basic control scheme that you like to all your games (who cares if it is an option on games that it isn't needed for). I don't know how to do that though.

[–] Nima@leminal.space 2 points 5 months ago (1 children)

I went ahead and saved this post cause I might need it again later. thank you so much for this.

[–] supersquirrel@sopuli.xyz 2 points 5 months ago* (last edited 5 months ago) (1 children)

Hell yeah, it was a pretty big headache and buzzkill for me having to fumble around making an entirely new layout for every new game when I knew I already had one for another game that was perfect.

I hope it helps you get on your steam deck more and have even more fun!

[–] Nima@leminal.space 2 points 5 months ago* (last edited 5 months ago) (1 children)

gods, I know what you mean. I named my most recent layout "Ugh" out of frustration for it not working well.

thank you so much again!

edit: a comma =P

[–] supersquirrel@sopuli.xyz 2 points 5 months ago

gods I know what you mean.

Wait... how the hell did you figure out I am just a couple of mischievous gods in a trench coat and not in fact an adult human?

I totally agree though.

[–] supersquirrel@sopuli.xyz 1 points 5 months ago* (last edited 5 months ago)

Some more info on the Csuite core apps like corekeyboard and corehunt.

quoted explanation of rationale behind Csuite


“In an era marked by the rise of low-power, touch based devices, the incorporation of Linux into such platforms has become an equally inescapable trend like Steam Deck, Raspberry Pi. While KDE, GNOME, and other desktop environment (DE) apps flourish, predominantly catering to high-performance personal devices such as laptops and desktops, a void persists in the realm of lower-end, touch-based counterparts that offer a good user interface while using less resource. Stepping into this void is the CoreApps Application suite, in short CSuite, made by CuboCore Group. Every facet of our suite has been thoughtfully engineered to address the unique demands of the lower-resource, touch based landscape.

All of our apps are designed to be touch-friendly, catering to devices such as the Steam Deck, Linux phones, and tablets. We are actively working on ensuring this compatibility.

Our apps are optimized to run on low-resource devices like Raspberry Pi, even in the absence of hardware acceleration.

Our apps are lightweight, with minimal dependencies, efficient RAM and CPU usage. Bookmark support across all CSuite apps and system apps centralizes your important files, allowing you to access them from one unified app.

Our apps make effective use of vertical screen real estate, displaying essential information and prioritizing user-relevant content in the limited screen size.

The Recent Activities feature in the CSuite apps displays all opened apps alongside their corresponding files. Double-clicking restores the app along with the previously worked-on file.

We adhere to C++17 coding standards, ensuring clean and tested code in the latest release of the Qt framework.”

https://cubocore.gitlab.io/coreapps.html

[–] zelmon64@compuverse.uk 1 points 5 months ago (1 children)

Another method is to save the config as a template. The whole situation is so frustrating because before the switch to the Deck UI there was another tab which listed your configs for other games. I hope they bring that tab back at some point!

[–] supersquirrel@sopuli.xyz 1 points 5 months ago

I kind of just want an automated process to copy a desktop folder of my most common keybindings to every single damn folder in the config folder. They are just text files, who cares. It shouldn’t be this frustrating lol.