Reverse-engineered source code of the Half-Life 1 Net Test 1 (build 722).
  • C 54.8%
  • C++ 36.4%
  • Makefile 5.3%
  • Assembly 3.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-02 14:55:24 +05:00
a3dwrapper [hl.dll] Finish triggers.cpp 2025-10-11 21:29:50 +07:00
cl_dll [client.dll] Final fix for final zoom sensitivity 2025-10-26 00:40:53 +05:00
common [Engine] Apply real internal GoldSrc DLL state macros 2026-08-02 03:38:32 +05:00
dlls [hl.dll] Fix always triggered state of multisource entity 2025-10-26 20:58:28 +05:00
dx6sdk [DXMGR] Implement DXMgr::SetupFullScreenMode 2025-11-22 20:29:11 +05:00
engine [Engine] Add no incremental option to "# ADD LINK32" 2026-08-02 14:55:24 +05:00
media Update README 2025-10-12 02:46:11 +05:00
projects [Engine] Fix MSVC++ 4.2 support, bring back dxmgr_i.c 2025-11-21 01:20:09 +05:00
shell/hl_res Remove weird stuff 2025-02-27 19:40:50 +03:00
verifya3d [Engine] D_VARS.C fix 2025-10-04 22:22:57 +07:00
.editorconfig [Engine] mainly work on host.c; add DefaultUser.ini and PostBuild script 2024-12-31 18:13:44 +01:00
.gitattributes Rename git attributes file 2025-02-20 17:41:03 +05:00
.gitignore [Engine] Fix MSVC++ 4.2 support, bring back dxmgr_i.c 2025-11-21 01:20:09 +05:00
DeployPath.ini [Engine] Implement a lot of stuff for resource system 2025-01-18 20:19:24 +03:00
LICENSE Add project files 2024-10-31 17:10:32 +03:00
PostBuild.bat [Engine] mainly work on host.c; add DefaultUser.ini and PostBuild script 2024-12-31 18:13:44 +01:00
README.md README.md: GSU note 2025-11-22 02:23:48 +05:00

half-life1_win32_722

Reverse-engineered source code of Half-Life 1 Net Test 1 (engine build 722), an early pre-release version of the GoldSrc engine (known at the time as "The Half-Life Engine") distributed to playtesters.

The build was published in October 2024 by playtester Chad Jessup and later reverse-engineered by our team.

NETTEST1_VS2022

This repository contains:

  • Restored source code of HL SDK in Net Test 1 era
    • client.dll
    • hl.dll
  • Restored source code of the engine (no A3D impl.)
    • sw.dll
    • hw.dll (with Direct3D support)
  • Restored source code of the localization module
    • hl_res.dll
  • Reimplemented lightweight source code of the launcher without MFC/SW code
    • hl.exe (see linux branch)

Getting started

Before building the project, you need to configure the deployment path (ONLY FOR VS2022).

The file DeployPath.ini defines where compiled binaries will be automatically deployed.
Example:

; Working directory
root.path="E:\Half-Life NetTest1"

Building

Visual Studio 2022

Open the solution file located at:

..\half-life1_win32_722\projects\vs2022\Half-Life (722 Build, 1998).sln

Now press Build -> Build Solution (or press Ctrl+Shift+B hotkey).

NOTE: if you get afxres.h error during hl_res.dll building, install Microsoft Foundation Class (MFC) library via VS installer.

Visual C++ 4.2

Open any specific project you want to build, for example:

..\half-life1_win32_722\engine\Quiver.mak

All project files are located in their directories.

Now press Build -> Build X.dll (or press Shift+F8 hotkey).

NOTE: if you get ml.exe errors, install MASM 6.12 or newer right into your MSVC++ 4.2 (ml.exe should be inside bin directory or somewhere in PATH environment).

WARNING: don't forget to set the Working Directory in the project properties, otherwise the engine may fail to load the GameDLL during debugging.

Required files for playing

You will need the original data files from Half-Life 1 Net Test 1. They are publicly available online and can be found on archival sources such as the Internet Archive.

For the best NT1 experience, you can also use WON dlls/hl_res/launcher from the build 738 or later to avoid some window bugs.

People involved in development of the project

Referenced projects

Special thanks