- Автор
-
ReHLDS Team
ReHLDS это результат реверс-инжиниринга оригинального HLDS (build 6152/6153) с использованием отладочной информации DWARF, встроенной в linux-версию HLDS, engine_i486.so.
В процессе реверс-инжиниринга было обнаружено и исправлено множество недостатков и потенциальных багов.
Мотивация:
Главная мотивация - valve ничего не делает и нет возможности нормально исправлять баги.
Цели:
Текущий статус: Движок стабилен, почти все функции работают корректно.
Что это нам дало?Стало возможно не просто изучать движок, но и легко вносить в него изменения. Раньше для этого требовалось писать патчащие память модули, что довольно трудоемко. Это годится лишь для исправления критических багов, для которых уже написаны эксплойты, так как на каждый мелкий недочет писать патчи слишком муторно. Теперь можно без особых проблем исправлять любые ошибки движка и делать его улучшения. В перспективе про HLDS от Valve можно будет забыть и поддерживать серверный движок самостоятельно.
В процессе реверс-инжиниринга было обнаружено и исправлено множество недостатков и потенциальных багов.
Мотивация:
Главная мотивация - valve ничего не делает и нет возможности нормально исправлять баги.
Цели:
- Предоставить более стабильный HLDS с расширенным API для модов и плагинов.
- Оптимизация производительности.
Текущий статус: Движок стабилен, почти все функции работают корректно.
Что это нам дало?Стало возможно не просто изучать движок, но и легко вносить в него изменения. Раньше для этого требовалось писать патчащие память модули, что довольно трудоемко. Это годится лишь для исправления критических багов, для которых уже написаны эксплойты, так как на каждый мелкий недочет писать патчи слишком муторно. Теперь можно без особых проблем исправлять любые ошибки движка и делать его улучшения. В перспективе про HLDS от Valve можно будет забыть и поддерживать серверный движок самостоятельно.
- Дополнительная информация
-
Внимание! Файлы ReHLDS бинарно несовместимы с оригинальным HLDS, так как скомпилированы другим компилятором. Это означает, что плагины, делающие анализ бинарного кода (Orpheu например), вероятно, не будут работать с rehlds. Соответственно, dproto тоже не будет работать. Но для большинства плагинов уже есть улучшенная замена.
Ссылки: