←  Artykuły i Instrukcje

AMXX.pl: Support AMX Mod X i SourceMod

»

ReHLDS - optymalne engine HLDS + źródła

  • +
  • -
Puchate's Photo Puchate 14.05.2015

ReHLDS

Reverse-engineered HLDS v0.1

 
1. Czym jest ReHLDS?

 

Reverse-engineered HLDS, w skrócie ReHLDS jest silnikiem serwera dla gier GoldSource, takich jak Counter-Strike 1.6. Nie jest to twór ze stajni Valve, autorem projektu jest osoba prywatna która udostępnia go na zasadach open source. Stworzony został poprzez inżynierię wsteczną na podstawie oryginalnego engine w wersji 6153 (plik engine_i486.so).

 
2. Co to zmienia?

 

Podczas analizowania kodu aplikacji zostało wykryte wiele błędów (w tym potencjalnych), co poskutkowało naprawieniem ich w wynikowej wersji. Dzięki temu zyskujemy zdecydowanie większą stabilność serwera oraz optymalizację wydajności. Dla przykładu przypomnę, iż oryginalny silnik gry powstał w 1999 roku, w momencie gdy nie istniało wiele powszechnych dziś rozszerzeń rozkazów dla procesorów, takich jak SSE. Nie jest żadną nowością fakt, że HLDS od Valve nie wykorzystuje dostępnych dziś instrukcji, co przyczynia się na niebywale niską wydajność serwerów zważając na moc obliczeniową dzisiejszych komputerów. Inaczej jest natomiast w ReHLDS, autor projektu deklaruje wsparcie dla nowych technologii w wielu przypadkach, takich jak np. obliczenia na wektorach. Jednakże należy pamiętać że jest to tylko podstawowy element silnika gry służący do jego uruchomienia, nie obsługuje on rozgrywki więc większość operacji wykonuje się w plikach od producenta które takiej optymalizacji nie mają. Nie należy zatem oczekiwać kosmicznych przyrostów.

 

Dodatkowym smaczkiem jest nowe API serwera które możemy wykorzystywać w pluginach.

 
3. Jak używać?
 

Jak już wcześniej wspominałem, jest to oprogramowanie z udostępnionymi źródłami więc najlepszym rozwiązaniem jest skompilowanie programu w środowisku w którym będzie używany. Jednakże, będąc realistą, wiem że nie jest to proste ze względu na zaawansowany proces kompilacji (dla osób nie mających wcześniej z tym styczności) bądź brak dostępu do kompilatora. 

 

Rozwiązaniem tego problemu jest pobranie skompilowanych już plików oraz wysłanie ich na serwer.

 
4. Wersje ReHLDS
 

W chwili obecnej są dostępne dwie wersje:

 

- pure - jest to wersja "bezpieczna", która używa mechanizmów zawartych w oryginalnym HLDS lecz z przepisanym kodem na nowo
- bugfixed - wersja zoptymalizowana, w której poprawione jest wiele błędów oraz wykonane są dodatkowe optymalizacje wydajności

 
 
5. Problemy
 

Zasadniczo ReHLDS jest już przetestowany i wszystkie znalezione błędy zostały poprawione, lecz wciąż jest to projekt w początkowej fazie wzrostu i mogą pojawić się nieoczekiwane problemy.

 

Dodatkowo, ze względu na inny proces kompilacji i zmienony kod mogą nie działać dodatki opierające się na analizowaniu skompilowanego już kodu (wyszukiwaniu patternów). Przykładem takiego dodatku jest Orpheu bądź Okapi.

 
6. Download
 

Źródła: https://github.com/d...stalker/rehlds/

Skompilowany silnik: http://nexus.rehlds..../rehlds-0.1.zip


GwynBleidD (14.05.2015 15:22):
Plik dorzuciłem jako załącznik, co by nie zginął.

Attached Files

Quote

  • +
  • -
DarkGL's Photo DarkGL 14.05.2015

Świetne ! Istnieje jakaś strona projektu ?

Quote

  • +
  • -
tytusek's Photo tytusek 14.05.2015

będzie działać na tym silniku gry amxmodx? dproto itd ?

Quote

  • +
  • -
Puchate's Photo Puchate 15.05.2015

będzie działać na tym silniku gry amxmodx? dproto itd ?

