install_config.sh 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606
  1. #!/bin/bash
  2. # LinuxGSM install_config.sh function
  3. # Author: Daniel Gibbs
  4. # Website: https://linuxgsm.com
  5. # Description: Creates default server configs.
  6. local commandname="INSTALL"
  7. local commandaction="Install"
  8. local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
  9. # Checks if server cfg dir exists, creates it if it doesn't
  10. fn_check_cfgdir(){
  11. if [ ! -d "${servercfgdir}" ]; then
  12. echo "creating ${servercfgdir} config directory."
  13. fn_script_log_info "creating ${servercfgdir} config directory."
  14. mkdir -pv "${servercfgdir}"
  15. fi
  16. }
  17. # Downloads default configs from Game-Server-Configs repo to lgsm/config-default
  18. fn_fetch_default_config(){
  19. echo ""
  20. echo "Downloading ${gamename} Configs"
  21. echo "================================="
  22. echo "default configs from https://github.com/GameServerManagers/Game-Server-Configs"
  23. sleep 0.5
  24. mkdir -p "${lgsmdir}/config-default/config-game"
  25. githuburl="https://raw.githubusercontent.com/GameServerManagers/Game-Server-Configs/master"
  26. for config in "${array_configs[@]}"; do
  27. fn_fetch_file "${githuburl}/${gamedirname}/${config}" "${lgsmdir}/config-default/config-game" "${config}" "nochmodx" "norun" "forcedl" "nomd5"
  28. done
  29. }
  30. # Copys default configs from Game-Server-Configs repo to server config location
  31. fn_default_config_remote(){
  32. for config in "${array_configs[@]}"; do
  33. # every config is copied
  34. echo "copying ${config} config file."
  35. fn_script_log_info "copying ${servercfg} config file."
  36. if [ "${config}" == "${servercfgdefault}" ]; then
  37. mkdir -p "${servercfgdir}"
  38. cp -nv "${lgsmdir}/config-default/config-game/${config}" "${servercfgfullpath}"
  39. elif [ "${gamename}" == "ARMA 3" ]&&[ "${config}" == "${networkcfgdefault}" ]; then
  40. mkdir -p "${servercfgdir}"
  41. cp -nv "${lgsmdir}/config-default/config-game/${config}" "${networkcfgfullpath}"
  42. elif [ "${gamename}" == "Don't Starve Together" ]&&[ "${config}" == "${clustercfgdefault}" ]; then
  43. cp -nv "${lgsmdir}/config-default/config-game/${clustercfgdefault}" "${clustercfgfullpath}"
  44. else
  45. mkdir -p "${servercfgdir}"
  46. cp -nv "${lgsmdir}/config-default/config-game/${config}" "${servercfgdir}/${config}"
  47. fi
  48. done
  49. sleep 0.5
  50. }
  51. # Changes some variables within the default configs
  52. # SERVERNAME to LinuxGSM
  53. # PASSWORD to random password
  54. fn_set_config_vars(){
  55. if [ -f "${servercfgfullpath}" ]; then
  56. random=$(tr -dc A-Za-z0-9_ < /dev/urandom | head -c 8 | xargs)
  57. servername="LinuxGSM"
  58. rconpass="admin${random}"
  59. echo "changing hostname."
  60. fn_script_log_info "changing hostname."
  61. sleep 0.5
  62. # prevents var from being overwritten with the servername
  63. if grep -q "SERVERNAME=SERVERNAME" "${lgsmdir}/config-default/config-game/${config}" 2>/dev/null; then
  64. sed -i "s/SERVERNAME=SERVERNAME/SERVERNAME=${servername}/g" "${servercfgfullpath}"
  65. elif grep -q "SERVERNAME=\"SERVERNAME\"" "${lgsmdir}/config-default/config-game/${config}" 2>/dev/null; then
  66. sed -i "s/SERVERNAME=\"SERVERNAME\"/SERVERNAME=\"${servername}\"/g" "${servercfgfullpath}"
  67. else
  68. sed -i "s/SERVERNAME/${servername}/g" "${servercfgfullpath}"
  69. fi
  70. echo "changing rcon/admin password."
  71. fn_script_log_info "changing rcon/admin password."
  72. if [ "${shortname}" == "squad" ]; then
  73. sed -i "s/ADMINPASSWORD/${rconpass}/g" "${servercfgdir}/Rcon.cfg"
  74. else
  75. sed -i "s/ADMINPASSWORD/${rconpass}/g" "${servercfgfullpath}"
  76. fi
  77. sleep 0.5
  78. else
  79. fn_script_log_warn "Config file not found, cannot alter it."
  80. echo "Config file not found, cannot alter it."
  81. sleep 0.5
  82. fi
  83. }
  84. # Changes some variables within the default Don't Starve Together configs
  85. fn_set_dst_config_vars(){
  86. ## cluster.ini
  87. if grep -Fq "SERVERNAME" "${clustercfgfullpath}"; then
  88. echo "changing server name."
  89. fn_script_log_info "changing server name."
  90. sed -i "s/SERVERNAME/LinuxGSM/g" "${clustercfgfullpath}"
  91. sleep 0.5
  92. echo "changing shard mode."
  93. fn_script_log_info "changing shard mode."
  94. sed -i "s/USESHARDING/${sharding}/g" "${clustercfgfullpath}"
  95. sleep 0.5
  96. echo "randomizing cluster key."
  97. fn_script_log_info "randomizing cluster key."
  98. randomkey=$(tr -dc A-Za-z0-9_ < /dev/urandom | head -c 8 | xargs)
  99. sed -i "s/CLUSTERKEY/${randomkey}/g" "${clustercfgfullpath}"
  100. sleep 0.5
  101. else
  102. echo "${clustercfg} is already configured."
  103. fn_script_log_info "${clustercfg} is already configured."
  104. fi
  105. ## server.ini
  106. # removing unnecessary options (dependent on sharding & shard type)
  107. if [ "${sharding}" == "false" ]; then
  108. sed -i "s/ISMASTER//g" "${servercfgfullpath}"
  109. sed -i "/SHARDNAME/d" "${servercfgfullpath}"
  110. elif [ "${master}" == "true" ]; then
  111. sed -i "/SHARDNAME/d" "${servercfgfullpath}"
  112. fi
  113. echo "changing shard name."
  114. fn_script_log_info "changing shard name."
  115. sed -i "s/SHARDNAME/${shard}/g" "${servercfgfullpath}"
  116. sleep 0.5
  117. echo "changing master setting."
  118. fn_script_log_info "changing master setting."
  119. sed -i "s/ISMASTER/${master}/g" "${servercfgfullpath}"
  120. sleep 0.5
  121. ## worldgenoverride.lua
  122. if [ "${cave}" == "true" ]; then
  123. echo "defining ${shard} as cave in ${servercfgdir}/worldgenoverride.lua."
  124. fn_script_log_info "defining ${shard} as cave in ${servercfgdir}/worldgenoverride.lua."
  125. echo 'return { override_enabled = true, preset = "DST_CAVE", }' > "${servercfgdir}/worldgenoverride.lua"
  126. fi
  127. sleep 0.5
  128. echo ""
  129. }
  130. if [ "${gamename}" == "7 Days To Die" ]; then
  131. gamedirname="7DaysToDie"
  132. array_configs+=( serverconfig.xml )
  133. fn_fetch_default_config
  134. fn_default_config_remote
  135. fn_set_config_vars
  136. elif [ "${gamename}" == "ARK: Survival Evolved" ]; then
  137. gamedirname="ARKSurvivalEvolved"
  138. fn_check_cfgdir
  139. array_configs+=( GameUserSettings.ini )
  140. fn_fetch_default_config
  141. fn_default_config_remote
  142. fn_set_config_vars
  143. elif [ "${gamename}" == "ARMA 3" ]; then
  144. gamedirname="Arma3"
  145. fn_check_cfgdir
  146. array_configs+=( server.cfg network.cfg )
  147. fn_fetch_default_config
  148. fn_default_config_remote
  149. fn_set_config_vars
  150. elif [ "${gamename}" == "Ballistic Overkill" ]; then
  151. gamedirname="BallisticOverkill"
  152. array_configs+=( config.txt )
  153. fn_fetch_default_config
  154. fn_default_config_remote
  155. fn_set_config_vars
  156. elif [ "${gamename}" == "Base Defense" ]; then
  157. gamedirname="BaseDefense"
  158. array_configs+=( server.cfg )
  159. fn_fetch_default_config
  160. fn_default_config_remote
  161. fn_set_config_vars
  162. elif [ "${gamename}" == "Battalion 1944" ]; then
  163. gamedirname="Battalion1944"
  164. fn_check_cfgdir
  165. array_configs+=( DefaultGame.ini )
  166. fn_fetch_default_config
  167. fn_default_config_remote
  168. fn_set_config_vars
  169. elif [ "${gamename}" == "Battlefield: 1942" ]; then
  170. gamedirname="Battlefield1942"
  171. array_configs+=( serversettings.con )
  172. fn_fetch_default_config
  173. fn_default_config_remote
  174. fn_set_config_vars
  175. elif [ "${gamename}" == "Blade Symphony" ]; then
  176. gamedirname="BladeSymphony"
  177. array_configs+=( server.cfg )
  178. fn_fetch_default_config
  179. fn_default_config_remote
  180. fn_set_config_vars
  181. elif [ "${gamename}" == "BrainBread" ]; then
  182. gamedirname="BrainBread"
  183. array_configs+=( server.cfg )
  184. fn_fetch_default_config
  185. fn_default_config_remote
  186. fn_set_config_vars
  187. elif [ "${gamename}" == "BrainBread 2" ]; then
  188. gamedirname="BrainBread2"
  189. array_configs+=( server.cfg )
  190. fn_fetch_default_config
  191. fn_default_config_remote
  192. fn_set_config_vars
  193. elif [ "${gamename}" == "Black Mesa: Deathmatch" ]; then
  194. gamedirname="BlackMesa"
  195. array_configs+=( server.cfg )
  196. fn_fetch_default_config
  197. fn_default_config_remote
  198. fn_set_config_vars
  199. elif [ "${gamename}" == "Call of Duty" ]; then
  200. gamedirname="CallOfDuty"
  201. array_configs+=( server.cfg )
  202. fn_fetch_default_config
  203. fn_default_config_remote
  204. fn_set_config_vars
  205. elif [ "${gamename}" == "Call of Duty: United Offensive" ]; then
  206. gamedirname="CallOfDutyUnitedOffensive"
  207. array_configs+=( server.cfg )
  208. fn_fetch_default_config
  209. fn_default_config_remote
  210. fn_set_config_vars
  211. elif [ "${gamename}" == "Call of Duty 2" ]; then
  212. gamedirname="CallOfDuty2"
  213. array_configs+=( server.cfg )
  214. fn_fetch_default_config
  215. fn_default_config_remote
  216. fn_set_config_vars
  217. elif [ "${gamename}" == "Call of Duty 4" ]; then
  218. gamedirname="CallOfDuty4"
  219. array_configs+=( server.cfg )
  220. fn_fetch_default_config
  221. fn_default_config_remote
  222. fn_set_config_vars
  223. elif [ "${gamename}" == "Call of Duty: World at War" ]; then
  224. gamedirname="CallOfDutyWorldAtWar"
  225. array_configs+=( server.cfg )
  226. fn_fetch_default_config
  227. fn_default_config_remote
  228. fn_set_config_vars
  229. elif [ "${gamename}" == "Codename CURE" ]; then
  230. gamedirname="CodenameCURE"
  231. array_configs+=( server.cfg )
  232. fn_fetch_default_config
  233. fn_default_config_remote
  234. fn_set_config_vars
  235. elif [ "${gamename}" == "Counter-Strike 1.6" ]; then
  236. gamedirname="CounterStrike"
  237. array_configs+=( server.cfg )
  238. fn_fetch_default_config
  239. fn_default_config_remote
  240. fn_set_config_vars
  241. elif [ "${gamename}" == "Counter-Strike: Condition Zero" ]; then
  242. gamedirname="CounterStrikeConditionZero"
  243. array_configs+=( server.cfg )
  244. fn_fetch_default_config
  245. fn_default_config_remote
  246. fn_set_config_vars
  247. elif [ "${gamename}" == "Counter-Strike: Global Offensive" ]; then
  248. gamedirname="CounterStrikeGlobalOffensive"
  249. array_configs+=( server.cfg )
  250. fn_fetch_default_config
  251. fn_default_config_remote
  252. fn_set_config_vars
  253. elif [ "${gamename}" == "Classic Offensive" ]; then
  254. gamedirname="ClassicOffensive"
  255. array_configs+=( server.cfg )
  256. fn_fetch_default_config
  257. fn_default_config_remote
  258. fn_set_config_vars
  259. elif [ "${gamename}" == "Counter-Strike: Source" ]; then
  260. gamedirname="CounterStrikeSource"
  261. array_configs+=( server.cfg )
  262. fn_fetch_default_config
  263. fn_default_config_remote
  264. fn_set_config_vars
  265. elif [ "${gamename}" == "Day of Defeat" ]; then
  266. gamedirname="DayOfDefeat"
  267. array_configs+=( server.cfg )
  268. fn_fetch_default_config
  269. fn_default_config_remote
  270. fn_set_config_vars
  271. elif [ "${gamename}" == "Day of Defeat: Source" ]; then
  272. gamedirname="DayOfDefeatSource"
  273. array_configs+=( server.cfg )
  274. fn_fetch_default_config
  275. fn_default_config_remote
  276. fn_set_config_vars
  277. elif [ "${gamename}" == "Day of Infamy" ]; then
  278. gamedirname="DayOfInfamy"
  279. array_configs+=( server.cfg )
  280. fn_fetch_default_config
  281. fn_default_config_remote
  282. fn_set_config_vars
  283. elif [ "${gamename}" == "Deathmatch Classic" ]; then
  284. gamedirname="DeathmatchClassic"
  285. array_configs+=( server.cfg )
  286. fn_fetch_default_config
  287. fn_default_config_remote
  288. fn_set_config_vars
  289. elif [ "${gamename}" == "Don't Starve Together" ]; then
  290. gamedirname="DontStarveTogether"
  291. fn_check_cfgdir
  292. array_configs+=( cluster.ini server.ini )
  293. fn_fetch_default_config
  294. fn_default_config_remote
  295. fn_set_dst_config_vars
  296. elif [ "${gamename}" == "Double Action: Boogaloo" ]; then
  297. gamedirname="DoubleActionBoogaloo"
  298. array_configs+=( server.cfg )
  299. fn_fetch_default_config
  300. fn_default_config_remote
  301. fn_set_config_vars
  302. elif [ "${gamename}" == "ET: Legacy" ]; then
  303. gamedirname="ETLegacy"
  304. array_configs+=( server.cfg )
  305. fn_fetch_default_config
  306. fn_default_config_remote
  307. fn_set_config_vars
  308. elif [ "${gamename}" == "Factorio" ]; then
  309. gamedirname="Factorio"
  310. array_configs+=( server-settings.json )
  311. fn_fetch_default_config
  312. fn_default_config_remote
  313. fn_set_config_vars
  314. elif [ "${gamename}" == "Fistful of Frags" ]; then
  315. gamedirname="FistfulofFrags"
  316. array_configs+=( server.cfg )
  317. fn_fetch_default_config
  318. fn_default_config_remote
  319. fn_set_config_vars
  320. elif [ "${gamename}" == "Garry's Mod" ]; then
  321. gamedirname="GarrysMod"
  322. array_configs+=( server.cfg )
  323. fn_fetch_default_config
  324. fn_default_config_remote
  325. fn_set_config_vars
  326. elif [ "${gamename}" == "GoldenEye: Source" ]; then
  327. gamedirname="GoldenEyeSource"
  328. array_configs+=( server.cfg )
  329. fn_fetch_default_config
  330. fn_default_config_remote
  331. fn_set_config_vars
  332. elif [ "${gamename}" == "Half Life: Deathmatch" ]; then
  333. gamedirname="HalfLifeDeathmatch"
  334. array_configs+=( server.cfg )
  335. fn_fetch_default_config
  336. fn_default_config_remote
  337. fn_set_config_vars
  338. elif [ "${gamename}" == "Half-Life Deathmatch: Source" ]; then
  339. gamedirname="HalfLifeDeathmatchSource"
  340. array_configs+=( server.cfg )
  341. fn_fetch_default_config
  342. fn_default_config_remote
  343. fn_set_config_vars
  344. elif [ "${gamename}" == "Half-Life: Opposing Force" ]; then
  345. gamedirname="OpposingForce"
  346. array_configs+=( server.cfg )
  347. fn_fetch_default_config
  348. fn_default_config_remote
  349. fn_set_config_vars
  350. elif [ "${gamename}" == "Half Life 2: Deathmatch" ]; then
  351. gamedirname="HalfLife2Deathmatch"
  352. array_configs+=( server.cfg )
  353. fn_fetch_default_config
  354. fn_default_config_remote
  355. fn_set_config_vars
  356. elif [ "${gamename}" == "Insurgency" ]; then
  357. gamedirname="Insurgency"
  358. array_configs+=( server.cfg )
  359. fn_fetch_default_config
  360. fn_default_config_remote
  361. fn_set_config_vars
  362. elif [ "${gamename}" == "Just Cause 2" ]; then
  363. gamedirname="JustCause2"
  364. array_configs+=( config.lua )
  365. fn_fetch_default_config
  366. fn_default_config_remote
  367. fn_set_config_vars
  368. elif [ "${gamename}" == "Just Cause 3" ]; then
  369. gamedirname="JustCause3"
  370. array_configs+=( config.json )
  371. fn_fetch_default_config
  372. fn_default_config_remote
  373. fn_set_config_vars
  374. elif [ "${gamename}" == "Killing Floor" ]; then
  375. gamedirname="KillingFloor"
  376. array_configs+=( Default.ini )
  377. fn_fetch_default_config
  378. fn_default_config_remote
  379. fn_set_config_vars
  380. elif [ "${gamename}" == "Left 4 Dead" ]; then
  381. gamedirname="Left4Dead"
  382. array_configs+=( server.cfg )
  383. fn_fetch_default_config
  384. fn_default_config_remote
  385. fn_set_config_vars
  386. elif [ "${gamename}" == "Left 4 Dead" ]; then
  387. gamedirname="Left4Dead"
  388. array_configs+=( server.cfg )
  389. fn_fetch_default_config
  390. fn_default_config_remote
  391. fn_set_config_vars
  392. elif [ "${gamename}" == "Left 4 Dead 2" ]; then
  393. gamedirname="Left4Dead2"
  394. array_configs+=( server.cfg )
  395. fn_fetch_default_config
  396. fn_default_config_remote
  397. fn_set_config_vars
  398. elif [ "${gamename}" == "Minecraft" ]; then
  399. gamedirname="Minecraft"
  400. array_configs+=( server.properties )
  401. fn_fetch_default_config
  402. fn_default_config_remote
  403. fn_set_config_vars
  404. elif [ "${gamename}" == "Natural Selection" ]; then
  405. gamedirname="NaturalSelection"
  406. array_configs+=( server.cfg )
  407. fn_fetch_default_config
  408. fn_default_config_remote
  409. fn_set_config_vars
  410. elif [ "${gamename}" == "No More Room in Hell" ]; then
  411. gamedirname="NoMoreRoominHell"
  412. array_configs+=( server.cfg )
  413. fn_fetch_default_config
  414. fn_default_config_remote
  415. fn_set_config_vars
  416. elif [ "${gamename}" == "Multi Theft Auto" ]; then
  417. gamedirname="MultiTheftAuto"
  418. fn_check_cfgdir
  419. array_configs+=( acl.xml mtaserver.conf vehiclecolors.conf )
  420. fn_fetch_default_config
  421. fn_default_config_remote
  422. elif [ "${gamename}" == "Mumble" ]; then
  423. gamedirname="Mumble"
  424. array_configs+=( murmur.ini )
  425. fn_fetch_default_config
  426. fn_default_config_remote
  427. elif [ "${gamename}" == "Pirates, Vikings, and Knights II" ]; then
  428. gamedirname="PiratesVikingandKnightsII"
  429. array_configs+=( server.cfg )
  430. fn_fetch_default_config
  431. fn_default_config_remote
  432. fn_set_config_vars
  433. elif [ "${gamename}" == "Project Zomboid" ]; then
  434. gamedirname="ProjectZomboid"
  435. fn_check_cfgdir
  436. array_configs+=( server.ini )
  437. fn_fetch_default_config
  438. fn_default_config_remote
  439. fn_set_config_vars
  440. elif [ "${gamename}" == "Project Cars" ]; then
  441. gamedirname="ProjectCars"
  442. array_configs+=( server.cfg )
  443. fn_fetch_default_config
  444. fn_default_config_remote
  445. fn_set_config_vars
  446. elif [ "${gamename}" == "Quake 2" ]; then
  447. gamedirname="Quake2"
  448. array_configs+=( server.cfg )
  449. fn_fetch_default_config
  450. fn_default_config_remote
  451. fn_set_config_vars
  452. elif [ "${gamename}" == "Quake 3: Arena" ]; then
  453. gamedirname="Quake3Arena"
  454. array_configs+=( server.cfg )
  455. fn_fetch_default_config
  456. fn_default_config_remote
  457. fn_set_config_vars
  458. elif [ "${gamename}" == "Quake Live" ]; then
  459. gamedirname="QuakeLive"
  460. array_configs+=( server.cfg )
  461. fn_fetch_default_config
  462. fn_default_config_remote
  463. fn_set_config_vars
  464. elif [ "${gamename}" == "QuakeWorld" ]; then
  465. gamedirname="QuakeWorld"
  466. array_configs+=( server.cfg )
  467. fn_fetch_default_config
  468. fn_default_config_remote
  469. fn_set_config_vars
  470. elif [ "${gamename}" == "Ricochet" ]; then
  471. gamedirname="Ricochet"
  472. array_configs+=( server.cfg )
  473. fn_fetch_default_config
  474. fn_default_config_remote
  475. fn_set_config_vars
  476. elif [ "${gamename}" == "Rust" ]; then
  477. gamedirname="Rust"
  478. fn_check_cfgdir
  479. array_configs+=( server.cfg )
  480. fn_fetch_default_config
  481. fn_default_config_remote
  482. elif [ "${gamename}" == "Serious Sam 3: BFE" ]; then
  483. gamedirname="SeriousSam3BFE"
  484. array_configs+=( server.ini )
  485. fn_fetch_default_config
  486. fn_default_config_remote
  487. fn_set_config_vars
  488. elif [ "${gamename}" == "Squad" ]; then
  489. gamedirname="Squad"
  490. array_configs+=( Server.cfg Rcon.cfg )
  491. fn_fetch_default_config
  492. fn_default_config_remote
  493. fn_set_config_vars
  494. elif [ "${gamename}" == "Starbound" ]; then
  495. gamedirname="Starbound"
  496. array_configs+=( starbound_server.config )
  497. fn_fetch_default_config
  498. fn_default_config_remote
  499. fn_set_config_vars
  500. elif [ "${gamename}" == "Stationeers" ]; then
  501. gamedirname="Stationeers"
  502. array_configs+=( default.ini )
  503. fn_fetch_default_config
  504. fn_default_config_remote
  505. fn_set_config_vars
  506. elif [ "${gamename}" == "San Andreas Multiplayer" ]; then
  507. gamedirname="SanAndreasMultiplayer"
  508. array_configs+=( server.cfg )
  509. fn_fetch_default_config
  510. fn_default_config_remote
  511. fn_set_config_vars
  512. elif [ "${gamename}" == "Sven Co-op" ]; then
  513. gamedirname="SvenCoop"
  514. array_configs+=( server.cfg )
  515. fn_fetch_default_config
  516. fn_default_config_remote
  517. fn_set_config_vars
  518. elif [ "${gamename}" == "Team Fortress 2" ]; then
  519. gamedirname="TeamFortress2"
  520. array_configs+=( server.cfg )
  521. fn_fetch_default_config
  522. fn_default_config_remote
  523. fn_set_config_vars
  524. elif [ "${gamename}" == "Team Fortress Classic" ]; then
  525. gamedirname="TeamFortressClassic"
  526. array_configs+=( server.cfg )
  527. fn_fetch_default_config
  528. fn_default_config_remote
  529. fn_set_config_vars
  530. elif [ "${gamename}" == "TeamSpeak 3" ]; then
  531. gamedirname="TeamSpeak3"
  532. array_configs+=( ts3server.ini )
  533. fn_fetch_default_config
  534. fn_default_config_remote
  535. elif [ "${gamename}" == "Teeworlds" ]; then
  536. gamedirname="Teeworlds"
  537. array_configs+=( server.cfg ctf.cfg dm.cfg duel.cfg tdm.cfg )
  538. fn_fetch_default_config
  539. fn_default_config_remote
  540. fn_set_config_vars
  541. elif [ "${gamename}" == "Terraria" ]; then
  542. gamedirname="Terraria"
  543. array_configs+=( serverconfig.txt )
  544. fn_fetch_default_config
  545. fn_default_config_remote
  546. fn_set_config_vars
  547. elif [ "${gamename}" == "Tower Unite" ]; then
  548. gamedirname="TowerUnite"
  549. fn_check_cfgdir
  550. array_configs+=( TowerServer.ini )
  551. fn_fetch_default_config
  552. fn_default_config_remote
  553. fn_set_config_vars
  554. elif [ "${gamename}" == "Unreal Tournament" ]; then
  555. gamedirname="UnrealTournament"
  556. array_configs+=( Game.ini Engine.ini )
  557. fn_fetch_default_config
  558. fn_default_config_remote
  559. fn_set_config_vars
  560. elif [ "${gamename}" == "Unreal Tournament 2004" ]; then
  561. gamedirname="UnrealTournament2004"
  562. array_configs+=( UT2004.ini )
  563. fn_fetch_default_config
  564. fn_default_config_remote
  565. fn_set_config_vars
  566. elif [ "${gamename}" == "Unreal Tournament 99" ]; then
  567. gamedirname="UnrealTournament99"
  568. array_configs+=( Default.ini )
  569. fn_fetch_default_config
  570. fn_default_config_remote
  571. fn_set_config_vars
  572. elif [ "${gamename}" == "Vampire Slayer" ]; then
  573. gamedirname="VampireSlayer"
  574. array_configs+=( server.cfg )
  575. fn_fetch_default_config
  576. fn_default_config_remote
  577. fn_set_config_vars
  578. elif [ "${gamename}" == "Wolfenstein: Enemy Territory" ]; then
  579. gamedirname="WolfensteinEnemyTerritory"
  580. array_configs+=( server.cfg )
  581. fn_fetch_default_config
  582. fn_default_config_remote
  583. fn_set_config_vars
  584. elif [ "${gamename}" == "Wurm Unlimited" ]; then
  585. gamedirname="WurmUnlimited"
  586. array_configs+=( server.cfg )
  587. fn_fetch_default_config
  588. fn_default_config_remote
  589. fn_set_config_vars
  590. elif [ "${gamename}" == "Zombie Panic! Source" ]; then
  591. gamedirname="ZombiePanicSource"
  592. array_configs+=( server.cfg )
  593. fn_fetch_default_config
  594. fn_default_config_remote
  595. fn_set_config_vars
  596. fi