CrossCode

CrossCode

View Stats:
cambot11 Apr 10 @ 11:49am
2
1
Steam Deck controller mapping problem, cause and possible solution
After trying to play on my Steam Deck and discovering the incorrect controller mapping makes it impossible, I started looking into the problem and possible solutions.

The game engine is based off of https://github.com/nwjs/nw.js which uses Chromium. There was a recent patch [chromiumdash.appspot.com] to Chromium to allow the Steam Deck controls to work properly. Obviously the nw.js version used by the game isn't going always be the absolute latest one and so won't have fixes like this.

What I have done is to download from the nw.js website the latest stable version, v0.63.0[dl.nwjs.io], which uses a new enough Chromium version, extract it, and overwrite the files in the CrossCode directory. Then I renamed the nw executable to CrossCode. I only played for a few minutes but the controls seem to work properly now.

Hope this helps someone

Edit:
If you are using a non-Steam version like from itch.io and want to run it through steam, it seems deleting steam_appid.txt from the game folder is necessary in addition to the above.

Edit (April 27 2022):
Originally posted by Mershl:
Another Linux patch came out today. No blog post so far. Here is the diff: https://steamdb.info/patchnotes/8631542/

I just updated, clicked "Verify integrity of game files" from the properties to make sure it was using the new official stuff, and played for a minute.

Dear future readers, this work around is no longer necessary as I can confirm it works on Steam Deck. Also my PS4 controller over bluetooth now has the correct mapping on my Linux desktop.
Last edited by cambot11; Apr 27 @ 11:03am
< >
Showing 1-15 of 21 comments
cambot11 Apr 10 @ 4:17pm 
This has also fixed the mapping of my PS4 controller when used over bluetooth on Linux. When connected over USB it has always worked and that it is what I used for several playthroughs.
Stalfos Apr 11 @ 12:05am 
Can confirm this worked on my Steam Deck, too. Thanks!
Hibachi Apr 11 @ 1:10am 
Holy crap, it works.
I tried some stuff with control schemes but it generally ended up with the game crashing real fast.

Hopefully, this solution doesn't break the game elsewhere. Anyway, thanks a lot.
Arokan Apr 12 @ 3:09pm 
Wow, that indeed fixed the controller-issue for me on Debian11.
Alas, now it's only shown 1/4 of the screen :D
pv2b Apr 13 @ 4:17am 
This doesn't work for me, unfortunately. Before applying this fix, the game launched from Gaming Mode but the controls were not working correctly. After applying this fix, the game seems to launch "in the background" when launching it from the gaming mode. I only see the spinning Steam Logo and I hear the title screen music in the background, but the game doesn't show up on screen.

The game launches if I try from desktop mode, but then it seems to be using keyboard emulation.

I should probably add that I own this game off steam, so I'm launching it as a "non-Steam game", not sure if that's true for you.
Last edited by pv2b; Apr 13 @ 4:17am
cambot11 Apr 13 @ 9:20am 
Originally posted by pv2b:
I should probably add that I own this game off steam, so I'm launching it as a "non-Steam game", not sure if that's true for you.

I only tried the Steam version so I can't speak to running other versions
Hibachi Apr 13 @ 9:31am 
Originally posted by pv2b:
I should probably add that I own this game off steam, so I'm launching it as a "non-Steam game", not sure if that's true for you.

I've also only been launching it via Steam. Not sure how the compatibility layer works on the deck for non-steam games.

It might be because you have skip a step tho.
Did you make sure to overwrite all engine files and rename "nw" to "CrossCode" ? (keeping the old Crosscode executable file as a backup by renaming it for example).
Ikrym Apr 13 @ 9:37am 
Hey, I tried this method and...it worked! Thank you so much!

As a side note, the desktop mode works very well. I hadn't used it in more than a month, but I remember it was a lot clunkier and you couldn't even pull up the virtual keyboard. Works much better now.
pv2b Apr 13 @ 9:59am 
Originally posted by Hibachi:
Originally posted by pv2b:
I should probably add that I own this game off steam, so I'm launching it as a "non-Steam game", not sure if that's true for you.

I've also only been launching it via Steam. Not sure how the compatibility layer works on the deck for non-steam games.

It might be because you have skip a step tho.
Did you make sure to overwrite all engine files and rename "nw" to "CrossCode" ? (keeping the old Crosscode executable file as a backup by renaming it for example).

Yes, I did everything. However!

It seems that renaming the steam_appid.txt file was the final step needed to get the game running correctly :-) I think this is because steam gets confused about it being a steam vs non-steam game and doesn't find the window correctly or something. Not sure, but that works for me
cambot11 Apr 13 @ 10:16am 
Originally posted by pv2b:
Originally posted by Hibachi:

I've also only been launching it via Steam. Not sure how the compatibility layer works on the deck for non-steam games.

It might be because you have skip a step tho.
Did you make sure to overwrite all engine files and rename "nw" to "CrossCode" ? (keeping the old Crosscode executable file as a backup by renaming it for example).

Yes, I did everything. However!

It seems that renaming the steam_appid.txt file was the final step needed to get the game running correctly :-) I think this is because steam gets confused about it being a steam vs non-steam game and doesn't find the window correctly or something. Not sure, but that works for me

I was just about to suggest deleting that file. They really shouldn't put that in builds that are distributed outside Steam. That is for when you start Steam games from outside the client so it can know they are running and handle various Steam specific functionality.

I guess I don't need to finish setting up the itch.io version for testing since you got the game working
Last edited by cambot11; Apr 13 @ 10:17am
Hibachi Apr 13 @ 8:40pm 
Originally posted by pv2b:
It seems that renaming the steam_appid.txt file was the final step needed to get the game running correctly :-) I think this is because steam gets confused about it being a steam vs non-steam game and doesn't find the window correctly or something. Not sure, but that works for me

Well, that's good news :)

Originally posted by cambot11:
I was just about to suggest deleting that file. They really shouldn't put that in builds that are distributed outside Steam. That is for when you start Steam games from outside the client so it can know they are running and handle various Steam specific functionality.

Maybe it'd be great to have that tidbit in your OP post then now that we know it causes issues.
cambot11 Apr 13 @ 9:32pm 
Originally posted by Hibachi:
Originally posted by pv2b:
It seems that renaming the steam_appid.txt file was the final step needed to get the game running correctly :-) I think this is because steam gets confused about it being a steam vs non-steam game and doesn't find the window correctly or something. Not sure, but that works for me

Well, that's good news :)

Originally posted by cambot11:
I was just about to suggest deleting that file. They really shouldn't put that in builds that are distributed outside Steam. That is for when you start Steam games from outside the client so it can know they are running and handle various Steam specific functionality.

Maybe it'd be great to have that tidbit in your OP post then now that we know it causes issues.

Good idea, I added an edit
This worked perfectly even on my post DLC save file. It runs soooooo much better than running it through Proton compatibility. Thank you so much for sharing!
Worked on Ubuntu, thanks for sharing.
< >
Showing 1-15 of 21 comments
Per page: 1530 50