2.3 KiB
How to set up a server for local testing if you are running linux.
At the end you'll have a setup that you copy the mission to, and use a repo html file to load the mods for you.
Installation
Install Arma server through steam.
Use the linux version, don't use a proton compatibility layer.
Create the basic server config files.
Disable signature verification and battleye, and add an admin password so you can change mission without the voting timer. Save as server.cfg in the server folder.
Symlink the client workshop folder.
While in your server folder eg /home/MYUSERNAME/.local/share/Steam/steamapps/common/Arma 3 Server run the command
ln -s /home/MYUSERNAME/.local/share/Steam/steamapps/workshop/content/107410 mods
This adds a folder that links straight to the workshop folder.
Create the launcher script
Create a new shell script called launch_from_html.sh in the arma server folder with the contents
#!/bin/bash
if [ $# -eq 0 ]; then
echo "This script is to be launched with an html repo file"
exit 1
fi
# id= precedes match, match is any number of digits, " follows match
mod_list=$(grep -P -o "(?<=id\=)[0-9]*(?=\")" $1)
# build mod parameter
modstring="\"-mod="
first_mod=true
for r in $mod_list
do
if [ "$first_mod" == true ]; then
modstring=$modstring"mods/"$r
first_mod=false
else
modstring=$modstring";mods/"$r
fi
done
modstring=$modstring"\""
scriptdir=$(dirname "$0")
cd "$scriptdir"
./arma3server_x64 -config=server.cfg $modstring
sleep 5
Make it executable. In mint, right click, properties, check allow executing as program, and close. chmod +x launch_from_html.sh is terminal version of this.
Create the drag-and-drop launcher
Make a launcher. In mint cinnamon, right click the desktop, Create a new launcher here. Name it something like ArmaServerFromHtml. Click browse and select the sh script. Click launch in terminal, then OK. You can move the launcher anywhere you want after creating it.
Running
Create a repo html for your mission. Copy your mission to the servers mpmissions folder. Launch your client. Drag the html for the repo over the launcher. Connect to the server on localhost.