Tutorial instalare server de cs (protocol 47+48) pe Linux

Tutoriale,patchuri,configurari si setari...
Locked
User avatar
kiduuu
Owner
Posts: 4807
Joined: 28 Jun 2009, 03:39
Zodie: Leu
Location: Bucuresti
Contact:

Tutorial instalare server de cs (protocol 47+48) pe Linux

Post by kiduuu » 11 Mar 2010, 15:04

Tutorial instalare server de counter-strike (protocol 47+48) pe Linux :
Autor : kiduuu
Data : 11.03.2010
Contact : cs_orang3


Am creat acest tutorial pentru a usura munca tuturor celor care vor sa isi faca un server de cs pe linux. Toate tutorialele existente pe net sunt, la ora actuala foarte vechi si copiate litera cu litera gresit din diverse surse.

Avem nevoie de :

- Un calculator cu un Procesor de minim 3 GHz intel sau amd cu 1 Gb RAM si
2 GB spatiu pe HDD.
Recomand ca procesor un Intel dual core si ca memorie un DDR2 la frecventa de 800 Mhz.
- O distributie de Linux cu acces ssh, MC (midnight-commander) si acces la root sau la un user cu drepturi de root.
Recomand un Slackware 13.0
- O conexiune la internet de aproximativ 2 MB/s reali;
- IP public, static

Recomand PuTTy pentru urmarea pasilor de mai jos.

1.Crearea directorului unde va fi instalat serverul:

Pentru a instala un server de counter-strike pe Linux este nevoie de un director in care va fi instalat serverul.
Noi vom instala serverul in /usr/hlds
Dar pentru a instala serverul in directorul hlds trebuie sa-l creem.
Pentru a face un director folosim comanda mkdir
Deci pentru a face un director in /usr/hlds vom scrie comanda aceasta in terminal:

Code:
mkdir /usr/hlds
Iar pentru a intra in /usr/hlds scrieti comanda aceasta in terminal:

Code:
cd /usr/hlds

2.Descarcarea fisierelor:

- HldsUpdateTool
Pentru a descarca fisierul HldsUpdateTool vom folosi urmatoarea comanda:

Code:
wget http://www.steampowered.com/download/hldsupdatetool.bin

- AdminMod + MetaMod (recomand decat amxmodx sau adminmod, nu ambele)
Pentru a descarca fisierul - AdminMod + MetaMod folosim comanda aceasta:

Cod:
wget http://downloads.sourceforge.net/halflifeadmin/halflife-admin-2.50.60-linux.tar.gz?

- StatsMe (recomand amxmodx in locul acestuia, nu ambele)
Pentru a descarca fisierul - StatsMe folosim comanda aceasta:

Cod:
wget http://ovh.dl.sourceforge.net/sourceforge/statsme/statsme-2.8.3-cstrike.zip

- Amxmodx
Pentru a descarca fisierul folosim comanda aceasta:
Cod:
wget http://sourceforge.net/projects/amxmodx/files/AMX%20Mod%20X%20Base/1.8.1/amxmodx-1.8.1-base.tar.gz/download

- Dproto 0.4.1
(acesta face posbila conectarea jucatorilor si de pe steam si de pe non-steam)
Pentru a descarca fisierul - dproto folosim comanda aceasta:

Cod :
wget http://orang3.ro/download/Utile CS/dproto_0_4_1_linux.rar

3.Sa trecem la intalarea serverului:


Daca ati urmat acei pasi de mai sus corect ar trebui sa nu va dea nici o erroare si sa fiti in /usr/hlds unde aveti toate fisierele descarcate.
Scriem in terminal:

Cod:
chmod +x hldsupdatetool.bin
./hldsupdatetool.bin

Acum vom scrie yes, pentru ca suntem de acord cu instalarea.

Mai departe efectuam comanda :

Cod:
./steam -command update -game valve -dir .

Dupa ce scrieti comanda aceasta in terminal s-ar putea sa o ceara din nou, asa ca veti scrie iar (sau dati sagetica sus + enter :D)

Cod:
./steam -command update -game valve -dir .

Fisierele se vor descarca in functie de viteza netului.
Cand s-au descarcat va aparea mesajul : HLDS installation up to date

Acum va trebui sa descarcam modul, in cazul nostru counter-strike

Cod:
./steam -command update -game cstrike -dir .

La fel, fisierele se vor descarca in functie de viteza netului si se va termina tot cu mesajul HLDS installation up to date

4.Configurarea

Am terminat instalarea serverului de cs, iar acum mergem sa-l configuram.
Incepem cu server.cfg pe care il gasim in /usr/hlds/cstrike
Il deschideti, stergeti tot din el si copiati ce e mai jos :

