fix_steamcmd.sh 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #!/bin/bash
  2. # LGSM fix_steamcmd.sh function
  3. # Author: Daniel Gibbs
  4. # Website: http://gameservermanagers.com
  5. lgsm_version="301215"
  6. # Description: fixes various issues related to steamCMD
  7. fn_fix_steamcmd_msg_start(){
  8. fn_printdots "Applying ${fixname} fix: ${gamename}"
  9. sleep 2
  10. fn_printinfonl "Applying ${fixname} fix: ${gamename}"
  11. fn_scriptlog "Applying ${fixname} fix: ${gamename}"
  12. }
  13. fn_fix_steamcmd_msg_end(){
  14. if [ $? -ne 0 ]; then
  15. fn_printfailnl "Applying ${fixname} fix: ${gamename}"
  16. fn_scriptlog "Failure! Applying ${fixname} fix: ${gamename}"
  17. else
  18. fn_printoknl "Applying ${fixname} fix: ${gamename}"
  19. fn_scriptlog "Complete! Applying ${fixname} fix: ${gamename}"
  20. fi
  21. }
  22. # Fixes: [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam,or a local steamclient.so.
  23. if [ ! -f "${HOME}/.steam/sdk32/steamclient.so" ]; then
  24. local fixname="steamclient.so general"
  25. fn_fix_steamcmd_msg_start
  26. mkdir -pv "${HOME}/.steam/sdk32"
  27. cp -v "${rootdir}/steamcmd/linux32/steamclient.so" "${HOME}/.steam/sdk32/steamclient.so" >> "${scriptlog}"
  28. fn_fix_steamcmd_msg_end
  29. fi
  30. if [ "${gamename}" == "Garry's Mod" ]; then
  31. # Fixes: .steam/sdk32/libsteam.so: cannot open shared object file: No such file or directory
  32. if [ ! -f "${HOME}/.steam/sdk32/libsteam.so" ]; then
  33. local fixname="libsteam.so"
  34. fn_fix_steamcmd_msg_start
  35. mkdir -pv "${HOME}/.steam/sdk32"
  36. cp -v "${filesdir}/bin/libsteam.so" "${HOME}/.steam/sdk32/libsteam.so" >> "${scriptlog}"
  37. fn_fix_steamcmd_msg_end
  38. fi
  39. elif [ "${gamename}" == "Serious Sam 3: BFE" ]; then
  40. # Fixes: .steam/bin32/libsteam.so: cannot open shared object file: No such file or directory
  41. if [ ! -f "${HOME}/.steam/bin32/libsteam.so" ]; then
  42. local fixname="libsteam.so"
  43. fn_fix_steamcmd_msg_start
  44. mkdir -pv "${HOME}/.steam/bin32"
  45. cp -v "${filesdir}/Bin/libsteam.so" "${HOME}/.steam/bin32/libsteam.so" >> "${scriptlog}"
  46. fn_fix_steamcmd_msg_end
  47. fi
  48. elif [ "${gamename}" == "Hurtworld" ]; then
  49. # Fixes: [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.so.
  50. if [ ! -f "${filesdir}/Hurtworld_Data/Plugins/x86/steamclient.so" ]; then
  51. local fixname="steamclient.so x86"
  52. fn_fix_steamcmd_msg_start
  53. cp -v "${rootdir}/steamcmd/linux32/steamclient.so" "${filesdir}/Hurtworld_Data/Plugins/x86/steamclient.so" >> "${scriptlog}"
  54. fn_fix_steamcmd_msg_end
  55. fi
  56. if [ ! -f "${filesdir}/Hurtworld_Data/Plugins/x86_64/steamclient.so" ]; then
  57. local fixname="steamclient.so x86_64"
  58. fn_fix_steamcmd_msg_start
  59. cp -v "${rootdir}/steamcmd/linux32/steamclient.so" "${filesdir}/Hurtworld_Data/Plugins/x86_64/steamclient.so" >> "${scriptlog}"
  60. fn_fix_steamcmd_msg_end
  61. fi
  62. fi