Создать свой сервер Counter-Strike: Source Dedicated Server

#1 2021.03.14 20:58:37

0

Ставим Source Dedicated Server на Windows ОС
[*] Первым делом определимся где у нас на жестком диске будет находиться сервер, допустим по адресу: d:\Server

[*] Нашим вторым шагом будет скачивание и установка программы hldsupdatetool в папку d:\Server. С помощью нее вы сможете установить сервер не только для CSS, но и для любых других игры Valve.

[*] После установки нужного программного обеспечения создаем текстовый документ в папке с будущим сервером, и вписываем в нем следующие:

start /wait d:\Server\hldsupdatetool.exe
start /wait d:\Server\hldsupdatetool.exe -command update -game "Counter-Strike Source" -dir .

exit


Сохраняем файл, и меняем разрешение файла с *.txt на *.bat
[*] Запускаем наш файл. Работа нашего скрипта будет идти в 3 шага.

1. Запустит hldsupdatetool и обновит его до последней версии

2. Скачает с серверов Valve Source Dedicated Server (около 1 Гб).

3. После окончания скачивания наш скрипт завершит свою работу.

Ставим Source Dedicated Server на Linux ОС
Процесс установки сервера схож с Windows ОС. Все ниже приведенный команды вводятся в терминал, в скобочках подробное описание каждой команды.

[*] mkdir Server (Создаем в домашнем каталоге папку Server)

[*] cd server (Переходим в эту папку)

[*] wget http://www.steampowered.com/download/hldsupdate... (Скачиваем с сайта Valve hldsupdatetool)

[*] chmod +x hldsupdatetool.bin (Устанавливаем права на программное обеспечение)

[*] ./hldsupdatetool.bin (Устанавливаем программу. Вам будет продемонстрировано лицензинное соглашение, введите yes, чтобы согласиться).

[*] ./steam (И запускаем ее. hldsupdatetool под Linux называется steam)

Настраиваем сервер
Перед запуском сервера рекомендуется его настроить по своему усмотрению, для этого:

[*] Создадим файл server.cfg в папке (в нашем случае) d:\Server\cstrike\cfg\

[*] И будем вводить туда консольные команды. Список всех команд приведен ниже.

1. База
log on
// вести лог сервера

sv_logbans 1

// записывать в лог баны

sv_logecho 1

// показывать информацию из логов сервера в консоль(сервера)

sv_logfile 1

// записывать логи сервера в файл

mp_logdetail 3

// записывать в лог повреждения от: 0 - выключено; 1 - противников; 2 - своих; 3 - и от противников и от своих.

2. Управление ботами
bot_allow_grenades 0
// разрешить ботам использовать гранаты

bot_allow_machine_guns 0

// разрешить ботам использовать пулемёты

bot_allow_pistols 0

// разрешить ботам использовать пистолеты

bot_allow_rifles 0

// разрешить ботам использовать винтовки

bot_allow_shotguns 0

// разрешить ботам использовать дробовики

bot_allow_snipers 0

// разрешить ботам использовать снайперские винтовки

bot_allow_sub_machine_guns 0

// разрешить ботам использовать мини-пулемёты

3. Управление игроками
mp_allowNPCs 1
// разрешить NPC на сервере

mp_allowspectators 1

// разрешить игрокам после смерти наблюдать за другими игроками

mp_autocrosshair 0

// разрешить автоприцеливание

mp_autokick 0

// разрешить автокик за убийство игроков своей команды?

mp_autoteambalance 1

// разрешить автоматическую балансировку команд

mp_buytime 0.5

// время покупки в минутах

mp_c4timer 35

// время таймера бомбы

mp_chattime 10

// время, в течении которого игроки смогут разговаривать между собой после окончания текущей карты

mp_decals 200

// Колличество разрешённых декалей (спреи, пятна крови, пулевые отверстия)

mp_fadetoblack 0

// после смерти экран становится чёрным, не давая игроку смотреть за другими игроками в режиме спектатора

mp_falldamage 1

// урон от падения

mp_flashlight 1

// разрешить фонарик

mp_forcecamera 1

// разрешить переключения камер в режиме спектатора

mp_forcerespawn 1

// команда для Half-Life 2: Deathmatch. Игрок появляется сразу после смерти

mp_fraglimit 0

// максимальное колличество фрагов, при достижении которого определённым игроком карта сменится на следующую

mp_freezetime 5

// начальный отсчёт времени в начале каждого раунда(для покупки), в секундах

mp_footsteps 1

// звуки шагов

mp_friendlyfire 1

// возможность атаковать своих

