Abysse Tech

HiTech 4 All

creer serveur counter strike global offensive

Comment creer un serveur Counter Strike Global Offensive

by

Allez un petit tutoriel plus fun et bien moins sérieux que les autres! Et pourtant, si vous accomplissez ce tutoriel de bout en bout, vous allez apprendre énormément et plus aucun tutoriel ne devrait vous poser de difficultés. Je vais donc vous montrer comment vous pouvez créer un serveur Counter Strike Global Offensive. Il vous faut donc un petit serveur linux car prendre un serveur préfait avec Counter Strike déjà installé est d’une moins bien et moins puissant, et de deux c’est moins fun. Je vous recommande un VPS qui tourne sous Linux chez HostStage. Pourquoi eux ? Parce que le support parle Français, que les serveurs sont situés en France, que le matos est excellent (Intel XEON processeur, 1GBPS de bande passante par serveur, serveurs sous utilisés et bien gérés, SAS disques ou RAID CacheCade SSD). Et comment je sais tout ça ? Shuut ;).

Combien de RAM avez vous besoin ?

Environ 300-400 pour 16 joueurs et un seul coeur. Ici, j’ai opté pour quelque chose de plus gros 8GB 4 coeurs pour faire du benchmark.

Quel distribution choisir ? Ubuntu est parfait pour contenir un gameserver.

Pourquoi pas Windows ?

Windows est certainement le choix par défaut de beaucoup, soit par facilité soit parce que vous souhaitez l’héberger sur votre ordinateur. Sachez toutefois, que le peering est important sur un serveur de jeux, et que du coup passer par un hébergeur est quand même optimal. En ce qui concerne Windows, il utilise 300-400MB de RAM au démarrage et encore sur un OS optimisé. Ce sont des ressources gaspillées qui ne seront pas au service de votre serveur de jeu. Il me semble qu’Ubuntu consomme 40MB au démarrage à titre comparatif.

Allez on y GO ! 😉

Une fois que vous avez reçu les logins de votre serveur, vous devriez ainsi avoir une IP, un utilisateur (root) et un mot de passe. Pour vous connecter vous devez utiliser un client SSH, vous pouvez opter pour Putty Pour voir comment vous connecter à votre serveur distant voici un tutoriel

Si vous avez besoin de

1) On télécharge le logiciel steamcmd qui sera finalement l’interface pour installer le jeu :

[root@csgo ~]# wget http://media.steampowered.com/client/steamcmd_linux.tar.gz

Ce qui devrait vous donner quelque chose comme ceci :

--23:31:04-- http://media.steampowered.com/client/steamcmd_linux.tar.gz
Resolving media.steampowered.com... 87.248.221.254, 87.248.221.253
Connecting to media.steampowered.com|87.248.221.254|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3170982 (3.0M) [application/octet-stream]
Saving to: `steamcmd_linux.tar.gz'

100%[=======================================>] 3,170,982 12.5M/s in 0.2s

23:31:05 (12.5 MB/s) – `steamcmd_linux.tar.gz’ saved [3170982/3170982]

Oui, oui 12.5 MB par seconde!

2) On décompresse l’archive :

[root@csgo ~]# tar -xvzf steamcmd_linux.tar.gz

3) On ajoute les librairies 32 bits à notre OS 64 bits (si vous êtes en 32 bits pas de soucis vous pouvez passer à l’étape Ici, je choisis toujours par défaut du 64 bits. Les commandes ci dessous vont forcés l’inclusion de packages 32 bits dans apt-get.

[root@csgo ~]# sudo dpkg --add-architecture i386
[root@csgo ~]# sudo apt-get update
[root@csgo ~]# sudo apt-get install ia32-libs

On va créer notre dossier qui va contenir le serveur

[root@csgo ~]# mkdir /csgo

4) On lance L’interface SteamCMD qui centralise les différents fichiers d’installation des serveurs de jeux.

[root@csgo ~]# ./steamcmd.sh

