Как создать свой сервер Team Fortress 2 на базе Linux

Пошаговое руководство

Минимальные системные требования на 12 игроков:
Процессор Pentium-4 2Ghz, RAM – 512Mb, HD – 10Gb, OS: openSUSE 10.3.

  1. Создаем специального пользователя в системе, например “tf2”, логинимся под ним и в его домашней папке создадим директорию с названием “steam”.
  2. Из папки steam запускаем
    wget http://www.steampowered.com/download/hldsupdatetool.bin
    для того что бы получить бинарик с запакованным стимом.
  3. Запускаем ./hldsupdatetool.bin
  4. В папке появится бинарик “steam”, который нужно запустить вот так:
    ./steam -command update -game tf -dir /home/tf2/steam/
    (что бы посмотреть список доступных игр, набираем ./steam -command list)
  5. Теперь ждем где-то с час, пока загрузится сама игра (около 1,8 Gb). Если во время загрузки прервалась связь, и перезапуск не помогает, стераем папку с настройками /home/tf2/.steam и запускаем процесс по новой.
  6. Когда, наконец, все загрузилось, редактируем server.cfg, который находится у нас в папке /home/tf2/steam/orangebox/tf/cfg/ (если его там нет, то создаем).
    Вот пример моего конфига:// General Settings //// Hostname for server.
    hostname TF2.Moscow

    // Maximum number of rounds to play before server changes maps
    mp_maxrounds 5

    // Set to lock per-frame time elapse
    host_framerate 0

    // Set the pause state of the server
    setpause 0

    // Is the server pausable.
    sv_pausable 0

    // Type of server 0=internet 1=lan
    sv_lan 0

    // Whether the server enforces file consistency for critical files
    sv_consistency 1

    // Collect CPU usage stats
    sv_stats 0

    // Contact & Region //

    // Contact email – кому игроки будут писать письма
    sv_contact emailaddress@mail.ru

    // The region of the world to report this server in.
    sv_region 3

    // Rcon Пароль на сервер! //

    rcon_password PAROL

    // Number of minutes to ban users who fail rcon authentication
    sv_rcon_banpenalty 1440

    // Max number of times a user can fail rcon authentication before being banned
    sv_rcon_maxfailures 5

    // Log Settings //

    // Enables logging to file, console, and udp < on | off >.
    log on

    // Log server information to only one file.
    sv_log_onefile 1

    // Log server information in the log file.
    sv_logfile 1

    // Log server bans in the server logs.
    sv_logbans 1

    // Echo log information to the console.
    sv_logecho 1

    // Rate Settings //

    // Frame rate limiter
    fps_max 100

    // Min bandwidth rate allowed on server, 0 == unlimited
    sv_minrate 0

    // Max bandwidth rate allowed on server, 0 == unlimited
    sv_maxrate 0

    // Minimum updates per second that the server will allow
    sv_minupdaterate 15

    // Maximum updates per second that the server will allow
    sv_maxupdaterate 66

    // Download Settings //

    // Allow clients to upload customizations files
    sv_allowupload 1

    // Allow clients to download files
    sv_allowdownload 1

    // Maximum allowed file size for uploading in MB
    net_maxfilesize 25

    // Team Ballancing //

    // Eanble team ballancing
    mp_autoteambalance 1

    // Teams are unbalanced when one team has this many more players than the other team. (0 disables check)
    mp_teams_unbalance_limit 1

    // Round and Game Times //

    // Enable timers to wait between rounds.
    mp_enableroundwaittime 0

    // Time after round win until round restarts
    mp_bonusroundtime 8

    // If non-zero, the current round will restart in the specified number of seconds
    mp_restartround 0

    // Timelimit (in seconds) of the stalemate round.
    mp_stalemate_timelimit 300

    // game time per map in minutes
    mp_timelimit 30

    // Client CVARS //

    // Turn on/off the ability for clients to use flashlight.
    mp_flashlight 1

    // Restricts spectator modes for dead players
    mp_forcecamera 0

    // toggles whether the server allows spectator mode or not
    mp_allowspectators 1

    // toggles footstep sounds
    mp_footsteps 1

    // toggles game cheats
    sv_cheats 0

    // After this many seconds without a message from a client, the client is dropped
    sv_timeout 300

    // Maximum time a player is allowed to be idle (in minutes), made this and sv_timeout equal same time?
    mp_idlemaxtime 10

    // Deals with idle players 1=send to spectator 2=kick
    mp_idledealmethod 2

    // time between decal sprays
    decalfrequency 30

    // Communications //

    // enable voice communications
    sv_voiceenable 1

    // Players can hear all other players, no team restrictions
    sv_alltalk 0

    // amount of time players can chat after the game is over
    mp_chattime 10

  7. Запускаем TF2 командой
    /home/tf2/steam/orangebox/srcds_run -console -tickrate 33 -game tf-dir /home/tf2/steam/orangebox/tf -port 27015 +map ctf_2fort +maxplayers 12
  8. Наслаждаемся игрой на собственном сервере! Вышеописанные конфиги предназначены для малопроизводительного сервера на 10-12 игроков максимум.Для обновления сервера нужно повторить пункт 4.Информация взята с forums.steampowered.com/forums и srcds.com.
    Deus 3.11.2007