mp_hostagepenalty 0

// кикает террориста при убийстве заданного лимита заложников

mp_limitteams 1

// максимальное количество игроков команды 1 которое может превышать количество игроков в команде 2

mp_maxrounds 0

// максимальное количество раундов на одной карте

mp_playerid 1

// контролирует информацию которую игрок видет на панели статуса: 0 все имена; 1 только имена игроков своей команды; 2 без имён

mp_spawnprotectiontime 10

// кикает игроков которые убивают членов своей команды в течении # секунд после перезапуска раунда

mp_roundtime 3

// длина раунда в минутах

mp_startmoney 800

// колличество начальных денег у игроков

mp_teamplay 0

// команда для Half-Life 2: Deathmatch. Игра по командам(Альянс и повстанцы)

mp_timelimit 30

// ограничение по времени на карту, в минутах

mp_tkpunish 0<

// в следующем раунде убить того, кто убил игрока своей команды

mp_weaponstay 0

// команда для Half-Life 2: Deathmatch. После подбирания оружия оно остаётся на месте.(относится только к оружию заранее расположенному на карте разработчиками)

mp_winlimit 0

// максимальное количество побед, после которой произойдёт смена карты

4. Управление сервером
sv_airaccelerate 10
// определяет ускорение игрока, когда он находится в воздухе(например падает)

sv_allowdownload 1

// разрешить загрузку с сервера(например карт)

sv_allowupload 1

// разрешить загрузку на сервер(например спреев)

sv_alltalk 0

// разрешить всем слышать переговоры друг друга по микрофону, вне зависимости от команды

sv_cheats 0

// разрешить игровые читы на сервере (пример: noclip)

sv_consistency 1

// предписывает ли сервер последовательность файла для критических файлов

sv_contact your@email.ru

// e-mail администратора сервера

sv_enableoldqueries 1

// разрешить поддержку старого стиля (Half-life 1) серверных запросов

sv_footsteps 1

// использовать звук шагов при передвижении игрока

sv_friction 4

// коэффициент трения в игре

sv_gravity 800

// гравитация в игре

sv_maxrate 20000

// максимальное колличество байт в секунду, которое может быть передано сервером(0 == без ограничения)

sv_maxspeed 320

// максимальная скорость игрока

sv_maxunlag 0.5

// максимальная лагокомпенсация, в секунду

sv_maxupdaterate 40

// максимальное колличество обновлений(колличество пакетов) которое разрешено на сервере

sv_minrate 0

// минимальное колличество байт в секунду, которое может быть передано сервером(0 == без ограничения)

sv_minupdaterate 10

// минимальное колличество обновлений(колличество пакетов) которое разрешено на сервере

sv_pausable 0

// разрешить ставить паузу во время игры

sv_rcon_banpenalty 15

// колличество минут на которое банится игрок пытавшийся подобрать rcon-пароль к серверу

sv_rcon_maxfailures 5

// максимальное колличество попыток при наборе rcon-пароля, после истечения которых игрок будет забанен

sv_rcon_minfailures 5

// колличество попыток при наборе rcon-пароля во время заданное sv_rcon_minfailuretime, после истечения которых игрок будет забанен

sv_rcon_minfailuretime 30

// колличество секунд для определения неверной rcon-аутенфикации

sv_specaccelerate 5

// ускорение при передвижения в режиме spectator

sv_specnoclip 1

// игрок в режиме spectator может пролетать через стены и объекты

sv_specspeed 3

// скорость передвижения в режиме spectator

sv_stats 1

// собирать статистику использования процессора

sv_stepsize 18

// длинна шага в юнитах

sv_stopspeed 75

// минимальная скорость остановки на поверхности

sv_timeout 30

// если сервер не получает отклика от клиента в течении # секунд, клиент отключается от сервера

sv_unlag 1

// лагокомпенсация

sv_voiceenable 1

// разрешить использование микрофона

5. Другие команды
breakable_multiplayer 1
decalfrequency 10

host_framerate 0

rcon_password "password"

// задать rcon-пароль для удалённого управления сервером

exec banned_ip.cfg

// добавляем в данный файл banned_ip.cfg список забаненных по Steam ID

exec banned_user.cfg

// добавляем в данный файл banned_user.cfg список забаненных по имени игрока

writeid

// записываем SteamID игроков

writeip

// записываем IP игроков

hostname "Dedicated Server"

// задаём имя сервера

[*] И уже готовые конфиги для публичных и клановых серверов:
Отредактировано: Panda 2022.08.04 12:13:37
#2 2021.03.14 21:00:26

