fix_steamcmd.sh 2.5 KB

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