- Главная страница /
- Форум /
- Отдел разработки /
- ReHLDS gcc compile version
ReHLDS
What is this?
ReHLDS is a result of reverse engineering of original HLDS (build 6152/6153) using DWARF debug info embedded into linux version of HLDS, engine_i486.so
Along with reverse engineering, a lot of defects and (potential) bugs were found and fixed
You can try playing on one of many servers that are using ReHLDS: Game Tracker
Goals of the project
- Provide more stable (than official) version of Half-Life dedicated server with extended API for mods and plugins
- Performance optimizations (use of SSE for vector math for example) is another goal for the future
How can use it?
ReHLDS is fully compatible with the official pre-anniversary edition of HLDS (engine version <= 8684) downloaded by steamcmd. All you have to do is to download rehlds binaries and replace original swds.dll/engine_i486.so. For windows you can also copy a swds.pdb file with a debug information.
Warning! ReHLDS is not compatible with an old 5xxx or below platforms downloaded by hldsupdatetool.
Downloading HLDS via steamcmd
app_set_config 90 mod cstrike
app_update 90 -beta steam_legacy validate
Downloads
ReHLDS binaries require SSE
, SSE2
and SSE3
instruction sets to run and can benefit from SSE4.1
and SSE4.2
Warning! ReHLDS is not binary compatible with original hlds since it's compiled with compilers other than ones used for original hlds. This means that plugins that do binary code analysis (Orpheu for example) probably will not work with rehlds.
Commands
- rescount // Prints the total count of precached resources in the server console
- reslist // Separately prints the details of the precached resources for sounds, models, decals, generic and events in server console. Useful for managing resources and dealing with the goldsource precache limits.
- rcon_adduser <ipaddress/CIDR> // Add a new IP address or CIDR range to RCON user list (This command adds a new IP address to the RCON user list. The specified IP or CIDR range is granted privileged access to server console. Without any Rcon users, access is allowed to anyone with a valid password)
- rcon_deluser {removeAll} // Remove an IP address or CIDR range from RCON user list
- rcon_users // List all IP addresses and CIDR ranges in RCON user list
Build instructions
Checking requirements
There are several software requirements for building rehlds:
Windows
Visual Studio 2015 (C++14 standard) and later
Linux
cmake >= 3.10 GCC >= 4.9.2 (Optional) ICC >= 15.0.1 20141023 (Optional) LLVM (Clang) >= 6.0 (Optional)
Building
Windows
Use Visual Studio
to build, open msvc/ReHLDS.sln
and just select from the solution configurations list Release Swds
or Debug Swds
Linux
- Optional options using
build.sh --compiler=[gcc] --jobs=[N] -D[option]=[ON or OFF]
(without square brackets)
-c=|--compiler=[icc|gcc|clang] - Select preferred C/C++ compiler to build -j=|--jobs=[N] - Specifies the number of jobs (commands) to run simultaneously (For faster building) Definitions (-D) DEBUG - Enables debugging mode USE_STATIC_LIBSTDC - Enables static linking library libstdc++
- ICC
./build.sh --compiler=intel
- LLVM (Clang)
./build.sh --compiler=clang
- GCC
./build.sh --compiler=gcc
Checking build environment (Debian / Ubuntu)
Click to expand
How can I help the project?
Just install it on your game server and report problems you faced. Merge requests are also welcome :)