5) Après l’installation, vous devriez avoir une invite de commande commançant par Steam> Ce qui est parfait! Vous devez maintenant vous connecter à votre compte STEAM qui à deux étapes.

a. Saisie du mot de passe :

Steam> login votrenomdecomptesteam
Password

b. Validation d’accès à un serveur à distance avec un code à quelques chiffres et lettres envoyé par email

6) Maintenant on va installer et télécharger le jeu :

On impose l’installation dans le dossier que l’on a créée plus tôt :

Steam>force_install_dir /csgo
Steam> app_update 740 validate

L’installation devrait durer 10-20 minutes maximum incluant le téléchargement du jeu. Après ça on est bien! Très bien même puisque le serveur est bientôt fonctionnel.

7) On va lancer une instance du jeu.

[root@csgo ~]# cd /csgo
[root@csgo:/csgo]# ./srcds_run -game csgo -console -usercon +game_type 0 +game_mode 0 +mapgroup mg_bomb +map de_dust

8) On lance le jeu et on va voir si notre serveur tourne correctement. Le port utilisé ici a été le 27015 Pour se connecter rendez vous dans l’interface du developpeur et tapez :

connect IP_serveur:27015

9) A présent, on va installer des mods pour nous permettre de gérer plus facilement notre serveur et d’étendre les fonctionnalités (classements, votemap, rtv, votekick etc..)

[root@csgo ~]# cd /csgo

On va récupérer les dernières versions des mods :

wget http://www.metamodsource.net/mmsdrop/1.10/mmsource-1.10.1-hg867-linux.tar.gz

wget http://www.sourcemod.net/smdrop/1.5/sourcemod-1.5.2-hg3937-linux.tar.gz

On décompresse les 2 archives peut importe les versions choisies :

[root@csgo:/csgo]# tar xvzf mmsource-* && tar xvzf sourcemod-*

On supprime les archives :

[root@csgo:/csgo]# rm mmsource-* && rm sourcemod-*

Vous remarquerez que la structure de votre de votre dossier de jeu est la suivante : /csgo/csgo

On va déplacer les dossiers /csgo/addons et /csgo/cfg dans /csgo/csgo sachant que le dossier cfg existe déjà.

[root@csgo:/csgo]#mv addons csgo/
[root@csgo:/csgo]# cp R cfg/* csgo/cfg/ && rm -Rf cfg

Metamod:source et sourcemod sont maintenant installés.

On va maintenant vérifier que le fichier metamod charge bien le plugin metamod

[root@csgo:/csgo]# cat csgo/addons/metamod.vdf

Qui doit vous retourner ceci :

"Plugin"
{
"file" "../csgo/addons/metamod/bin/server"
}

 

10) On vérifie que les plugins sont bien actifs et proprement installé. On va ainsi lancer une instance du serveur et vérifier les plugin chargé :

[root@csgo:~]# cd /csgo
[root@csgo:/csgo]# ./srcds_run -game csgo

Une fois que vous avez le output collé ci dessous :

Connection to Steam servers successful.
Public IP is 192.168.0.1.
Assigned anonymous gameserver Steam ID [A:1:265803778(3720)].
VAC secure mode is activated.

Tapez ceci :

meta list

Ce qui vous retourne :

Listing 3 plugins:
[01] SourceMod (1.5.2-dev+3937) by AlliedModders LLC
[02] CS Tools (1.5.2-dev+3937) by AlliedModders LLC
[03] SDK Tools (1.5.2-dev+3937) by AlliedModders LLC

Bien à présent, nous avons bien avancé! Histoire, de ne pas vous laisser dans la nature avec un serveur juste fonctionnel on va aller un peu plus loin.

11) On va commencer par récupérer notre SteamID afin de nous mettre administrateur sans spoof d’identité possible. Pour ce faire, on va se rendre sur steamidfinder.com/ où il va falloir coller notre URL de profil steam qui doit être sous la forme :

http://steamcommunity.com/id/mapage

Notre SteamID en poche, on va le coller dans le fichier suivant :

