Monthly Archives: March 2012

Как создать свой сервер 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

Как создать свой сервер Counter-Strike:Source на базе Linux

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

Минимальные системные требования на 12 игроков:
Процессор Pentium-3 800 Mhz, RAM – 192 Mb, HD – 10Gb, OS: Linux Slackware 11.0.

  1. Создаем специального пользователя в системе, например “css”, логинимся под ним и в его домашней папке создадим директорию с названием “steam”.
  2. Из папки steam запускаем
    wget http://www.steampowered.com/download/hldsupdatetool.bin
    для того что бы получить бинарик с запакованным стимом.
  3. Запускаем ./hldsupdatetool.bin
  4. В папке появится бинарик “steam”, который нужно запустить вот так:
    ./steam -command update -game “Counter-Strike Source” -dir /home/css/steam/
    (что бы посмотреть список доступных игр, набираем ./steam -command list)
  5. Теперь ждем где-то с час, пока загрузится сама игра (около 1,1 Gb).
  6. Когда, наконец, все загрузилось, редактируем server.cfg, который находится у нас в папке /home/css/steam/cstrike/cfg/.
    Вот пример моего конфига:// server name
    hostname “CS:S Moscow”
    rcon_password “PAROL_RCON”
    // Advanced RCON
    sv_rcon_banpenalty 10
    sv_rcon_maxfailures 10
    sv_rcon_minfailures 5
    sv_rcon_minfailuretime 30
    // server cvars
    mp_friendlyfire 1
    mp_footsteps 1
    mp_autoteambalance 0
    mp_autokick 1
    mp_flashlight 1
    mp_tkpunish 1
    mp_forcecamera 1
    sv_alltalk 0
    sv_pausable 0
    sv_cheats 0
    sv_consistency 1
    sv_allowupload 1
    sv_allowdownload 1
    sv_maxspeed 320
    mp_limitteams 2
    mp_hostagepenalty 5
    sv_voiceenable 1
    mp_allowspectators 1
    mp_timelimit 20
    mp_chattime 10
    sv_timeout 65
    // round specific cvars
    mp_freezetime 3
    mp_roundtime 4
    mp_startmoney 800
    mp_c4timer 45
    mp_fraglimit 0
    mp_maxrounds 0
    mp_winlimit 33
    mp_playerid 0
    mp_spawnprotectiontime 5
    // bandwidth rates/settings
    sv_minrate 4000
    sv_maxrate 20000
    decalfrequency 10
    sv_maxupdaterate 33
    sv_minupdaterate 10
    net_maxfilesize 40
    // server logging
    log on
    sv_logbans 1
    sv_logecho 1
    sv_logfile 1
    sv_log_onefile 1
    // operation
    sv_lan 0
    sv_region 3
    sv_contact css@mail.ru
    // execute ban files
    exec banned_user.cfg
    exec banned_ip.cfg
    // Вот эта строчка нужна для админ-плагина “Mani”
    exec mani_server.cfg
  7. Теперь установим Mani-admin-plugin (я использую стабильную версию). Содержимое архива надо распаковать в соответствующие папки.
  8. Переходим в папку /home/css/steam/cstrike/addons/ и создаем там файлик “mani_admin_plugin.vdf” следующего содержания:”Plugin”
    {
    “file” “../cstrike/addons/mani_admin_plugin_i486.so”
    }
  9. Все основные настройки мани находятся в файле /home/css/steam/cstrike/cfg/mani_server.cfg.
  10. Запускаем CS:S командой
    /home/css/steam/srcds_run -console -tickrate 33 +fps_max 66 -game cstrike -port 27015 +map de_dust +maxplayers 12
  11. Наслаждаемся игрой на собственном сервере!

Вышеописанные конфиги предназначены для малопроизводительного сервера на 10-12 игроков максимум.

Для обновления сервера нужно повторить пункт 4.

Как правильно отправить работать сервер в фон с возможностью иногда вызывать его оттуда?
  1. Запустить сервер командой (для этого в системе должна быть установлена программа screen):
    screen -A -m -d -S css ./srcds_run -console -tickrate 33 +fps_max 66 -game cstrike -port 27015 +map de_dust +maxplayers 12
  2. Сервер уйдет в фон. Вызвать его можно оттуда командой:
    screen -r css
  3. А вновь отправить srcds в фон можно нажав на клавиатуре сначала CTRL+A затем тут же CTRL+D
Настройка firewall (по желанию)

Порты по умолчанию для CSS:

[TCP] 27015 (консоль rcon)
[UDP] 27015 и 27020 (Основной порт сервера и HLTV)
[TCP] с 27030 по 27039 включительно
[UDP] 1200 (Сервис стим-друзей)
[UDP] с 27000 по 27015 включительно

Информация взята с forums.steampowered.com/forums и srcds.com.

Deus 28.12.2006