Что такое резервный слот в cs go

Обновлено: 10.05.2024

Создаю тему примерно третий раз ибо вопрос так и не решился.
Есть сервер на 19 слотов (18 игровых + 1 занимает GOTV).
Нужно: сделать так что бы игроки без резервных слотов могли играть на всех 18, но если зайдет резервный слот - кого-то кикнет. Перепробовал миллионы комбинаций - ни одна не помогла.

При этой конфигурации на сервер спокойно заходит 19, 20 и тд игроков.

Davidos
Участник

Создаю тему примерно третий раз ибо вопрос так и не решился.
Есть сервер на 19 слотов (18 игровых + 1 занимает GOTV).
Нужно: сделать так что бы игроки без резервных слотов могли играть на всех 18, но если зайдет резервный слот - кого-то кикнет. Перепробовал миллионы комбинаций - ни одна не помогла.

При этой конфигурации на сервер спокойно заходит 19, 20 и тд игроков.

Munoon
Участник

Ну да, я только так и захожу. Я про то что резервные слоты есть, но они не ограничены и мб (не проверял) доступны всем, даже тем у кого нет флага "a" (конектятся через консоль и их пускают)

megoRU
Участник
Dmitry Ahipov
Хачу сабуфер и уселитель

Значит не правильно настроил :)
Сделай ОТДЕЛЬНЫЙ слот под резерв , тогда уже игрока будет кикать при попытке зайти на сервер
А так видел на оленях такой уже
[ANY] Basic Reserved Slots using Connect (11.08.2016) - AlliedModders
--- Добавлено позже ---
вроде твоя идея такова - игрока будет кикать как только на него начнёт заходить админ

Munoon
Участник

@megoRU, @Dmitry Ahipov, @Davidos, только что провёл тесты и выяснил, если заходит игрок с резервным слотов - плагин кого-то кикает что бы пустить резерв слот, НО так-же через консоль заходят и обычные игроки, причем если у игрока нет резервного слота то сервер просто его пускает и никого не кикает. Мне (понятное дело) надо что бы обычных игроков через консоль на 19 слот не пускало.

Davidos
Участник

@megoRU, @Dmitry Ahipov, @Davidos, только что провёл тесты и выяснил, если заходит игрок с резервным слотов - плагин кого-то кикает что бы пустить резерв слот, НО так-же через консоль заходят и обычные игроки, причем если у игрока нет резервного слота то сервер просто его пускает никого не кикает. Мне (понятное дело) надо что бы обычных игроков через консоль на 19 слот не пускало.

Что такое резервный слот в cs go

Антон Архипов


Антон Архипов

Неплохо комменты удалять кстати когда что-то против говорят, gj moderator

Дамир Ирикбаев


Дамир Ирикбаев

Антон Архипов


Антон Архипов ответил Дамиру

Артем Кезин


Артем Кезин

Артем Кезин


Артем Кезин

Владимир Бурлаков


Владимир Бурлаков

Kostya Kostus


Kostya Kostus

Тут реально респект, по поводу резервного слота. Расскажу тру стори. Любил играть в 1.6 на миксах (обычный соревновательный режим 5на5, только паблик) Но их настолько мало всего, что на Европу приходилось серваков

5, а в России вообще 2 сервера было. И понятно дело он был переполнен 24/8, я ждал по откату по 10-15 мин очередь. А когда заходил, спустя мин 10-20 меня кикало, т.к резервный слот кикает челов, у которых самый большой пинг. И заходил е*@%ный админ, который ничего не сделал и не ждал, а просто нажал подключиться и по**й, что я ждал 20 мин, сюда зайти Кароч маму мав

4 csgo-server-launcher.sh (скрипт запуска для LINUX)

5 Первоначальная инсталляция сервера и SteamCMD

Вопросы загрузки и запуска утилиты SteamCMD Update Tool, загрузки CS:GO Dedicated Server, автоматизации процесса обновления и запуск сервера рассматривается здесь:
Установка Counter-Strike: Global Offensive Dedicated Servers (Linux/Windows)

6 Режимы работы сервера и строки запуска

Строки запуска для линукса

screen -A -m -d -L -S CSGO ./srcds_run -game csgo -console +ip ВАШ_ИП -port ВАШ_ПОРТ -usercon +game_type 0 +game_mode 0 +mapgroup ВАША_ГРУППА_КАРТ +map de_dust2 -tickrate 128 +fps_max 0

