“Are you struggling with getting your Steam achievements to unlock on the Linux-native version of CrossCode? Look no further! This guide will walk you through the simple steps of upgrading your NW.js, which will also solve the achievement issue. Let’s get started!”
Introduction
For the purposes of this guide, I will show you how to upgrade to Greenworks version 0.79.0 which uses the following versions:
- NW.js: 0.79.0
- Steamworks SDK: 1.50
Changing to other versions of Greenworks should be possible using the same steps. This guide uses NW.js version 0.79.0 because versions newer than that (required by newer versions of Greenworks) would simply crash the game at startup on my PC.
Note: This guide has only been tested on my PC which runs ArchLinux with an AMD GPU.
Note 2: All links in this guide are directed to the official websites of the libraries used. If there is a link that is incorrect, please let me know in the comments.
Upgrading Greenworks
Instructions:
- Download Greenworks 0.79.0 from here: https://www.construct.net/make-games/addons/84/greenworks/0-79-0-1121/greenworks-0.79.0-stable.c3addon
- Extract the contents of greenworks-0.79.0-stable.c3addon using any archive tool of your choice (it’s just a *.zip file).
- Inside the unzipped greenworks-0.79.0-stable folder, copy the greenworks-linux64.node file and overwrite the file with the same name in the CrossCode install:
$HOME/.local/share/Steam/steamapps/common/CrossCode/assets/modules/greenworks-nw-0.35/linux64/greenworks-linux64.node
Upgrading NW.js
Instructions:
- Download NW.js 0.79.0 from here: https://dl.nwjs.io/v0.79.0/nwjs-v0.79.0-linux-x64.tar.gz
- Extract the contents of nwjs-v0.79.1-linux-x64.tar.gz.
- Inside the extracted nwjs-v0.79.1-linux-x64 folder, copy all the files/folders and overwrite the files/folders with the same name in the CrossCode install:
$HOME/.local/share/Steam/steamapps/common/CrossCode
- Inside the CrossCode install folder, delete the CrossCode file.
- Inside the CrossCode install folder, rename the nw file (that was copied over from step 3) to CrossCode.
Upgrading the Steamworks SDK version
You will need to sign-in with your steam account to view the downloads.
Instructions:
- Download Steamworks SDK version 1.50 from here: https://partner.steamgames.com/downloads/steamworks_sdk_150.zip
- Extract the contents of steamworks_sdk_150.zip.
- Inside the extracted folder under sdk/public/steam/lib/linux64, copy the libsdkencryptedappticket.so file and overwrite the file with the same name in the CrossCode install:
$HOME/.local/share/Steam/steamapps/common/CrossCode/assets/modules/greenworks-nw-0.35/linux64/libsdkencryptedappticket.so
- Inside the extracted folder under sdk/redistributable_bin/linux64, copy the libsteam_api.so file and overwrite the file with the same name in the CrossCode install:
$HOME/.local/share/Steam/steamapps/common/CrossCode/assets/modules/greenworks-nw-0.35/linux64/libsteam_api.so
Fixing Performance
The –in-process-gpu option will need to be removed in two places.
The package.json file will need to be modified:
- Using your preferred text editor, open
$HOME/.local/share/Steam/steamapps/common/CrossCode/package.json
- On the line that says “chromium-args”, delete the text that says –in-process-gpu.
This guide uses the Steam Metadata Editor (https://github.com/tralph3/Steam-Metadata-Editor) but any other tool that accomplishes the same thing will work:
- Install Steam-Metadata-Editor. If you’re using an Arch-based distro, it is available on the AUR: https://aur.archlinux.org/packages/steam-metadata-editor-git
- Close Steam if it is running.
- Launch Steam-Metadata-Editor and search for CrossCode.
- Select CrossCode and click on Edit launch menu.
- In the new pop-up window, search for the second Launch Arguments text box and delete the text that says –in-process-gpu.
- Close the pop-up window. and click on Save.
Note: Steam will often overwrite the metadata so you will need to close Steam. re-run the Steam Metadata Editor, search for CrossCode and hit Save again whenever you notice poor performance. You can try the suggestion on the GitHub ReadMe to make it permanent: https://github.com/tralph3/Steam-Metadata-Editor?tab=readme-ov-file#silent-patching
[Optional] Enable Vulkan:
- In your Steam Library, Right click CrossCode and select Properties.
- On the General tab you’ll find Launch Options section.
- Add –use-angle=vulkan.
- Close the game’s Properties window and launch the game.
Restoring the Original Game Files
- Right click CrossCode in your Library.
- From the drop down menu, select Properties…
- Select the Installed Files tab and click the Verify integrity of game files button.
And that wraps up our share on CrossCode: [Linux-Native Version] How To Upgrade NW.js (and Fix Achievements). If you have any additional insights or tips to contribute, don’t hesitate to drop a comment below. For a more in-depth read, you can refer to the original article here by Nemecyst, who deserves all the credit. Happy gaming!