0

1. Клановый:

hostname ""
//tv_name ""

sv_password ""

//tv_password ""

//tv_relaypassword ""

sv_region 3

sv_contact ""

rcon_password ""

mp_footsteps 1

mp_flashlight 1

mp_autocrosshair 0

mp_friendlyfire 1

mp_chattime 10

mp_timelimit 1000

mp_buytime .25

mp_maxrounds 0

mp_winlimit 0

mp_startmoney 16000

mp_roundtime 2

mp_freezetime 2

mp_c4timer 35

mp_limitteams 0

mp_autoteambalance 0

mp_dynamicpricing 0

mp_falldamage 1

mp_tkpunish 0

mp_autokick 0

mp_spawnprotectiontime 0

mp_hostagepenalty 0

sv_gravity 800

sv_stopspeed 75

sv_maxspeed 320

sv_accelerate 5

sv_airaccelerate 10

sv_wateraccelerate 10

sv_waterfriction 1

sv_footsteps 1

sv_rollspeed 200

sv_rollangle 0

sv_friction 4

sv_bounce 0

sv_maxvelocity 3500

sv_stepsize 18

sv_backspeed 0.6

sv_waterdist 12

sv_pushaway_force 30000

sv_pushaway_min_player_speed 75

sv_pushaway_max_force 1000

sv_rcon_minfailuretime 30

sv_rcon_minfailures 2

sv_rcon_maxfailures 10

sv_rcon_banpenalty 1000

sv_unlag 1

sv_maxunlag 0.5

sv_lagflushbonecache 1

sv_unlag_fixstuck 1

sv_max_usercmd_future_ticks 8

sv_runcmds 1

sv_showimpacts 0

sv_showplayerhitboxes 0

sv_lan 0

sv_minrate 20000

sv_maxrate 30000

sv_minupdaterate 40

sv_maxupdaterate 100

sv_mincmdrate 40

sv_maxcmdrate 100

sv_client_interpolate 1

// sv_client_interp 0.01

sv_client_cmdrate_difference 5

sv_timeout 65

// sv_visiblemaxplayers 12

sv_pure 0

sv_pure_kick_clients 1

sv_enableoldqueries 0

sv_max_queries_sec_global 60

sv_max_queries_window 30

sv_max_queries_sec 3.0

//tv_delay 100

//tv_delaymapchange 1

//tv_enable 1

//tv_dispatchmode 1

//tv_overridemaster 0

//tv_autorecord 0

//tv_maxclients 128

//tv_snapshotrate 16

//tv_timeout 30

//tv_autoretry 1

//tv_chattimelimit 3

//tv_maxrate 5000

//tv_nochat 0

//tv_port 27020

sv_alltalk 1

sv_voiceenable 1

sv_voicecodec vaudio_speex

sv_consistency 1

sv_allowupload 0

sv_allowdownload 1

sv_downloadurl ""

log on

sv_logbans 0

sv_logecho 1

sv_log_onefile 0

sv_logflush 0

sv_logfile 1

sv_logsdir "logs"

sv_logblocks 0

sv_logdownloadlist 1

mp_logdetail 0

sv_specaccelerate 5

sv_specspeed 1.5

sv_specnoclip 1

mp_forcecamera 1

mp_allowspectators 0

mp_playerid 0

mp_playerid_delay 0.5

mp_playerid_hold 0.25

mp_fadetoblack 0

sv_maxreplay 0

sv_pausable 1

sv_cheats 0

sv_filterban 1

sv_stats 0

sv_instancebaselines 1

mp_decals 200

fps_max 1000

decalfrequency 2000

r_spray_lifetime 0

1. Паблик:

hostname ""
//tv_name ""

//sv_password ""

//tv_password ""

//tv_relaypassword ""

sv_region 3

sv_contact ""

rcon_password ""

mp_footsteps 1

mp_flashlight 1

mp_autocrosshair 0

mp_friendlyfire 1

mp_chattime 10

mp_timelimit 30

mp_buytime .25

mp_maxrounds 0

mp_winlimit 0

mp_startmoney 800

mp_roundtime 2

mp_freezetime 2

mp_c4timer 35

mp_limitteams 1

mp_autoteambalance 0

mp_dynamicpricing 0

mp_tkpunish 0

mp_autokick 0

mp_spawnprotectiontime 0

mp_hostagepenalty 4

sv_gravity 800

sv_stopspeed 75

sv_maxspeed 320

sv_accelerate 5

sv_airaccelerate 10

sv_wateraccelerate 10

sv_waterfriction 1

sv_footsteps 1

sv_rollspeed 200

sv_rollangle 0

sv_friction 4

sv_bounce 0

sv_maxvelocity 3500

sv_stepsize 18

sv_backspeed 0.6

sv_waterdist 12

sv_pushaway_force 30000

sv_pushaway_min_player_speed 75

sv_pushaway_max_force 1000

sv_rcon_minfailuretime 30

sv_rcon_minfailures 5

sv_rcon_maxfailures 10

sv_rcon_banpenalty 5

sv_unlag 1

sv_maxunlag .5

sv_lagflushbonecache 1

sv_unlag_fixstuck 1

sv_max_usercmd_future_ticks 8

sv_runcmds 1

sv_showimpacts 0

sv_showplayerhitboxes 0

sv_lan 0

sv_minrate 20000

sv_maxrate 100000

sv_minupdaterate 40

sv_maxupdaterate 100

sv_mincmdrate 40

sv_maxcmdrate 100

sv_client_interpolate 1

// sv_client_interp 0.01

sv_client_cmdrate_difference 5

sv_timeout 65

// sv_visiblemaxplayers 12

sv_pure 0

sv_pure_kick_clients 1

sv_enableoldqueries 0

sv_max_queries_sec_global 60

sv_max_queries_window 30

sv_max_queries_sec 3.0

//tv_delay 100

//tv_delaymapchange 1

//tv_enable 0

//tv_dispatchmode 1

//tv_overridemaster 0

//tv_autorecord 0

//tv_maxclients 128

//tv_snapshotrate 16

//tv_timeout 30

//tv_autoretry 1

//tv_chattimelimit 3

//tv_maxrate 5000

//tv_nochat 0

sv_alltalk 0

sv_voiceenable 1

sv_voicecodec vaudio_speex

sv_consistency 1

sv_allowupload 0

sv_allowdownload 1

sv_downloadurl ""

log on

sv_logbans 0

sv_log_onefile 0

sv_logecho 1

sv_logflush 0

sv_logfile 1

sv_logsdir "logs"

sv_logblocks 0

sv_logdownloadlist 1

mp_logdetail 3

sv_specaccelerate 5

sv_specspeed 1.5

sv_specnoclip 1

mp_forcecamera 0

mp_allowspectators 1

mp_playerid 0

mp_playerid_delay 0.5

mp_playerid_hold 0.25

mp_fadetoblack 0

sv_maxreplay 0

sv_pausable 0

sv_cheats 0

sv_filterban 1

sv_stats 1

sv_instancebaselines 1

mp_decals 200

fps_max 1000

decalfrequency 2000

r_spray_lifetime 0

[*] Для добавления новых карт на сервер нужно:
1. Переместить файл с картой в папку d:\Server\cstrike\maps

2. Прописать название карты(файла) в текстовые документы d:\Server\cstrike\mapcycle.txt и d:\Server\cstrike\maplist.txt

[*] Так же вы можете изменить окно приветствия при подключении к вашему серверу путем редактирования файла d:\Server\cstrike\motd.txt (ВНИМАНИЕ: Необходимы знания HTML).

Запуск сервер
[*] Для запуска сервера, создадим в папке d:\Server текстовый файл Start.txt и откроем его.

[*] В нем напишем следующие:

@echo off
cls

:flag

echo (%date% %time%) Thx for Gamer.ru by Draco

echo (%date% %time%) Checking for updates

start /wait d:\Server\update.bat

echo (%date% %time%) Starting SRCDS

start /wait d:\Server\srcds.exe -console -game cstrike +maxplayers 16 +map de_dust

echo (%date% %time%) Restarting SRCDS

goto flag


Сохраним и измеим разрешение с *.txt на *.bat
[*] Теперь для запуска сервера достаточно лишь запустить наш файл Start.bat.

Хочется еще отдельно рассмотреть строку start /wait d:\Server\srcds.exe -console -game cstrike -tickrate 100 +maxplayers 16 +map de_dust из нашего файла запуска.

Мы видим, что запускаемый файл srcds.exe запускается с определенными ключами, а именно:

-console - запускает сервер в консольном режиме. Без этого параметра сервер запустится с графическим интерфейсом (как через Steam) и потребует ручного нажатия кнопки для действительного запуска

-game - указывает игру, для которой запускается сервер.

+maxplayers - указывает максимальное количество игроков на сервере

+map - указывает стартовую карту для сервера.

-tickrate - указывает тикрейт сервера. По умолчанию CSS запускается с тикрейтом 33.

Полный список параметров доступен поссылке .