38 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/bin/bash
 | |
| set -xeuo pipefail
 | |
| 
 | |
| function steam() {
 | |
|     # for systemd, so it can terminate the process (for other things sudo would have been enough)
 | |
|     setpriv --reuid=steam --regid=steam --init-groups "$@" <&0
 | |
|     export HOME=/opt/l4d2/steam
 | |
| }
 | |
| 
 | |
| declare -A addons=(
 | |
|     [Ions_Vocalizer]=698857882
 | |
|     [EMS_Admin_System]=2524204971
 | |
| )
 | |
| 
 | |
| function install_addon() {
 | |
|     local overlay="$1"
 | |
|     local addon_name="$2"
 | |
|     local addon_id="${addons[${addon_name}]}"
 | |
|     steam mkdir -p "/opt/l4d2/overlays/${overlay}/left4dead2/addons"
 | |
|     test -f "/opt/l4d2/overlays/${overlay}/left4dead2/addons/${addon_id}.vpk" || \
 | |
|         steam /opt/l4d2/scripts/steam-workshop-download "${addon_id}" --out "/opt/l4d2/overlays/${overlay}/left4dead2/addons"
 | |
| }
 | |
| 
 | |
| function install_admin_system() {
 | |
|     local overlay="$1"
 | |
|     install_addon "${overlay}" EMS_Admin_System
 | |
|     steam mkdir -p "/opt/l4d2/overlays/${overlay}/left4dead2/ems/admin system"
 | |
|     steam echo "STEAM_1:0:12376499" > "/opt/l4d2/overlays/${overlay}/left4dead2/ems/admin system/admins.txt"
 | |
| }
 | |
| 
 | |
| function install_tickrate_enabler() {
 | |
|     local overlay="$1"
 | |
|     steam mkdir -p "/opt/l4d2/overlays/${overlay}/left4dead2/addons"
 | |
|     for file in tickrate_enabler.dll tickrate_enabler.so tickrate_enabler.vdf
 | |
|     do
 | |
|         curl -L "https://github.com/SirPlease/L4D2-Competitive-Rework/raw/refs/heads/master/addons/${file}" -o "/opt/l4d2/overlays/${overlay}/left4dead2/addons/${file}"
 | |
|     done
 | |
| }
 |