hostname "Numele Serverului"
mp_autokick 0
mp_autocrosshair 0
mp_autoteambalance 1
mp_buytime 0.25
mp_consistency 1
mp_c4timer 35
mp_fadetoblack 0
mp_falldamage 0
mp_flashlight 1
mp_forcecamera 3
mp_forcechasecam 2
mp_friendlyfire 0
mp_freezetime 2
mp_fraglimit 0
mp_hostagepenalty 0
mp_limitteams 0
mp_logfile 1
mp_logmessages 1
mp_logdetail 3
mp_maxrounds 0
mp_playerid 0
mp_roundtime 3
mp_startmoney 800
mp_timelimit 35
mp_tkpunish 0
mp_winlimit 0

sv_aim 0
sv_airaccelerate 10
sv_airmove 1
sv_allowdownload 1
sv_clienttrace 1.0
sv_clipmode 0
sv_allowupload 1
sv_cheats 0
sv_gravity 800
sv_lan 0
sv_maxrate 25000
sv_maxspeed 320
sv_maxupdaterate 101
sys_ticrate 10000
decalfrequency 60
pausable 0
log on
decalfrequency 60
edgefriction 2
host_framerate 0
exec listip.cfg
exec banned.cfg
rcon_password PAROLA

Numai ca trebuie sa schimbati voi cum va place:
Acolo sus la <HOSTNAME> scrieti cum vreti sa se numeasca serverul.
La <PAROLA> trebuie sa scrieti parola cu care veti controla serverul de la distanta prin HLSW.

Instalare AdminMod:

Suntem in /usr/hlds
La inceput am downloadat halflife-admin-2.50.60-linux.tar.gz, pentru al dezarhiva folosim comanda aceasta:

Cod:
tar xfvz halflife-admin-2.50.60-linux.tar.gz

Pentru a intra in directorul Adminmod folosim aceasta comanda:

Cod:
cd Adminmod

Acum instalam adminmod :

Cod:
./install_admin

Dupa ce ati dat aceasta comanda va aparea prima intrebare la care raspundem cu yes (apasam Y si enter)
Mai departe, ne va intreba care este directorul default de instalare al hlds. Raspundem cu /usr/hlds si enter. Apoi va trebui sa alegem modul pentru care dorim instalarea adminmod-ului. Tastam 1 (adica cstrike) si enter. Apoi Y si enter la urmatoarele doua intrebari si atat.

Configurare minima pentru Adminmod:

Pentru a configura Adminmod trebuie sa mergem in directorul /usr/hlds/cstrike/addons/adminmod/config
Pentru a merge in directorul /usr/hlds/cstrike/addons/adminmod/config vom folosi aceasta comanda:

Cod:
cd /usr/hlds/cstrike/addons/adminmod/config/

Aici sunt cateva fisiere care trebuie configurate/editate.
Vom incepe prima data cu adminmod.cfg

Aici sunt explicate pe scurt ce fac cateva comenzi.

admin_balance_teams - pentru a echilibra echipele, este setat deja din server.cfg 1
admin_bot_protection - daca este setat 0 si rulam un server cu boti, aceast cvar lasa adminii sa dea slay, kick, ban etc botilor.
admin_connect_msg - acesta este mesajul ce apare unui jucator in mijlocul ecranului dupa ce s-a conectat.
admin_cs_restrict - il punem de preferat 1 pentru a putea restrictiona armele in joc
admin_debug - n-avem treaba, il lasam 0
admin_fun_mode - de preferat il lasam 0. Acest cvar e pentru a face jucatorii sa straluceasca intr-o culoare (glow blue).
admin_fx - il punem 1. Efecte speciale.
admin_gag_name - 1
admin_gag_sayteam - 0
admin_highlander - Ar trebui lasat 0. Daca il trecem 1, doar un singur admin, cel mai mare, va avea access la comenzi. De ex daca pe server sunt 3 admini, cel mai mare ramane, iar celati 2 raman simple sloturi.
admin_ignore_immunity - Aici depinde de gusturi. Daca e pus 1, adminii, moderatorii si ceilalti jucatori cu imunitate isi pot da/lua slay-uri, kick, ban etc intre ei.
admin_repeat_msg - Un mesaj ce apare cu verde in mijlocul ecranului o data la cateva minute.
admin_quiet - Daca trecem 0, comenzile date de admin vor aparea cu nickul lui. Daca trecem 1, comenzile vor aparea dar in locul nickului va aparea doar "Admin" iar daca trecem 2, comenzile nu vor aparea deloc.
allow_client_exec - Neaparat 1 ! Cu asta putem obliga jucatorii sa execute orice comanda (quit etc)
password_field - Poate cel mai important cvar. Ce trecem aici, vor scrie adminii vostrii in consola inainte de a se conecta la server. De ex. daca punem _orang3, adminul x cu parola y va trebuie sa scrie in consola name x si apoi setinfo _orang3 y inainte de a se conecta la serverul nostru.
reserve_slots - Aici trecem cate locuri rezervate dorim. Treceti in jur de 2. Asta lasa adminii si sloturile rezervate sa se poata conecta atunci cand serverul este plin.
reserve_type - Lasati 0
Pentru mai multe comenzi si setari cititi manualul adminmod-ului.
Unele variabile nu sunt trecute, asta inseamna ca e recomandat sa le lasati asa cum sunt.

