- Лучшие ответы
- 0
Первоисточник - Dedicated-Server.ru
In english - Regamedll_CS, Reverse-engineered mod CS - AlliedModders
Предыстория:
s1lent занялся реверсом мода CS в начале текущего года, сначала попытавшись починить gamedll от вьетнамца cs16nd,
но как оказалось - безуспешно. Cколько багов не фиксил, находились новые, прогонка и анализ кода по IDA заставили бросить это дело.
Спустя несколько месяцев появление ReHLDS дало второе дыхание. В этом проекте s1lent'a привлекли его метод реверс-инжиниринга и система проведения тестов
Теперь подробнее:
Regamedll_CS - это результат реверс-инжиниринга оригинального мода CS (build 6153beta) с использованием отладочной информации DWARF, встроенной в линуксовую версию HLDS cs.so
Цели:
На данный момент в Regamedll добавлен ряд новых настроек, находящихся в файле game.cfg:
b - заблокировать конец раунда при достижении определённого числа игроков
c - заблокировать конец раунда при убийстве или спасении випа
d - заблокировать конец раунда при побеге из тюрьмы
e - заблокировать конец раунда при взрыве бомбы
f - заблокировать конец раунда при убийстве одной из команд
g - заблокировать конец раунда при спасении заложников
Например, mp_round_infinite "ae" заблокирует конец раунда по истечению времени и взрыва бомбы)
1 - с игрока будет сбрасываться первый тип гранаты с соответствующего слота, т.е если у игрока будет комплект из 1 HE и 2 Flash гранат, то в момент смерти сбросится HE граната)
2 - с игрока будут сбрасываться все гранаты, какие у него будут на момент смерти
значении 2 - после каждой перезарядки оружия [Хорошо подойдет для Zombie, CSDM и других модов]
При значении 0 запас патронов пополняться не будет)
Regamedll полностью совместим с оригинальным gamedll от Valve. Все, что от вас требуется, это загрузить бинарные файлы Regamedll и заменить ими оригинальные mp.dll/cs.so
Скомпилированные файлы мода вы можете найти здесь. Директория архива bin содержит 2 поддиректории: 'bugfixed' и 'pure'
Если установка Regamedll была проведена правильно, то при вводе команды "game version" в консоль сервера должны быть отображены строки:
Благодарности:
In english - Regamedll_CS, Reverse-engineered mod CS - AlliedModders
Предыстория:
s1lent занялся реверсом мода CS в начале текущего года, сначала попытавшись починить gamedll от вьетнамца cs16nd,
но как оказалось - безуспешно. Cколько багов не фиксил, находились новые, прогонка и анализ кода по IDA заставили бросить это дело.
Спустя несколько месяцев появление ReHLDS дало второе дыхание. В этом проекте s1lent'a привлекли его метод реверс-инжиниринга и система проведения тестов
Теперь подробнее:
Regamedll_CS - это результат реверс-инжиниринга оригинального мода CS (build 6153beta) с использованием отладочной информации DWARF, встроенной в линуксовую версию HLDS cs.so
Цели:
- Предоставить более расширенный API для модов и плагинов
- Исправление багов
- CS 1.6 - [100%]
- C:Zero - [100%]
На данный момент в Regamedll добавлен ряд новых настроек, находящихся в файле game.cfg:
- mp_freeforall "0/1" (настройка, отвечающая за отключение/включение режима "Каждый сам за себя" (FFA). Настройка хорошо подойдет для CSDM мода)
- mp_maxmoney "16000" (настройка, отвечающая за установку максимального количества денег [можно устанавливать более, чем 16000$]. Плюс: отпадает необходимость использования метамод-плагина PatchMoney)
- mp_round_infinite "0/1" (настройка, отвечающая за отключение/включение блокировки конца раунда. Плюс: отпадает необходимость использования метамод-плагина RoundEndBlock. Для большего интереса и разнообразия можно блокировать отдельные события конца раунда, используя флаги:
b - заблокировать конец раунда при достижении определённого числа игроков
c - заблокировать конец раунда при убийстве или спасении випа
d - заблокировать конец раунда при побеге из тюрьмы
e - заблокировать конец раунда при взрыве бомбы
f - заблокировать конец раунда при убийстве одной из команд
g - заблокировать конец раунда при спасении заложников
Например, mp_round_infinite "ae" заблокирует конец раунда по истечению времени и взрыва бомбы)
- mp_hegrenade_penetration "0/1" (настройка, отвечающая за отключение/включение нанесения урона осколочной гранатой врагу, находящемуся через стену)
- mp_nadedrops "0/1/2" (настройка, отвечающая за сбрасывание гранат на землю после смерти игрока
1 - с игрока будет сбрасываться первый тип гранаты с соответствующего слота, т.е если у игрока будет комплект из 1 HE и 2 Flash гранат, то в момент смерти сбросится HE граната)
2 - с игрока будут сбрасываться все гранаты, какие у него будут на момент смерти
- mp_roundrespawn_time "значение (в секундах)" (настройка, отвечающая за время, спустя после начала раунда которого игрок не сможет заспавниться)
- mp_auto_reaload_weapons "0/1" (настройка, позволяющая отключить/включить автоматическую перезарядку оружия в начале каждого раунда)
- mp_refill_bpammo_weapons "0/1/2" (настройка, отвечающая за пополнение запаса патронов игрока при:
значении 2 - после каждой перезарядки оружия [Хорошо подойдет для Zombie, CSDM и других модов]
При значении 0 запас патронов пополняться не будет)
- bot_deathmatch "0/1" (настройка, отвечающая за отключение/включение огня по своим между ботами)
Regamedll полностью совместим с оригинальным gamedll от Valve. Все, что от вас требуется, это загрузить бинарные файлы Regamedll и заменить ими оригинальные mp.dll/cs.so
Скомпилированные файлы мода вы можете найти здесь. Директория архива bin содержит 2 поддиректории: 'bugfixed' и 'pure'
- 'pure' рассчитана на работу в точности, как оригинальный gamedll от Valve
- 'bugfixed' содержит все исправления и улучшения regamedll
Если установка Regamedll была проведена правильно, то при вводе команды "game version" в консоль сервера должны быть отображены строки:
Внимание! Regamedll бинарно не совместим с оригинальным gamedll, т.к скомпилирован другим компилятором. Это означает, что метамод-плагины, делающие анализ бинарного кода, к примеру Orpheu, не будут работать с RegamedllReGameDLL build: X X X X (X.X.X)
ReGameDLL API version X.X
Build from: https://github.com/s1lentq/ReGameDLL_CS/commit/... (X)
Благодарности:
- Проекту ReHLDS и всем, кто участвовал в нём
- Dreamstalker за предоставленный репозиторий
В: Сразу после запуска сервера происходит его падение. Что делать?
О: Если на вашем сервере установлен amxmodx версии 1.8.2, то в большинстве случаев виноват модуль cstrike_amxx. Для решения проблемы скачайте измененный под Regamedll модуль cstrike_amxx, прикрепленный архивом ниже
В: После установки Regamedll перестал работать adminfreelook. Что делать?
О: Скачайте измененный под Regamedll модуль adminfreelook, прикрепленный архивом ниже (настройке "afl_admin_access_flags" по-умолчанию задан флаг "d". Обязательно добавьте данную настройку в server.cfg, в противном случае модуль работать не будет)
Для корректной работы модуля в server.cfg рекомендуется установить настройкам "mp_forcecamera" и "mp_forcechasecam" значение "1", а настройке "mp_fadetoblack" - "0"
О: Если на вашем сервере установлен amxmodx версии 1.8.2, то в большинстве случаев виноват модуль cstrike_amxx. Для решения проблемы скачайте измененный под Regamedll модуль cstrike_amxx, прикрепленный архивом ниже
В: После установки Regamedll перестал работать adminfreelook. Что делать?
О: Скачайте измененный под Regamedll модуль adminfreelook, прикрепленный архивом ниже (настройке "afl_admin_access_flags" по-умолчанию задан флаг "d". Обязательно добавьте данную настройку в server.cfg, в противном случае модуль работать не будет)
Для корректной работы модуля в server.cfg рекомендуется установить настройкам "mp_forcecamera" и "mp_forcechasecam" значение "1", а настройке "mp_fadetoblack" - "0"
Вложения
Последнее редактирование: