SteamCMD
(Utworzył nową stronę „'''Steam Console Client''' lub '''SteamCMD''' jest nowym narzędziem do instalacji i aktualizacji serwerów dedykowanych, przy użyciu wiersza poleceń. Narzędzie d...”) |
m |
||
(Nie pokazano 2 wersji utworzonych przez jednego użytkownika) | |||
Linia 1: | Linia 1: | ||
− | '''Steam Console Client''' lub '''SteamCMD''' jest nowym narzędziem do instalacji i aktualizacji serwerów dedykowanych, przy użyciu wiersza poleceń. Narzędzie działa tylko z grami, które działają z [http://store.steampowered.com/news/5856/ nowym systemem zawartości] | + | '''Steam Console Client''' lub '''SteamCMD''' jest nowym narzędziem do instalacji i aktualizacji serwerów dedykowanych, przy użyciu wiersza poleceń. Narzędzie działa tylko z grami, które działają z [http://store.steampowered.com/news/5856/ nowym systemem zawartości] zwanym [[SteamPipe]]. Docelowo wszystkie gry będą używać tej metody, zamiast [[Hldsupdatetool|HLDSUpdateTool]]. |
== Pobieranie i uruchomienie SteamCMD== | == Pobieranie i uruchomienie SteamCMD== | ||
1. Pobieranie SteamCMD Update Tool | 1. Pobieranie SteamCMD Update Tool | ||
− | :* [http:// | + | :* [http://media.steampowered.com/client/steamcmd_win32.zip Instalator Windows] |
− | :* | + | :* Linuks: wpisz <code>wget http://media.steampowered.com/client/steamcmd_linux.tar.gz</code> |
− | :: Jeśli posiadasz 64-bitową dystrybucję Linuksa najprawdopodobniej zaistnieje potrzeba instalacja dodatkowych bibliotek w wersji 32bit. Zobacz[[#biblioteki 32-bitowe na systemach Linuks 64-bit|tutaj]] jak to zrobić. | + | :: Jeśli posiadasz 64-bitową dystrybucję Linuksa najprawdopodobniej zaistnieje potrzeba instalacja dodatkowych bibliotek w wersji 32bit. Zobacz [[#biblioteki 32-bitowe na systemach Linuks 64-bit|tutaj]] jak to zrobić. |
2. Wypakuj gdzieś na dysk zawartość pobranego archiwum | 2. Wypakuj gdzieś na dysk zawartość pobranego archiwum | ||
− | : Uwaga | + | : Uwaga|Nie wypakowuj zawartości archiwum w miejsce, gdzie masz już zainstalowanego klienta Steam lub narzędzie [[HLDSUpdateTool]]. |
− | :* | + | :* Linuks: wpisz <code>tar xvfz steamcmd_linux.tar.gz</code> |
3. Uruchomienie SteamCMD po raz pierwszy | 3. Uruchomienie SteamCMD po raz pierwszy | ||
: Otwórz wiersz poleceń i uruchom SteamCmd | : Otwórz wiersz poleceń i uruchom SteamCmd | ||
:* Windows: wpisz <code>steamcmd</code> | :* Windows: wpisz <code>steamcmd</code> | ||
− | :* | + | :* Linuks: wpisz <code>./steam.sh</code> |
− | + | ||
− | + | ||
''Aplikacja zaktualizuje się automatycznie i wyświetli coś takiego <code>Steam></code>. Wpisz <code>help</code>, aby uzyskać więcej informacji.'' | ''Aplikacja zaktualizuje się automatycznie i wyświetli coś takiego <code>Steam></code>. Wpisz <code>help</code>, aby uzyskać więcej informacji.'' | ||
+ | Aby pobrać większość serwerów można zalogować się anonimowo | ||
+ | login anonymous | ||
Do pobrania niektórych gier niezbędne będzie zalogowanie się na swoje konto Steam | Do pobrania niektórych gier niezbędne będzie zalogowanie się na swoje konto Steam | ||
− | Uwaga | + | Uwaga|Należy się wcześniej wylogować ze swojego klienta Steam. |
− | + | login <nazwa użytkownika> | |
− | + | ||
− | + | Wpisz swoje hasło. W następnej kolejności sprawdź swoją skrzynkę email, powinna znajdować się tak wiadomość z kodem Steam Guard, który należy wpisać (czynność ta jest jednokrotna dla każdego komputera). | |
− | Powinien | + | |
+ | Powinien teraz wyświetlić się komunikat o poprawnym zalogowaniu na konto. | ||
== Pobieranie serwerów == | == Pobieranie serwerów == | ||
1. Uruchom SteamCMD i ustaw folder, gdzie ma się pobrać serwer. (Uwaga: użyj odpowiednich ukośników dla Windowsa '\' i Linuksa '/') | 1. Uruchom SteamCMD i ustaw folder, gdzie ma się pobrać serwer. (Uwaga: użyj odpowiednich ukośników dla Windowsa '\' i Linuksa '/') | ||
− | force_install_dir < | + | force_install_dir <path> |
− | : | + | : Uwaga: Na niektórych dystrybucjach ścieżka nie może zawierać WIELKICH liter - zobacz [[#Znane problemy]] |
− | : Przykład: | + | : Przykład: instalacja cs_go w aktualnej ścieżce: |
− | + | ||
force_install_dir ./cs_go/ | force_install_dir ./cs_go/ | ||
− | 2. Instalacja i aktualizacja serwerów. Do sprawdzenia poprawności plików należy użyć komendy <code>validate</code>. | + | 2. Instalacja i aktualizacja serwerów. <app_id> oznacza [[Steam Application IDs|ID aplikacji Steam]]. Do sprawdzenia poprawności plików należy użyć komendy <code>validate</code>. Aby uczestniczyć w becie, należy dodać do komendy parametr <code>-beta "Beta"</code>. |
− | app_update < | + | app_update <app_id> |
− | : Przykład: | + | : Przykład: instalacja i weryfikacja poprawności plików CS:GO: |
− | + | ||
app_update 740 validate | app_update 740 validate | ||
+ | : Przykład: instalacja i weryfikacja poprawności plików wersji beta HLDS: | ||
+ | app_update "90 -beta beta" validate | ||
3. W celu poprawnego zamknięcia programu i wylogowania się z serwerów Steam należy użyć komendy <code>quit</code>. | 3. W celu poprawnego zamknięcia programu i wylogowania się z serwerów Steam należy użyć komendy <code>quit</code>. | ||
+ | |||
+ | === Wspierane serwery === | ||
+ | |||
+ | Lista serwerów, które wymagają steamcmd, aby je zainstalować. | ||
+ | |||
+ | {| | ||
+ | |- | ||
+ | ! Serwer | ||
+ | ! scope="col" style="width: 7em" | ID | ||
+ | ! Dodatkowe opcje linii komend | ||
+ | |- | ||
+ | | HLDS for Half-Life: Deathmatch '''oraz''' Counter-Strike | ||
+ | | 90 | ||
+ | |- | ||
+ | | Counter-Strike: Condition Zero dedicated server | ||
+ | | 90 | ||
+ | | +app_set_config 90 mod czero | ||
+ | |- | ||
+ | | Half-Life: Deathmatch Classic dedicated server | ||
+ | | 90 | ||
+ | | +app_set_config 90 mod dmc | ||
+ | |- | ||
+ | | Day of Defeat dedicated server | ||
+ | | 90 | ||
+ | | +app_set_config 90 mod dod | ||
+ | |- | ||
+ | | Half-Life: Opposing Force dedicated server | ||
+ | | 90 | ||
+ | | +app_set_config 90 mod gearbox | ||
+ | |- | ||
+ | | Ricochet dedicated server | ||
+ | | 90 | ||
+ | | +app_set_config 90 mod ricochet | ||
+ | |- | ||
+ | | Team Fortress Classic dedicated server | ||
+ | | 90 | ||
+ | | +app_set_config 90 mod tfc | ||
+ | |- | ||
+ | | Counter-Strike: Global Offensive dedicated server | ||
+ | | 740 | ||
+ | |- | ||
+ | | Nuclear Dawn dedicated server | ||
+ | | 111710 | ||
+ | |- | ||
+ | | Red Orchestra dedicated server | ||
+ | | 223240 | ||
+ | |- | ||
+ | | Red Orchestra 2: Heroes of Stalingrad dedicated server | ||
+ | | 212542 | ||
+ | |- | ||
+ | | Killing Floor dedicated server | ||
+ | | 215350 | ||
+ | |- | ||
+ | | Team Fortress 2 dedicated server | ||
+ | | 232250 | ||
+ | |- | ||
+ | | Team Fortress 2 '''Beta''' dedicated server | ||
+ | | 229830 | ||
+ | |- | ||
+ | | Day of Defeat: Source dedicated server | ||
+ | | 232290 | ||
+ | |- | ||
+ | | Counter-Strike: Source dedicated server | ||
+ | | 232330 | ||
+ | |- | ||
+ | | Half-Life 2: Deathmatch dedicated server | ||
+ | | 232370 | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | Wskazówka: Aby zainstalować wiele modyfikacji na raz należy oddzielić ich nazwy przecinkami, np. <code>+app_set_config 90 mod czero,dod</code>. | ||
== Automatyzacja SteamCMD == | == Automatyzacja SteamCMD == | ||
Linia 47: | Linia 119: | ||
Są dwa sposoby za zautomatyzowanie SteamCMD. | Są dwa sposoby za zautomatyzowanie SteamCMD. | ||
− | 1. Dodawanie komend z wiersza poleceń. | + | 1. Dodawanie komend z wiersza poleceń. Przykłady: |
− | + | steamcmd +login anonymous +force_install_dir ../csgo_ds +app_update 740 validate +quit | |
+ | |||
+ | steamcmd +login <uzytkownik> <haslo> +force_install_dir c:\KFServer\ +app_update 215350 validate +quit | ||
2. Stworzenie skryptu. | 2. Stworzenie skryptu. | ||
Linia 62: | Linia 136: | ||
: b. Uruchamianie SteamCMD z opcją czytania skryptu <code>+runscript</code>. Przykład: | : b. Uruchamianie SteamCMD z opcją czytania skryptu <code>+runscript</code>. Przykład: | ||
− | + | steamcmd +runscript csgo_ds.txt | |
+ | == Przykładowy skrypt dla Windows == | ||
+ | <bash> | ||
+ | ::=======================:: | ||
+ | :: SteamCMD Guardian 1.1 :: | ||
+ | :: ckynick254 :: | ||
+ | ::=======================:: | ||
+ | set programname=SteamCMD Guardian 1.1 | ||
+ | ::=======================:: | ||
+ | :: SET YOUR VARIABLES! :: | ||
+ | ::=======================:: | ||
+ | set servername= | ||
+ | set username= | ||
+ | set password= | ||
+ | ::=======================:: | ||
+ | :: Your folder :: | ||
+ | :: Replace after = :: | ||
+ | ::=======================:: | ||
+ | set runcmd=E:\Games\ | ||
+ | |||
+ | ::=======================:: | ||
+ | :: End of variables :: | ||
+ | ::=======================:: | ||
+ | |||
+ | :: This will keep the window clean and easy to read | ||
+ | @ECHO off | ||
+ | |||
+ | :: Sets the title of the window | ||
+ | title %programname% - %servername% | ||
+ | |||
+ | :: Clears the window incase there is anything there | ||
+ | cls | ||
+ | COLOR 1f | ||
+ | CD %runcmd% | ||
+ | |||
+ | :: Prints to the window what we are doing | ||
+ | ECHO %programname% has been started! | ||
+ | :start | ||
+ | ECHO. | ||
+ | ECHO. | ||
+ | ECHO ############################################################## | ||
+ | ECHO # Dedicated Server # | ||
+ | ECHO # 1 - Half-Life: Deathmatch and Counter-Strike # | ||
+ | ECHO # 2 - Counter-Strike: Global Offensive # | ||
+ | ECHO # 3 - Nuclear Dawn Dedicated Server # | ||
+ | ECHO # 4 - Red Orchestra Dedicated Server # | ||
+ | ECHO # 5 - Red Orchestra 2: Heroes of Stalingrad Dedicated Server # | ||
+ | ECHO # 6 - Killing Floor Dedicated Server # | ||
+ | ECHO # 7 - Team Fortress 2 Dedicated Server Beta # | ||
+ | ECHO # 8 - HELP! # | ||
+ | ECHO # 9 - Exit # | ||
+ | ECHO ############################################################## | ||
+ | ECHO. | ||
+ | ECHO. | ||
+ | |||
+ | :: Delete variable %A% | ||
+ | SET "A=" | ||
+ | SET /P A=Set Your Choice And Press Enter: | ||
+ | ECHO Loading ......... | ||
+ | IF "%A%"=="1" set app=90 | ||
+ | IF "%A%"=="2" set app=740 | ||
+ | IF "%A%"=="3" set app=111710 | ||
+ | IF "%A%"=="4" set app=223240 | ||
+ | IF "%A%"=="5" set app=212542 | ||
+ | IF "%A%"=="6" set app=215350 | ||
+ | IF "%A%"=="7" set app=229830 | ||
+ | IF "%A%"=="8" ECHO. | ||
+ | IF "%A%"=="8" ECHO https://developer.valvesoftware.com/wiki/SteamCMD | ||
+ | IF "%A%"=="8" ECHO. | ||
+ | IF "%A%"=="8" PAUSE | ||
+ | IF "%A%"=="8" goto start | ||
+ | IF "%A%"=="9" EXIT | ||
+ | |||
+ | :: This is a return point in case the server crashes or is closed | ||
+ | :restart | ||
+ | ECHO. | ||
+ | ECHO (%date%)(%time%) %servername% is now ONLINE | ||
+ | ECHO Watching %servername% for crashes... | ||
+ | >> "%servername%.log" ECHO. | ||
+ | >> "%servername%.log" ECHO (%date%)(%time%) %servername% is now ONLINE | ||
+ | >> "%servername%.log" ECHO (%date%)(%time%) Watching %servername% for crashes... | ||
+ | |||
+ | ::Start the actual update window | ||
+ | start /wait steamcmd +login %username% %password% +force_install_dir %runcmd%\%app%Server\ +app_update %app% validate | ||
+ | ECHO (%time%) WARNING: srcds closed or crashed, restarting. | ||
+ | ECHO. | ||
+ | ECHO (%date%)(%time%) Crash or Close detected! | ||
+ | ECHO %servername% is now restarting... | ||
+ | >> "%servername%.log" ECHO. | ||
+ | >> "%servername%.log" ECHO (%date%)(%time%) Crash or Close detected! | ||
+ | >> "%servername%.log" ECHO (%date%)(%time%) %servername% is now restarting... | ||
+ | |||
+ | ::Server crashed or closed, so we point it to the return point to start the server again | ||
+ | GOTO restart | ||
+ | </bash> | ||
= Znane problemy = | = Znane problemy = | ||
Linia 69: | Linia 237: | ||
== Mogę pobrać i zaktualizować serwer, lecz serwer nie chce wystartować == | == Mogę pobrać i zaktualizować serwer, lecz serwer nie chce wystartować == | ||
Najczęstsze przyczyny: | Najczęstsze przyczyny: | ||
− | * | + | * Linuks: Niektóre gry na pewnych dystrybucjach mają problemy z WIELKIMI literami w nazwach plików. |
== biblioteki 32-bitowe na systemach Linuks 64-bit == | == biblioteki 32-bitowe na systemach Linuks 64-bit == | ||
Linia 75: | Linia 243: | ||
steamcmd jest aplikacją 32-bitową, także wymaga pewnych 32-bitowych bibliotek do działania, pomimo, że są już zainstalowane ich 64-bitowe odpowiedniki. | steamcmd jest aplikacją 32-bitową, także wymaga pewnych 32-bitowych bibliotek do działania, pomimo, że są już zainstalowane ich 64-bitowe odpowiedniki. | ||
− | Błąd ten wygląda mniej | + | Błąd ten wygląda mniej więcej tak:<br/> |
<code>steamcmd: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory</code> | <code>steamcmd: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory</code> | ||
Rozwiązanie jest zależne od dystrybucji: | Rozwiązanie jest zależne od dystrybucji: | ||
− | === Debian i pochodne === | + | === Debian i pochodne (Ubuntu, Mint) === |
− | <code>sudo apt-get install ia32-libs | + | <code>sudo apt-get install ia32-libs</code> |
− | === CentOS === | + | === RedHat i pochodne (RHEL, Fedora, CentOS) === |
− | <code> | + | <code>yum install glibc.i686 libstdc++.i686</code> |
+ | |||
+ | === Arch Linux === | ||
+ | Nie zapomnij wpierw włączyć [https://wiki.archlinux.org/index.php/Multilib repozytorium multilib]. | ||
+ | |||
+ | <code>pacman -S lib32-gcc-libs</code> | ||
== Nieudane pobieranie == | == Nieudane pobieranie == | ||
Linia 95: | Linia 268: | ||
Na serwerach linuksowych można doświadczyć następującego problemu "Login Failure: No Connection". Problem jest związany z brakującymi wpisami w iptables. Należy dodać coś podobnego: | Na serwerach linuksowych można doświadczyć następującego problemu "Login Failure: No Connection". Problem jest związany z brakującymi wpisami w iptables. Należy dodać coś podobnego: | ||
+ | |||
iptables -A INPUT -p udp -m udp --sport 27000:27030 --dport 1025:65355 -j ACCEPT | iptables -A INPUT -p udp -m udp --sport 27000:27030 --dport 1025:65355 -j ACCEPT | ||
iptables -A INPUT -p udp -m udp --sport 4380 --dport 1025:65355 -j ACCEPT | iptables -A INPUT -p udp -m udp --sport 4380 --dport 1025:65355 -j ACCEPT | ||
− | |||
− | + | Lista wymaganych portów znajduje się tutaj: https://support.steampowered.com/kb_article.php?ref=8571-GLVN-8711&l=english | |
− | + | ||
− | + |
Aktualna wersja na dzień 08:00, 18 kwi 2013
Steam Console Client lub SteamCMD jest nowym narzędziem do instalacji i aktualizacji serwerów dedykowanych, przy użyciu wiersza poleceń. Narzędzie działa tylko z grami, które działają z nowym systemem zawartości zwanym SteamPipe. Docelowo wszystkie gry będą używać tej metody, zamiast HLDSUpdateTool.
Spis treści |
Pobieranie i uruchomienie SteamCMD
1. Pobieranie SteamCMD Update Tool
- Instalator Windows
- Linuks: wpisz
wget http://media.steampowered.com/client/steamcmd_linux.tar.gz
- Jeśli posiadasz 64-bitową dystrybucję Linuksa najprawdopodobniej zaistnieje potrzeba instalacja dodatkowych bibliotek w wersji 32bit. Zobacz tutaj jak to zrobić.
2. Wypakuj gdzieś na dysk zawartość pobranego archiwum
- Uwaga|Nie wypakowuj zawartości archiwum w miejsce, gdzie masz już zainstalowanego klienta Steam lub narzędzie HLDSUpdateTool.
- Linuks: wpisz
tar xvfz steamcmd_linux.tar.gz
- Linuks: wpisz
3. Uruchomienie SteamCMD po raz pierwszy
- Otwórz wiersz poleceń i uruchom SteamCmd
- Windows: wpisz
steamcmd
- Linuks: wpisz
./steam.sh
- Windows: wpisz
Aplikacja zaktualizuje się automatycznie i wyświetli coś takiego Steam>
. Wpisz help
, aby uzyskać więcej informacji.
Aby pobrać większość serwerów można zalogować się anonimowo
login anonymous
Do pobrania niektórych gier niezbędne będzie zalogowanie się na swoje konto Steam Uwaga|Należy się wcześniej wylogować ze swojego klienta Steam.
login <nazwa użytkownika>
Wpisz swoje hasło. W następnej kolejności sprawdź swoją skrzynkę email, powinna znajdować się tak wiadomość z kodem Steam Guard, który należy wpisać (czynność ta jest jednokrotna dla każdego komputera).
Powinien teraz wyświetlić się komunikat o poprawnym zalogowaniu na konto.
Pobieranie serwerów
1. Uruchom SteamCMD i ustaw folder, gdzie ma się pobrać serwer. (Uwaga: użyj odpowiednich ukośników dla Windowsa '\' i Linuksa '/')
force_install_dir <path>
- Uwaga: Na niektórych dystrybucjach ścieżka nie może zawierać WIELKICH liter - zobacz #Znane problemy
- Przykład: instalacja cs_go w aktualnej ścieżce:
force_install_dir ./cs_go/
2. Instalacja i aktualizacja serwerów. <app_id> oznacza ID aplikacji Steam. Do sprawdzenia poprawności plików należy użyć komendy validate
. Aby uczestniczyć w becie, należy dodać do komendy parametr -beta "Beta"
.
app_update <app_id>
- Przykład: instalacja i weryfikacja poprawności plików CS:GO:
app_update 740 validate
- Przykład: instalacja i weryfikacja poprawności plików wersji beta HLDS:
app_update "90 -beta beta" validate
3. W celu poprawnego zamknięcia programu i wylogowania się z serwerów Steam należy użyć komendy quit
.
Wspierane serwery
Lista serwerów, które wymagają steamcmd, aby je zainstalować.
Serwer | ID | Dodatkowe opcje linii komend |
---|---|---|
HLDS for Half-Life: Deathmatch oraz Counter-Strike | 90 | |
Counter-Strike: Condition Zero dedicated server | 90 | +app_set_config 90 mod czero |
Half-Life: Deathmatch Classic dedicated server | 90 | +app_set_config 90 mod dmc |
Day of Defeat dedicated server | 90 | +app_set_config 90 mod dod |
Half-Life: Opposing Force dedicated server | 90 | +app_set_config 90 mod gearbox |
Ricochet dedicated server | 90 | +app_set_config 90 mod ricochet |
Team Fortress Classic dedicated server | 90 | +app_set_config 90 mod tfc |
Counter-Strike: Global Offensive dedicated server | 740 | |
Nuclear Dawn dedicated server | 111710 | |
Red Orchestra dedicated server | 223240 | |
Red Orchestra 2: Heroes of Stalingrad dedicated server | 212542 | |
Killing Floor dedicated server | 215350 | |
Team Fortress 2 dedicated server | 232250 | |
Team Fortress 2 Beta dedicated server | 229830 | |
Day of Defeat: Source dedicated server | 232290 | |
Counter-Strike: Source dedicated server | 232330 | |
Half-Life 2: Deathmatch dedicated server | 232370 |
Wskazówka: Aby zainstalować wiele modyfikacji na raz należy oddzielić ich nazwy przecinkami, np. +app_set_config 90 mod czero,dod
.
Automatyzacja SteamCMD
Są dwa sposoby za zautomatyzowanie SteamCMD.
1. Dodawanie komend z wiersza poleceń. Przykłady:
steamcmd +login anonymous +force_install_dir ../csgo_ds +app_update 740 validate +quit
steamcmd +login <uzytkownik> <haslo> +force_install_dir c:\KFServer\ +app_update 215350 validate +quit
2. Stworzenie skryptu.
- a. Umieszczenie komend SteamCMD w pliku tekstowym. Przykład:
// update_csgo_ds.txt // login uzytkownik hasło force_install_dir ../csgo_ds app_update 740 validate exit
- b. Uruchamianie SteamCMD z opcją czytania skryptu
+runscript
. Przykład:
steamcmd +runscript csgo_ds.txt
Przykładowy skrypt dla Windows
::=======================:: :: SteamCMD Guardian 1.1 :: :: ckynick254 :: ::=======================:: set programname=SteamCMD Guardian 1.1 ::=======================:: :: SET YOUR VARIABLES! :: ::=======================:: set servername= set username= set password= ::=======================:: :: Your folder :: :: Replace after = :: ::=======================:: set runcmd=E:\Games\ ::=======================:: :: End of variables :: ::=======================:: :: This will keep the window clean and easy to read @ECHO off :: Sets the title of the window title %programname% - %servername% :: Clears the window incase there is anything there cls COLOR 1f CD %runcmd% :: Prints to the window what we are doing ECHO %programname% has been started! :start ECHO. ECHO. ECHO ############################################################## ECHO # Dedicated Server # ECHO # 1 - Half-Life: Deathmatch and Counter-Strike # ECHO # 2 - Counter-Strike: Global Offensive # ECHO # 3 - Nuclear Dawn Dedicated Server # ECHO # 4 - Red Orchestra Dedicated Server # ECHO # 5 - Red Orchestra 2: Heroes of Stalingrad Dedicated Server # ECHO # 6 - Killing Floor Dedicated Server # ECHO # 7 - Team Fortress 2 Dedicated Server Beta # ECHO # 8 - HELP! # ECHO # 9 - Exit # ECHO ############################################################## ECHO. ECHO. :: Delete variable %A% SET "A=" SET /P A=Set Your Choice And Press Enter: ECHO Loading ......... IF "%A%"=="1" set app=90 IF "%A%"=="2" set app=740 IF "%A%"=="3" set app=111710 IF "%A%"=="4" set app=223240 IF "%A%"=="5" set app=212542 IF "%A%"=="6" set app=215350 IF "%A%"=="7" set app=229830 IF "%A%"=="8" ECHO. IF "%A%"=="8" ECHO https://developer.valvesoftware.com/wiki/SteamCMD IF "%A%"=="8" ECHO. IF "%A%"=="8" PAUSE IF "%A%"=="8" goto start IF "%A%"=="9" EXIT :: This is a return point in case the server crashes or is closed :restart ECHO. ECHO (%date%)(%time%) %servername% is now ONLINE ECHO Watching %servername% for crashes... >> "%servername%.log" ECHO. >> "%servername%.log" ECHO (%date%)(%time%) %servername% is now ONLINE >> "%servername%.log" ECHO (%date%)(%time%) Watching %servername% for crashes... ::Start the actual update window start /wait steamcmd +login %username% %password% +force_install_dir %runcmd%\%app%Server\ +app_update %app% validate ECHO (%time%) WARNING: srcds closed or crashed, restarting. ECHO. ECHO (%date%)(%time%) Crash or Close detected! ECHO %servername% is now restarting... >> "%servername%.log" ECHO. >> "%servername%.log" ECHO (%date%)(%time%) Crash or Close detected! >> "%servername%.log" ECHO (%date%)(%time%) %servername% is now restarting... ::Server crashed or closed, so we point it to the return point to start the server again GOTO restart
Znane problemy
Mogę pobrać i zaktualizować serwer, lecz serwer nie chce wystartować
Najczęstsze przyczyny:
- Linuks: Niektóre gry na pewnych dystrybucjach mają problemy z WIELKIMI literami w nazwach plików.
biblioteki 32-bitowe na systemach Linuks 64-bit
steamcmd jest aplikacją 32-bitową, także wymaga pewnych 32-bitowych bibliotek do działania, pomimo, że są już zainstalowane ich 64-bitowe odpowiedniki.
Błąd ten wygląda mniej więcej tak:
steamcmd: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
Rozwiązanie jest zależne od dystrybucji:
Debian i pochodne (Ubuntu, Mint)
sudo apt-get install ia32-libs
RedHat i pochodne (RHEL, Fedora, CentOS)
yum install glibc.i686 libstdc++.i686
Arch Linux
Nie zapomnij wpierw włączyć repozytorium multilib.
pacman -S lib32-gcc-libs
Nieudane pobieranie
Na systemach Windows pobieranie może się nie powieść, gdy ustawienia proxy nie są ustawione na automatyczne.
Login Failure: No Connection
Na serwerach linuksowych można doświadczyć następującego problemu "Login Failure: No Connection". Problem jest związany z brakującymi wpisami w iptables. Należy dodać coś podobnego:
iptables -A INPUT -p udp -m udp --sport 27000:27030 --dport 1025:65355 -j ACCEPT iptables -A INPUT -p udp -m udp --sport 4380 --dport 1025:65355 -j ACCEPT
Lista wymaganych portów znajduje się tutaj: https://support.steampowered.com/kb_article.php?ref=8571-GLVN-8711&l=english