Scripts and application to run arma3sync on linux
A bash script that automates launching ArmA 3 through Steam with mods managed by ArmA3Sync on Linux.
- Launches the ArmA3Sync Java application
- Lets you select mods and click "Play" (just like on Windows)
- Captures the generated mod list from ArmA3Sync's output
- Automatically closes ArmA3Sync after the mod list is generated
- Launches ArmA 3 via Steam with the captured mod parameters
- Optionally runs Arma3Helper.sh and/or OpenTrack
- Download and manage mods exactly as you would on Windows
- Add extra startup parameters (e.g.,
--force-grab-cursor,-noWindowBorder -window) - Start with profile and unit support
- Mod order is preserved like in ArmA3Sync
- Events and Join Server functionality works
- Cannot launch external applications like on Windows
- AIA and tools have not been tested
- Not all DLC have been tested (DLC can be launched via startup parameters)
- Do not use this to launch an ArmA or ArmA3Sync server
ArmA3Sync will freeze after clicking "Play". The script automatically handles this by waiting for the mod list to be generated before closing the application. This is expected behavior and is required to capture the output.
- Java Runtime Environment (JRE)
- Steam (installed and logged in)
- ArmA3Sync (Java application)
- protontricks (only if using OpenTrack)
-
Launch ARMA 3 to the desktop BEFORE running this script. This ensures the Steam overlay and Proton environment are ready.
-
Create an empty
dummy.shfile in your ArmA3Sync folder. In ArmA3Sync, set the launch parameters to point to thisdummy.sh. The script intercepts the launch command from thedummy.shoutput. -
Configure the variables in
arma3sync.shto match your system paths.
Edit the variables at the top of arma3sync.sh:
| Variable | Description | Example |
|---|---|---|
ARMA3SYNC_DIR |
ArmA3Sync installation folder | /home/hazardouschurch/Arma/ArmA3Sync |
JAR_FILE |
ArmA3Sync JAR filename | ArmA3Sync.jar |
STEAM_APP_ID |
Steam App ID for Arma 3 | 107410 |
| Variable | Description | Default |
|---|---|---|
ARMA3_HELPER |
Path to helper script. Leave empty to disable. | ~/Arma3Helper.sh |
OPENTRACK_ENABLED |
Enable OpenTrack via protontricks | false |
OPENTRACK_PATH |
Path to opentrack.exe | (see script) |
| Variable | Description | Default |
|---|---|---|
JAVA_MIN_MEM |
Initial heap size | 256m |
JAVA_MAX_MEM |
Maximum heap size | 256m |
./arma3sync.sh- Launch Arma 3 to the desktop first (to initialize Steam/Proton)
- Run the script
- Use ArmA3Sync as normal - select mods, set parameters, click Play
- The script will automatically close ArmA3Sync and launch Arma 3 via Steam
ArmA3Sync doesn't close after clicking Play:
- This is expected - the script handles it automatically
- The script waits for the mod list to be fully written before killing the process
Processed log is empty:
- Make sure
dummy.shexists in your ArmA3Sync folder - Check that ArmA3Sync launch parameters point to
dummy.sh - Verify the log file is being written to
Optional applications not launching:
- Check that
ARMA3_HELPERpath is correct (use full path or~for home) - For OpenTrack, ensure protontricks is installed and
OPENTRACK_ENABLED=true
Mods not loading in game:
-
Ensure the mod paths in ArmA3Sync are correct
-
Check that the
Z:"prefix is being added to paths (handled automatically by script)
-We are open and welcoming of all players at ARCOMM -ARCOMM is a unit started in 2016 -Operations are on Saturdays https://discord.com/invite/7ehwg7F
-Follow the guide here -https://9lo.re/project/armaonlinux/
-https://github.com/opentrack/opentrack/releases -All I did was get the portable installation, extract it, and put the entire folder inside of my ARMA3.EXE location. -For open track I had to add these three additional dll into the portable holder because I believe the installation is broken. Its in the optional folder
How I got mine was getting a docker instance of Windows and extracting a fresh ArmA3Sync installer there. I copied the entire folder to get the jars.You could do this on a regular version of Windows and you can delete a lot of it except for what I have present in the GitHub. I also copied my dlls for opentrack from there.