Cum adaugam/stergem admini:

Pentru inceput trebuie sa deschidem users.ini. Aici trecem numele adminilor si parolele lor, urmate de accesul pe server. Sa zicem ca vrem sa facem un admin cu access maxim pe numele Orang3 si parola 123.
Trecem in users.ini aceasta linie:

Cod:
Orang3:123:131071

Pentru nivele de access custom, mergeti la http://www.adminmod.org/help/online/Admin_Mod_Reference/Access_Levels_and_Respective_Admin_Commands.htm si selectati ce comenzi vreti sa adaugati adminului. Apoi apasati "calculate access right" iar numarul ce rezulta, il treceti in user.ini dupa numele si parola adminului. Exact ca in exemplul cu Orang3, numai ca inlocuim 131071 cu numarul rezultat. Ca o mica paranteza, liniile cu admini vor fi una sub alta si nu consecutive.

Instalare StatsMe

Chiar la inceput am facut download la statsme-2.8.3-cstrike.zip care trebuie dezarhivata in directorul cstrike.
Pentru a dezarhiva statsme-2.8.3-cstrike.zip in directorul cstrike vom folosi aceasta comanda:

Cod:
cd /usr/hlds/cstrike

Acum ca am intrat in directorul /cstrike vom dezarhiva statsme-2.8.3-cstrike.zip folosind aceasta comanda:

Cod:
unzip statsme-2.8.3-cstrike.zip

Pentru a functiona Statsme trebuie sa mergem in /usr/hlds/cstrike/addons/metamod si sa deschidem fisierul plugins.ini unde vom pune aceasta linie

Cod:
linux addons/statsme/dlls/statsme_*CENZURAT*_i386.so

Dupa ce am facut acest lucru mergem in /usr/hlds/cstrike/addons/statsme si deschidem fisierul statsme.cfg
La sm_menupassword modificam r3wt cu o alta parola. Parola trebuie modificata, pentru protectie. Apoi cand vom intra in joc, vom scrie in consola statsme_menu parola-trecuta-in-statsme.cfg pentru a modifica ultimele setari.

Ca sa mearga /rank si /top10 trebuie sa deschideti acelasi statsme.cfg iar la sm_storebyauth sa puneti 0.

Instalare AMXMODX

Mergem in amxmodx/configs/amxx.cfg si editam

amx_default_access "z" accesul pentru useri (de preferat sa il lasati cum este)
amx_mode 1 (lasati asa)
amx_password_field "_pw" - Ce trecem aici, vor scrie adminii vostrii in consola inainte de a se conecta la server. Ex: amx_password_field "_orang3", ei vor scrie inainte de connect pe server setinfo _orang3
amx_show_activity 2 (lasati asa)
amx_scrollmsg "Welcome to %hostname% -- This server is using AMX Mod X" 600 (in loc de Welcome to ... puneti ce mesaj doriti voi, iar in loc de 600 puneti timpul in care vreti sa apara mesajul, atentie timpul e in secunde)
amx_imessage"Welcome to %hostname" "000255100" (acesta este un mesaj care apare in centrul ecranului, se mai numeste si hud message).Pentru mai multe mesaje multiplicati comanda amx_imessage "mesaj" "culoareRGB"
amx_freq_imessage 180 (180 este intervalul de secunde in care mesajul apare in mijlocul ecranului)
amx_flood_time 0.75 (lasati asa)
amx_reservation 0 (in loc de 0 puneti cate sloturi vreti sa fie rezervate)
amx_hideslots 0 (lasati asa)
amx_time_display "ab 1200" "ab 600" "ab 300" "ab 180" "ab 60" "bcde 11" (lasati asa)
amx_time_voice 1 (lasati asa)

Restul lasati asa, sau editati citind cu atentie explicatia pentru fiecare comanda.

Adaugare Admini:

Putem adauga admini pe nick(ca la adminmod) pe steamid(Nu dati pe steamid decat daca are steam original altfel o sa va treziti cu o groaza de admini pe care nu ii cunoasteti) si pe ip.
Pe SteamID
"STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce" (in loc de STEAM_0:0:123456 puneti STEAM ID-ul adminului, acesta trebuie sa semene ca exemplul dat)
Pe Nick
"Orang3" "mypass" "abcdefghijklmnopqrstu" "a" (unde Orang3=nickul adminului; mypass=parola adminilui). Acesta trebuie sa dea setinfo _"ce am setat noi" parola de fiecare data cand vrea sa intre in joc
Pe IP
"ip" "" "abcdefghijklmnopqrstu" "de" unde IP este ip-ul adminului

