


gamemoderun %command% -nosplash
Runs well, were able to play mods. For some reason with Proton-GE audio is more cleaner.
gamemoderun %command% -nosplash
Runs well if configured correctly (see notes). Controls surprisingly well with the right community layout.
Setting terrain detail to Very High results in stutter. Setting it to High fixes this. All other settings can be maxed out.

Mouse input is very inaccurate. I had to reduce the acceleration and speed temporarily in the X11 settings. However, looking at the steam discussions on the game, this problem seems to be present on Windows as well.
It crashed once when modyfing the terrain detail setting.
It's an old game with sometimes weird behavior. The AI sometimes gets stuck and you have to restart. And there are issues with the mouse. However, from what I could find out these issues are not specific to Linux and happen on Windows, too.
WINE_FULLSCREEN_FSR=1 %command%
You're going to have to really tinker with this game as others have mentioned on the PC side. Trying to play on the default proton version doesn't attempt anything, experimental/older versions quickly loads and crashes.
WINE_FULLSCREEN_FSR=1 %command%
Repeat about Bad Serial error as discribe other users.
Needs to generate hex code from CD key and insert line with hex to system.reg in Wine compat dir
---- script to generate hex code
echo XXXX-XXXXX-XXXXX-XXXXX-XXXXX | perl -ne 's/-//g; tr/IO/10/; for $i (0..2) { $res = 0; for $j (0..7) { $res += index("0123456789ABCDEFGHJKLMNPRSTVWXYZ", substr($_, $i * 8 + $j, 1)) << (5 * $j); }; printf("%010x", $res); }; print("\n");'
--- system.reg find "main"= and insert line with hex code
"main"=...
"KEY"=hex:ff,ff,ff,ff,ff,ff,ff,ff,ff,ff,ff,ff,ff,ff,ff
"Mouse" is very quick, slowing down is not fully done.
Played with Proton 5.13-6
I got the error "Bad serial number given in Setup", so I have followed MKZY guide below. with few tweaks. My file is located here:
/home/#YourUserName#/.steam/debian-installation/steamapps/compatdata/65790/pfx/system.reg
Go to line 65614, to find the below:
[Software\Wow6432Node\bohemia interactive studio\coldwarassault] 1624484785
"main"="Z:\home\#YourUserName#\.steam\debian-installation\steamapps\common\ARMA Cold War Assault"
To be changed into: (with the right values)
[Software\Wow6432Node\bohemia interactive studio\coldwarassault] 1624484785
"KEY"=hex:01,02,03,04,05,06,07,08,09,1a,af,b3,4d,5e,f6
"main"="Z:\home\#YourUserName#\.steam\debian-installation\steamapps\common\ARMA Cold War Assault"
I did a complete reinstall and noted that the file info for the hex CD-key was wrong. This is how it should look like when you are done, just add your hex key as a new line at the end (this is a fake example code), for me this is line 6-9 in the document. Sorry for the mess
[Software\bohemia interactive studio\coldwarassault] 1622410739 #time=1d7559c338d59b6 "main"="Z:\home\#YourUserName#\.steam\steamapps\common\ARMA Cold War Assault" "KEY"=hex:01,02,03,04,05,06,07,08,09,1a,af,b3,4d,5e,f6
In order to start the game you need to enter your serial key manually. This has been described below, but here is a guide:
Install the game
Find the file containing the CD-key in the folder (note change #YourUserName# if you copy-paste):
/home/#YourUserName#/.steam/steamapps/compatdata/65790/pfx
The file is named system.reg Note that the .steam/ folder is hidden, so make sure you've enabled "show hidden files" if your looking for it via your file explorer
Open the file, and search (CTRL + f in most programs) for "KEY"=hex: you'll need to enter the CD-key after =hex: If you can't search, mine was at line 59864, under [Software\Wow6432Node\bohemia interactive studio\coldwarassault]
In order to enter your CD-key first get it, right click Arma: Cold War Assault in your Steam Library, select Manage, then CD-keys
Unfortunately, you'll need to convert (and encrypt?) the CD-key into hex numbers before you can enter them: do this via opening your terminal (CTRL + ALT + t on Ubuntu) and copy the line below, enter it into the terminal (right mouse click on the terminal and select paste), replace the XXXXX part with your CD-key:
echo XXXX-XXXXX-XXXXX-XXXXX-XXXXX | perl -ne 's/-//g; tr/IO/10/; for $i (0..2) { $res = 0; for $j (0..7) { $res += index("0123456789ABCDEFGHJKLMNPRSTVWXYZ", substr($_, $i * 8 + $j, 1)) << (5 * $j); }; printf("%010x", $res); }; print("\n");'
Press enter to run it. This is a Perl script converting your serial into a 30 character long sequence of numbers and the letters a-f. Copy these from the terminal and paste after "KEY"=hex: then add a comma after every other character, dividing them into pairs so they look like this (fake) example:
"KEY"=hex:01,02,03,04,05,06,07,08,09,1a,af,b3,4d,5e,f6
- Save the file and start your game normally via Steam. Enjoy!
"Bad serial given in setup."

Tells me "Bad serial number given in Setup"
I don't believe them
Error on launch: "Bad serial given in setup"

Bad serial given in setup
It seems they changed something again. The previous instruction doesn't work for me because the path the game is installed to was changed. There's no .../65790/pfx/system.reg anymore and I don't know what to do. Does anyone have an updated instruction?

Issue: "Bad serial number given in setup". I found the solution here: https://github.com/ValveSoftware/Proton/issues/767#issuecomment-508957522
Execute in the terminal by entering your game key (24 characters): echo 1234-56789-ABCDE-FGHIJ-KLMNO | perl -ne 's/-//g; tr/IO/10/; for $i (0..2) { $res = 0; for $j (0..7) { $res += index("0123456789ABCDEFGHJKLMNPRSTVWXYZ", substr($_, $i * 8 + $j, 1)) << (5 * $j); }; printf("%010x", $res); }; print("\n");'
The output should be 15 pairs of characters, which will be the required key. Now you need to add them to the prefix Registry file. He is here: ./SteamLibrary/steamapps/compatdata/65790/pfx/system.reg
In the file you need to find the line: [Software\Wow6432Node\bohemia interactive studio\coldwarassault]
After that line add a line with the generated key of 15 pairs of characters: "KEY"=hex:ff,ff,ff,ff,ff,ff,ff,ff,ff,ff,ff,ff,ff,ff,ff
The game works well.

Running the Steam version, "you get "bad serial key in setup" To be perfectly honest, it is better to just run and install the game outside of Steam, setup seems to be flawless after doing this. You can download a copy of the game (ONLY DO THIS IF YOU OWN IT) from Bohemia at https://community.bistudio.com/wiki/Arma:_Cold_War_Assault Do note that a good amount of the mirrors here are dead at this point. After that, enter your CD-Key for Operation Flashpoint, or if you only own the steam version, just find it online since you technically own the software. After that, just run the installer and the game works flawlessly.


OK, so I managed to find how to convert the CD-key into a Hex-Key to put in the registry as described by another comment below.
User Gator96100 posted on https://www.unknowncheats.me/forum/arma-2-a/99874-release-multithreaded-key-checker.html a program with source code that could convert a CD-key into Hex for the ARMA series.
I did not manage to make the program run under Wine, but it worked fine on a Windows session and gave me the right key (same as an installation gave via Windows Steam, confirmed this by pasting the key in my Ubuntu ARMA Cold War Assault registry and managed to start and play without any issues)
The program is written in C#, which I have no experience in. If I can, I'll try and convert the script into something useful that can be run in the terminal on a Linux system, but I am a poor programmer. I will post the relevant part of the C# code below so others may help. Sorry for the mess, ProtonDB won't accept new lines, if it helps, get the code from the link above. CODE STARTS HERE:
using System; using System.Linq; using System.Security.Cryptography; using System.Text; using System.Windows.Forms;
public class KeyConverter {
private static readonly String szTemplate = "0123456789ABCDEFGHJKLMNPRSTVWXYZ";
public String getHexKey(String arma2key) {
var upperkey = arma2key.Trim().ToUpper().Replace('O', '0').Replace('I', '1').Replace("-", "");
var bResult = new Byte[15];
if (upperkey.Length != 24)
throw new Exception("Invalid key length");
for (var i = 0; i < 3; ++i) {
UInt64 qwResult = 0;
for (var j = 0; j < 8; ++j) {
var cChar = upperkey[i * 8 + j];
var szPos = szTemplate.IndexOf(cChar);
qwResult |= (UInt64)szPos << (j * 5);
}
for (var j = 0; j < 5; ++j) {
bResult[i * 5 + 5 - 1 - j] = (Byte)(qwResult & 0xFF);
qwResult >>= 8;
}
}
return BitConverter.ToString(bResult); ;
}


Bad serial number.


received the "Bad serial number given in setup" error as did other users. so I had to get the key from a Windows install as it is stored in hex, From a windows install I exported the key with regedit: [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\bohemia interactive studio\coldwarassault]
edited the exported file and removed the line starting with "main" you should be left with something like the below:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\bohemia interactive studio\coldwarassault]
"KEY"=hex:ff,ff,ff,ff,ff,ff,ff,ff,ff,5c,39,d0,58,ae,57
save then copy it to the c drive in the prefix the game is installed in, (you can work this out easily by opening the properties for the game in Steam, and browsing the directory under the LOCAL FILES tab) such as:
/your game library/steamapps/compatdata/XXXXX/pfx/drive_c
Open regedit for that particular wine prefix:
env WINEPREFIX="/your game library/steamapps/compatdata/XXXXX/pfx" wine regedit
select file and import the reg file from c:
after that the game launched and played fine for me but without audio, I had to change the audio to alsa, I was lazy and had winetricks installed so I just ran the following in my console:
env WINEPREFIX="/your game library/steamapps/compatdata/XXXXX/pfx" winetricks sound=alsa
No other issues to report yet...



I followed guide in this thread https://github.com/ValveSoftware/Proton/issues/767.
I could not figure out how to convert CD Key from Steam to hex value used in registry and had to boot up Windows to retrieve key via regedit.


Tiny improvement over 3.7.8, can see the Bohemia Interactive splash screen for a split second before crashing and displaying "Bad serial number given in Setup"


Bad Serial Number Issue


Crashes with "Bad serial number given in Setup". Note that this game also has a native Linux version, sold separately.


starts into settings...after applying it crashes with bad serial number



Error --> ( "Bad Serial number given in Setup".)
There is no place to enter the CD-KEY in Setup!
Explanation:
In the third option (Configured Advanced options) it shows me the cd-key that I will have to enter later in the game.
Then direct3d is installed automatically and a preference sale appears (choose the game language, resolution, device type (Direct3D HW T&L, Direct3D or Glide), it recognizes me by default Direct3D HW T&L.
Then the game starts (you can see the "Bohemia" logo for a little while) and then appears "Bad Serial number given in Setup" but I was never able to pre-enter my cd-key. So I don't know if it's stable and if it's a graphic error or not.
But then the same error still appears: "Bad Serial number given in Setup".



In the third option (Configured Advanced options) it shows me the cd-key that I will have to enter later in the game. Then direct3d is installed automatically and a preference sale appears (choose the game language, resolution, device type (Direct3D HW T&L, Direct3D or Glide), it recognizes me by default Direct3D HW T&L. Then the game starts (you can see the "Bohemia" logo for a little while) and then appears "Bad Serial number given in Setup" but I was never able to pre-enter my cd-key. So I don't know if it's stable and if it's a graphic error or not.
I've tried this: Right click Arma Cold War Assault, Click Properties, Click Local Files, Click Verify Integrity of Game Cache. But then the same error still appears: "Bad Serial number given in Setup".
I am now testing the beta of the game ( Right click Arma Cold War Assault, Click Properties, Betas --> "testing")
