| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- #!/bin/bash
- # LinuxGSM fix_vh.sh module
- # Author: Alasdair Haig
- # Website: https://linuxgsm.com
- # Description: Resolves issues with Valheim.
- moduleselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
- export LD_LIBRARY_PATH=./linux64:$LD_LIBRARY_PATH
- modsdir="${lgsmdir}/mods"
- modsinstalledlistfullpath="${modsdir}/installed-mods.txt"
- if [ -f "${modsinstalledlistfullpath}" ]; then
- # special check if Valheim Plus is installed
- if grep -qE "^valheimplus" "${modsinstalledlistfullpath}"; then
- if ! grep -qE "^executable=\"./start_server_bepinex.sh\"" "${configdirserver}/${selfname}.cfg"; then
- echo 'executable="./start_server_bepinex.sh"' >> "${configdirserver}/${selfname}.cfg"
- executable="./start_server_bepinex.sh"
- fi
- if [ -d "${serverfiles}/unstripped_corlib" ]; then
- rm -rf "${serverfiles}/unstripped_corlib"
- fi
- sed -i "s/^dllSearchPathOverride=unstripped_corlib/# &/" "${serverfiles}/doorstop_config.ini"
- sed -i "s|^export DOORSTOP_CORLIB_OVERRIDE_PATH=\"\\\$BASEDIR/unstripped_corlib\"|# &|" "${serverfiles}/start_game_bepinex.sh"
- sed -i "s|^export DOORSTOP_CORLIB_OVERRIDE_PATH=\"\\\${VALHEIM_PLUS_PATH}/unstripped_corlib\"|# &|" "${serverfiles}/start_server_bepinex.sh"
- fi
- # special exports for BepInEx if installed
- if grep -qE "^bepinexvh" "${modsinstalledlistfullpath}"; then
- fn_print_info_nl "BepInEx install detected, applying start exports"
- fn_script_log_info "BepInEx install detected, applying start exports"
- # exports for BepInEx framework from script start_server_bepinex.sh
- export DOORSTOP_ENABLED=1
- export DOORSTOP_TARGET_ASSEMBLY=./BepInEx/core/BepInEx.Preloader.dll
- export LD_LIBRARY_PATH="./doorstop_libs:${LD_LIBRARY_PATH}"
- preexecutable="LD_PRELOAD=\"libdoorstop_x64.so:${LD_PRELOAD}\" ${preexecutable}"
- export SteamAppId=892970
- fi
- fi
|