Cei care au adminul pe STEAMID si pe IP s-ar putea sa nu le mai ceara sa dea setinfo in consola.

Adaugare pluginuri

Ca sa instalam pluginuri noi punem sursa(.sma) in addons/amxmodx/scripting si .amxx in addons/amxmodx/plugins. Mergem in addons/amxmodx/configs/plugins.ini si jos de tot declaram numele pluginului.
EX: nume.amxx

Instalare Dproto 0.4.1

dproto v0.4.1 este un plugin metamod facut de Crock care permite conexiuni pe server de la utilizatorii de CS Protocol 47 + 48, Steam + NonSteam.

[+] Serverul apare cu succes la [Internet] si [Favorites]
[+] Arata iconitele jucatorilor cu STEAM.
[+] Functioneaza cu ultima versiune de swds.dll


- Intrati in usr/hlds/cstrike/addons
- Creati un folder numit 'dproto'
- Copiati fisierul dproto_i386.so din arhiva, in usr/hlds/csrike/addons/dropto/
- Intrati in usr/hlds/cstrike/addons/metamod/ si adaugati linia
linux addons/dproto/dproto_i386.so
- Copiati din arhiva fisierul dproto.cfg in usr/hlds/cstrike
- Adaugati in server.cfg linia exec dproto.cfg
- Puneti in linia de start a serverului -binary ./hlds_i686
- Gata.
Daca aveti setat la parametrii -nomaster, trebuie sa il stergeti, pluginul se va conecta automat la serverele STEAM.

Instalare metamod - optional

Pentru ca AMXMODX, adminmod, statsme sau alte module sa mearga trebuie sa ai instalat metamod.
Il puteti lua de aici :

Cod:
wget http://sourceforge.net/projects/metamod/files/Metamod%20Binaries/1.19/metamod-1.19-linux.tar.gz/download

Mergem in cstrike/addons. Aici facem un folder numit metamod.

In addons/metamod creati un folder numit dlls.

Puneti .so-ul in addons/metamod/dlls

Mergeti in /addons/metamod si creati plugins.ini

Vac secure 1 sau 0. In linia de comanda vom pune aceeasi valoare !

Ca sa facem asta, trebuie sa mergem in directorul /usr/hlds/cstrike si sa deschidem liblist.gam cu pico, nano sau mcedit. Acolo vom modifica secure "1" cu secure "0".
Daca nu va merge metamod tot de aici veti
Inlocuiti linia:
Code:
gamedll_linux "dlls/mp_i386.so"
cu
Code:
gamedll_linux "addons/metamod/dlls/metamod_i386.so"

5.Pornirea serverului

Mergem in directorul /usr/hlds .
Pentru a merge in directorul /usr/hlds vom folosi aceasta comanda:

Cod:
cd /usr/hlds

Dupa ce am mers in directorul /usr/hlds executam in "MC" aceasta comanda :

Cod:
./hlds_run -console -game cstrike -secure 1 +ip IP SERVER +sv_lan 0 +maxplayers 24 +map de_dust2 -binary ./hlds_i686

Pentru a porni serverul in screen, folosim comanda:

Cod:
screen -A -m -d -S hlds ./hlds_run -game cstrike +ip IP SERVER +sv_lan 0 -secure 1 +maxplayers 24 +map de_dust2 -binary ./hlds_i686

Aceasta comanda, lanseaza serverul in background. Pentru a ne atasa din nou la el, scriem:

Cod:
screen -r hlds

Pentru a il trimite din nou in background, tinem apasat tasta Ctrl, apasam tasta A, tinem apasat si apoi apasam tasta D.

Pentru ca serverul de cs sa porneasca la fiecare boot al serverului de linux, trebuie sa adaugam urmatoarele linii in /etc/rc.d/rc.local (depinde de fiecare distrubutie de linux in parte)

Cod:
cd /usr/hlds
screen -A -m -d -S hlds ./hlds_run -game cstrike +ip IP SERVER +sv_lan 0 -secure 1 +maxplayers 24 +map de_dust2 -binary ./hlds_i686

-binary ./hlds_i686 = adaugati asta numai daca va da dproto "fail"

Atat a fost tot !
Pentru alte lucruri dati un search pe google.
Mail : office@orang3.ro
YM : cs_orang3
Steam ID: junokids
Grup STEAM : http://steamcommunity.com/groups/kiduuu
Facebook : http://www.facebook.com/orang3.ro
Pentru admine cu plata aici

Locked