Classic Competitive
screen -A -m -d -L -S CSGO1./srcds_run -game csgo -console -usercon +game_type 0 +game_mode 1 +mapgroup mg_bomb_se +map de_dust2_se

screen -A -m -d -L -S CSGO2 ./srcds_run -game csgo -console +ip 141.101.245.20 -port 27016 -usercon +game_type 1 +game_mode 0 +mapgroup mg_armsrace +map ar_shoots -tickrate 128 +fps_max 0

screen -A -m -d -L -S CSGO3 ./srcds_run -game csgo -console +ip 141.101.245.20 -port 27017 -usercon +game_type 1 +game_mode 1 +mapgroup mg_demolition +map de_lake -tickrate 128 +fps_max 0

Deathmatch:
screen -A -m -d -L -S CSGO4 ./srcds_run -game csgo -console -usercon +game_type 1 +game_mode 2 +mapgroup mg_allclassic +map de_dust

Для винды заменить ./srcds_run на srcds и убрать screen -A -m -d -L -S CSGO

casual (школоло с тайзером, броней и no block) "game_type 0" "game_mode 0"

competitive (турнирная версия,без халявного броника, тайзера, есть блокировка тел) "game_type 0" "game_mode 1"

arms race (GunGame DM Turbo режим) "game_type 1" "game_mode 0"

demolition (GunGame без DM и без turbo, плюс установка бомбы) "game_type 1" "game_mode 1"

deathmatch "game_type 1" "game_mode 2"

7 Ошибки при инсталляции сервера

App state (0x10102) reconfiguring, progress: -nan (0 / 0)
Error! App '740' state is 0x1 after update job.

укажите сначала папку, куда инсталлировать
force_install_dir название_папки

Если после "app_update 740" в линуксе вы получаете:
ERROR! Failed to request AppInfo update, not online or not logged in to Steam.
Удалите или переименуйте папку "Steam" в текущей папке пользователяи перезапустите steamcmd.

8 Ошибка "server is enforcing consistency for this file. "

Это баг, используйте sv_consistency 0

9 Что означает _SE в названиях карт?

Это турнирные варианты обычных карт с убранным мусором, туманом, и у них больше FPS.

10 Конфиг для турнирных серверов (ESL Server Plugin CS:GO)

Возможности плагина ESL

- you can check the plugin version with "eslplugin_version"
- you can check the activation status via "rcon status"
- autoupdate all server configs
- warns if server needs restart
- prints server version on join
- shortcut configs with rcon 1on1, rcon 2on2 .
- with esl_autorecord 1 you can enable demorecording when 2 or more players are connected
- with esl_autoarmor 1 every player will get 100 armor each round. This is usefull for knife fights..
- with esl_webstart you can start a webserver that runs default on the sourcetv port and allows you to download replays in proteced mode, directly from the server
- protected via rcon password
- choose own IP and port via esl_webip and esl_webport (0 sets it to its defaults)
- shut down via esl_webstop
- with esl_cashback you can enable auto-cash-drawback on server reconnect

Проверка работы плагина
CIS | ESL Play

11 Настройка отображения моделей

Настраиваются для каждой карты файлах типа de_dust2_se.kv (обычный текстовый файл без .txt)

"de_example"
"name" "de_example"
"minplayers" "10"
"maxplayers" "30"
"extraspectators" "2"
"imagename" "map-dust2-overall"
"t_arms" "models/weapons/t_arms.mdl"
"ct_arms" "models/weapons/ct_arms_st6.mdl"
"t_models"

Можно скопировать из gamemodes.txt
"t_arms" "models/weapons/t_arms.mdl"
"ct_arms" "models/weapons/ct_arms_st6.mdl"

12 Не работают кнопки в админке

Попробуйте при нажатой кнопке TAB, это баг SM, ждите патча.

13 Настройка сервера gamemodes_server.txt

По умолчанию настройки хранятся в gamemodes.txt, однако Valve не рекомендует его редактировать, так как он периодически обновляется.
Для настроек сервера Valve предлагает переименовать имеющийся файл gamemodes_server.txt.example в gamemodes_server.txt и настроить соответственно.
Настройки в gamemodes_server.txt имеют преимущество перед настройками в gamemodes.txt
Если вы сделали изменения в gamemodes_server.txt, они вступят в силу только после полной перезагрузки сервера.
Простой пример gamemodes_server.txt

