check_system_requirements.sh 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #!/bin/bash
  2. # LinuxGSM check_system_requirements.sh
  3. # Author: Daniel Gibbs
  4. # Contributor: UltimateByte
  5. # Website: https://linuxgsm.com
  6. # Description: Checks RAM requirements
  7. local commandname="CHECK"
  8. local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
  9. info_distro.sh
  10. # RAM requirements in megabytes for each game or engine.
  11. if [ "${shortname}" == "ark" ]; then
  12. ramrequirementmb="4000"
  13. ramrequirementgb="4"
  14. elif [ "${shortname}" == "arma3" ]; then
  15. ramrequirementmb="1000"
  16. ramrequirementgb="1"
  17. elif [ "${shortname}" == "rust" ]; then
  18. ramrequirementmb="4000"
  19. ramrequirementgb="4"
  20. elif [ "${shortname}" == "mc" ]; then
  21. ramrequirementmb="1000"
  22. ramrequirementgb="1"
  23. elif [ "${shortname}" == "pstbs" ]; then
  24. ramrequirementmb="2000"
  25. ramrequirementgb="2"
  26. elif [ "${shortname}" == "ns2" ]||[ "${shortname}" == "ns2c" ]; then
  27. ramrequirementmb="1000"
  28. ramrequirementgb="1"
  29. elif [ "${shortname}" == "st" ]; then
  30. ramrequirementmb="1000"
  31. ramrequirementgb="1"
  32. fi
  33. # If the game or engine has a minimum RAM Requirement, compare it to system's available RAM.
  34. if [ -n "${ramrequirementmb}" ]; then
  35. if [ "${physmemtotalmb}" -lt "${ramrequirementmb}" ]; then
  36. fn_print_dots "Check RAM"
  37. sleep 0.5
  38. # Warn the user
  39. fn_print_warn_nl "Check RAM: ${ramrequirementgb}G required, ${physmemtotal} available"
  40. sleep 0.5
  41. echo " * ${gamename} server may fail to run or experience poor performance."
  42. sleep 0.5
  43. fi
  44. fi