04.14.07

Installer un serveur dédié Steam sous Linux

Posted in Debian, Jeux, planet-libre.org at 3:09 pm by michauko

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.

    5 Comments »

    1. Damoun said,

      July 20, 2008 at 4:56 pm

      Je ne comprends pas :s quand je lance le serveur j’ai cette erreur

      AppFramework : Unable to load module bin/engine_i686.so!
      Unable to load interface VEngineCvar003 from bin/engine_i686.so

      Vous avez une idée ?

    2. michauko said,

      July 21, 2008 at 11:58 am

      Je sais pas honnêtement, j’ai pas touché depuis longtemps.
      Tente un copier-coller dans google, tu verras bien si ça mord :)

    3. x_day said,

      August 10, 2008 at 1:20 pm

      salut

      j’ai un petit probleme concernant le telechargement de dods
      comment je pourrais y remedier ?

      je vous remercie d’avance

    4. michauko said,

      August 19, 2008 at 3:56 pm

      Salut,

      En donnant 2/3 détails pour commencer… :)

    5. Fanlou said,

      October 17, 2008 at 2:58 pm

      Essaie de remettre a jour ton jeu dod, ou supprime le totalement et réinstalle le …

      Ca m’est arrivé plusieurs fois.

      bien joué a toi michauko pour ce tuto, pour information maintenant est extensible a tout les mods Source officiels steam.

      Comme : Age of chivalry, DIPRIP, Zombie Panic, etc etc.

    Leave a Comment