Pl/SteamCMD: Difference between revisions
(update) |
|||
Line 5: | Line 5: | ||
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:// | :* 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 | ||
: {{Note|Nie wypakowuj zawartości archiwum w miejsce, gdzie masz już zainstalowanego klienta Steam lub narzędzie [[HLDSUpdateTool]]. }} | : {{Note|Nie wypakowuj zawartości archiwum w miejsce, gdzie masz już zainstalowanego klienta Steam lub narzędzie [[HLDSUpdateTool]]. }} | ||
:* Linuks: wpisz <code>tar xvfz | :* 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> | :* 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 | ||
{{Note|Należy się wcześniej wylogować ze swojego klienta Steam.}} | {{Note|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 == | ||
: Example: install and validate beta version of HLDS: | |||
app_update 90 -beta "Beta" validate | |||
3. Once finished, type <code>quit</code> to properly log off of the Steam servers. | |||
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 <path> | |||
: {{Bug| Na niektórych dystrybucjach ścieżka nie może zawierać WIELKICH liter - zobacz [[#Znane problemy]]}} | : {{Bug| 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/ | |||
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_id> | |||
: Przykład: | : 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 <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ć. | |||
{| | |||
|- | |||
! scope="col" style="width: 7em" | ID | |||
! Serwer | |||
|- | |||
! scope="row" | 90 | |||
| Half-Life Dedicated Server for Half-Life: Deathmatch and Counter-Strike | |||
|- | |||
! scope="row" | 740 | |||
| Counter-Strike: Global Offensive Dedicated Server | |||
|- | |||
! scope="row" | 111710 | |||
| Nuclear Dawn Dedicated Server | |||
|- | |||
! scope="row" | 223240 | |||
| Red Orchestra Dedicated Server | |||
|- | |||
! scope="row" | 212542 | |||
| Red Orchestra 2: Heroes of Stalingrad Dedicated Server | |||
|- | |||
! scope="row" | 215350 | |||
| Killing Floor Dedicated Server | |||
|- | |||
! scope="row" | 229830 | |||
| Team Fortress 2 Dedicated Server Beta | |||
|} | |||
== Automatyzacja SteamCMD == | == Automatyzacja SteamCMD == | ||
Line 48: | Line 97: | ||
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. | ||
Line 63: | Line 114: | ||
: 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 plik wsadowy dla Windows == | ||
<syntaxhighlight> | <syntaxhighlight> | ||
::=======================:: | |||
# | :: 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 | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Line 103: | Line 226: | ||
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> | <code>sudo apt-get install ia32-libs</code> | ||
=== CentOS === | === RedHat i pochodne (RHEL, Fedora, CentOS) === | ||
<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> | <code>pacman -S lib32-gcc-libs</code> | ||
== Nieudane pobieranie == | == Nieudane pobieranie == |
Revision as of 15:52, 20 February 2013
Template:Otherlang2 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 na Steam. Docelowo wszystkie gry będą używać tej metody, zamiast HLDSUpdateTool.
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

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
- Example: install and validate beta version of HLDS:
app_update 90 -beta "Beta" validate
3. Once finished, type quit
to properly log off of the Steam servers.
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>
Błąd: Na niektórych dystrybucjach ścieżka nie może zawierać WIELKICH liter - zobacz #Znane problemy [todo tested in ?]
- 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ć.
ID | Serwer |
---|---|
90 | Half-Life Dedicated Server for Half-Life: Deathmatch and Counter-Strike |
740 | Counter-Strike: Global Offensive Dedicated Server |
111710 | Nuclear Dawn Dedicated Server |
223240 | Red Orchestra Dedicated Server |
212542 | Red Orchestra 2: Heroes of Stalingrad Dedicated Server |
215350 | Killing Floor Dedicated Server |
229830 | Team Fortress 2 Dedicated Server Beta |
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 plik wsadowy 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