- Git. Follow
Git downloads. - CMake. Can be
C++ CMake Tools for Windowscomponent of Visual Studio. - Visual Studio 2022 with v143+ platform toolset.
Use
Desktop development with C++workload and select additionalWindows 11 SDK <latest version>,C++ ATL for latest v143 build tools,C++ MFC for latest v143 build toolsindividual components. - Create
Github accountif needed. - Setup
SSH key connectionfor your Github account. - Half-Life 2, Half-Life 2 Episode 1/2 or Portal game.
You need
steam_legacybranch for Half-Life 2 and episodes, as20th Anniversary Updatenot supported yet.
- Open Git bash (search in Start menu).
- Change directory to place where source code be located by typing:
cd <directory to place source>. - Clone repository by
git clone --recurse-submodules git@github.com:Source-Authors/Obsoletium.gitin Git bash. - Open Visual Studio 2022
<ARCH> Native Tools Command Prompt For VS2022shortcut (search in Start menu) where<ARCH>is CPU architecture you want to build for. Supported values arex86andx64.x64is experimental. - Run
create_<GAME_NAME>_dev_<ARCH>.batin opened command prompt where<GAME_NAME>is game to build,<ARCH>is same as in step above. See cloned repository directory tree for supported games. - Open
<GAME_NAME>_<ARCH>.sln. - Build by selecting
Buildmenu,Build Solutionsubmenu.
- Open Git bash (search in Start menu).
- Change directory to place where source code be located by typing:
cd <directory to place source>. - Clone repository by
git clone --recurse-submodules git@github.com:Source-Authors/Obsoletium.gitin Git bash. - Open Visual Studio 2022
<ARCH> Native Tools Command Prompt For VS2022shortcut (search in Start menu) where<ARCH>is CPU architecture you want to build for. Supported values arex86andx64.x64is experimental. - Run
create_hammer_<ARCH>.batin opened command prompt where<ARCH>is same as in step above. - Open
<GAME_NAME>_<ARCH>.sln. - Build by selecting
Buildmenu,Build Solutionsubmenu.
- Ensure you placed hl2 / episodic / portal game into
gamefolder near cloned repository. Your directory structure should look like this:
|
|-- game <directory with game>
|
|-- source <directory with cloned source repository>
- Open
<GAME_NAME>_<ARCH>.slnin source directory. - Set
launcher_mainprojectCommandproperty to$(SolutionDir)..\game\hl2.exe. - Set
launcher_mainprojectCommand Argumentsproperty to-dxlevel 85 -windowed. - Set
launcher_mainprojectWorking Directoryproperty to$(SolutionDir)..\game\. - Click on
Set as Startup Projectmenu forlauncher_mainproject. - Start debugging.
- Ensure you placed hl2 / episodic / portal game into
gamefolder near cloned repository. Your directory structure should look like this:
|
|-- game <directory with game>
|
|-- source <directory with cloned source repository>
- Open
<GAME_NAME>_<ARCH>.slnin source directory. - Choose
ReleaseConfiguration. - Build.
gamefolder contains the ready game.
- Ensure you placed hl2 / episodic / portal game into
gamefolder near cloned repository. Your directory structure should look like this:
|
|-- game <directory with game>
|
|-- source <directory with cloned source repository>
- Open
hammer_<ARCH>.sln. Appendx64\tobinin commands below for x64 Hammer. - Set
hammer_launcherprojectCommandproperty to$(SolutionDir)..\game\bin\hammer.exe. - Set
hammer_launcherprojectWorking Directoryproperty to$(SolutionDir)..\game\bin. - Click on
Set as Startup Projectmenu forhammer_launcherproject. - Start debugging.
If you found a bug, please file it at https://github.com/Source-Authors/obsolete-source-engine/issues.
PVS-Studio - static analyzer for C, C++, C#, and Java code.