GoldSrc: Difference between revisions
Chipsnapper2 (talk | contribs) |
(Update citations) |
||
(406 intermediate revisions by 35 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{LanguageBar}} | ||
| | {{gldsrc topicon}} | ||
{{ | {{Hierarchy}} | ||
{{ | {{Infobox engine | ||
''' | |title = GoldSrc | ||
|image = Hl engine logo.png | |||
|imagewidth = 128px | |||
|imagetooltip = "Powered by the Half-Life engine" logo used on some game boxarts. | |||
|image2 = Screenshot-Half-Life_Surface_Tension.png | |||
|imagetooltip2 = Screenshot in-game of {{hl1|1}}, using the GoldSrc Engine. | |||
|developer = [[Valve|Valve Corporation]] | |||
|releasedates = November 19, 1998 | |||
|codelang = [[WP:C++|C++]], [[WP:C_(programming language)|C]], [[WP:Assembly language|Assembly language]] | |||
|sdk = [[Half-Life SDK]] | |||
|platform = {{Win|1}}, {{Mac|1}}, {{Linux|1}}, {{xbox|1|nt=1}}, {{ps2|1}}<!-- only first-party games --> | |||
|website = | |||
|links = [https://github.com/ValveSoftware/halflife/ GitHub page]<br>(SDK v2.5 source code & bug reports)<br>[https://github.com/ValveSoftware/halflife/tree/steam_legacy SDK v2.4 on GitHub] ({{code|steam_legacy}} branch) <br>[https://twhl.info/wiki/page/category%3AGoldsource_Tutorials '''GoldSrc tutorials'''] on '''TWHL''' | |||
|license = [[WP:Proprietary software|Proprietary]] (source code available for non-commercial purposes) | |||
|previousengine = | |||
|nextengine = {{Src|2}} | |||
}} | |||
{{gldsrc|4}} (also known as {{gldsrc|bold|nt=0}}, and formerly just the {{gldsrc|bold|nt=2}}) is a 3D video game engine created by {{Valve|1}} in 1996. It was the driving force behind many famous games of the late 90s and early 00s, such as {{hl|1}}, {{tfc|1}}, {{cs|1}}, and {{dod|1}}. GoldSrc is a heavily modified version of the {{quake|1}} engine and runs on C++ (with some "C" code). GoldSrc and its level editor, {{hammer3|1|nt=6}}, were released by Valve for public use, making it the source of countless community-made modifications. | |||
GoldSrc was replaced by its successor, {{src|4.1}}, in 2004, which currently holds first place as the choice engine for Valve modders. Though GoldSrc is past its prime, many gamers and some third-party developers still seek to use it for mods and level design. | |||
== | The engine is actively being updated and maintained by Valve as of 2023, recently with the {{hl|1}}'s 25th-anniversary updates which increased the engine limits and fixed many bugs. | ||
As of August | [[File:Half-life shadows.jpeg|thumbnail|Screenshot in-game of {{hlbs|1}}, using stencil Shadows.]] | ||
The code can be found on [https://github.com/ValveSoftware/halflife?files=1 Valve's | |||
[[File:Cry of Fear Lake.png|thumbnail|Screenshot in-game of {{cof|1}}, which runs on a heavily modified version of GoldSrc.]] | |||
[[File:Counter-Strike Condition Zero - Screenshot 3.jpg|thumbnail|Screenshot in-game of {{cscz|1}}, using detail textures and higher-definition player models.]] | |||
[[File:Counter-Strike_%28Xbox%29_-_Screenshot_3.png|thumbnail|In-game screenshot of {{csXbox|1|nt=2}} on Xbox.]] | |||
==Features== | |||
{{todo|expand here or add links}} | |||
=== [[:Category:GoldSrc Programming|Renderer]] === | |||
GoldSrc has two in-game renderers [[Software renderer|Software Renderer]] and [[OpenGL]] (previously three as [[Direct3D|Direct3D 6]] support was removed in the 2013 SteamPipe Update) both renderers have differences. | |||
* '''Colored lighting''' - Quake simply had monotone lighting | |||
* '''Transparent textures''' - Glass can now be used in maps | |||
* '''Transparent Water''' | |||
* '''Water ripple''' | |||
* '''Water waves''' | |||
* '''Dynamic iris simulation''' - adjust screen brightness automatically. A feature similar to Source's [[HDR|HDR Rendering]]. {{csXbox|only}} | |||
* '''Texture Filtering''' - First introduced with [https://quake.fandom.com/wiki/GLQuake GLQuake], a version of {{Quake|1}} that runs on OpenGL. | |||
** '''Anisotropic filtering''' (16x by default) supported since the 2013 SteamPipe update. | |||
* '''Skeletal animation''' - allowing for more stable animation of models, compared to the vertex animation in Quake | |||
* '''Higher poly counts''' - GoldSrc allows for far more detailed models than Quake | |||
* '''[[Half-Life High Definition Content|HD models]]''' - Higher polygon and texture quality for in-game models. | |||
* '''[[Detail textures (GoldSrc)|Detailed textures]] ''' - Textures that are overlaid on a WAD texture to increase the perceived detail of the surface, without increasing texel size (which would result in using up more [[AllocBlock]]). Extensively used in {{dod|2}} since version 1.2 and {{cscz|2}}. | |||
{{bug|hidetested=1|Detail texture rendering has been broken since the 25th Anniversary update.}} | |||
==== Since 2013 SteamPipe Update==== | |||
* '''FBO renderer''' - A new method of rendering the game, which allows MSAA to work with GoldSrc engine. This also allows the game to run on fullscreen in a borderless window (which also makes Alt+Tab faster), and aspect ratio that are different from your monitors, for example, 4:3 on 16:9, will not be stretched to fill the black bars. | |||
{{note|You can disable the new FBO renderer using {{code|-nofbo}} command line, note that this will also disable MSAA.}} | |||
* '''MSAA [[anti-aliasing]]''' - GoldSrc now natively support anti-aliasing, specifically, MSAA 4X, which is enabled by default on most modern hardwares. This will reduce the amount of jagged edges/staircases effect on the geometry. | |||
* Support for '''Anisotropic filtering''' - Increases visual quality of textures at steep angles to the camera. GoldSrc uses 16x Aanisotropic filtering by default, can be adjusted using {{ent|gl_ansio}}{{sic}} console command. | |||
==== Since 25th Anniversary ==== | |||
* '''Widescreen "Hor+" FOV''' | |||
** Instead of cropping the image and reducing FOV when using widescreen, the image will be expanded. | |||
* '''Shaders support''' (OpenGL) | |||
** With shaders support, it also fix the issues with overbright lighting not working under OpenGL. | |||
* '''Dynamic Shadows''' | |||
{{note|This feature was originally from {{quake|4|nt=5}}. To enable Dynamic Shadows {{code|r_shadows}} must be set to {{code|1}}}} | |||
* '''[[Software renderer|Software Renderer]] support on {{Linux|1}}''' | |||
=== AI === | |||
* '''AI flocking''' - [[NPC]]s can group together, seen with [[monster_houndeye (GoldSrc)|Houndeyes]]. | |||
* '''Scripted sequences''' - Used extensively to tell Half-Life's story. | |||
* [[GoldSrc Bot|Player Bots]] - play multiplayer offline with bots. {{only|{{cscz}}{{csXbox}}}} | |||
=== Sound System === | |||
* Use [https://www.radgametools.com/miles.htm Miles Sound System] middleware (since 2001) | |||
** Used for in-game voice chat feature, and later for MP3 playback (MP3 playback previously undocumented and unused on WON version but later used in Steam version of GoldSrc since 2003). | |||
* Supports [[MP3]] (since 2003), [[WAV]] audio files, aswell as CD audio. | |||
* '''Hardware accelerated audio (A3D/EAX)''' - improves [[DSP]] sound effects (such as removing echo's buzzing noises), and add surround sounds support (Removed since 2013 SteamPipe update). | |||
** Requires Sound Blaster-compatible (or A3D-compatible) sound cards (but can be bypassed using workaround below). | |||
** While support for A3D/EAX was removed in most GoldSrc games since SteamPipe update (but can be restored using {{pcgw|Half-Life#MetaAudio|MetaAudio|icon=hide}}, which requires disabling {{Vac|1}} to work), there are some GoldSrc games that still support A3D/EAX. However, starting with Windows Vista or later, it requires {{Pcgw|Glossary:Sound_card#DirectSound_hardware_path|an workaround|icon=hide}} to enable A3D/EAX audio. | |||
=== UI === | |||
* '''[[VGUI]]''' - Introduced in 2000 (Half-Life update 1.1.0.0), and used for displaying scoreboard (replacing the old Opposing Force-styled scoreboard) and later Steam Tracker (a predecessor to "Friends"). | |||
** With VGUI and Tracker, it adds a in-game overlay (can be opened with F1) with two window called Half-Life Desktop and Tracker, allowing you to add/message friends or find servers to play. Tracker was replaced by Friends when Steam was launched in 2003, and eventually replaced by Steam Overlay in 2007. Most users at the time did not use Steam Beta and install Steam Tracker so players will see "Tracker Error: TrackerUI.dll invalid, not loading" appearing on the [[Developer Console]]. | |||
* '''[[VGUI2]]''' - Introduced in 2003 update (Steam), Valve's custom GUI interface mimics most of the Windows controls. This will allow the game to switch between the game and the menu quicker, without switching resolutions to 640x480, which adds delay. | |||
** In early versions of Half-Life, as well as older versions of Steam before mid-late 2000s or 2010s, changing skins in the Steam client will also affect the VGUI in Half-Life and all other GoldSrc games. | |||
=== Programming and Platforms === | |||
* GoldSrc supports various platforms, such as {{Win|3}}, {{mac|3}} and {{Linux|3}}, aswell as consoles ({{Ps2|1}}, {{xbox|1}}). | |||
*All, or most of the engine code written on C/C++ using Visual Studio 2010, and 2019 (since 25th anniversary) or later. | |||
=== Networking === | |||
* Support for both [[wikipedia:Local area network|LAN]]-based multiplayer and Internet-based multiplayer games | |||
* [https://partner.steamgames.com/doc/features/multiplayer/networking Steam Networking] support | |||
** Added with the release of {{hl|name}} 25th Anniversary Update. | |||
** Allows self-hosting using [https://partner.steamgames.com/doc/features/multiplayer/steamdatagramrelay Steam Datagram Relay], meaning users can easily create joinable servers without port forwarding. | |||
=== Tools === | |||
* {{hammer3|2}} (formerly Worldcraft) | |||
** WYSIWYG World editor | |||
** Create [[Brush|world brushes]] | |||
** Place [[NPC|AI NPCs]] | |||
** Place [[Tool textures (Source)|triggers, clip brushes]], logic, etc. | |||
** Allows level designer to hook up I/O between entities to control AI within the game | |||
** {{Note|While it's functional, it is recommend to use modern [[Valve_Hammer_Editor_(GoldSrc)#Hammer_alternatives|third-party alternatives]] (such as {{jack|1}}) instead.}} | |||
* {{hlmv|2|nt=1|linkto=gldsrc}}<!-- not sure if Goldsrc ver of HLMV should be listed here but Valve acquired it and later uses it on Source so keep it here for now. --> | |||
** Full [[model]] previewer | |||
** Rotate models in any direction | |||
** Set up hit boxes | |||
** View physics hull | |||
** View normals | |||
** Wireframe, shaded or textured view modes | |||
* [[StudioMDL (GoldSrc)|StudioMDL]] | |||
** Model compiler | |||
* [[QCSG]], [[QBSP2]], [[QRAD]], [[VIS]] | |||
** Map compilation tools (bsp, lighting and visibility) | |||
** {{Note|It is recommend to use ZHLT, VHLT and derivatives map compilation tool ([[HLCSG]], [[HLBSP]], [[HLVIS]], [[HLRAD]]) instead, as some of the tools are bugged, especially QRAD which requires {{code|[[light_environment_(GoldSrc)|light_environment]]}} on every [[PVS]].}} | |||
=== Other === | |||
* In-game advertisements ({{cs|2}}, removed since SteamPipe) - Introduced in 2007. | |||
==== Since 25th Anniversary ==== | |||
* '''Increased engine limits''' - Valve has increased engine limitations, allowing for more entities and detailed maps. | |||
*'''[[func_vehicle_(GoldSrc)|func_vehicle]] entity''' support from {{cs|4}} | |||
*'''Native {{Steamdeck|4}} support''' | |||
* '''[[Steam Input]] support''' - Steam Input support was added, which allows the game to support more controllers and buttons. VGUI menu can be navigated using the controller. | |||
== Versions and forks == | |||
{{Cleanup}} | |||
<!-- To edit the list of the branches, please visit the template page "Template:Goldsrc branches" instead. Or use the edit button shown near the template itself--> | |||
<center><small> [[Template:Goldsrc branches|Click here to edit this list.]] </small></center> | |||
{{Goldsrc branches}} | |||
== Half-Life SDK == | |||
{{main|Half-Life SDK}} | |||
{{todo|when were SDK 2.1, 2.2, and 2.3 released?}} | |||
As of August 2013, it is available on {{steamicon|4}} under the "Tools" section. With it comes {{hammer3|4.1|nt=4|linkto=3.x}}, the 3ds Max sources for many cut and retail NPCs as well as player and weapon models, tools for packing textures into [[WAD]]s, and detailed documentation on implementing baseline features such as voice chat into a [[mod]]. | |||
The full source code for Half-Life SDK (2.5), which contains changes from Half-Life 25th anniversary update, can be found on [https://github.com/ValveSoftware/halflife?files=1 Valve's GitHub Page]. Source code for previous version (SDK 2.4) can be found [https://github.com/ValveSoftware/halflife/tree/steam_legacy here]. | |||
{{note|{{hammer3|4.1|nt=5|linkto=3.x}} is the final GoldSrc-only editor released by Valve and can be downloaded separately, such as through the {{sven|4.1|addtext={{nbsp}}SDK}}.}} | |||
{{clr}} | |||
== Products using GoldSrc {{Table tools|Goldsrc_games}} ==<!-- DO NOT remove the underscore on this template, as it would break the edit, purge, etc... button completely --> | |||
This is the list of games that uses the {{gldsrc|4}} engine. | |||
<!-- To edit the list of the game, please visit the template page "Template:Goldsrc games" instead, then go to one of it's subpages there. Or use the edit button shown near the template itself--> | |||
=== Officially Licensed === | |||
<center><small> [[Template:Goldsrc games/Licensed|Click here to edit this list.]] </small></center> | |||
{{Goldsrc games/Licensed}} | |||
=== Modifications === | |||
{{todo|Document modifications once hosted on Valve's mod master server and what's currently on Steam to download.}} | |||
{{todo|Some of these mods had beta releases prior to their 1.0 release. We may want to document that too.}} | |||
<center><small> [[Template:Goldsrc games/Mods|Click here to edit this list.]] </small></center> | |||
{{Goldsrc games/Mods}} | |||
*See [[:Category:GoldSrc games|GoldSrc games category]] for more games, and for articles about the game which uses the GoldSrc engine. | |||
== Specifications == | |||
{{Engine Limits}} | |||
== Bugs and Limitations == | |||
{{update|Half-Life 25th Anniversary Update fixes a lot and breaks other stuff.}} | |||
Use [https://github.com/ValveSoftware/halflife/issues GitHub] in order to prevent duplicate or outdated bug reports at the wiki. | |||
{{Bug|only=goldsrc|Various GoldSrc non-standalone mods has been broken with the recent {{hl1|4}} update, as part of its 25th anniversary. Some of these games would crash on startup with Visual C++ error.<br> Other games like {{tfc|4}} was also affected, but appears to work almost perfectly fine aside from HUD scaling fixes were non-functional. And another one such as {{cs|4}}, which has been fixed to support the 25th anniversary update, may have other problems and issues that can crash the game. Additionally, mods that use custom OpenGL renderer (such as {{Paranoia|4}} (non-Xash3D version) and older version of {{cof|4}}, etc...) will be also crashed on startup aswell ([https://github.com/ValveSoftware/halflife/issues/3710 Issues #3710]).{{Workaround|To temporarily fix this, select the beta branch {{code|steam_legacy}} on {{hl1|1}} (and in some games such as {{cs|1}}) by going to Half-Life > Properties... > Betas > select {{code|steam_legacy}}. Once those games has been fixed, you can opt out by set the beta branch to "None".}}}} | |||
{{Bug|only=goldsrc|Overbright lighting ({{cmd|gl_overbright|1}}) is broken due to an [[OpenGL]] extension used for multi-texturing, which is required for the [[Detail textures (GoldSrc)|detail textures]] used by {{czero|4.1}}, {{dod|4.1}}, and some third-party mods. <br>This make the color less saturated and lighting much less brighter, as well as introduce chromatic aberration on brightly lit lightmaps. <br>The issue was fixed in the 25th anniversary update, which deprecated the {{code|gl_overbright 1}} in favor of {{code|gl_use_shaders 1}}. However, there are [https://github.com/ValveSoftware/halflife/issues/3424 more issues] that was yet to be fixed with the new overbright lighting.<br> This issue can be also found on [[Quake|GLQuake]], but for different reasons. {{workaround|To fix this for the older version of {{hl1|4}} ({{code|steam_legacy}} branch) and most standalone mods, see {{pcgw|Half-Life#OpenGL_overbright_lighting|Overbright lighting}} section in PCGamingWiki's Half-Life page for more information.{{Important|Please note that using DLL-based solutions in {{vac|4.1}}-protected multiplayer servers may result in a false positive ban. Use {{code|[[Command-Line Parameters|-insecure]]}} to disable VAC for local servers. This is not an issue for singleplayer, which is unaffected by VAC. Additionally, GPU driver hacks do not trigger VAC.}}}} | |||
{{note|Even though the overbright was properly fixed with the 25th anniversary update and with the November 19 hotfix patch, which fixes the brightness issues after enabling overbright, along with another one that [https://github.com/ValveSoftware/halflife/issues/3424#issuecomment-1822924828 fixed the underwater fog bug], models [https://github.com/ValveSoftware/halflife/issues/3424#issuecomment-1823797137 may not be affected] by the overbright lighting.}} | |||
}} | |||
{{Bug|only=goldsrc|On some systems running {{win7|4|nt=3}} or later, the engine may suffer from extremely low frame rates during gameplay, especially on Intel iGPUs. {{workaround|<ul><li>Set the game ({{file|hl|exe}}) to "'''High Priority'''" in [https://techcommunity.microsoft.com/t5/windows-11/how-to-run-task-manager-on-windows-11-6-ways/m-p/2701239 Task Manager].<li>{{pcgw|Half-Life#OpenGL_overbright_lighting|Disable multitexturing}}.}}}} | |||
{{Bug|only=goldsrc|Running any GoldSrc game other than {{hl|4}} over around 100-120FPS or higher can cause issues with movable objects (and prior to [https://steamcommunity.com/games/70/announcements/detail/1586880891220596672 October 8, 2019 update], NPC turn rate), being slower or faster. Player movements in {{cs|4}}, {{cscz|4}} and {{czds|4}}, after jumping, will be much slower than normal for few seconds. {{Note|NPC turn rate bug will remains existed on most older, non-standalone mods (which was made on a older version of GoldSrc/HL SDK) when loaded on current version of HL1 (or other GoldSrc games) that have this bug fixed unless the dlls file ({{code|hl.dll}} and {{code|client.dll}}) on the mod folder itself was renamed. But keep in mind that this method may breaks some mods and cause it to crash, or made several new additions such as new weapons, new NPCs, etc... from the mod stops working.}}}} | |||
{{Important|<!--not a bug-->Creative EAX and Aureal A3D Audio are no longer supported since [[SteamPipe]] update in 2013. This also removes support for surround sound, and drastically impacts how certain [[DSP]] effects sound (such as buzzing noises on DSP's Weirdo 1-3). [https://github.com/ValveSoftware/halflife/issues/38 A feature request about restoring EAX/A3D sound can be found at GitHub] (issue #38).{{workaround|Use MetaAudio; see the {{pcgw|Half-Life#Audio|Audio}} section on PCGamingWiki's Half-Life page for more information.{{Important|Please note that using MetaAudio in {{vac|4.1}}-protected multiplayer servers may result in a false positive ban. Use {{code|[[Command-Line Parameters|-insecure]]}} to disable VAC for local servers. This is not an issue for singleplayer, which is unaffected by VAC.}}}}}} | |||
{{Important|<!--not a bug-->[[OpenGL]] mode is somewhat different from [[software mode]]. Furthermore, the wave effect on water does not work with software renderer. See [https://www.youtube.com/watch?v=9jwDqjFaL4c patbytes's "Half-Life - A Look at Water" on YouTube]. Issue [https://github.com/ValveSoftware/halflife/issues/2165 2165].}} | |||
== Trivia == | |||
* The term "GoldSrc" comes from development of the [[Source]] engine. A few months before the release of {{hl1|1}}, the Half-Life engine's source code was split into two branches: {{mono|Src}} and {{mono|GoldSrc}}. The {{mono|GoldSrc}} branch was the [[Wikipedia:Gold master|gold master]] version of the codebase, and would be used for the proper release of the game. The {{mono|Src}} branch, comparatively, would be continually iterated upon, adding and changing features for use in [[Half-Life 2|the sequel]], with the term "Source Engine" eventually being picked up by marketing.{{cite|1}} | |||
== See also == | == See also == | ||
* [[Wikipedia:GoldSrc]] | * For information about converting GoldSrc content to the Source engine, see [[Porting GoldSrc content (maps, models, etc.) to Source]] | ||
* [[w:GoldSrc|GoldSrc]] on Wikipedia | |||
* [[Half-Life SDK|GoldSrc SDK (Half-Life SDK) Documentation]] | |||
* [[GoldSrc SteamPipe Directories]] | |||
== External links == | |||
* [https://github.com/ValveSoftware/halflife/ Source code + GitHub Issues] - bug reports and the GoldSrc source code can be found here. | |||
{{References|1= | |||
{{citation|cite id = 1|last=Johnson|first=Erik|archive-url = https://developer.valvesoftware.com/w/index.php?title=User_talk:Erik_Johnson&oldid=10088#GoldSource|title = User talk:Erik Johnson|date=1 September 2005l, 12:53|url=https://developer.valvesoftware.com/w/index.php?title=User_talk:Erik_Johnson#GoldSource|website=Valve Developer Community|access-date=31 July, 2025}} | |||
{{citation|cite id = 2|title=Half-Life 25th Anniversary Update|url=https://store.steampowered.com/news/app/70/view/6941797379568863069|website=Steam|date=17 November, 2023|access-date=31 July, 2025}} | |||
{{citation|cite id = 3|title=Relation between Paranoia & COF|url=https://developer.valvesoftware.com/wiki/Talk:Cry_of_Fear#PARANOIA_-%3E_Cry_of_Fear|website=Valve Developer Community|date=19 Feb 2024|access-date=31 July, 2025}} | |||
}}{{Gs-branch-navbox}} | |||
[[Category:Game engines]] | |||
[[Category: | [[Category:Valve]] |
Latest revision as of 16:36, 31 July 2025
(SDK v2.5 source code & bug reports)
SDK v2.4 on GitHub (steam_legacy branch)
GoldSrc tutorials on TWHL
GoldSrc (also known as GoldSource, and formerly just the Half-Life Engine) is a 3D video game engine created by Valve in 1996. It was the driving force behind many famous games of the late 90s and early 00s, such as Half-Life, Team Fortress Classic, Counter-Strike, and Day of Defeat. GoldSrc is a heavily modified version of the Quake engine and runs on C++ (with some "C" code). GoldSrc and its level editor, Valve Hammer Editor, were released by Valve for public use, making it the source of countless community-made modifications.
GoldSrc was replaced by its successor, Source, in 2004, which currently holds first place as the choice engine for Valve modders. Though GoldSrc is past its prime, many gamers and some third-party developers still seek to use it for mods and level design.
The engine is actively being updated and maintained by Valve as of 2023, recently with the Half-Life's 25th-anniversary updates which increased the engine limits and fixed many bugs.




Features
Renderer
GoldSrc has two in-game renderers Software Renderer and OpenGL (previously three as Direct3D 6 support was removed in the 2013 SteamPipe Update) both renderers have differences.
- Colored lighting - Quake simply had monotone lighting
- Transparent textures - Glass can now be used in maps
- Transparent Water
- Water ripple
- Water waves
- Dynamic iris simulation - adjust screen brightness automatically. A feature similar to Source's HDR Rendering. (only in
)
- Texture Filtering - First introduced with GLQuake, a version of Quake that runs on OpenGL.
- Anisotropic filtering (16x by default) supported since the 2013 SteamPipe update.
- Skeletal animation - allowing for more stable animation of models, compared to the vertex animation in Quake
- Higher poly counts - GoldSrc allows for far more detailed models than Quake
- HD models - Higher polygon and texture quality for in-game models.
- Detailed textures - Textures that are overlaid on a WAD texture to increase the perceived detail of the surface, without increasing texel size (which would result in using up more AllocBlock). Extensively used in
Day of Defeat since version 1.2 and
Counter-Strike: Condition Zero.

Since 2013 SteamPipe Update
- FBO renderer - A new method of rendering the game, which allows MSAA to work with GoldSrc engine. This also allows the game to run on fullscreen in a borderless window (which also makes Alt+Tab faster), and aspect ratio that are different from your monitors, for example, 4:3 on 16:9, will not be stretched to fill the black bars.

- MSAA anti-aliasing - GoldSrc now natively support anti-aliasing, specifically, MSAA 4X, which is enabled by default on most modern hardwares. This will reduce the amount of jagged edges/staircases effect on the geometry.
- Support for Anisotropic filtering - Increases visual quality of textures at steep angles to the camera. GoldSrc uses 16x Aanisotropic filtering by default, can be adjusted using gl_ansio[sic] console command.
Since 25th Anniversary
- Widescreen "Hor+" FOV
- Instead of cropping the image and reducing FOV when using widescreen, the image will be expanded.
- Shaders support (OpenGL)
- With shaders support, it also fix the issues with overbright lighting not working under OpenGL.
- Dynamic Shadows


- Software Renderer support on Linux
AI
- AI flocking - NPCs can group together, seen with Houndeyes.
- Scripted sequences - Used extensively to tell Half-Life's story.
- Player Bots - play multiplayer offline with bots. (only in
)
Sound System
- Use Miles Sound System middleware (since 2001)
- Used for in-game voice chat feature, and later for MP3 playback (MP3 playback previously undocumented and unused on WON version but later used in Steam version of GoldSrc since 2003).
- Supports MP3 (since 2003), WAV audio files, aswell as CD audio.
- Hardware accelerated audio (A3D/EAX) - improves DSP sound effects (such as removing echo's buzzing noises), and add surround sounds support (Removed since 2013 SteamPipe update).
- Requires Sound Blaster-compatible (or A3D-compatible) sound cards (but can be bypassed using workaround below).
- While support for A3D/EAX was removed in most GoldSrc games since SteamPipe update (but can be restored using MetaAudio, which requires disabling VAC to work), there are some GoldSrc games that still support A3D/EAX. However, starting with Windows Vista or later, it requires an workaround to enable A3D/EAX audio.
UI
- VGUI - Introduced in 2000 (Half-Life update 1.1.0.0), and used for displaying scoreboard (replacing the old Opposing Force-styled scoreboard) and later Steam Tracker (a predecessor to "Friends").
- With VGUI and Tracker, it adds a in-game overlay (can be opened with F1) with two window called Half-Life Desktop and Tracker, allowing you to add/message friends or find servers to play. Tracker was replaced by Friends when Steam was launched in 2003, and eventually replaced by Steam Overlay in 2007. Most users at the time did not use Steam Beta and install Steam Tracker so players will see "Tracker Error: TrackerUI.dll invalid, not loading" appearing on the Developer Console.
- VGUI2 - Introduced in 2003 update (Steam), Valve's custom GUI interface mimics most of the Windows controls. This will allow the game to switch between the game and the menu quicker, without switching resolutions to 640x480, which adds delay.
- In early versions of Half-Life, as well as older versions of Steam before mid-late 2000s or 2010s, changing skins in the Steam client will also affect the VGUI in Half-Life and all other GoldSrc games.
Programming and Platforms
- GoldSrc supports various platforms, such as Windows, macOS and Linux, aswell as consoles (PlayStation 2, Original Xbox).
- All, or most of the engine code written on C/C++ using Visual Studio 2010, and 2019 (since 25th anniversary) or later.
Networking
- Support for both LAN-based multiplayer and Internet-based multiplayer games
- Steam Networking support
- Added with the release of Half-Life 25th Anniversary Update.
- Allows self-hosting using Steam Datagram Relay, meaning users can easily create joinable servers without port forwarding.
Tools
Hammer 3.x (formerly Worldcraft)
- WYSIWYG World editor
- Create world brushes
- Place AI NPCs
- Place triggers, clip brushes, logic, etc.
- Allows level designer to hook up I/O between entities to control AI within the game
Note:While it's functional, it is recommend to use modern third-party alternatives (such as J.A.C.K.) instead.
Half-Life Model Viewer
- Full model previewer
- Rotate models in any direction
- Set up hit boxes
- View physics hull
- View normals
- Wireframe, shaded or textured view modes
- StudioMDL
- Model compiler
- QCSG, QBSP2, QRAD, VIS
- Map compilation tools (bsp, lighting and visibility)
Other
- In-game advertisements (
Counter-Strike, removed since SteamPipe) - Introduced in 2007.
Since 25th Anniversary
- Increased engine limits - Valve has increased engine limitations, allowing for more entities and detailed maps.
- func_vehicle entity support from
Counter-Strike
- Native
Steam Deck support
- Steam Input support - Steam Input support was added, which allows the game to support more controllers and buttons. VGUI menu can be navigated using the controller.
Versions and forks

For help, see the VDC Editing Help and Wikipedia cleanup process. Also, remember to check for any notes left by the tagger at this article's talk page.
Year | Version / Game | Company | Features | Base | Notes |
---|---|---|---|---|---|
1998 - 1999 | v1.0.x.x/SDK v1 Old WON |
![]() |
Per-texture palettes Colored lighting Skeletal Models Support for HW accelerated audio (EAX/A3D) |
Quake (id Tech 2) | v30 .bsp, v10 .mdl |
2000 - 2001 | v1.1.0.x/SDK v2.0 New WON Counter-Strike 1.0 - 1.3 |
![]() |
VGUI Prediction-based Networking Miles Sound System (since 2001) |
Old WON | v30 .bsp, v10 .mdl VGUI was introduced with May 25, 2000 update (1.1.0.0), used for new Scoreboard (replacing old Opposing Force/text-based scoreboard), and the console & chat font was also changed to be slightly bigger (plus removing the orange gradient on the font). The netcode (originally from QuakeWorld), has been replaced or significantly updated in 2001, adding prediction-based networking. |
2002 | v1.1.0.9-v1.1.1.0/SDK v2.0 v1.0.1.4 (Steam Beta) New WON & Steam Beta Counter-Strike 1.4 & 1.5 Day of Defeat Beta 1.3 |
![]() |
VGUI2 (since 2002) Steam Beta/Tracker (optional, since 2002) VAC 1.0 |
New WON | v30 .bsp, v10 .mdl In 2002, the late WON build around 1.1.0.9 was the first version to support Steam Beta (and Tracker). Most users at the time did not use Steam Beta and install Steam Tracker so players will see "Tracker Error: TrackerUI.dll invalid, not loading", however user was able to open Half-Life Desktop overlay by pressing F1, providing limited functionality (Resume and Quit game option only) for those who did not have Steam Beta installed. VGUI2 was also introduced at the same time with Steam Beta, and used for Tracker feature aswell. |
2001 (leak)[Clarify] | Dreamcast | Captivation Digital Laboratories![]() |
Compressed model textures | v1.0.1.3/SDK v1 | v30 .bsp, v11 .mdl |
2001 | PlayStation 2 | ![]() |
LOD models | Dreamcast[citation needed] | v40 .bs2, v10 .dol |
2002 | 007: Nightfire | ![]() |
Direct3D 8 renderer MSAA support |
v1.1.0.x/SDK v2.0 (New WON)[citation needed] (For PC) | v42 .bsp, v14 .mdl Console version uses custom in-house engine while PC version uses heavily modified GoldSrc. |
2003 | Xbox | ![]() ![]() |
Improved lighting Dynamic iris simulation (HDR-like brightness adjust) |
Counter-Strike: Condition Zero engine branch earlier version[citation needed] | v30 .bsp, v11 .mdl, .sxwad format instead of wad |
2003 | Counter-Strike Neo engine branch | Namco | Heavily modified OpenGL Renderer Native linux support |
v1.1.x.x/SDK v2.0![]() Counter-Strike: Condition Zero engine branch (ver.2)[citation needed] |
v30 .bsp, v10 .mdl [confirm] |
2003 | Day of Defeat | ![]() |
Widescreen resolution support | v1.1.x.x/SDK v2.0 | v30 .bsp, v10 .mdl |
2003 | Steam | ![]() ![]() ![]() ![]() |
Detail textures (since 2004) Steamworks (replaces WON) Steam Friends VGUI on Main menu & Console VAC 2.0 (since 2005) |
v1.1.x.x/SDK v2.0[confirm] | v30 .bsp, v10 .mdl [confirm] Starting with this version, game files are no longer packaged inside .pak files, and instead either stored directly on filesystem, or stored in .gcf files prior to SteamPipe. This version is compatible with most games/mods built on WON/Retail version (many speedrunners often use 2001 WON client/server.dll on 2005 version of Half-Life). ![]() The first version of Friends no longer works as the old Steam server for this version was offline, while Friends v2 still partially works with latest Steam client, but buggy (message will only shown on Steam client and will not appear in-game). |
2013 | 2013 SteamPipe (SDK 2.4) | ![]() |
Linux and Mac support FBO renderer MSAA (4X) support Removed support for EAX/A3D surround sound and Direct3D 6 renderer Removed support for Quake MDLs (2019). |
Steam | v30 .bsp, v10 .mdl GCF has been removed and game files are now placed directly on the filesystem after SteamPipe. |
2013 | ![]() |
Team Psykskallar | Improved Paranoia's OpenGL Renderer | Steam/![]() |
v30 .bsp, v10 .mdl [confirm] Heavily modified, and based on pre-SteamPipe version. |
2016 | ![]() |
Sven Co-op Team | AngelScript FMOD audio (restores EAX/surround sound features) Extended engine limits |
2013 SteamPipe | v30 .bsp, v10 .mdl Significantly modified with extended engine limits and scripting using AngelScript. |
2023 | 25th anniversary, aka HL25 (SDK 2.5) | ![]() |
Increased engine limit Steam Input Shaders Steam Networking High-DPI support for VGUI Widescreen (Hor+) FOV WebM |
2013 SteamPipe | v30 .bsp, v10 .mdl Introduced with Half-Life 25th Anniversary Update, fixing various bugs and increased engine limit. The HLSDK was later updated with code introduced with said update. |
Half-Life SDK
As of August 2013, it is available on Steam under the "Tools" section. With it comes
Hammer 3.4, the 3ds Max sources for many cut and retail NPCs as well as player and weapon models, tools for packing textures into WADs, and detailed documentation on implementing baseline features such as voice chat into a mod.
The full source code for Half-Life SDK (2.5), which contains changes from Half-Life 25th anniversary update, can be found on Valve's GitHub Page. Source code for previous version (SDK 2.4) can be found here.



Products using GoldSrc 



This is the list of games that uses the GoldSrc engine.
Officially Licensed
Year | Title | Developer(s) | Publisher(s) | Platforms | Notes |
---|---|---|---|---|---|
1998 | ![]() |
Valve | Sierra Entertainment (retail) Valve (digital) |
PC: Windows, Mac, Linux Console(s): PlayStation 2, Dreamcast (cancelled) |
First official game to use the GoldSrc engine. The ![]() The game received a major update in November 17, 2023, for it's 25th anniversary, which fixes tons of bugs, added new maps and content and increased engine limits. |
1999 | ![]() |
Gearbox Software, Valve | PC: Windows, Mac, Linux | First official expansion for ![]() |
|
![]() |
Valve | PC: Windows, Mac, Linux | Remake of Quake mod, ![]() |
||
2000 | ![]() |
Valve | Sierra Entertainment (retail) Valve (digital) |
PC: Windows, Mac, Linux | Originally was an Half-Life mod, it was later available to purchase separately from Half-Life. The game later become popular when it was released and kick-start several tournaments involving Counter-Strike games. |
![]() |
Rewolf Entertainment | Sierra Entertainment | PC: Windows | ||
![]() |
Valve | Valve | PC: Windows, Mac, Linux | ||
2001 | ![]() |
PC: Windows, Mac, Linux | |||
![]() |
Gearbox Software, Valve | Sierra Entertainment (retail) Valve (digital) |
PC: Windows, Mac, Linux Console(s): Dreamcast (cancelled) |
Second official expansion to the original Half-Life, as well was set hours earlier and during the event of Half-Life. Players play as Barney Calhoun, who later returned in Half-Life 2 series. | |
![]() |
Gearbox Software | Sierra Entertainment | Console(s): PlayStation 2 | Half-Life last expansion, exclusive to PlayStation 2. An unofficial port of Half-Life Decay for PC developed by Hoaxer, was released in 2008. | |
![]() |
Gearbox Software (PC) | Electronic Arts | PC: Windows, Mac (PowerPC) | Highly modified engine with MSAA support (up to 8X) and Direct3D 8 (DX8). The console version was developed by Eurocom and uses an entirely different engine. Is the only GoldSrc game to be ported to PowerPC-based Mac (Half-Life port to PPC Mac was cancelled). |
|
2003 | ![]() |
Valve | Activision, Valve (digital) | PC: Windows, Mac, Linux | |
![]() |
Ritual Entertainment, Turtle Rock Studios | Xbox Game Studios (formerly Microsoft Studios) | Console(s): Original Xbox | ||
![]() |
Namco | Namco | PC (Arcade) | ||
2004 | ![]() ![]() |
Valve, Ritual Entertainment, Gearbox Software, Turtle Rock Studios | Sierra Entertainment, Valve (digital) | PC: Windows, Mac, Linux | Last Valve game to be developed on GoldSrc engine (CS Online and Nexon Studio does not count). |
2008 | ![]() |
Valve, Nexon | Nexon | PC: Windows | Free to play game based off ![]() This version doesn't require Steam, and is only available in Asia. The console commands has been restricted to only some commands to prevent cheating and other exploits. |
2012 (Mod) 2013 (Steam) |
![]() |
Team Psykskallar | Team Psykskallar | PC: Windows | Runs on older (pre-Steampipe), but highly modified version of GoldSrc (Steam 2003-2012, while using Paranoia OpenGL renderer), featuring better graphics. Standalone mod. |
2014 | ![]() |
Valve, Nexon | Nexon | PC: Windows | Last officially licensed game to use the GoldSrc engine. Worldwide (America, Europe) version of ![]() |
1999 (Mod) 2016 (Steam) |
![]() |
Sven Co-op Team | Sven Co-op Team | PC: Windows, Mac, Linux | GoldSrc was later forked into Svengine since version 5.0, which was slightly different than GoldSrc, and has support for Hor+ FOV, better audio via FMOD, and so on..., as well as increased engine limitations. Sven Co-op is a co-op mod that allows you to play ![]() |
Year | Title | Developer(s) | Publisher(s) | Platforms | Notes |
Modifications
Year | Title | Developer(s) | Platforms | Notes |
---|---|---|---|---|
1999 | USS Darkstar | Black Widow Games | PC: Windows | |
Redemption | Maverick Developments | PC: Windows | An updated version, Absolute Redemption, was released in 2000. | |
2000 | They Hunger | Black Widow Games | PC: Windows | |
Wasteland Half-Life | Wasteland HL Team | PC: Windows | ||
Adrenaline Gamer | Adrenaline Gamer Team | PC: Windows | ||
Firearms | The Firearms Team | PC: Windows | ||
![]() |
Maverick Developments | PC: Windows | ||
Front Line Force | Front Line Force Team | PC: Windows | ||
Heart of Evil | Heart of Evil Team | PC: Windows | ||
2001 | BuzzyBots | The BuzzyBots Team | PC: Windows | |
Vampire Slayer | Vampire Slayer Team | PC: Windows | ||
2002 | Desert Crisis | DC Team | PC: Windows | |
![]() |
Unknown Worlds | PC: Windows | ||
The Specialists | The Specialists Team | PC: Windows | ||
Earth's Special Forces | Earth's Special Forces Team | PC: Windows | ||
2003 | The Wastes | The Wastes Team | PC: Windows | Successor to Wasteland Half-Life. Project was revived and released in 2018 on ![]() ![]() |
Action Half-Life | Akimbo Team Productions | PC: Windows | ||
2004 | Science and Industry | Science and Industry Team | PC: Windows | |
The Trenches | The Trenches Team | PC: Windows | ||
2005 | Zombie Panic! | Zombie Panic Team | PC: Windows | |
2006 | The Battle Grounds | Battle Grounds Team | PC: Windows | |
Digital Paintball | Digital Paintball Team | PC: Windows | ||
2007 | ![]() |
Paranoia Team | PC: Windows | Features modified OpenGL renderer for better graphics, downside of this is that the custom OpenGL renderer file "opengl32.dll" may get deleted by the game when launching any GoldSrc game outside Paranoia or prevents the player from playing multiplayer (due to ![]() |
2015 | Headcrab Frenzy! | Crystice Softworks | PC: Windows, Linux | |
2020 | Halfquake Trilogy | Philipp Lehner | PC: Windows | |
Digital Paintball Redux | DPB Redux Dev Team | PC: Windows | ||
![]() |
Cobalt-57 | PC: Windows | ||
2023 | ![]() |
MMod Team | PC: Windows, Linux | |
2024 | Half-Life: ESCAPE 2.0 | RETROtastisch | PC: Windows | |
Delta Particles | Yuri Epifantsev | PC: Windows | ||
Year | Title | Developer(s) | Platforms | Notes |
- See GoldSrc games category for more games, and for articles about the game which uses the GoldSrc engine.
Specifications
Limits | GoldSrc Pre-25th | GoldSrc Post-25th | ![]() |
![]() |
---|---|---|---|---|
Maximum number of dynamic sound channels | 8 | 32 | 64 | N/A |
Default max number of server entities (MAX_EDICTS) | 900 | 1200 | 600 - 8192 | 8192 |
Absolute max number of server entities (via liblist.gam edits) | 2048 | 2048 | 8192 | N/A |
Maximum number of temporary entities (MAX_TEMPENTS) | 500 | N/A | 300 - 2048 | N/A |
Maximum number of particles (MAX_PARTICLES) | 4096 | N/A | 1024 - 131072 | N/A |
Maximum number of beams (MAX_BEAMS) | 64 | N/A | 64 - 512 | 256 |
Maximum number of visible entities in the package (MAX_VISIBLE_PACKET) | 256 | 1024 | 2048 | N/A |
Maximum number of pre-cacheable models and sprites (MAX_MODELS) | 512 | N/A | 1024 (4096 in FWGS) | 8192 |
Maximum number of pre-cached sounds (MAX_SOUNDS) | 512 | N/A | 2048 | 4096 |
Maximum number of entries to read sentences made up of sentences (MAX_SENTENCES) | 1536 | 2048 | 4096 | N/A |
Maximum number of user messages (MAX_USER_MESSAGES) | 128 | N/A | 191 | N/A |
Max number of loaded textures (MAX_TEXTURES) | 2048 | N/A | 4096 (8192 in FWGS) | N/A |
Max number of GL textures (MAX_GLTEXTURES) | 4800 | 10000 | 4096 (8192 in FWGS) | N/A |
Number of messages titles.txt (MAX_MESSAGES) | 1024 | N/A | 2048 | N/A |
Maximum size of indexed textures | 512х512 | 512x512 | 8192х8192 | N/A |
Maximum size of full color textures | 512х512 | 512x512 | 8192х8192 | N/A |
Maximum number of models on the map (MAX_MAP_MODELS) | 256 | N/A | 768 (1024 in FWGS) | 4096 |
Maximum number of map leafs (MAX_MAP_LEAFS) | 8192 | N/A | 32767 | 65536 |
Maximum number of entities per packet (MAX_PACKET_ENTITIES) | 256 | 1024 | 256 | 512 |
Maximum number of spans (software renderer geometry limit) | 3000 | 6000 | N/A | Removed |
Maximum number of surfaces (software renderer geometry limit) | 2000 | 4000 | N/A | Removed |
Maximum number of edges (software renderer geometry limit) | 7200 | 14400 | N/A | Removed |
Bugs and Limitations

Use GitHub in order to prevent duplicate or outdated bug reports at the wiki.


Other games like








This make the color less saturated and lighting much less brighter, as well as introduce chromatic aberration on brightly lit lightmaps.
The issue was fixed in the 25th anniversary update, which deprecated the gl_overbright 1 in favor of gl_use_shaders 1. However, there are more issues that was yet to be fixed with the new overbright lighting.
This issue can be also found on GLQuake, but for different reasons.







- Set the game (
hl.exe
) to "High Priority" in Task Manager. Disable multitexturing.










Trivia
- The term "GoldSrc" comes from development of the Source engine. A few months before the release of Half-Life, the Half-Life engine's source code was split into two branches: Src and GoldSrc. The GoldSrc branch was the gold master version of the codebase, and would be used for the proper release of the game. The Src branch, comparatively, would be continually iterated upon, adding and changing features for use in the sequel, with the term "Source Engine" eventually being picked up by marketing.[1]
See also
- For information about converting GoldSrc content to the Source engine, see Porting GoldSrc content (maps, models, etc.) to Source
- GoldSrc on Wikipedia
- GoldSrc SDK (Half-Life SDK) Documentation
- GoldSrc SteamPipe Directories
External links
- Source code + GitHub Issues - bug reports and the GoldSrc source code can be found here.
References
References | ||||||
---|---|---|---|---|---|---|
|