• Гость, перед открытием темы прочитай описание раздела, чтобы не ошибиться. Любые вопросы по настройке сервера создаются в разделе Технической Поддержки.

Статья О ReHLDS и модулях для него

dmitriykorolev

Участник
Сообщения
56
Симпатии
4
Баллы
64
#1
Всем привет! Написать данную статью, меня вдохновил недавний спор в нашей беседе в контакте. Данная статья будет полезна тем, кто уже давно слышал или только недавно узнал о ReHLDS, но до сих пор не решился на него перейти по разным причинам. Единственной трудностью, с которой вы можете столкнуться - это прекращение работы модулей, которые работают только с HLDS (например Dproto). Но для всего есть замена и бояться нечего.Давайте начнем.

1. Установка ReHLDS
1.Для начала , нужно проверить текущую версию нашего движка. Для этого:
1.1 Заходим в панель управления сервером
1.2 Далее нам нужно установить сервер. Актуальные версии движка и дополнений, изображены на скриншоте.
1.png
После установки сервера, нужно перезагрузить страницу и можно приступать к установке остальных модулей.

2. Установка meta модулей
Модуль reunion, мы уже установили в первом этапе, поэтому дальше я предлагаю вписать "соль" для него. Эта опция позволяет защитить от подмены на определённые SteamID. Соответственно, эта опция еще отвечает за сохранение статистики у нон-стим игроков.Узнать свой стим ид, можно отправив команду status в консоль клиента.
2.1 Переходим в раздел: Настройки сервера/основные конфиги.
2.png
2.2 Находим там файл- reunion.cfg
3.png
Находим там строку SteamIdHashSalt = и видим небольшую пасхалку от админов :D. Эту строку нужно изменить на свою(ввести свои 16 символов).Сохраняем изменения и переходим к установке следующего дополнения.

Установим ReGameDLL. ReGamedll- это библиотека, которая отвечает непосредственно за мод counter-strike и расширяет его функционал без подключения сторонних плагинов.Переходим в раздел : Дополнения/ReHLDS. Выбираем версию и нажимаем установить.
5.png 6.png
Дальше нужно отредактировать game.cfg. Под спойлером находится game.cfg, актуальный для версии 5.12.0.425.За его обновлениями, следите на официальном сайте.
// Вкл./Выкл. режима "Каждый сам за себя" (FFA mode)
// 0 - выключить (значение по умолчанию)
// 1 - включить
// Значение по умолчанию: "0"
mp_freeforall 0

// Балансировка команд
// 0 - выключить
// 1 - Балансировка будет происходить через раунд (значение по умолчанию)
// 2 - Балансировка команд каждый раунд
// Значение по умолчанию: "2"
mp_autoteambalance 1

// Время закупки в каждом раунде. (в минутах
// -1 - нет ограничения по времени
// 0 - отключить закупку
// Значение по умолчанию: "1.5"
mp_buytime 0.25

// Максимальное кол-во денег
// ПРИМЕЧАНИЕ. Допустимый денежный лимит 999999.
//
// Значение по умолчанию: "16000"
mp_maxmoney 16000

// Блокировка окончания раунда
// 0 - выключить (значение по умолчанию)
// 1 - включить (раунд не кончается)
//
// Дополнительные флаги настройки (выбрать столько, сколько нужно)
// a - Заблокировать окончание раунда если время истекло
// b - Заблокировать окончание раунда если на сервере есть хотябы по 1 игроку в каждой команде
// c - Заблокировать окончание раунда при убийстве или спасении VIP
// d - Заблокировать окончание раунда при побеге из тюрьмы
// e - Заблокировать окончание раунда если бомба взорвана
// f - Заблокировать окончание раунда при убийстве команды соперника
// g - Заблокировать окончание раунда если заложники спасены
//
// Пример: "ae" - Заблокирует окончание раунда по истечению времени и взрыву бомбы
// Значение по умолчанию: "0"
mp_round_infinite 0

// Принудительное завершение раунда, по истечению времени, на картах без сценария
// 0 - выключить (значение по умолчанию)
// 1 - включить
// Значение по умолчанию: "0"
mp_roundover 0

// Выдержка времени до начала нового раунда, после окончания текущего.
// Значение по умолчанию: "5"
mp_round_restart_delay 5

// Блокировка урона осколочной гранаты через стены
// 0 - выключено (урон проходит)
// 1 - включить
// Значение по умолчанию: "0"
mp_hegrenade_penetration 0

// Выбрасывать гранаты на землю, после смерти игрока
// 0 - выключено
// 1 - выбросить первую гранату (Если у игрока было 1 HE, 2 Flash, 1 Smoke, то на землю упадет только 1 HE)
// 2 - выбросить все гранаты
// Значение по умолчанию: "0"
mp_nadedrops 0

