Source Dedicated Server -
SRCDS - Jest to serwer dedykowany gry Half Life 2. Można na nim postawić takie serwery modów jak:
*Counter Strike:Source
*Day of Defeat:Source
*Half-Life 2: Multiplayer
Budową zbliżony jest do poprzedniej wersji serwerów dedykowanych HLDS (pod Half Life 1)
Popularne binarki/engine nie znajdują się już w głównym katalogu serwera lecz w katalogu
bin("główny_katalog_serwera/bin")
Serwer uruchamia się poprzez
srcds_run lub
srcds.exe. Pliki konfiguracyjne znajdują się w "mod_do_hl2/cfg/" Tam także znajduje się główny plik konfiguracyjny
server.cfg
Przykładowy plik
server.cfg:
Kod:
// Nazwa Serwera
hostname "Nazwa Serwera"
///////////////////////////////////////////////////////////////////////////////////////////////////
sv_lan 1 //ustaw na 1 jesli to jest serwer wylacznie na lan
sv_visiblemaxplayers -1 // liczba widocznych slotow na serwerze, jesli -1 to jest automatycznie obliczana (standard)
// ale wtedy trzeba recznie w konsoli napisc adres serwera aby sie podlaczyc (jesli serwer pelny)
// ustawiasz np te wartosc na 20 a masz maxplayers 22 i w rzeczywistosci masz 2 wolne sloty na serwerze
///////////////////////////////////////////////////////////////////////////////////////////////////
// Ustawienia Fizyki gry
mp_allowspectators 1 // pozwalaj na obserwatorow (osoby kompletnie nie grajace), 1 - tak (standard), 0 - nie,
mp_autokick 1 // automatyczne kickowanie za zabijanie swoich albo dlugie nie ruszanie sie z miejsca
mp_autoteambalance 1 // przerzucaj graczy do innych druzyn jesli nierowne sklady, 0 - nie (domyslnie), 1 - tak
mp_chattime 10 // po ilu sekundach po osiagnieciu timelimitu zmienia sie mapa
mp_flashlight 1 // 1 - mozna uzywac latarki (standard), 0 - latarka zablokowana
mp_footsteps 1 // 1 - slychac kroki graczy podczas biegu (standard), 0 - wylaczone (quake 1 mode), dobre do cwiczenia refleksu :)
mp_forcecamera 0 // forsuj spectarora na: 0 - nie forsuj, 1 - widok z oczu gracza i z chase mode , 2 - tylko widok z oczu gracza, zalecana wartosc 1 albo 2
mp_friendlyfire 1 // 0 - jak strzelasz do swoich to ich nie ranisz, 1 - ranisz swoich (standard)
mp_hostagepenalty 5 0 // ilosc zabic zakladnikow po ktorym dostajesz kicka, 0 - wylaczone
mp_limitteams 1 // ilu graczy moze byc niesymetrycznie po jedej z druzyn, 0 - bez limitu, 2 - maxymalnie moze byc w jednej z druzyn 2 graczy wiecej
mp_timelimit 25 // limit czasu grania na mapie (po nim nastepuje zmiana mapy), w minutach, ustaw na 0 na brak limitu czasu,
mp_tkpunish 1 // karanie smiercia na poczatku nastepnej rundy za zabicie swojego, 0 - nie (domyslnie), 1 - tak
///////////////////////////////////////////////////////////////////////////////////////////////////
// Ustawienia Serwera
sv_allowdownload 1 // pozwalaj na download, 1 - tak (standard), 0 - nie
sv_allowupload 1 // pozwalaj na upload (np loga), 1 - tak (standard), 0 - nie
sv_alltalk 0 // 0 - (domyslnie) voice mozna uzywac tylko jesli zywy i tylko do tp, 1 - kazdy moze gadac z kazdym (na poczatek i koniec meczu)
sv_cheats 0 // 0 (standard) nie pozwala na komendy give weapon, god, noclip i takie tam, 1 - dla deweloperow map albo serwero for fun
sv_consistency 1 // 0 - nie pozwol graczom na uzywanie wlasnych modeli postaci i broni (standard) , 0 - pozwalaj (bo czituja)
sv_gravity 800 // grawitacja, domyslnie 800, im wiecej tym trudniej skakac (przy pewnych wartosciach zejscie z malego schodka jest smiertelne a granaty padaja pod nogami)
// 0 wylacza grawitacje - jak podskoczysz to juz nie upadniesz
// wartosc 100, 200, 400 sanajczesciej spotykane na serwerach niekonwecjonalnych
sv_maxspeed 320 // maksymalna predkosc biegu gracza , standard (320)
sv_pausable 0 // 0 (standard) nie pozwala graczom pauzowac gry na serwerze, 1 - pozwala, czasem na meczach sie tak ustawia
sv_region 3 // poniewaz jestesmy w europie ustawiamy 3
sv_voiceenable 1 // uzywaj opcji voice na serwerze, 1 - tak (domyslnie), 0 - nie
sv_timeout 300 // czas w sekundach, jesli gracz nie odpowie w tym czasie uznawany jest za odlaczony od serwera (jak komus sie komp zwiesi/padnie na chwile lacze)
///////////////////////////////////////////////////////////////////////////////////////////////////
// rcon i hasla
sv_pausable 0 // czy mozna pauzowac gre klawiszem pause, 1 - tak, 0 - nie
sv_password "" // wymagane haslo aby sie podlaczyc do serwera,
//ustawnaie najczesciej na serwery klanowe albo podczas meczu
//rcon_password "zupa" // haslo na rcon, nie zalecane aby tu umeszczac, lepiej jesli dasz w parametrach odpalania serwera
// jesli ustawisz "" to rcon nie bedzie dzialal
// np +rcon_password "zupa"
sv_rcon_banpenalty 60 //czas bana za probe uzycia zlego rcon'a za wielokrotne proby (banuje na ip), 0 to na zawsze
sv_rcon_minfailures 5 // limit zlych komend rcon aby dostac ban'a
sv_rcon_minfailuretime 30 // czas w jakim sa sprawdzane proby rcon,
// jak ktos zle wpisze rcon_password (albo nie poda) i wykona zbyt wiele komend rcon to dostanie bana
// wtedy pomaga jedynie restart serwera
///////////////////////////////////////////////////////////////////////////////////////////////////
// Ustawienia rund
mp_c4timer 35 // czas w sekundach na rozbrojenie bomby (bo inaczej bedzie bum :), domyslnie 35
mp_fraglimit 0 // limit fragów, zabić , jak ktoś osiągnie daną wartość to zmieni sie mapa na następną w apcyklu, 0 - wyłącza
mp_freezetime 3 // czas w sekundach wstrzymania na poczatku rundy (na reload i kupno broni), ustaw na 0 na mapach aim
mp_maxrounds 0 // maksymalna liczba rund do grania, 0 - brak limitu (standard)
mp_playerid 0 // kontroluje jakie informacje gracz widi w statusbarze, 0 - wszskich graczy, 1 - tylko teammate, 2 - nikogo
mp_roundtime 3.5 // czas trwania rundy w minutach , standard to 3 minuty, albo 1.75 na szybkie rozgrywki (aby sie nie nudzic na obsie), wartosci od 1 do 9
mp_spawnprotectiontime 3 //ochrona przed zabiciem po respawnie w sekundach, jak w tzm cyasie ktos yabije tp ten dostaje kicka
mp_startmoney 800 // liczba kasy na poczatku rundy
mp_winlimit 0 // limit rund do wygrania, jak jakas druzyna osiagnie te wartosc to nastepuje zmiana mapy, 0 - brak limitu (standard)
///////////////////////////////////////////////////////////////////////////////////////////////////
// Ustawienia Logowania
log on // on - aktywuje logowanie (standard), off - deaktywuje
sv_log_onefile 0 // 1 - loguje wszstko do jednego wielkiego pliku przez czas dzialania serwera, 0 - kazda mapa osobno ma pliki z logami
sv_logbans 1 // loguj dawanie banow, 1 - tak (standard), 0 - nie
sv_logecho 1 // 1 - wlacza logowanie komendy echo, 0 - wylacza, np jak masz w server.cfg echo SERVER CFG LOADED to bedziesz mial to logowane
sv_logfile 1 // logowanie wydarzen multiplayer (koniec rundy itp), 1 - tak (standard), 0 - nie
///////////////////////////////////////////////////////////////////////////////////////////////////
// Rate Serwera
sv_minrate 3500 // minimalna wartosc jaka serwer moze wyslac do kazdego klienta z osobna, domyslnie 0 ,
// ustawanie wartosci powyzej 6000 zlaguje serwer i graczy
// zaleca sie krzymanie wartosci 0 ze wzgledu na serwery HLTV - po prostu mozna zaoszczedzic kase za lacze
sv_maxrate 9999 // maksymalna wartosc jaka serwer moze wyslac do kazdego klienta z osobna,
// ustawianie wartosci ponizej 4000 zlaguje graczy i serwer
// na lan 20000
// na serwer internetowy - zalzy do lacza, sprobuj z 9999 jesli masz lagi, ewentualnie sukcesywnie mzniejszaj o 500
sv_instancebaselines 1
sv_forcepreload 1 // 1 - forsuj ladowanie plikow, 0 - wylacz (domyslnie)
sv_maxupdaterate 30 // maksymalna wartosc jaka klient moze miec cl_updaterate,
//jesli ma wiecej to bedzie mial tracone pakiety
sv_minupdaterate 10 // minimalna wartosc jaka klient moze miec cl_updaterate,
//jesli ma wiecej to zwieksza ruch sieciowy i moze tracic pakiety, wartosc 10 to minimum
sv_maxunlag 1 // amksymalny czas w sekundach kompensacji lagow
Instalacja jest stosunkowo prosta:
(Komendy dla Windowsa są identyko jak dla Linuxa lecz jest różnica jedynie w plikach
Poszczególne systemy będę oznaczał:
Linuxa pomarańczowym a
Windowsa niebieskim)
Na
Linuxie wymagane są pakiety:
* app-arch/ncompress
* sys-kernel/linux-headers
* sys-libs/libstdc++-v3
Bardzo przydatny jest także
*app-misc/screen
Zaczynamy od ściągnięcia pliku
hldsupdatetool
Dla
Windowsa:
http://storefront.steampowered.com/d...updatetool.exe
Dla
Linuxa:
http://storefront.steampowered.com/d...updatetool.bin
Na
Windowsie instalujemy w dowolnym miejscu
hldsupdatetool.exe a nstępnie tworzymy skrót do pliku
HldsUpdateTool.exe
Na
Linuxie polecam stworzyć odrębny katalog i pracować w tym katalogu:
Tworzymy katalog:
Przechodzimy do niego:
Ściągamy hldsupdatetool:
Następnie należy odpalić samo hldsupdatetool (Zarówno na
Windowsie jak i na
Linuxie)
w celu aktualizacji.
Na
Windowsie odpalamy plik
HldsUpdateTool.exe i czekamy
Na
Linuxie:
Najpierw ustawiamy chmody:
Kod:
chmod +x hldsupdatetool.bin
Następnie odpalamy
hldsupdatetool.bin
Kod:
./hldsupdatetool.bin
Na pytanie o akceptację licencji odpowiadamy
yes
Na
Linuxie zostanie wypakowany plik o nazwie
steam i należy mu ustawić chmody:
Teraz przechodzimy do instalacji serwera odpowiedniego dla moda (w naszym przypadku
Counter Strike:Source)
Dla
Windowsa oraz
Linuxa parametry są takie same:
-command update -game "Counter-Strike Source" -dir ./ -verify_all -retry
*-command update - Wywołuje instalację lub instalację SRCDS
*-game "gra" - nazwa gry pod którą chcemy zainstalować serwer (Dla
CS:S -game "Counter-Strike Source")
*-dir ./ - katalog w którym chcemy zainstalować serwer
*-verify_all - sprawdza czy wszystkie pliki są aktualne
*-retry -automatycznie ponawia połączenie
Na
Windowsie wszystkie parametry dodajemy do naszego skrótu w pozycji "Element docelowy" (Klikamy prawym na skrót, z listy wybieramy Właściwości)
Na
Linuxie ściągamy nasz serwer poprzez plik
steam
Czyli komendą:
Kod:
./steam -command update -game "Counter-Strike Source" -dir ./ -verify_all -retry
Nstępnie musimy czekać na pobranie plików, może to trwać sporo czasu
Po pobraniu plików przyszedł czas na odpalenie serwera
Argumenty wiersza polecenia dla Source Dedicated Server (srcds.exe, srcds_run)
Command-line parametrów wiersza polecenia
* -allowdebug - Włącza tryb debugowania( to samo co -debug)
* -autoupdate - Serwer poszukuje aktualizacji przy starcie (Linux / Unix).
* -console - SRCDS będzie uruchamiany w trybie konsoli (tylko dla Windows).
* -dev - Pokaż deweloperskie wiadomości.
* -debug - Tryb debugowania.
* -game - Określa, która gra/mod ma być uruchomiona
* -insecure - Wyłącza VAC (Valve Anti Cheat)
* -nobots - Wyłącz boty
* -ip - Określa IP na którym pracuje serwer
* -port - port na którym ma pracować serwer
* -maxplayers <number> - Określa ile slotów może mieć serwer
* -tickrate <number> - Określa Server Tickrate (Do wyboru 33 , 66, 100)
* -verify_all - sprawdzi, czy każdy plik jest aktualny
Zmienne Konsoli
* +<console variable> <arg> - Ustawia Cvar (lub zmienną konsoli) do określonego ustawienia.
Niektóre użyteczne zmienne konsoli
* +hostname "Nazwa Serwera" - Określa nazwę serwera.
* +ip - Określa IP przy wielu kartach sieciowych (Stare ale wciąż działa)
* +map <map> - Określa, która mapa ma być rozpoczęciem
* +maxplayers <number> -Określa ile slotów może mieć serwer
* +hostport <port> -Określa port hosta (Port specyfikacji przed portu został dodany, ale nadal może być używany
nie mogę przetłumaczyć ;/Specifies the host port (Port specification before -port was added, but can still be used).).
*+ clientport <port> - Określa port klienta (Port serwera reklamujący do klientów, tego samego portu, jak i clientport w konsoli)
znowuproblem z tłuamczeniem ;/ Specifies the client port (The port the server advertises to clients, the same as -port and clientport in console)
* +sv_lan <0/1> - Jeśli jest ustawiony na 1, serwer jest dostępny tylko w sieci lokalnej (LAN).
Linux
Serwer uruchamiamy komendą z parametrami edytowani do własnych potrzeb: (podane parametry są dla
CS:S)
Kod:
./srcds_run -console -game cstrike +map de_dust -maxplayers 18 -ip xx.xx.xx.xx -port 27015 -tickrate 100 -verify_all
Jeżeli chcemy aby serwer nie wyłączył się po wyjściu przez putty bądź inny program należy postawić go na screen-ie:
Kod:
screen -A -m -d -S nazwa ./srcds_run -console -game cstrike +map de_dust -maxplayers 18 -ip xx.xx.xx.xx -port 27015 -tickrate 100 -verify_all
Aby przejść do konsoli serwera piszemy:
A wychodzimy poprzez kombinację klawiszy: Ctrl+A+D
Windows
Polecam stworzyć skrót do pliku
srcds.exe
I wszystkie parametry dopisujemy w polu
Element docelowy

