Авторизация Регистрация Забыли пароль?
Реклама
Статьи
Наш игровой сервер
Наши сервисы
Мониторинг серверов
Информация
Нам интересно знать
Популярные теги
Популярные материалы
Партнеры
Счетчики
Вы находитесь:

Категория: Статьи

Что такое rehlds? Reverse-engineered HLDS

Автор: admin

Дата: 23 августа 2019

Просмотров: 0

Комментариев: 0

Что такое rehlds? Reverse-engineered HLDS


ReHLDS - это результат реверс-инжиниринга оригинального HLDS (build 6152/6153) с использованием отладочной информации DWARF, встроенной в linux-версию HLDS, engine_i486.so.
В процессе реверс-инжиниринга было обнаружено и исправлено множество недостатков и потенциальных багов.

Ссылки:


Мотивация:
Главная мотивация - valve ничего не делает и нет возможности нормально исправлять баги.

Цели:
  • Предоставить более стабильный HLDS с расширенным API для модов и плагинов.
  • Оптимизация производительности.


Текущий статус:
Движок стабилен, почти все функции работают корректно.

Как использовать?
ReHLDS полностью совместим с оригинальным HLDS. Все, что от вас требуется, это загрузить бинарные файлы rehlds и заменить оригинальные swds.dll/engine_i486.so. При этом до замены движка сервер должен быть обновлен через steamcmd до последней 6xxx+ beta.
Скомпилированные файлы доступны здесь (выберите .zip с наиболее свежей датой изменения).

Директория архива bin содержит 2 поддиректории, 'bugfixed' и 'pure'.

'pure' рассчитана на работу в точности как оригинальный HLDS от valve.
'bugfixed' содержит некоторые исправления и улучшения.

Внимание! Файлы ReHLDS бинарно несовместимы с оригинальным HLDS, так как скомпилированы другим компилятором. Это означает, что плагины, делающие анализ бинарного кода (Orpheu например), вероятно, не будут работать с rehlds. Соответственно, dproto тоже не будет работать. Но для большинства плагинов уже есть улучшенная замена.

Что это нам дало?
Стало возможно не просто изучать движок, но и легко вносить в него изменения. Раньше для этого требовалось писать патчащие память модули, что довольно трудоемко. Это годится лишь для исправления критических багов, для которых уже написаны эксплойты, так как на каждый мелкий недочет писать патчи слишком муторно. Теперь можно без особых проблем исправлять любые ошибки движка и делать его улучшения. В перспективе про HLDS от Valve можно будет забыть и поддерживать серверный движок самостоятельно.

Ссылка на источник:
Похожие публикации
Новый комментарий

Информация

Посетители, находящиеся в группе lamo, не могут оставлять комментарии к данной публикации.