// Время, после начала раунда, когда игрок не сможет заспавниться и будет ждать нового раунда
//
// Значение по умолчанию: "20"
mp_roundrespawn_time 20

// Автоматическая перезарядка оружия после спавна
// 0 - выключить (значение по умолчанию)
// 1 - включить
//
// Значение по умолчанию: "0"
mp_auto_reload_weapons "1"

// Пополнение патронов
// 0 - выключено (значение по умолчанию)
// 1 - пополнять запас патронов после спавна
// 2 - пополнять запас патронов после спавна и полная обойма, при покупке оружия
// 3 - пополнять запас патронов после каждой перезарядки ( Полезно для модов DeathMatch, GunGame, ZombieMod.)
//
// Значение по умолчанию: "0"
mp_refill_bpammo_weapons 0

// Устанавливаем режим бесконечных патронов для оружия
// 0 - отключено (поведение по умолчанию)
// 1 - Бесконечные патроны
// 2 - Бесконечные патроны в запасе (кол-во запасных патронов не уменьшиться после перезарядки)
//
// Значение по умолчанию: "0"
mp_infinite_ammo 0

// Включить эффекты защиты игрока на спавна
// 0 - отключено
// 1 - включено (используется вместе с cvar mp_respawn_immunitytime)
//
// Значение по умолчанию: "1"
mp_respawn_immunity_effects 0

// Автоматическое присоединение к команде
// 0 - выключить
// 1 - включить (Используйте настройки humans_join_team any/CT/T)
//
// Значение по умолчанию: "0"
mp_auto_join_team 0

// Максимальное число убийств товарищей по команде, после чего последует kick
// Используйте, когда включен mp_autokick.
// 0 - выключить
//
// Значение по умолчанию: "3"
mp_max_teamkills 3

// Покажет кол-во фрагов в консоли, если включена настройка mp_fraglimit
mp_fragsleft

// Когда игрок наберет заданое число фрагов-карта сменится
// 0 - отключить настройку
//
// Значение по умолчанию: "0"
mp_fraglimit 0

// Время, между сменой карт
// 0 - нет ограничений
//
// Значение по умолчанию: "0"
mp_timelimit 25

// Автоматический респавн игрока после смерти
// 0 - выключить
// >0.00001 - время, после которого произойдет респавн игрока
//
// Значение по умолчанию: "0"
mp_forcerespawn 0

// Заложники могут получить урон.
// 0 - выключить
// 1 - От любой команды (Значение по умолчанию)
// 2 - От команды CT
// 3 - От команды T
mp_hostage_hurtable 0

// Отображение радио иконки над головой
// 0 - выключить
// 1 - включить (значение по умолчанию)
mp_show_radioicon 1

// Отладочная информация, для показа triggers.
// 0 - выключить (значение по умолчанию)
// 1 - включить
//
// Значение по умолчанию: "0"
showtriggers 0

//Как игроки слышат друг друга.
// 0 - живые не слышат мертвых и соперников
// 1 - без ограничений
// 2 - товарищи по команде слышат друг друга
// 3 - аналогично 2, но зрители слышат всех
// 4 - живые слышат всех живых, мертвые слышат живых и мертвых
//
// Значение по умолчанию "0"
sv_alltalk 4

// Установка режима игры для zBot
// 0 - выключить
// 1 - включить поддержку режима Deathmatch и не выполнять сценарий карты
//
// Значение по умолчанию: "0"
bot_deathmatch 0

// Режим заполнения сервера ботами
// normal - не зависит от кол-во игроков (значение по умолчанию)
// fill - сервер будет кикать количество ботов, равное кол-ву подключившихся игроков.
// match - сервер будет поддерживать соотношение людей к ботам 1: N, где N - bot_quota
bot_quota_mode "normal"

// Предотвращает присоединение ботов к серверу в течение заданного времени (секунд) после смены карты.
//
// Значение по умолчанию: "0"
bot_join_delay 0

// Время (секунды) для удаления предмета, который выбросил игрок
// Значение по умолчанию "300"
mp_item_staytime 300

// Проигрывать звук "Bomb has been defused" вместо "Counter-Terrorists win", когда бомбу разминировали
// 0 - выключить (стандартное поведение в hlds от valve)
// 1 - включить
//
// Значение по умолчанию: "1"
mp_old_bomb_defused_sound 1

// Устаревшая обработка касания для func_bomb_target. Новый подход более строгий.
// 0 - Новое поведение
// 1 - Устаревшее
//
// Значение по умолчанию: "1"
mp_legacy_bombtarget_touch 0


// Указывает время защиты игроков после респауна. (в секундах).
// 0 - выключить
// >0.00001 - задержка времени для снятия защиты
//
// Значение по умолчанию: "0"
mp_respawn_immunitytime 0

