Tags:,,,,,,,, Posted in Debian,jeux,ligne de commande,planet-libre.org 7 Comments

Pour ceux qui ont un serveur avec un minimum de bande passante montante (upload), voici comment monter votre propre serveur Steam, pour jouer à Counter-Strike, Counter-Strike Source, Day Of Defeat etc.

D’abord, utilisez un compte utilisateur Linux dédié, c’est plus sûr. Disons qu’il s’appelle « steam », pour l’exemple ci-dessous.
Pas besoin d’avoir acheté le jeu, d’avoir une license, un compte Steam etc, car la création de serveur dédié est gratuite (comme pour tous les jeux en général).

La mise en place d’un serveur steam se passe en quelques étapes :

  • Installation de l’outil de serveur dédié
  • Mise à jour du coeur de Steam
  • Installation des composants des jeux de la plateforme Steam que vous voulez (CSS, DoD etc)
  • Lancement du bazar dans un « screen »
  • Installation de l’outil de serveur dédié
    Téléchargez-le et lancez-le comme suit :

    steam@monnusk:~$ wget http://www.steampowered.com/download/hldsupdatetool.bin
    steam@monnusk:~$ chmod +x hldsupdatetool.bin
    steam@monnusk:~$ ./hldsupdatetool.bin
    blablabalba
    ...
    Enter 'yes' to accept this agreement, 'no' to decline: yes
    extracting steam.tar.Z...done

    Mise à jour du coeur de Steam
    La commande est :

    steam@monnusk:~$ ./steam -command update -game valve -dir .
    Checking bootstrapper version ...
    Getting version 18 of Steam HLDS Update Tool
    Downloading. . . . . . . . . . . .
    Steam Linux Client updated, please retry the command

    Dans l’exemple ci-dessus en gras, le client s’est d’abord mit lui-même à jour. On relance la même commande, et cette fois c’est bien le noyau Steam qui se met à jour :

    steam@monnusk:~/steam$ ./steam -command update -game valve -dir .
    Checking bootstrapper version ...
    Updating Installation
    No installation record found at .
    Checking/Installing 'Linux Server Engine' version 35
    Downloading: .\core_i386.so
    Downloading: .\engine_amd.so
    Downloading: .\engine_amd64.so
    Downloading: .\engine_i486.so
    Downloading: .\engine_i686.so
    Downloading: .\filesystem_stdio_amd64.so
    Downloading: .\filesystem_stdio_i386.so
    Downloading: .\hlds_amd
    Downloading: .\hlds_amd64
    Downloading: .\hlds_i486
    Downloading: .\hlds_i686
    Downloading: .\hlds_run
    Downloading: .\hltv
    Downloading: .\libSteamValidateUserIDTickets_amd64.so
    Downloading: .\libSteamValidateUserIDTickets_i386.so
    Downloading: .\linuxreadme.txt
    Downloading: .\proxy_i386.so
    Downloading: .\steam_api_i486.so
    Downloading: .\steamclient_i486.so
    Downloading: .\tier0_s_i486.so
    Downloading: .\vstdlib_s_i486.so
    
    No installation record found at .
    Checking/Installing 'Half-Life Base Content' version 8
    Downloading: .\valve\cl_dlls\client.dll
    Downloading: .\valve\dlls\hl.dll
    et ça continue...
    Downloading: .\valve\violence.cfg
    Downloading: .\valve\xeno.wad
    
    HLDS installation up to date

    Installation des jeux souhaités
    Pour installer Day Of Defeat :

    steam@monnusk:~/steam$ ./steam -command update -game dod -dir .

    Pour installer Counter-Strike Source :

    steam@monnusk:~/steam$ ./steam -command update -game "counter-strike source" -dir css

    Attention à la partie en gras. CSS doit être dans un répertoire à part. Ne me demandez pas pourquoi ?

    Lancement d’un jeu
    Je vous recommande de vous créer des scripts pour le lancement de chacun de vos jeux ; et de lancer tout ça dans des « screen » afin de pouvoir reprendre les sessions plus tard.
    Pour DoD, le script ressemblera à ça :

    #!/bin/sh
    
    cd steam/
    ./hlds_run -console -game dod +ip vo.t.re.ip -port 27015 +map dod_anzio +maxplayers 21 -autoupdate -tickrate 100

    Pour CSS, plutôt à ça, il y a une vague nuance :

    #!/bin/sh
    
    cd steam/css/
    ./srcds_run -console -game cstrike +ip vo.t.re.ip -port 27015 +map de_dust +maxplayers 21 -autoupdate -tickrate 100

    Il faut évidemment ouvrir les ports réseaux TCP et UDP que vous spécifiez. Et si vous voulez faire tourner plusieurs jeux en même temps, il faudra utiliser des ports différents.

    Voilou, bon frags.

    14 avril 2007