Salut!
J' ai fais une petite recherche sur le forum, et je n' ai pas trouvé de tuto au sujet de la mise en place d' un serveur cs 1.6 (Counter-Strike) pour Steam.
Je me propose de vous faire partager ma petite expérience.
Ce tuto est tiré de mon site perso.
Voilà ca en intéressera peut être certains(es), ou alors ca fera le bide que ca devra faire.
Bonne lecture et bon courage.
Requis
Une distribution linux installée (ici Debian Sid sera prise pour exemple).
"hlds_l_1120_full.tgz" disponible ici ou ici. (deuxième lien moin rapide).
"wget" qui permet de rapatrier un fichier distant en protocole FTP ou HTTP.
"screen" disponible dans la branche.
De la patience, mince j' ai pas de lien !! (je sort ?).
Récapitulatif de quelques commandes de base
$ = Simple utilisateur
# = Super utilisateur
ls = Donne le contenu d'un répertoire
cd = Se rendre dans un répertoire de votre disque
mkdir = Créer un répertoire
mount = Monte un lecteur (ex : cdrom, clés usb, etc...)
umount = Démonte un lecteur (ex : cdrom, clés usb, etc...)
chmod = Alloue des droits à des utilisateurs ou à des fichiers (man chmod)
chown = Change le propriétaire d'un répertoire man chown)
rm = Supprimer un fichier
&& = Exécute plusieurs commandes à la suite
tar = Décompresse une archive (man tar)
mv = Déplace un fichier où un répertoire
apt-get install = Commande propre à Debian pour installer des paquets
wget = Rapatrier des fichiers en console via les protocoles HTTP / FTP
vi = Éditeur de texte (utilisez votre éditeur préféré où man vim)
Voilà donc, vous avez réuni tout ce dont vous aviez besoin. Commencez !!!
Loggez-vous en "root" (super utilisateur).
Créez un répertoire "opt" à la racine, et placez-vous à l' intérieur.
Pourquoi créer un répertoire "opt" ? C' est une question de pratique, tout les programmes ajoutés je les mets dans ce répertoire (TeamSpeak, Eggdrop, Sof2, etc...).
Code :
- # mkdir /opt/ && cd /opt
|
Vous allez changer le propriétaire du répertoire "/opt" pour ne plus avoir besoin d' être en "root" pour modifier le contenu de celui-ci.
Code :
- # chown cartman:cartman /opt
|
Installez "wget" ainsi que "screen".
Code :
- # apt-get install wget screen
|
Déloggez-vous.
Code :
- ctrl + d
- où
- # su votre_utilisateur
|
Maintenant vous allez récupérer "hlds_l_1120_full.tgz" grâce à la commande "wget" (environ 430Mo). Avant tout, placez vous dans le répertoire "/opt".
Une fois le téléchargement terminé, vous allez décompresser l' archive (un peut long suivant la bête).
Code :
- $ tar zxvf hlds_l_1120_full.tgz
|
Une fois la décompression terminée, un nouveau répertoire "hlds_l" a été créé, placez-vous dedans.
"Steam" doit être mis à jour, pour cela tapez ceci.
Dans le premier cas :
Code :
- $ ./steam -command update -game cstrike -dir . -verify_all
|
Bien sûr remplacez "cstrike" par le mod que vous souhaitez.
Liste des mods officiels.
* valve = Half-Life
* cstrike = Counter-Strike 1.6
* tfc = Team Fortress
* dod = Day Of Defeat
* dmc = DeathMatch Classic
* ricochet = Ricochet
* counter-strike source = Counter-Strike Source
* czero = Condition Zero
Attention
Si vous désirez installer "Counter-Strike Source" et que vous possédez déjà un répertoire "cstrike", il vous faut créer un nouveau répertoire. Par exemple un répertoire "cssource".
Pour mettre "Counter-Strike Source" à jour vous devez toujours utiliser "Steam" mais cette fois ci en indiquant le répertoire de destination.
Code :
- $ ./steam -command update -game "Counter-Strike Source" -dir cssource -verify_all
|
Voilà il vérifie si il met à jour où non, il cherche, il cherche, il cherche...! Patience didiou !!
Une fois la mise à jour terminée, votre serveur est prêt à être lancé !
Pour lancer votre serveur de manière plus agréable, je vous conseil de créer un script pour démarrer le serveur. Il contiendra les options voulues.
Utilisez votre éditeur préféré (ici "Vim" ).
Ensuite vous y ajoutez ceci :
Code :
- #!/bin/sh
- # Défini l' emplacement du répertoire du serveur cs.
- emplacement="/opt/hlds_l"
- # Donne un nom à la screen.
- nomscreen="serveurCS"
- # Choix du mod, ici cstrike mais ca peux aussi être : dod, halflife, etc ...
- mod="cstrike"
- # Lance le serveur avec les options voulues.
- options="+exec server.cfg +maxplayers 13 +map aim_map +port 27015 -pingboost 3 -debug -secure -autoupdate"
- # Lance "screen"et indique les options à utiliser.
- screenoptions="screen -dmS"
- # Application des commandes.
- cd ${emplacement}
- echo "Lancement du serveur Counter-Strike 1.6. Screen : ${nomscreen}"
- ${screenoptions} ${nomscreen} ./hlds_run -game ${mod} ${options}
|
Enregistrez et quittez.
Vous trouverez mon "script_cs.sh" ici.
Le serveur sera lancer dans une "screen" (console virtuelle), très utile si vous administrez votre serveur à distance via "ssh".
Pour installer "Screen" cliquez ici.
Explications du script ci-dessus.
A savoir
Les "${emplacement}", "${screenoptions}", "${mod}", etc ... sont des variables et non des fonctions propres à "hlds".
* cd ${emplacement} = Se place dans le répertoire "/opt/hlds_l".
* echo "Lancement du serveur cs GoLDZoNE. Screen : ${nomscreen}" = Affiche un message quand le serveur se lance.
* ${screenoptions} = Lance une "screen" (console virtuelle) en arrière plan et en fenêtre détachée.
* ${nomscreen} = Nom de la "screen".
* ./hlds_run = Lance le serveur.
* -game = Indique que l' on va choisir un mod pour le serveur.
* ${mod} = Indique le mod qui sera lancé.
* +exec server.cfg = Exécute le fichier de configuration "server.cfg" au lancement du serveur.
* +maxplayers 14 = Décide du nombre de place de votre serveur (ici 14).
* +map de_dust2 = Lance la map "de_dust2" au lancement du serveur.
* +port 27015 = Dit sur quel port sera écouté le serveur. Port par défaut "27015".
* ${options} = Indique que le serveur sera lancé avec des options.
* -autoupdate = Met "Steam" à jour quand une mise à jour est disponible.
* -pingboost 3 = Améliore le ping, il y a trois valeurs pour pingboost : 1 amélioration presque invisible, faible consommation CPU, 2 améliore légèrement le ping, consommation déjà plus élevé, 3 améliore pas mal le ping mais entraîne une consommation du CPU élevé !
* -debug = En cas de plantage du serveur, un fichier "debug.log" est créé avec la raison du crash.
* -secure = Active l' anticheat de "Valve" (VAC : Valve Anti Cheat).
Vous allez rendre le script exécutable.
Code :
- $ chmod +x script_cs.sh
|
Éditez votre "server.cfg" qui se trouve dans le répertoire "cstrike"
Vous trouverez mon "server.cfg" ici.
(Attention !! Modifiez les "rates" suivant votre configuration, n' utilisez les miens que si votre serveur est dédié pour le lan ou si vous avez une connection Freebox 20Mb !! Sinon vous aurez des surprises.)
Lancez le serveur (Ne jamais lancer un serveur en "root" pour des raisons de sécurité).
Quelques commandes de base.
* changelevel de_dust2 = change la map du serveur pour de_dust2 .
* sv_restartround 1 = Remet les scores de la partie à 0 .
* mp_timelimit 25 = Défini le temps de la map à 25 minutes.
* mp_autoteambalance 1 = Équilibre les teams (en joueurs).
* mp_friendlyfire 1 = Active le TeamKill.
* mp_freezetime 3 = Active un Freezetime de 3 secondes.
Si vous avez pour but de créer un serveur accessible depuis internet et que vous possédez un routeur, il faut absolument ouvrir le port "27015" de celui-ci, sinon votre serveur ne sera pas accessible pour les autres.
Allez sur ce site, recherchez "Half-Life" dans la liste puis sélectionnez votre routeur et suivez les instructions pour l' ouverture de votre port.
En cas de crash de votre serveur allez voir dans le fichier "debug.log".
Les crashs sont souvent dus à :
1. Des versions bétas de vos mods (AMX, MetaMod, etc..).
2. Un overclocking instable (ne me dîtes pas non ^^).
3. Une mauvaise configuration de votre distribution.
Mais cela vient rarement d' "HLDS".
Amusez-vous bien.
Message édité par goldyfruit le 06-04-2006 à 03:04:56
---------------
http://wiki.incloudus.com/display/DOC | http://blog.incloudus.com | http://wiki.goldzoneweb.info | http://www.stendhalclub.fr