ReHLDS ReHLDS, Reverse-engineered HLDS

Inline

Пользователь
Регистрация
8 Июн 2017
Сообщения
233
Симпатии
77
Пол
Мужской
#1
Первоисточник - Dedicated-Server.ru

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

Ссылки:

Мотивация: Главная мотивация - valve ничего не делает и нет возможности нормально исправлять баги.
Цели:
  • Предоставить более стабильный HLDS с расширенным API для модов и плагинов.
  • Оптимизация производительности.
История изменений:
Дополнительное описание и перевод на русский язык присутствует, история ведеётся не сначала, но все равно полезна.
[EN] Commit № 568-569
[RU] Коммит № 568-569
[EN] Commit № 570
[RU] Коммит № 570
[EN] Commit № 573
[RU] Коммит № 573

[EN] Commit № 574
[RU] Коммит № 574

[EN] Commit № 575
[RU] Коммит № 575

[EN] Commit № 576
[RU] Коммит № 576

Текущий статус: Движок стабилен, почти все функции работают корректно.
Как использовать? 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 можно будет забыть и поддерживать серверный движок самостоятельно.
 
Последнее редактирование:

pheel

Пользователь
Регистрация
9 Июн 2017
Сообщения
144
Симпатии
65
Пол
Мужской
#4
После 1125 билда (за 11 мая) что то случилось со стрельбой на виндовом сервере. Обычно перехожу на новый билд, как только выходит обнова. По поводу 1127 уже не помню как там было, но со 1135 никак не подружиться. Пару-тройку недель назад ставил - играть невозможно, откатился. Вчера вечерком попробовал снова, думал может в прошлый раз рукожопие временное какое постигло или звезды не так сошлись. Но нет, сегодня игроки уже днем в лс стали строчить. Вернулся снова к 1125 - все встало на свои места. Такие вот пироги. Может у кого еще есть подобный опыт?
Знаю, что разрабов за*бали уже со стрельбой)) Но бля буду, говно какое то приключилось, а в ногу со временем идти все же хочется)
Спасибо.
 

SFGMobile

Постоялец
Регистрация
8 Июн 2017
Сообщения
49
Симпатии
28
Пол
Мужской
#5
pheel, Доброго времени, уважаемый!
в ногу со временем идти все же хочется)
Вот здесь и затаился дьявол. Зачем вообще что-то менять, если сервер настроен и отлично работает? Ну, если там какую новую плюшку попробовать то да. Просто сейчас Вам дадут кучу советов, но в итоге Вы придёте к началу Вашей истории. Оно Вам точно нужно?
От добра добра не ищут...
 

pheel

Пользователь
Регистрация
9 Июн 2017
Сообщения
144
Симпатии
65
Пол
Мужской
#6
SFGMobile, а вдруг будет все же лучше, а не хуже с новыми версиями. А вдруг появится какая то нужная плюшка в дальнейшем, а проблемы с геймплеем останутся с какого то древнего билда. Ну и т.п.
 

SFGMobile

Постоялец
Регистрация
8 Июн 2017
Сообщения
49
Симпатии
28
Пол
Мужской
#7
pheel, Вы проверили? Есть "нужная плюшка"? По стрельбе идеально 5787. Дальше всё индивидуально. Я всегда исхожу из следующего - заказчику нравится, значит и всем остальным игрокам понравится. Каждой твари по паре. Не в смысле оскорбить кого-то, а то, что это всё такое себе. На Ваших серверах всегда найдётся группа людей, которой "всё безумно нравится", а также группа, которой "всё не так и нужно всё поменять, и ещё армейские ранги поставить".
 

sonyx

Команда форума
Модератор
Регистрация
8 Июн 2017
Сообщения
400
Симпатии
216
Пол
Мужской
#8
SFGMobile, проверено временем - нихера не делаем и говорим игрокам что пофиксили стрельбу, дык они чук начинают попадать, радуются, хлопают в ладошки т.д.)))
 

pheel

Пользователь
Регистрация
9 Июн 2017
Сообщения
144
Симпатии
65
Пол
Мужской
#9
Не прокатит, я и сам успел в первый раз оценить. По ощущениям, как будто loss/choke скачет.
Посмотрим что будет со следующими.
 

REVO

Пользователь
Только чтение
Регистрация
9 Июн 2017
Сообщения
172
Симпатии
28
Пол
Мужской
#10
обновил сегодня ре до версии 569. и заметил вот что. для быстрой закачки файлов с сервера я использую hfs.
и в логах видно, какие файлы скачивались. до обновления. в логах все было видно что качают при подключении к серверу.

теперь этого нету. скачивают теперь только файлы которые весят прилично. их их видно в логах.
а обычные файлы такое чувство что качают напримую с сервера. хотя скачиваются они быстро!
 

kachmazov

Пользователь
Регистрация
11 Июн 2017
Сообщения
5
Симпатии
0
Пол
Мужской
#11
Не прокатит, я и сам успел в первый раз оценить. По ощущениям, как будто loss/choke скачет.
Посмотрим что будет со следующими.
Точно так жалуются на стрельбу... по архивам какая версия rehlds нормальной стрельбы
 

pheel

Пользователь
Регистрация
9 Июн 2017
Сообщения
144
Симпатии
65
Пол
Мужской
#12
Точно так жалуются на стрельбу... по архивам какая версия rehlds нормальной стрельбы
У меня с этой все хорошо: rehlds-dist-3.0.0.565-dev
(на teamcity не нашел ссылку на нее, если нужна, в лс напиши)
 

Inline

Пользователь
Регистрация
8 Июн 2017
Сообщения
233
Симпатии
77
Пол
Мужской
#14
[EN] Commit № 568-569
[RU] Коммит № 568-569
 

d3m37r4

Постоялец
Регистрация
8 Июн 2017
Сообщения
165
Симпатии
66
Пол
Мужской
#15
Inline, есть предложение отмечать, критически важные коммиты, ну каким-нибудь образом, напр цветом. Чтобы знать, в какой момент стоит обновиться, ну либо, чтобы просто знать насколько важно данное обновление.
 

KoSt9N

Пользователь
Регистрация
8 Июн 2017
Сообщения
155
Симпатии
2
#16
Inline, есть предложение отмечать, критически важные коммиты, ну каким-нибудь образом, напр цветом. Чтобы знать, в какой момент стоит обновиться, ну либо, чтобы просто знать насколько важно данное обновление.
полностью согласен) и желательно писать какая версия именно Рехлдс
 

Inline

Пользователь
Регистрация
8 Июн 2017
Сообщения
233
Симпатии
77
Пол
Мужской
#17
d3m37r4, Есть ещё идея отмечать какие коммиты отвечают за оптимизацию, фикс багов и т.д.
KoSt9N, Версия сейчас это 3.0.0.N, где N это номер коммита
 

Inline

Пользователь
Регистрация
8 Июн 2017
Сообщения
233
Симпатии
77
Пол
Мужской
#18

Inline

Пользователь
Регистрация
8 Июн 2017
Сообщения
233
Симпатии
77
Пол
Мужской
#19
Последнее редактирование: