fix_steamcmd.sh 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  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. }
  12. fn_fix_steamcmd_msg_end(){
  13. if [ $? -ne 0 ]; then
  14. fn_printfailnl "Applying ${fixname} fix: ${gamename}"
  15. else
  16. fn_printoknl "Applying ${fixname} fix: ${gamename}"
  17. fi
  18. }
  19. # Fixes: [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam,or a local steamclient.so.
  20. if [ ! -f "${HOME}/.steam/sdk32/steamclient.so" ]; then
  21. local fixname="steamclient.so general"
  22. fn_fix_steamcmd_msg_start
  23. mkdir -pv "${HOME}/.steam/sdk32"
  24. cp -v "${rootdir}/steamcmd/linux32/steamclient.so" "${HOME}/.steam/sdk32/steamclient.so"
  25. fn_fix_steamcmd_msg_end
  26. fi
  27. if [ "${gamename}" == "Garry's Mod" ]; then
  28. # Fixes: .steam/sdk32/libsteam.so: cannot open shared object file: No such file or directory
  29. if [ ! -f "${HOME}/.steam/sdk32/libsteam.so" ]; then
  30. local fixname="libsteam.so"
  31. fn_fix_steamcmd_msg_start
  32. mkdir -pv "${HOME}/.steam/sdk32"
  33. cp -v "${filesdir}/bin/libsteam.so" "${HOME}/.steam/sdk32/libsteam.so"
  34. fn_fix_steamcmd_msg_end
  35. fi
  36. elif [ "${gamename}" == "Serious Sam 3: BFE" ]; then
  37. # Fixes: .steam/bin32/libsteam.so: cannot open shared object file: No such file or directory
  38. if [ ! -f "${HOME}/.steam/bin32/libsteam.so" ]; then
  39. local fixname="libsteam.so"
  40. fn_fix_steamcmd_msg_start
  41. mkdir -pv "${HOME}/.steam/bin32"
  42. cp -v "${filesdir}/Bin/libsteam.so" "${HOME}/.steam/bin32/libsteam.so"
  43. fn_fix_steamcmd_msg_end
  44. fi
  45. elif [ "${gamename}" == "Hurtworld" ]; then
  46. # Fixes: [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.so.
  47. if [ ! -f "${filesdir}/Hurtworld_Data/Plugins/x86/steamclient.so" ]; then
  48. local fixname="steamclient.so x86"
  49. fn_fix_steamcmd_msg_start
  50. cp -v "${rootdir}/steamcmd/linux32/steamclient.so" "${filesdir}/Hurtworld_Data/Plugins/x86/steamclient.so"
  51. fn_fix_steamcmd_msg_end
  52. fi
  53. if [ ! -f "${filesdir}/Hurtworld_Data/Plugins/x86_64/steamclient.so" ]; then
  54. local fixname="steamclient.so x86_64"
  55. fn_fix_steamcmd_msg_start
  56. cp -v "${rootdir}/steamcmd/linux32/steamclient.so" "${filesdir}/Hurtworld_Data/Plugins/x86_64/steamclient.so"
  57. fn_fix_steamcmd_msg_end
  58. fi
  59. fi