// Убивает игрока в точке возрождения, перед появлением нового игрока в этой точке (предотвращает застревание игроков друг в друге)
// Отключайте это, только если у вас есть semiclip или другие плагины, которые предотвращают застревание
// 0 - выключить
// 1 - включить
//
// Значение по умолчанию: "0"
mp_kill_filled_spawn 1

// Разрешить использование объектов point_servercommand на карте.
// 0 - запретить
// 1 - разрешить
// ПРИМЕЧАНИЕ: Потенциально опасно для ненадежных карт.
//
// Значение по умолчанию: "0"
mp_allow_point_servercommand 0

// Показать 'HP' в TAB
// 0 - не отправлять обновления для поля 'HP'
// 1 - показать всем только 'HP' террористов
// 2 - показать всем только 'HP' контер-террористов
// 3 - показать 'HP' товарищам по команде
// 4 - показать 'HP' всех
// 5 - показать 'HP' товарищам по команде и зрителям
//
// Значение по умолчанию: "3"
mp_scoreboard_showhealth "3"

// Показать 'Money' в TAB
// 0 - не отправлять обновления для поля 'Money'
// 1 - показать всем только 'Money' террористов
// 2 - показать всем только 'Money' контер-террористов
// 3 - показать 'Money' товарищам по команде
// 4 - показать 'Money' всех
// 5 - показать 'Money' товарищам по команде и зрителям
//
// Значение по умолчанию: "3"
mp_scoreboard_showmoney "3"

// Уменьшение урона по товарищам при выстреле
// Пределы от 0 до 1 (где 1 - это урон равный урону по врагу)
//
// Значение по умолчанию: "0.35"
ff_damage_reduction_bullets "0.35"

// Уменьшение урона по товарищам гранатой
// Пределы от 0 до 1 (где 1 - это урон равный урону по врагу)
//
// Значение по умолчанию: "0.25"
ff_damage_reduction_grenade "0.25"

// Уменьшение урона по себе от гранаты
// Пределы от 0 до 1 (где 1 - это урон равный урону по врагу)
//
// Значение по умолчанию: "1.0"
ff_damage_reduction_grenade_self "1.0"

// Уменьшение урона по товарищам другими типами урона (кроме выстрелов и гранат).
// Пределы от 0 до 1 (где 1 - это урон равный урону по врагу)
//
// Значение по умолчанию: "0.25"
ff_damage_reduction_other "0.25"

// Игрок, который не двигается, выбросит бомбу через указанное время (в секундах).
// 0 - отключить
// >0.00001 - задержка перед выбросом
//
// Значение по умолчанию: "0"
mp_afk_bomb_drop_time "15"


// Если установлено 1, то оружие которое находится на земле, будет отображаться
// Примечание: Для работы нужно сменить карту или перезагрузить сервер
// 0 - Скрыть оружие на всех картах
// 1 - Включено (default behaviour)
//
// Default value: "1"
mp_weapons_allow_map_placed 1
На этом список рекомендуемых дополнений можно окончить. Остаются только модули, которые можно установить по желанию. Они находятся в разделе: Дополнения/плагины Metamod.Их установка, аналогична остальным. Ниже, я приведу список этих дополнений.
Revoice или VTC- Позволяют общаться в голосовом чате на сервере игрокам со steam и non-steam версией игры;
ReSemiclip- Позволяет проходить через других игроков;
ReAimDetector - Обнаружение AIM и NoSpread читов
ReChecker- Проверка клиентских файлов для обнаружения читов
ReAuthCheck- Проверка авторизации игроков на сервере и защита от сторонних программ
ReSRDetector- Обнаружение быстрой ходьбы (speedhack) и быстрой смены ников (name spam)
WHBlocker- Блокировка wall hack читов и части aim читов
SafeNameAndChat- Защищает от специальных и непечатаемых символов в чате и ников игроков, которые могут вызвать баги на сервере
И еще без внимания , мы оставили один amxx-модуль- reapi. Это AMX Mod X модуль, который умеет работать с API ReHLDS, ReGameDLL_CS, Reunion и VTC. Это предоставляет разработчикам AMXX-plugins больше возможностей для реализации своих целей.Установить его можно в разделе: Дополнения/плагины AmxModX.

3.Расположение meta модулей в списке
Расположение модулей в списке не мало значимый факт,который влияет на их работу. Ниже я приведу список расположения с своего сервера.
linux addons/reunion/dlls/reunion.so
linux addons/reauthcheck/dlls/reauthcheck.so
linux addons/rechecker/dlls/rechecker.so
linux addons/resemiclip/dlls/resemiclip.so
linux addons/whblocker/dlls/whblocker.so
linux addons/SafeNameAndChat/SafeNameAndChat.so
linux addons/vtc/dlls/vtc.so
linux addons/amxmodx/dlls/amxmodx.so
На этом бы я хотел завершить свою статью, а также сказать всей команде dev-cs, огромное спасибо за их огромный проделанный труд.
 
Последнее редактирование:
Сверху