aboutsummarylogtreecommitdiffstats
path: root/dominions-server
diff options
context:
space:
mode:
Diffstat (limited to 'dominions-server')
-rwxr-xr-xdominions-server35
1 files changed, 35 insertions, 0 deletions
diff --git a/dominions-server b/dominions-server
new file mode 100755
index 000000000000..fa66619c3785
--- /dev/null
+++ b/dominions-server
@@ -0,0 +1,35 @@
+#!/bin/bash
+
+if [[ ! -s /usr/share/dominions/current ]]; then
+ echo "No game configured. Use 'dominions config' to set up a game."
+ exit 1
+fi
+
+game=$(</usr/share/dominions/current)
+
+if [[ ! -s /usr/share/dominions/config/$game.properties ]]; then
+ echo "Tried to load $game but configuration file is missing."
+ exit 1
+fi
+
+# Load config
+
+config="--tcpserver --textonly --noclientstart"
+
+while read -r line; do
+ if [[ -n $line && ! $line = \#* ]]; then
+ echo "Setting $line"
+
+ config="$config --$line"
+ fi
+done < "/usr/share/dominions/config/$game.properties"
+
+# Start server
+
+export DOM5_CONF=/usr/share/dominions
+
+echo "Final configuration:"
+echo "$config"
+echo "Starting game..."
+
+exec sh /opt/dominions/dom5.sh $config "$game" > /var/log/dominions/dominions.log