4
0

fix_steamcmd.sh 2.2 KB

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