I serwer odpalmy poprzez ten skrót
Dodatki do Serwera SRCDS:
Głównym dodatkiem jest
MetModSource
Następnie do MetaModSource instaluje się SourceMod lub/oraz ManiAdminPlugin
SourceMod jest tak jakby kontynuacją projektu
AmxModX lecz pod SRCDS a
ManiAdminPlugin(występuje on w postaci pod MetaModSource oraz bez niego) jest jak SourceMod lecz ma już sporo zintegrowanych dodatków takich jak:
# 1 Moduł: Advert
# 2 Moduł: Stats
# 3 Moduł: Victim Stats
# 4 Moduł: Team Kill/Wound Protection
# 5 Moduł: Reserve Slot
# 6 Moduł: High Ping Kick
# 7 Moduł: Admin action messages
# 8 Moduł: Chat flooding control
# 9 Moduł: Basic auto balance teams
# 10 Moduł: Current Time Display
# 11 Moduł: Voting functionality
# 12 Moduł: Word filter module
# 13 Moduł: Sounds Control
# 14 Moduł: Plugin Logging
# 15 Moduł: Anti IP Ghosting
# 16 Moduł: Decal Map Adverts
# 17 Moduł: Anti-cheat
# 18 Moduł: Custom Skin Control
# 19 Moduł: Spray Tag Tracking
# 20 Moduł: Warmup Timer
# 21 Moduł: Menu options
# 22 Moduł: Miscallaneous
# 23 Moduł: Quake sounds (opcjonalny)
Bezwzględny zakaz kopiowania!
źródła:
http://www.serverwiki.org/index.php/ServerWiki
http://hlds.pl/
http://www.srcds.com/