This guide assumes that you will be running your game through Proton (bought on Steam) and are using Ubuntu 22.04. This is likely to work on most Linux distributions. The paths given are assuming Need for Speed Heat. To use another game, you will need to know the name of the game folder and gameid (this can be seen in the URL on the store page for the game). It will also likely require alternative scripts for execution and setting up the mod folder
| Steam ID | Title | DRM | Frosty | Proton |
|---|---|---|---|---|
| 1222680 | Need for Speed Heat | Origin | 1.0.6.1 Editor 1.0.6.2 Mod Manager |
GE v7-55 |
- Basic commandline knowledge
- Familiarity with Linux paths
- Familiarity with launching games through Steam
- Download and run your game though Proton at least once to verify it works without modification. You will need to either enable the Compatibility settings under "Properties..." (Proton Experimental, etc) or enable "Steam Play for all titles" globally in your Steam settings. Find the path of your game folder as it will be useful in several steps. By default, this will be
$HOME/.steam/steam/steamapps/common/Need for Speed Heat/. On an external drive, this will be elsewhere - Find the location of the
compatdatafolder for this game. By default, this is$HOME/.steam/steam/steamapps/compatdata/1222680/. On an external drive, this will be elsewhere - Download and extract the latest release of Frosty Editor/Mod Manager to an empty folder. The location of this is not particularly important, but it is a good idea to not put it in your game folder. Keep a note of this location for the next step
- Download the latest Release - do not extract this yet
This step seemed to be required for the Frosty Editor to open as expected
- Open Steam and, at the bottom, click "Add a game" > "Add a Non-Steam Game..."
- Click "Browse..."
- At the bottom of the dialog, change the "File Type" to "All Files"
- Find and select the extracted Frosty executable, either "FrostyEditor.exe" or "FrostyModManager.exe"
- Click "Open"
- Open your Steam Library and find this new entry
- Right click this entry, and open "Properties..."
- It is likely a good idea to rename this Shortcut: in the textbox at the top, change the "*.exe" text to something more suitable
- Under Shortcut, paste the following into the "Launch Options" textbox - if using an external drive, this will need to be altered to your custom path:
STEAM_COMPAT_DATA_PATH="$HOME/.steam/steam/steamapps/compatdata/1222680/" %command%. You cannot use tilde (~) in the Steam launch settings, but you can use environment variables. - Under Compatibility, enable "Force the use of a specific Steam Play compatibility tool". Select the same Proton version as your game
- Close the Properties dialog
In the game folder, run the following command in the terminal:
By default, the [profile_name] will be "Editor" (FrostyEditor) or "Default" (FrostyModManager) - you will need to know your Profile name ahead of time
mkdir -p ModData ModData/[profile_name]/patch ModData/[profile_name]/data
You can also create these in a File Explorer, with the tree looking like:
ModData
┗ [profile_name]
┣ data
┗ patch
- "Play" the Frosty Non-Steam game from your Steam Library
- If you attempt to "Scan for games", you will likely crash
- At the bottom, click "New"
- Find your game executable ("NeedForSpeedHeat.exe") from the path noted in the prerequisites, you can follow a UNIX-style path from the
Z:\drive letter, or on an external drive, you can find the root of it on one of the other drive letters - Select this new entry and click "Select", wait for the cache to build
- Load a single mod into your profile (you can add more later) and Save (if in the Editor)
- At the top of the window, click "Launch"
- Once the dialog at the centre of the screen disappears, close Frosty
- In Steam in the Library tab, "Stop" the Frosty Non-Steam game
- If the game attempts to launch, stop it from the Library too
- In Steam, under the Library tab, right click the game and open "Properties..."
- Under "Launch Options", paste the following into the textbox:
WINEDLLOVERRIDES="bcrypt=n,b" %command% - Extract the contents of the downloaded release of this repo (
~/Downloads/FrostyLinux.tar.gz) to your game folder ($HOME/.steam/steam/steamapps/common/Need for Speed Heat/). The game folder will be elsewhere if installed on an external drive - In the game folder, rename your game's executable by prepending "original_":
NeedForSpeedHeat.exe->original_NeedForSpeedHeat.exe - Rename
shim.exeto the name that your game's executable had previously:shim.exe->NeedForSpeedHeat.exe - Open the
setup_linuxmod*.shscript in a text editor - Change the variable
FROSTY_PROFILE_PATH="ModData/Editor"to the path of your profile. If you are using the Editor, you don't need to change this. If not, for example:FROSTY_PROFILE_PATH="ModData/Default"will be the default profile in the Mod Manager. This is case-sensitive - Save
- Run the
setup_linuxmod*.shscript:./setup_linuxmod_nfs-heat.sh. The working directory should not matter as the scriptcds to the correct folder - "Play" the game from Steam and cross your fingers :)
- "Play" Frosty from Steam
- Change the loaded mods in your Profile
- Click the "Launch" button at the top of the window - after applying the mods, Frosty will crash as it does not have permission to delete
bcrypt.dll. This is fine :) - From the game folder, execute
./setup_linuxmod*.shas done previously - "Play" your game from Steam
Try a different Proton version, or a version of Proton GE. The latest 3 major versions are likely to give the best results, otherwise try experimental
Source for allowing continued use of Origin (Works June 2023)
- Download OriginSetup-10.5.119.52718.exe - Archive Link (Use caution)
- Set the
STEAM_COMPAT_DATA_PATHandWINEPREFIXto your version, then execute the install as shown below:
export STEAM_COMPAT_DATA_PATH="$HOME/.steam/steam/steamapps/compatdata/1222680/"
export WINEPREFIX="$HOME/.steam/steam/steamapps/compatdata/1222680/pfx"
export STEAM_COMPAT_CLIENT_INSTALL_PATH="$HOME/.steam/steam"
#these 2 paths may be different if you use another Proton runtime or use a different downloads folder
~/.steam/steam/steamapps/common/Proton\ -\ Experimental/proton run ~/Downloads/https://taskinoz.com/origin/-
Before running the game, open
$HOME/.steam/steam/steamapps/compatdata/1222680/pfx/drive_c/ProgramData/Origin/local.xmlfor editing (this is the equivalent ofC:\ProgramData\Origin\local.xml)Alter it to by adding the following 4 lines above the
</Settings>line as shown:
...
<Setting value="true" key="MigrationDisabled" type="1"/>
<Setting key="UpdateURL" value="http://not.real/" type="10"/>
<Setting key="AutoPatchGlobal" value="false" type="1"/>
<Setting key="AutoUpdate" value="false" type="1"/>
</Settings>- Open the Steam "Properties..." of the game
- Open to the "Controller" tab
- Change the dropdown to "Disable Steam Input"