vi /csgo/csgo/addons/sourcemod/configs/admins_simple.ini

On appuie sur « i » mode insertion et vous pouvez donc rajouter a la fin :

STEAM_x:x:xxxxxxxx" "99:z"

On sauvegarde et quitte le fichier en appuyant sur echap, et wq! entrée.

12) On va maintenant créer un fichier configuration pour notre serveur.

VOus pouvez coller et modifier à votre guise le contenu ci desssous:

vi /csgo/csgo/cfg/server.cfg

Voici le fichier config

// Nom du serveur
hostname "AbysseTech Server"
// RCON password pour administrer le serveur depuis le jeu, changer les maps, etc...
rcon_password "YourPassword"

// Adresse e-mail de l’admin à contacter sv_contact « email@email.com »

// Groupe Steam sur lequel est assigner le serveur // vous trouverez l’ID de votre groupe en éditant le profil du groupe // NE RIEN METTRE SI VOUS VOULEZ VOTRE SERVEUR PUBLIC //sv_steamgroup « 999999 »

// Créer un search_key pour rejoindre rapidement votre serveur depuis le jeu // Essayez de le rendre unique // NE RIEN METTRE SI VOUS VOULEZ VOTRE SERVEUR PUBLIC //sv_search_key « crazyws-l4d2-server »

// Désactiver mode LAN sv_lan 0

// Port du serveur (defaut 27015) hostport 27015

// Region – This sets the lobby in which your server will be part of // You will want to set this to the closest location to your server // eastcoast – sv_region 0 // westcoast – sv_region 1 // south america – sv_region 2 // europe – sv_region 3 // asia – sv_region 4 // australia – sv_region 5 // middle east – sv_region 6 // africa – sv_region 7 // world – sv_region 255 sv_region 1

// Misc sv_pure 0 sv_cheats 0 sv_clearhinthistory 0 sv_consistency 0 sv_pausable 0 sv_voiceenable 1

// Bots bot_quota 10 bot_quota_mode fill bot_join_after_player 0 bot_join_team any bot_defer_to_human_items 1 bot_defer_to_human_goals 0 bot_difficulty 5 bot_dont_shoot 0 bot_chatter off bot_autodifficulty_threshold_low -2.0 bot_autodifficulty_threshold_high 0.0

// Game mp_afterroundmoney 0 mp_playercashawards 1 mp_teamcashawards 1 mp_timelimit 45 mp_maxrounds 0 mp_roundtime 2 mp_freezetime 5 mp_buytime 60 mp_forcecamera 0 mp_defuser_allocation 0 mp_death_drop_gun 1 mp_death_drop_grenade 2 mp_death_drop_defuser 1 mp_match_end_restart 0 mp_friendlyfire 0

// Logging log on sv_logecho 1 sv_logfile 1 sv_log_onefile 0 sv_logbans 1 sv_logflush 0 sv_logsdir logs

// Perfs. réseau sv_minrate 80000 sv_maxrate 0 sv_mincmdrate 128 sv_maxcmdrate 128

// Bans exec banned_user.cfg exec banned_ip.cfg writeip writeid

13) Notre serveur commence à ressembler à quelque chose! Il est à présent parfaitement fonctionnel. Si vous êtes arrivé jusque là, félicitation.

Pour aller plus loin vous pouvez trouver des ressources supplémentaire ci dessous :

– Un script vous permettant d’automatiser les updates, ainsi qu’un launcher plus simple : par ici – Un forum regroupant beaucoup de plugin et mod pour votre serveur : alienmod – Des infos officielles pour votre serveur CS:GO : https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Dedicated_Servers – Pour héberger des Maps issus du WorkShop : https://developer.valvesoftware.com/wiki/CSGO_Workshop_For_Server_Operators

Puis un grand merci à l’auteur du blog CrazyWS qui m’a très fortement inspiré dans la réduction de ce tutoriel et qui a conçu le script launcher. Les autres articles de son blog sont très intéressants également.

Étiquettes : , , , ,

Leave A Comment