Działa.

Quote

  • +
  • -
Puchate's Photo Puchate 15.05.2015


Świetne ! Istnieje jakaś strona projektu ?
 

Work in progress ;) projekt jest jeszcze świeży i nie potrzebuje mieć własnej strony. Fora i hithub wystarczy :)

 

Snapshot z wersji 0.2, przypominam ze to nightly builds -> http://nexus.rehlds....s/0.2-SNAPSHOT/


Edited by Puchate, 15.05.2015 00:11.
Quote

  • +
  • -
Asiap's Photo Asiap 15.05.2015

po nadpisaniu plikow serwer nie chce sie odpalic

potrzebny jest jakis modul GLIBC (czy jakos tak)

 

Pukawka.pl nie instaluje dodatkowych modulow

Quote

  • +
  • -
Puchate's Photo Puchate 15.05.2015

po nadpisaniu plikow serwer nie chce sie odpalic

potrzebny jest jakis modul GLIBC (czy jakos tak)

 

Pukawka.pl nie instaluje dodatkowych modulow

Sprawdzę to, być może da się coś z tym zdziałać. :)

Quote

  • +
  • -
tytusek's Photo tytusek 15.05.2015

po nadpisaniu plikow serwer nie chce sie odpalic

potrzebny jest jakis modul GLIBC (czy jakos tak)

 

Pukawka.pl nie instaluje dodatkowych modulow

też mam ten problem server binarki 6153 i gdy podmieniam na ten silnik gry to nie odpala servera na linuxie jak i na windowsie :V

Quote

  • +
  • -
Puchate's Photo Puchate 15.05.2015

Widzę że jednak voice_transcoder oraz dproto nie działaja, a dostałem zapewnienie że tak. Do tego na hostingach widzę segfaulty, a na vpsie ze skompilowanym właśnie tam + amxx działał raczej ok.

 

Przetestuję dokładnie i zobaczymy.

Quote

  • +
  • -
RooT.'s Photo RooT. 20.05.2015

Wyszedł już wczesniej podobny projekt pod nazwa OpenHLDS z tego co zauwazyłem działa na dwoch protokołach bez potrzeby instalacji dproto

Quote

  • +
  • -
Detroit's Photo Detroit 21.05.2015

I am getting Wad not found . Like decals.wad . i already have decals.wad but error. 

Using swd.dll in window 7

Quote

  • +
  • -
RooT.'s Photo RooT. 21.05.2015

Screeny z OpenHLDS

74869390153182993238.jpg34513605892011282903.jpg

Quote

  • +
  • -
tytusek's Photo tytusek 22.12.2015

dla zainteresowanych powstała osobna wersja dproto pod ten silnik jak i vtc

w załączniku download 

na ruskich stronach trochę więcej o tym

Attached Files

Quote

  • +
  • -
Asiap's Photo Asiap 23.12.2015

VTC nie jest specjalnie dla rehlds

dla rehlds jest modul revoice

Quote

  • +
  • -
tytusek's Photo tytusek 23.12.2015

Quote

  • +
  • -
Asiap's Photo Asiap 23.12.2015

zgadza sie ale specjalnie pod rehlds jest modul revoice

Quote

  • +
  • -
NoLiFeR's Photo NoLiFeR 20.01.2016

Dla osób mających z tym problem na 1s1k (reunion (dla nieobeznanych, jest to "dproto" pod ReHLDS) + 0.1 nie wspierały się, przynajmniej u mnie), wersja 0.2, po instalacji której wszystko powinno działać poprawnie.

 

Attached File  rehlds-0.2-20151213.221701-100.zip   7.21MB   221 downloads

 

Źródło : Tutaj (Znajdują się tam także takie pliki jak aktualne wersje, MD5 plików etc etd..)

 


Edited by NoLiFeR, 20.01.2016 15:33.
Quote

  • +
  • -
Encoree's Photo Encoree 04.09.2016

Może ktoś opisać dokładnie jak to wgrać na serwer mam to dograć do bieżącego silnika hlds

Quote

  • +
  • -
tytusek's Photo tytusek 04.09.2016

Może ktoś opisać dokładnie jak to wgrać na serwer mam to dograć do bieżącego silnika hlds

https://amxx.pl/topi...view=getnewpost

Quote