//
// Values here override the default gamemodes.txt
"GameModes_Server.txt"
"gameTypes"
"classic"
"gameModes"
"competitive"
"maxplayers" "8" // Note that maxplayers doesn't go in the convar block.
// Another way to set maxplayers is to add -maxplayers$
"convars"
"hostname" "SE SERVER 24/7"
"mp_startmoney" "888"
"mp_maxmoney" "9999"
>
"mapgroupsMP" // List of mapgroups valid for this game mode ( competitive )
"mg_bomb_se" ""
>
>
"casual"
"maxplayers" "25"
"convars"
"hostname" "SE SERVER 24/7"
"mp_startmoney" "15998"
"mp_maxmoney" "99999"
>
"mapgroupsMP" // List of mapgroups valid for this game mode ( casual )
"mg_bomb_se" ""
>
>
>
>
>
//////////////////////////////////////////////////////////////////////////////////////////////
// Map groups
//

14 Куда делись autoexec.cfg и server.cfg

autoexec.cfg нужно создать в папке \csgo\cfg\
Конфиг выполняется один раз в момент запуска сервера перед загрузкой карты и перед применением опций из командной строки.

log on //This is set to turn on logging! Don't put this in your server.cfg
//sv_password //Only set this if you intend to have a private server and don't want that a mapchange will reset your password.

server.cfg
server.cfg нужно создать в папке \csgo\cfg\
Конфиг выполняется каждую смену карты.

hostname "Counter-Strike: Global Offensive Dedicated Server"
rcon_password "yourrconpassword"
sv_password "" //Only set this if you intend to have a private server!
From here, you can add additional commands to customize your server's game play experience:
mp_freezetime 5 //The amount of time players are frozen to buy items
mp_join_grace_time 15 //The amount of time players can join teams after a round has started
mp_match_end_restart 0 // Defines whether a map should be restarted after a game has ended
sv_cheats 0 //This should always be set, so you know it's not on
sv_lan 0 //This should always be set, so you know it's not on
//**The bot commands below are mostly default with the exception of
bot_difficulty 1
bot_chatter "off"
bot_join_after_player 1
bot_quota 10
bot_quota_mode "fill"
//**The following commands manage kicks and bans
writeid
writeip
exec banned_user.cfg
exec banned_ip.cfg

15 Как узнать, какие переменные доступны для настроек в server.cfg

Введите в консоль сервера команду

cvarlist log cvarlist.txt
Файл cvarlist.txt будет лежать в корне \csgo\
Т.е. сначала вы идете в эталонный gamemodes.txt, берете оттуда настройки для gamemodes_server.txt, а то, чего нет в gamemodes.txt, можно взять из cvarlist.txt и разместить в server.cfg.

16 Клиент не подключается к серверу

17 Не работает параметр +maxplayers в командной строке

Это работало в ранней бете, а сейчас этот параметр располагается либо в gamemodes.txt либо в
gamemodes_server.txt
Для текущей версии серверов есть параметр командной строки
maxplayers_override, который перекрывает значения в любых конфигах.

18 Где настроить резервные слоты

Настраиваются средствами SM, в sourcemod.cfg указываем сколько слотов должно быть: sm_reserved_slots 4
и сколько скрыть от глаз игроков: sm_hide_slots 1
Обязательно должно быть включено host_info_show "2", см. примечание *
Кроме того, не забываем, что общее количество слотов регулируется в gamemodes_server.txt (maxplayer)
*
sm_hide_slots работает благодаря sv_visiblemaxplayers, которая в свою очередь правильно работает только при host_info_show "2". Резервные слоты работают и без всего этого, но не скрываются.

19 Я поставил пароль, но как только кто то заходит на сервер, туда попадает куча народа из лобби

Это баг. Используйте для временного костыля sv_steamgroup_exclusive 1

20 Запуск нескольких серверов из одной папки

Используйте параметр командной строки -Gamemodes_serverfile для указания других конфигов gamemodes_server.txt.

21 Куда делся мой MOTD (какие файлы нужно резервировать перед обновлением)

