ReGameDLL CS

Metamod ReGameDLL CS 5.3.0.XX

Нет прав для скачивания
Reverse-engineered mod CS
Regamedll_CS.png
s1lent занялся этим делом в начале текущего года, сначала пытался починить gamedll от вьетнамца cs16nd, но, сколько багов не фиксил, - находились новые, прогонка и анализ кода по IDA заставили его бросить это дело.
Спустя несколько месяцев, появление ReHLDS дало второе дыхание, в этом проекте его привлекли метод реверс-инжиниринга и система проведения тестов.

Ссылки:
Что это?
Это результат реверс-инжиниринга оригинального mod CS to Half-Life (HLDS build 6153beta) с использованием отладочной информации DWARF, встроенной в линуксовую версию, cs.so.

Простыми словами, ReGameDLL это то, что отвечает за CS в целом.
В нём описана вся логика мода CS, а также работы оружия, поведения entities, взаимодействия команд и условия окончания раундов и прочее.

Что нам это даст?
  • Проект собирается современными компиляторами, что даст нам чуть больше производительности.
  • Некоторые полезные или часто используемые вещи возможно будут добавлены сразу в мод, без надобности делать это через AMXX plugins.
  • Возможность использовать расширенный ReGameDLL API для Metamod plugins или AMXX modules.
Цели:
  • Предоставить более расширенный API для модов и плагинов.
  • Исправление багов.
  • Оптимизация кода.
Как использовать?
  • Regamedll полностью совместим с оригинальным модом CS
  • Все, что от вас требуется, это загрузить бинарные файлы Regamedll_CS и заменить оригинальные mp.dll/cs.so
  • Скомпилированные файлы доступны здесь (выберите .zip с наиболее свежей датой изменения).
  • Директория архива bin содержит 2 поддиректории, 'bugfixed' и 'pure'.
    • 'pure' рассчитана на работу в точности как оригинальный мод CS от valve.
    • 'bugfixed' содержит некоторые исправления и улучшения.
Конфигурационный файл game.cfg положить в корень сервера или в папку мода cstrike.

Внимание! Файлы Regamedll бинарно несовместимы с оригинальным, так как скомпилированы другим компилятором. Это означает, что плагины, делающие анализ бинарного кода (Orpheu например), вероятно, не будут работать с Regamedll_CS.

Известные проблемы и их решения:
  • Вопрос: Что делать если падает сервер и у меня amxmodx 1.8.2?
  • Ответ: Если виноват модуль amxx cstrike, то вам нужно скачать фикс версию модуля, архив прикрепленный ниже.
  • Вопрос: У меня не работает модуль adminfreelook, можно это исправить?
  • Ответ: Временно сделан модуль refreelook на ReGameDLL API, архив прикреплен ниже. (Квар: afl_admin_access_flags is "d" )
  • Вопрос: Не работает refreelook, как исправить?
  • Ответ: Квары mp_forcecamera, mp_forcechasecam не должны равняться 0, а также mp_fadetoblack должен быть 0.
  • Вопрос: Как узнать, работает ли ReGameDLL?
  • Ответ: Вы можете узнать через команду game version.
  • Вопрос: Не реагирует на команду game version, что делать?
  • Ответ: Для начала нужно выполнить некоторые шаги:
    • Вы должны убедиться что поместили mp.dll (Для Windows) или cs.so(Для Linux) в директорию gamedir/dlls/.
    • Если у вас стоит Metamod, вы должны убедиться, что Metamod загружает именно вашу библиотеку mp.dll/cs.so, напишите команду meta game и увидите в "dll pathname" путь до библиотеки которую загрузил Metamod.
    • В папке gamedir/dlls не должны быть cs_i386.so и бэкап оригинальной библиотеки cs.so, так или иначе Metamod их загрузит, так как считает их приоритетнее чем regamedll. (Совет: Вы можете прямо указать Metamod-у какую библиотеку грузить, для этого зайдите в папку Metamod-а (addons/metamod), откройте config.ini (если нету, создайте config.ini) и добавьте строчку: gamedll dlls/cs.so
[SRC]mp_freeforall "0/1" // отключение/включение режима "Каждый сам за себя" (FFA). Настройка хорошо подойдет для CSDM мода
mp_maxmoney "16000" // установка максимального количества денег (можно устанавливать больше, чем 16000$). Плюс: отпадает необходимость использования метамод-плагина PatchMoney
mp_autoteambalance "0/1/2" // настройка, еще ранее присутствовавшая в gamedll, однако немного расширенная:
// новое значение - "2", которое отвечает за балансировку игроков обеих команд каждый раунд.
// При значении "1" балансировка будет производиться через раунд
mp_round_infinite "0/1" // отключение/включение блокировки конца раунда. Плюс: отпадает необходимость использования метамод-плагина RoundEndBlock. Для большего интереса и разнообразия можно блокировать отдельные события конца раунда, используя флаги:
// a - заблокировать конец раунда по истечению времени
// b - заблокировать конец раунда при достижении определённого числа игроков
// c - заблокировать конец раунда при убийстве или спасении випа
// d - заблокировать конец раунда при побеге из тюрьмы
// e - заблокировать конец раунда при взрыве бомбы
// f - заблокировать конец раунда при убийстве одной из команд
// g - заблокировать конец раунда при спасении заложников
// Например, mp_round_infinite "ae" заблокирует конец раунда по истечению времени и взрыва бомбы
mp_roundover "0/1" // принудительное завершение раунда на картах, где нет определенной цели: установка бомбы, эвакуация заложников или вип.
// Пример работы квара: если установить значение "1", то, допустим, на карте 35hp_2 по истечению времени раунд завершится. Обычно по истечению времени раунд не завершался
mp_hegrenade_penetration "0/1" // отключение/включение нанесения урона осколочной гранатой врагу, находящемуся через стену
mp_nadedrops "0/1/2" // сбрасывание гранат на землю после смерти игрока
// Значения mp_nadedrops:
// 1 - с игрока будет сбрасываться первый тип гранаты с соответствующего слота, т.е если у игрока будет комплект из 1 HE и 2 Flash гранат, то в момент смерти сбросится HE граната
// 2 - с игрока будут сбрасываться все гранаты, какие у него будут на момент смерти
mp_roundrespawn_time "значение (в секундах)" // время, спустя после начала раунда которого игрок не сможет заспавниться
mp_auto_reload_weapons "0/1" // отключить/включить автоматическую перезарядку оружия в начале каждого раунда
mp_refill_bpammo_weapons "0/1/2" // пополнение запаса патронов игрока при:
// значении 1 - во время спавна игрока
// значении 2 - после каждой перезарядки оружия (Хорошо подойдет для Zombie, CSDM и других модов)
// При значении 0 запас патронов пополняться не будет
mp_auto_join_team "0/1" // отключение/включение автоматического выбора команды игрока
mp_max_teamkills "значение" // количество убитых тиммейтов, после которого игрок будет кикнут. Без включенного квара "mp_autokick" данный квар работать не будет
mp_fraglimit "значение" // количество фрагов у игрока, по достижении которого произойдет смена карты. Значение "0" отключает данный квар
mp_fragsleft // вывод количества оставшихся фрагов при вводе команды "mp_fraglimit" в консоль, если включен квар "mp_fraglimit"
mp_forcerespawn "значение" // время, по истечению которого после смерти игрока произойдет его респавн
mp_hostage_hurtable "0/1" // отключение/включение урона по заложникам (значение по-умолчанию: 1)
bot_deathmatch "0/1" // отключение/включение огня по своим между ботами
bot_quota_mode "normal" // квар, с помощью которого можно заполнить сервер ботами. При этом, боты будут добавлены таким образом, чтобы вместе с реальными игроками сервер оказался полон[/SRC]
Конфигурационный файл game.cfg положить в корень сервера или в папку мода cstrike.

Внимание! Файлы Regamedll бинарно несовместимы с оригинальным, так как скомпилированы другим компилятором. Это означает, что плагины, делающие анализ бинарного кода (Orpheu например), вероятно, не будут работать с Regamedll_CS.
Автор
Taulalan
Скачивания
4
Первый выпуск
Обновление
Рейтинг
0,00 звёзд 0 оценок

Другие ресурсы Taulalan

Последние обновления

  1. Обновление 5.3.0.253

    Установка: Извлечь нужные бинарные файлы из папки bugfixed (рекомендуется использовать эту...