ReHLDS, Reverse-engineered HLDS

1.jpg
ReHLDS, Reverse-engineered HLDS
1,8 МБ
Первоисточник
ReHLDS  это результат реверс-инжиниринга оригинального HLDS (сборка 6152/6153) с использованием отладочной информации DWARF, встроенной в linux-версию HLDS, engine_i486.so.
В процессе реверс-инжиниринга было рассмотрено и исправлено множество недостатков и обнаружены ошибки.

Ссылки: Мотивация:  Главная мотивация - Valve ничего не делает и нет возможности нормально исправить баги.
Цели:
  • Предоставить более стабильный HLDS с расширенным API для модов и дополнений.
  • Оптимизация производительности.
Текущий статус:  Движения стабильны, почти все функции работают корректно.

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

Директория архива bin содержит 2 поддиректории, 'bugfixed' и 'pure'.
  • ' pure ' ожидается на работу в качестве оригинального HLDS от valve.
  • ' фиксированная ошибка ' содержит некоторые последствия и проявления.
Внимание!  Файлы ReHLDS бинарно несовместимы с тяжелым HLDS, так как скомпилированы другим компилятором. Это означает, что дополнения, делающие анализ бинарного кода (например, Orpheu  ), вероятно, не будут работать с rehlds . Соответственно, dproto тоже не будет работать. Уже есть улучшенная замена.

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

Кто сейчас на конференции

Зарегистрированные пользователи: нет зарегистрированных пользователей