Он был перезаписан при обновлении сервера.
Вы можете указать свой файл MOTD переменной motdfile "", либо:
Перед обновлением нужно сохранить такие файлы:
mapcycle.txt
maplist.txt
motd.txt
К примеру, для Linux можно скопировать ручками 1 раз оригиналы в корень папки csgo, и вставить следующие строки в скрипт после строк обновления сервера:
cp /home/xyz/steam_pipe/csg2/motd.txt /home/xyz/steam_pipe/csg2/csgo/motd.txt
cp /home/xyz/steam_pipe/csg2/mapcycle.txt /home/xyz/steam_pipe/csg2/csgo/mapcycle.txt
cp /home/xyz/steam_pipe/csg2/maplist.txt /home/xyz/steam_pipe/csg2/csgo/maplist.txt
Важно!
Крайне не рекомендуется вносить изменения в gamemodes.txt и соответственно его сохранять, т.к. Valve может изменить логику без предупреждений. Пример - введение режима DM, который сначала отсутствовал. Так же вы не увидите новых карт.
Это касается также gamemode_casual.cfg (или gamemode_armsrace.cfg, gamemode_casual.cfg, gamemode_demolition.cfg).
Для настройки используйте вновь созданный, к примеру, gamemode_casual_server.cfg, который запускается из gamemodes_server.txt

22 Почему в названии сервера и в чате некоторые кириллические буквы не отражаются либо отражаются некорректно

Это баг. Ждите патча.

23 Как отключить автоматическую покупку брони

24 Как отключить камеру смерти

"Нажмите F5 чтобы запечатлеть этот момент"
Убрать совсем: spec_freeze_time -1, но будет резко дергаться камера.
Оптимально spec_freeze_time 2, через 2 секунды отключится
За камеру в режиме спектатора отвечают переменные из группы spec_freeze_
spec_freeze_deathanim_time 0
spec_freeze_panel_extended_time 0
spec_freeze_time 0
spec_freeze_time_lock 0
spec_freeze_traveltime 0

Рекомендуемые рейты

Данные переменные необходимо поместить в конфиг игрового режима или в server.cfg

Рейты для сервера с 64 тикрейтом

Рейты для сервера с 128 тикрейтом

Диагностика проблем и их решение

Слишком большой choke на сервере

Зайдите в игру, присоединитесь к своему серверу, откройте консоль игры и введите net_graph 3. Данная опция позволит Вам смотреть показатели, которые помогут обнаружить наличие проблемы с рейтами. Самая распространенная проблема вызвана неправильными рейтами это choke (потеря пакентов), если значение превышает 10% постоянно у всех игроков без исключения, значит следует проверить рейты вашего сервера.


Даже если Вы в server.cfg прописали правильные рейты, Вы не можете быть уверенны, что какой-то мод или плагин не заменил их на свои, как правило бывает, что мод добавляет свои конфиги в которых прописаны устаревшие и неправильные рейты (зачастую бывает в WarMod). Или же когда Вы используете какую-то устаревшую сборку сервера с своими конфигами. Для просмотра текущих рейтов на сервере, нужно в консоли сервера поочередно ввести переменные без значений:

В результате Вам отобразятся значения данных переменных которые на сервере в текущий момент, если они будут отличаться от тех, которые прописывали Вы, значит в каком-то конфигурационном файле указанные другие рейты.

Рекомендуемые настройки рейтов на сервере CS:GO

При каждом тике, сервер обрабатывает информацию игроков, физические передвижения, обновления состояния объектов и так далее. После моделирования тика сервер решает, нуждается ли какой-либо игрок в обновлении игрового состояния, и при необходимости получает снимок текущего состояния. Более высокий тикрейт повышает точность моделирования, но также требует большей мощности процессора и доступной пропускной способности как на сервере, так и на клиенте. Соответственно, чем выше тикрейт, (а максимальный тикрейт в CS:GO это 128) тем чаще сервер обрабатывает информацию и тем лучше сказывается на игровом процессе, в том числе и стрельбе. Максимальной тикрейт в CS:GO это 128, но так как он требуемый к ресурсами, наиболее распространенный 64 тикрейт, который в частности используется на серверах матчмейкинга.


Зачем нужен высокий тикрейт?

