Difference between revisions of "GoldSrc"
(Engine navbox looks bit weird here and cluttered with tons of forks in tiny box so moved to bottom to make it look better.) |
|||
Line 1: | Line 1: | ||
− | |||
{{Hierarchy}} | {{Hierarchy}} | ||
Latest revision as of 11:36, 4 May 2024
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++. 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.
![](/w/images/thumb/e/e4/Screenshot-Half-Life_Surface_Tension.png/300px-Screenshot-Half-Life_Surface_Tension.png)
![Half-Life](/w/images/thumb/a/a0/Hl_icon.png/16px-Hl_icon.png)
![](/w/images/thumb/f/fc/Half-life_shadows.jpeg/300px-Half-life_shadows.jpeg)
![Half-Life](/w/images/thumb/a/a0/Hl_icon.png/16px-Hl_icon.png)
![](/w/images/thumb/4/43/Cry_of_Fear_Lake.png/300px-Cry_of_Fear_Lake.png)
![Cry of Fear](/w/images/thumb/9/9d/Cof_icon.png/16px-Cof_icon.png)
![](/w/images/thumb/a/a4/Counter-Strike_Condition_Zero_-_Screenshot_3.jpg/300px-Counter-Strike_Condition_Zero_-_Screenshot_3.jpg)
![Counter-Strike: Condition Zero](/w/images/thumb/9/9e/Cscz_icon.png/16px-Cscz_icon.png)
![](/w/images/thumb/9/92/Counter-Strike_%28Xbox%29_-_Screenshot_3.png/300px-Counter-Strike_%28Xbox%29_-_Screenshot_3.png)
![Counter-Strike (Xbox)](/w/images/thumb/3/31/Csxbox-16px.png/32px-Csxbox-16px.png)
Contents
Features
![Blank image.png](/w/images/b/ba/Blank_image.png)
- AI flocking - NPCs can group together, seen with Houndeyes
- 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
- Scripted sequences - Used extensively to tell Half-Life's story
- Player Bots (only in
)
- A3D/EAX hardware accelerated audio - improves DSP sound effects (such as removing buzzing noises from echo), and add surround sounds support (Removed since 2013 SteamPipe update).
Since 2003 Steam update
- VGUI2 - Valve's custom GUI interface mimics most of the Windows controls.
Since 2013 SteamPipe Update
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.
Renderer
GoldSrc has two in-game renderers Software Renderer and OpenGL (previously three as Direct3D 7 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 - Quake simply Water ripple
- Water waves
- Dynamic iris simulation - similar to HDR Rendering (only in
)
- Detailed textures (only in
)
- Texture Filtering - Quake (GLQuake) simply Texture Filtering
- HD models
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, 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.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
-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.
Since 25th Anniversary
- Stencil Shadows
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
![Quake](/w/images/thumb/3/3b/Quake1-16px.png/15px-Quake1-16px.png)
r_shadows
must be set to 1
- Software Renderer support on Linux
Versions and forks
![Blank image.png](/w/images/b/ba/Blank_image.png)
![Blank image.png](/w/images/b/ba/Blank_image.png)
Year | Version | Company | Features | Base | Notes |
---|---|---|---|---|---|
1998 [Clarify] | v1.0.x.x/SDK v1 | ![]() |
Per-texture palettes, Coloured lighting | Quake (id Tech 2) | v30 .bsp, v10 .mdl |
1998[Clarify] | v1.1.x.x/SDK v2.0 | ![]() |
VGUI | v1.0.x.x/SDK v1 | v30 .bsp, v10 .mdl |
2001 (leak)[Clarify] | Dreamcast | ![]() |
Compressed model textures | v1.1.x.x/SDK v2.0 | v30 .bsp, v11 .mdl |
2002 | 007 Nightfire | ![]() |
Direct3D 8 renderer MSAA support |
v1.1.x.x/SDK v2.0 (For PC) Modified id Tech 3 (For consoles)[citation needed] |
v42 .bsp, v14 .mdl |
2003 | PlayStation 2 | ![]() |
LOD models | Dreamcast | v40 .bs2, v10 .dol |
2003 | Xbox | ![]() |
Improved lighting | Counter-Strike: Condition Zero engine branch earlier version | 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) |
v30 .bsp, v10 .mdl [confirm] |
2003 | Steam | ![]() |
VGUI2 | v1.1.x.x/SDK v2.0 | v30 .bsp, v10 .mdl |
2004 | Counter-Strike: Condition Zero engine branch | ![]() ![]() ![]() ![]() |
Player Bots Detail textures |
v1.1.x.x/SDK v2.0[confirm] | v30 .bsp, v10 .mdl [confirm] |
2007[Clarify] | ![]() |
Paranoia Team | New OpenGL Renderer | Counter-Strike: Condition Zero engine branch | v30 .bsp, v10 .mdl [confirm] |
2013 | ![]() |
Team Psykskallar | Improved paranoia's OpenGL Renderer | ![]() |
v30 .bsp, v10 .mdl [confirm] |
2013 | 2013 SteamPipe (SDK 2.4) | ![]() |
Linux and Mac support MSAA (4X) support Removed support for EAX/A3D surround sound and Direct3D 7 renderer |
Steam | v30 .bsp, v10 .mdl |
2016 | ![]() |
Sven Co-op Team | AngelScript FMOD audio (restores EAX/surround sound features) Extended engine limits |
2013 SteamPipe | v30 .bsp, v10 .mdl |
2023 | 25th anniversary (SDK 2.5) | ![]() |
Shaders | 2013 SteamPipe | v30 .bsp, v10 .mdl |
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 the latest version of the SDK can be found on Valve's Github Page.
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
![Hammer 3.x](/w/images/thumb/d/da/Icon-Hammer_3.x.png/16px-Icon-Hammer_3.x.png)
![Sven Co-op](/w/images/thumb/1/13/Sven-16px.png/16px-Sven-16px.png)
Products using GoldSrc ![View](/w/images/thumb/b/b1/Icon-visibility-filled.png/12px-Icon-visibility-filled.png)
![Discuss](/w/images/thumb/d/d7/Icon-chat.png/12px-Icon-chat.png)
![Edit template](/w/images/thumb/b/b0/Icon-edit-filled.png/12px-Icon-edit-filled.png)
![Click to "Purge" this page to reload this template. Use this if the template has been recently edited. Purge](/w/images/thumb/4/44/Icon-deblur.png/12px-Icon-deblur.png)
Year | Title | Developer(s) | Publisher(s) | Platforms | Notes |
---|---|---|---|---|---|
1998 |
![]() |
Valve | Sierra Entertainment (retail) Valve (digital) |
PC: Windows, Mac, Linux Console(s): ![]() ![]() |
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, ![]() |
||
![]() |
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..., aswell as increased engine limitations. Sven Co-op is a co-op mod that allows you to play ![]() |
|
2000 |
![]() |
Valve | Sierra Entertainment (retail) Valve (digital) |
PC: Windows, Mac, Linux | Originally was an Half-Life mod, it was later available to purchase seperately from Half-Life. The game later become popular when it was released and kickstart 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): ![]() ![]() |
Second official expansion to the original Half-Life, aswell was set hours earlier and during the event of Half-Life. Players play as Barney Carlhoun, who later returned in Half-Life 2 series. | |
![]() |
Maverick Developments | Maverick Developments | PC: Windows | ||
![]() |
Gearbox Software | Sierra Entertainment | PC: Windows (unofficial) Console(s): ![]() |
Half-Life last expansion, exclusive to PlayStation 2. An unofficial port of Half-Life Decay for PC developed by Hoaxer, was released in 2008. | |
2002 |
![]() |
Unknown Worlds | Unknown Worlds | PC: Windows | |
![]() |
Eurcom, Gearbox Software (PC) | Electronic Arts | PC: Windows, OS X (PowerPC) Console(s): ![]() ![]() |
Highly modified engine with MSAA support (up to 8X) and Direct3D 8 (DX8). Consoles version uses entirely different engines, and have more content than PC version. Also 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) | PC: Windows Consoles: Xbox 360 |
||
![]() |
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). |
2007 |
![]() |
Paranoia Team | Paranoia Team | PC: Windows, Mac, Linux | 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 ![]() |
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. |
2013 |
![]() ![]() |
Team Psykskallar | Team Psykskallar | PC: Windows, Mac, Linux | Runs on older, but highly modified version of GoldSrc (based off ![]() |
2014 |
![]() |
Valve, Nexon | Nexon | PC: Windows | Last officially licensed game to use the GoldSrc engine. Worldwide (America, Europe) version of ![]() |
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 | Gunship_Mark_II | PC: Windows, Linux | |
Year | Title | Developer(s) | Publisher(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 | N/A | N/A |
Default max number of server entities (MAX_EDICTS ) |
900 | 1200 | 600 - 4096 | 8192 |
Absolute max number of server entities (via liblist.gam edits) | 2048 | 2048 | N/A | 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 - 8192 | 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 | 512 | N/A |
Maximum number of pre-cacheable models and sprites (MAX_MODELS ) |
512 | N/A | 2048 | 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 | N/A | 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 | N/A |
Max number of GL textures (MAX_GLTEXTURES ) |
4800 | 10000 | N/A | N/A |
Number of messages titles.txt (MAX_MESSAGES ) |
1024 | N/A | 2048 | N/A |
Maximum size of indexed textures | 512х512 | 512x512 | 4096х4096 | N/A |
Maximum size of full color textures | 512х512 | 512x512 | 4096х4096 | N/A |
Maximum number of models on the map (MAX_MAP_MODELS ) |
256 | N/A | 1024 | 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 | N/A | 512 |
Maximum number of spans (software renderer geometry limit) | 3000 | 6000 | N/A | N/A |
Maximum number of surfaces (software renderer geometry limit) | 2000 | 4000 | N/A | N/A |
Maximum number of edges (software renderer geometry limit) | 7200 | 14400 | N/A | N/A |
Bugs and Limitations
![Icon-broom.png](/w/images/thumb/7/71/Icon-broom.png/32px-Icon-broom.png)
Use GitHub in order to prevent duplicate or outdated bug reports at the wiki.
![Icon-Bug.png](/w/images/thumb/b/b4/Icon-Bug.png/10px-Icon-Bug.png)
![Half-Life](/w/images/thumb/a/a0/Hl_icon.png/16px-Hl_icon.png)
Other games like
![Team Fortress Classic](/w/images/thumb/c/cf/Tfc-16px.png/16px-Tfc-16px.png)
![Counter-Strike](/w/images/thumb/8/8f/Cs_icon.png/16px-Cs_icon.png)
![Paranoia](/w/images/thumb/a/ae/Paranoia-16px.png/16px-Paranoia-16px.png)
![Cry of Fear](/w/images/thumb/9/9d/Cof_icon.png/16px-Cof_icon.png)
![PlacementTip.png](/w/images/thumb/c/cc/PlacementTip.png/14px-PlacementTip.png)
steam_legacy
on Half-Life (and in some games such as Counter-Strike) by going to Half-Life > Properties... > Betas > select steam_legacy
. Once those games has been fixed, you can opt out by set the beta branch to "None".
![Icon-Bug.png](/w/images/thumb/b/b4/Icon-Bug.png/10px-Icon-Bug.png)
gl_overbright 1
) is broken due to an OpenGL extension used for multi-texturing, which is required for the detail textures used by ![Counter-Strike: Condition Zero](/w/images/thumb/9/9e/Cscz_icon.png/16px-Cscz_icon.png)
![Day of Defeat](/w/images/thumb/c/cf/Dod_icon.png/16px-Dod_icon.png)
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.
![PlacementTip.png](/w/images/thumb/c/cc/PlacementTip.png/14px-PlacementTip.png)
![Half-Life](/w/images/thumb/a/a0/Hl_icon.png/16px-Hl_icon.png)
steam_legacy
branch) and most standalone mods, see ![Pcgw icon.png](/w/images/thumb/b/b1/Pcgw_icon.png/16px-Pcgw_icon.png)
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
![Icon-Bug.png](/w/images/thumb/b/b4/Icon-Bug.png/10px-Icon-Bug.png)
![Windows](/w/images/thumb/5/5a/Windows-7-Icon.png/16px-Windows-7-Icon.png)
![PlacementTip.png](/w/images/thumb/c/cc/PlacementTip.png/14px-PlacementTip.png)
- Set the game (
hl.exe
) to "High Priority" in Task Manager. Disable multitexturing.
![Icon-Bug.png](/w/images/thumb/b/b4/Icon-Bug.png/10px-Icon-Bug.png)
![PlacementTip.png](/w/images/thumb/c/cc/PlacementTip.png/14px-PlacementTip.png)
![Pcgw icon.png](/w/images/thumb/b/b1/Pcgw_icon.png/16px-Pcgw_icon.png)
![Icon-Bug.png](/w/images/thumb/b/b4/Icon-Bug.png/10px-Icon-Bug.png)
![Half-Life](/w/images/thumb/a/a0/Hl_icon.png/16px-Hl_icon.png)
![Counter-Strike](/w/images/thumb/8/8f/Cs_icon.png/16px-Cs_icon.png)
![Counter-Strike: Condition Zero](/w/images/thumb/9/9e/Cscz_icon.png/16px-Cscz_icon.png)
![Condition Zero Deleted Scenes](/w/images/thumb/a/a5/Czds_icon.png/16px-Czds_icon.png)
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
hl.dll
and 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.![Icon-Important.png](/w/images/thumb/5/5c/Icon-Important.png/10px-Icon-Important.png)
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
References
- User talk:Erik Johnson (Revision as of 12:53, 1 September 2005)
- Half-Life 25th Anniversary Update
- Relation between Paranoia & COF