How do I export my game to Steam Deck using Linux(CEF)?

Not favoritedFavorited Favorited 1 favourites
  • 1 posts
From the Asset Store
HTML5 Game Bundle (7 Games) – Created with Construct 3
  • I only have experience with the NW.js export option, but I want to expand to the latest and greatest Linux exporter, even if only for the Lin64 build of my game, because one of my games is big, 4GB, so it often results in a gray "NW.JS" screen on Steam Deck, requiring me to restart the console and run the game again to usually fix it, which I'm sure results in a higher customer refund count, so I figure getting rid of NW.js gets rid of the NW.js screen, so I want to use the Linux(CEF) exporter instead.

    There might be an up-to-date guide I'm unaware of for this. What are currently the best steps for this? I only need Achievements to work, I don't do anything with things like leaderboards or DLC. I have all my Achievements input using the 'Greenworks' plugin v1.0.60.0, but it even says that's for 'Accessing the Steamworks API from NW.js', so I'm guessing I need to search for and duplicate all Achievements in my project to also be triggered thru the latest 'Steamworks' plugin. But first I need to figure out how to not just get a black screen on Steam Deck.

    What else do I need to know or do to not just give me a black screen on Screen Deck? I read these two pages:

    construct.net/en/tutorials/exporting-linux-steam-deck-3155

    construct.net/en/make-games/addons/1105/steamworks/documentation

    Are there any steps missing? (Note I don't know what to set the Project ID to in C3 so I just give it whatever looks nice, like "com.company.game".) I set the Linux export to x64 and 'startup full screen'. I extract the resulting zip's x64 folder. I don't make any changes or additions to the contents, other than just one try with the steam_appid.txt containing the app ID being included in the x64 root folder. (unlike back with NW.js in which I added greenworks nodes as well as files called libsteam_api.so and libsdkencryptedappticket.so to the root folder, lib folder, and package zip.) I upload the x64 path to Steam the usual way (I use the SteamPipe Build Uploader), publish, download on Steam Deck, hit play, get a black screen. Note I'm trying this with a smaller 1GB game that's not fully out yet, not yet my big 4GB one.

    What step am I missing? Thanks

    UPDATE: I did it! Unexpectedly, the problem was just the "Greengrinds" addon. Despite its popularity on the addons page, it results in a black screen upon loading the game! Deleting it from my project allowed my game to run on Steam Deck. In case this is a variable regarding the Greengrinds plugin, I also have these addons in my project: Greenworks, Steamworks, SteamworksPlus. So it's possible that Greengrinds only causes a black screen at startup when one of those are included as well. I removed Greengrinds from my addon manager so this never happens again. Thanks! I'm going to test Achievements next, thru the Steamworks addon.

    UPDATE 2: Attempting to unlock an existing Achievement thru the Steamworks addon on Steam Deck crashes the game? Is this a known issue or am I doing something wrong? UPDATE: It worked when I tried again! Although all I did was change the Achievement test to being if I hit Y instead of just at the start of the layout, and as a result had to do another export process again, so unsure what caused the crash before or what fixed it in this attempt. Now, so far so good with exporting via Linux(CEF) and Achievements via Steamworks addon. Next will eventually be to try it all on my 4GB game and hope no issues. Though I notice this results in a new game save, but better to do while the game is younger.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
Jump to:
Active Users
There are 0 visitors browsing this topic (0 users and 0 guests)