Наверняка Вы встречались с такой ситуацией на матчмейкинге или на другом сервере с tickrate 64, когда Вы стреляете в противника, видите попадания, следы крови, но при этом сервер не засчитывает урон, причина в том, что ваша игра отправляет данные на сервер для обработки, но сервер сопоставив их с данными других игроков не засчитывает попадания. Кровь Вы видите лишь потому что, за отображение крови и попаданий отвечает игра, но не сервер. Вы видите, что попали в цель, игра отображает кровь, посылает информацию на сервер для проверки. Если сервер считает, что вы промахнулись, урон противнику не засчитывается. Высокий TickRate позволяет избежать таких ситуаций и как правило более корректно обрабатывает все данные.

Тариф с оплатой за слоты
Вы выбираете тикрейт ещё в момент покупки, но если Вы захотите сменить тикрейт, то это можно сделать лишь путем смены тарифа.

Тариф PRO
Сменить тикрейт Вы можете в панели управления, раздел "Настройки".

Игровой VDS
Тикрейт устанавливается атрибутом в параметрах запуска сервера: -tickrate <значение>

Что такое рейт (rate)?

Рейт - устанавливает максимальный размер байт в секунду передаваемой информации между игроком и сервером. Стандартное значение rate у игроков составляет 196608 (rate 196608), что в переводе означает 1.57 Мбит/сек.

Скорость интернета переведенная в рейты
0.5 Мбит/сек rate 62500
1.0 Мбит/сек rate 125000
1.5 Мбит/сек rate 187500
1.57 Мбит/сек rate 196608 (Стандартное значение)
2.0 Мбит/сек rate 250000
2.5 Мбит/сек rate 312500
3.0 Мбит/сек rate 375000
3.5 Мбит/сек rate 437500
4.0 Мбит/сек rate 500000
4.5 Мбит/сек rate 562500
5.0 Мбит/сек rate 625000
5.5 Мбит/сек rate 687500
6.0 Мбит/сек rate 750000
6.2 Мбит/сек rate 786432 (Максимальное значение)

Как выставлять рейт?

Необходимые Вам рейт на сервере выставляются с помощью двух переменных:

Прописывать эти переменные можете как в конфиге игрового режима, так и в server.cfg. Как правило, этих переменных нет по-умолчанию в стандартных конфигах, Вам необходимо их добавить вручную.


Прописываем минимальные и максимальные значения rate в server.cfg
Какие значения sv_minrate и sv_maxrate рекомендуется выставить?

Не старайтесь ограничить игроков выставив sv_minrate выше стандартного значения, Вы никак не улучшите им игру, а некоторым игрокам можете лишь её усугубить, ведь не у всех качественный интернет и высокая скорость, по этому рекомендуемые значения не отличаются от стандартных.

CmdRate

Что такое CmdRate

Cmdrate - отвечает за максимальное число командных пакетов отправляемых игроком на сервере за секунду. В игре за это отвечает переменная cl_cmdrate.

Как выставить cmdrate на сервере

Вам необходимо ограничить игрокам минимальное допустимое значение cmdrate для комфортной игры в соответствии с тикрейтом вашего сервера. Предположим, что у Вас сервер на 128 тикрейте, следовательно необходимо в конфиг игрового режима или в server.cfg добавить переменную:

Помимо этой переменной существует ещё и sv_maxcmdrate, но необходимости её прописывать нет, так как она автоматически унаследует значение вашего тикрейта.


Прописываем минимальное значение cmdrate в server.cfg
Какое значение sv_mincmdrate рекомендуется выставить?

Необходимо всегда выставлять значение переменной sv_mincmdrate равно значению тикрейта вашего сервера. То есть если сервер на 64 тикрейте, то прописывать нужно:

Если сервер на 128 тикрейте, то нужно:

UpdateRate

Что такое UpdateRate

UpdateRate - отвечает за количество пакетов получаемых с сервера за секунду. В игре за это отвечает переменная cl_updaterate.

Как выставить UpdateRate на сервере

Аналогично как и с CmdRate, необходимо ограничить игрокам минимальное значение для комфортной в соответсвии с тикрейтом. Следовательно необходимо в конфиг игрового режима или в server.cfg добавить переменную значением которой будет тикрейт сервера, к примеру у нас будет он 128:

Помимо этого есть переменная и sv_maxupdaterate, необходимость в которой отсутствует, так как она автоматически унаследует значение тикрейта сервера.

Какое рекомендуемое значение sv_minupdaterate нужно выставить?

Значение переменной должно быть равно тикрейту сервера. Если 64 тикрейт, то:

Если же 128 тикрейт, следовательно:


Прописываем минимальное значение updaterate в server.cfg

Читайте также: