GoldSrc

From Valve Developer Community
(Redirected from Goldsource)
Jump to: navigation, search
Icon-broom.png
This article or section needs to be cleaned up to conform to a higher standard of quality because:
Fix banner ratio
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

id Tech 2 Quake engineGoldSrc GoldSrcSource SourceSource 2 Source 2

English (en)русский (ru)українська (uk)Tiếng Việt (vi)中文 (zh)
Edit
"Powered by the Half-Life engine" logo used on some game boxarts.

GoldSrc GoldSrc (also known as GoldSource, and formerly just the Half-Life Engine) is a 3D video game engine created by Valve Valve in 1996. It was the driving force behind many famous games of the late 90s and early 00s, such as Half-Life Half-Life, Team Fortress Classic Team Fortress Classic, Counter-Strike Counter-Strike, and Day of Defeat Day of Defeat. GoldSrc is a heavily modified version of the Quake Quake engine, and runs on C++ programming code. GoldSrc and its level editor, Hammer 3.x 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 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 Half-Life's 25th anniversary updates which increased the engine limits and fixed many bugs.

Screenshot in-game of Half-Life Half-Life, using the GoldSrc Engine.
Screenshot in-game of Cry of Fear Cry of Fear, which runs on a heavily modified version of GoldSrc.
Screenshot in-game of Counter-Strike: Condition Zero Counter-Strike: Condition Zero.
Screenshot in-game of Counter-Strike (Xbox) Counter-Strike.

Features

Blank image.pngTodo: expand here or add links
  • 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 Counter-Strike: Condition ZeroCounter-Strike (Xbox))

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 Counter-Strike
  • 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 with Direct3D 6 support was remove in 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 Counter-Strike (Xbox))
  • Detailed textures (only in Day of DefeatCounter-Strike: Condition ZeroCondition Zero Deleted ScenesCounter-Strike (Xbox))
  • Texture Filtering - Quake (GLQuake) simply Texture Filtering

Since 2013 SteamPipe Update

  • 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

  • Rudimentary Shadows
Note.pngNote:To enables Rudimentary Shadows r_shadows must be set to 1

Branches

Blank image.pngTodo: Clarify Xash3D/Paranoia 2: Savior Paranoia 2: Savior (early versions, beta)/Natural Selection engine branch. Write all candidates for adding to this table (for example Gunman chronicles fork?))[Clarify]
Blank image.pngTodo: candidates to adding - Spirit of Half-Life...

Stub

This article or section is a stub. You can help by adding to it.

Year Branch Company Features Base Notes
1998 [Clarify] v1.0.x.x/SDK v1 Valve Valve Software Per-texture palettes, Coloured lighting Quake (id Tech 2) v30 .bsp, v10 .mdl
1998[Clarify] v1.1.x.x/SDK v2.0 Valve Valve Software VGUI v1.0.x.x/SDK v1 v30 .bsp, v10 .mdl
2001 (leak)[Clarify] Dreamcast Gearbox Software Gearbox Software Compressed model textures [Clarify] v30 .bsp, v11 .mdl
2002 Gearcraft Gearbox Software Gearbox Software DirectX 8 renderer v1.1.x.x/SDK v2.0 (For PC)
Modified Id Tech 3 (For consoles)
v42 .bsp, v14 .mdl
2003 PlayStation 2 Gearbox Software Gearbox Software LOD models [Clarify] v40 .bs2, v10 .dol
2003 Xbox Ritual Entertainment Ritual Entertainment Improved lighting [Clarify] 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
Confirm:only for ver.1

Counter-Strike: Condition Zero engine branch (ver.2)
v30 .bsp, v10 .mdl [confirm]
2004[Clarify] Steam Valve Valve Software VGUI2 v1.1.x.x/SDK v2.0 v30 .bsp, v10 .mdl
2004 Counter-Strike: Condition Zero engine branch Valve Valve
Turtle Rock Studios Turtle Rock Studios
Gearbox Software Gearbox Software
Ritual Entertainment Ritual Entertainment
Player Bots
Detailed textures
v1.1.x.x/SDK v2.0[confirm] v30 .bsp, v10 .mdl [confirm]
2007[Clarify] Paranoia engine branch Paranoia engine branch Paranoia Team New OpenGL Renderer Counter-Strike: Condition Zero engine branch v30 .bsp, v10 .mdl [confirm]
2013 Cry of Fear engine branch Cry of Fear engine branch Team Psykskallar Improved paranoia's OpenGL Renderer Paranoia engine branch[3] v30 .bsp, v10 .mdl [confirm]
2013 Linux/Mac Valve Valve Software Linux and Mac support Steam v30 .bsp, v10 .mdl
2016 Svengine Svengine Sven Co-op Team Extended engine limits Linux/Mac v30 .bsp, v10 .mdl
2023 25th anniversary Valve Valve Software Shaders Linux/Mac v30 .bsp, v10 .mdl

Half-Life SDK

Main article:  Half-Life SDK

As of August 2013, it is available on Steam Steam under the "Tools" section. With it comes Hammer 3.x 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.pngNote:Hammer 3.x Hammer 3.5 is the final GoldSrc-only editor released by Valve and can be downloaded separately.

Products using GoldSrc ViewDiscussEdit templatePurge

Year Title Developer(s) Publisher(s) Platforms Notes
1998 Half-Life Half-Life Valve Valve Sierra Entertainment, Valve (digital) PC PC, macOS macOS, PlayStation 2 PlayStation 2, Dreamcast Dreamcast (cancelled) First official game to use the GoldSrc engine.
The macOS Mac port (for Mac OS 9, OS X on PowerPC systems) by Logicware was originally cancelled in 2000 before it's was silently released for Intel Macs running OS X/macOS in 2013 by Valve.
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 Half-Life: Opposing Force Half-Life: Opposing Force Gearbox Software Gearbox Software, Valve Valve PC PC, macOS macOS
Team Fortress Classic Team Fortress Classic Valve Valve Valve, Sierra Entertainment (digital) PC PC, macOS macOS
Sven Co-op Sven Co-op Sven Co-op team Sven Co-op team PC PC 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.
2000 Counter-Strike Counter-Strike Valve Valve Sierra Entertainment, Valve (digital) PC PC, macOS macOS
Gunman Chronicles Gunman Chronicles Rewolf Entertainment Sierra Entertainment PC PC
Ricochet Ricochet Valve Valve Valve PC PC, macOS macOS
2001 Deathmatch Classic Deathmatch Classic PC PC, macOS macOS
Half-Life: Blue Shift Half-Life: Blue Shift Gearbox Software Gearbox Software, Valve Valve Sierra Entertainment, Valve (digital) PC PC, macOS macOS, Dreamcast Dreamcast (cancelled)
WANTED! WANTED! Maverick Developments Maverick Developments PC PC
Half-Life: Decay Half-Life: Decay Gearbox Software Gearbox Software Sierra Entertainment PC PC (unofficial), PlayStation 2 PlayStation 2
2002 James Bond 007: Nightfire James Bond 007: Nightfire Eurcom, Gearbox Software Gearbox Software Electronic Arts PC PC, Original Xbox Original Xbox, GameCube, PlayStation 2 PlayStation 2, macOS Mac OS X, Game Boy Advance Highly modified engine.
2003 Day of Defeat Day of Defeat Valve Valve Activision, Valve (digital) PC PC, macOS macOS
Counter-Strike (Xbox) Counter-Strike (Xbox) Ritual Entertainment Ritual Entertainment, Turtle Rock Studios Turtle Rock Studios Xbox Game Studios (formerly Microsoft Studios) Original Xbox Original Xbox
Counter-Strike Neo Counter-Strike Neo Namco Namco Arcade
2004 Counter-Strike: Condition Zero Counter-Strike: Condition Zero
Condition Zero Deleted Scenes Condition Zero Deleted Scenes
Valve Valve, Ritual Entertainment Ritual Entertainment, Gearbox Software Gearbox Software, Turtle Rock Studios Turtle Rock Studios Sierra Entertainment, Valve (digital) PC PC, macOS macOS Last official game to use the GoldSrc engine.
2007 Paranoia Paranoia Paranoia Team Paranoia Team PC PC, Dreamcast Dreamcast
2008 Counter-Strike Online Counter-Strike Online Valve Valve, Nexon Nexon PC PC Free to play game based off Counter-Strike: Condition Zero Counter-Strike: Condition Zero with microtranscations and skins, aswell as many other game modes like Zombies.
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 Cry of Fear Cry of Fear Team Psykskallar Team Psykskallar PC PC Runs on older, but highly modified version of GoldSrc with better graphics.
2014 Counter-Strike Nexon: Studio Counter-Strike Nexon: Studio Valve Valve, Nexon Nexon PC PC Last officially licensed game to use the GoldSrc engine. Worldwide (America, Europe) version of Counter-Strike Online. Originally called as Counter-Strike: Nexon Zombies.

Specifications

Stub

This article or section is a stub. You can help by adding to it.

GoldSource Limits Pre-25th Post-25th
Maximum number of dynamic sound channels 8 32
Maximum number of server entities (MAX_EDICTS) 900 1200
Maximum number of temporary entities (MAX_TEMPENTS) 500 Unchanged[confirm]
Maximum number of particles (MAX_PARTICLES) 4096 Unchanged[confirm]
Maximum number of beams (MAX_BEAMS) 64 Unchanged[confirm]
Maximum number of visible entities in the package (MAX_VISIBLE_PACKET) 256 1024
Maximum number of pre-cacheable models/sprites (MAX_MODELS) 512 Unchanged[confirm]
Maximum number of pre-cached sounds (MAX_SOUNDS) 512 Unchanged[confirm]
Maximum number of entries to read sentences made up of sentences (MAX_SENTENCES) 1536 2048
Maximum number of user messages (MAX_USER_MESSAGES) 128 Unchanged[confirm]
Max number of loaded textures (MAX_TEXTURES) 2048 Unchanged[confirm]
Max number of GL textures (MAX_GLTEXTURES) 4800 10000
Number of messages titles.txt (MAX_MESSAGES) 1024 Unchanged[confirm]
Maximum size of indexed textures 512х512 Unknown
Maximum size of full color textures - -
Maximum number of models on the map (MAX_MAP_MODELS) 256 Unchanged[confirm]
Maximum number of map leafs (MAX_MAP_LEAFS) 8192 Unchanged[confirm]
Maximum number of entities per packet (MAX_PACKET_ENTITIES) 256 1024
Maximum number of spans (software renderer geometry limit) 3000 6000
Maximum number of surfaces (software renderer geometry limit) 2000 4000
Maximum number of edges (software renderer geometry limit) 7200 14400

Bugs and Limitations

Icon-broom.png
This article or section needs to be updated to include current information regarding the subject because:
Half-Life 25th Anniversary Update fixes a lot and breaks other stuff.
Remember to check for any notes left by the tagger at this article's talk page

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

Icon-Bug.pngBug:Various GoldSrc non-standalone mods has been broken with the recent Half-Life Half-Life update, as part of its 25th anniversary. Some of these games would crash on startup with Visual C++ error.
Other games like Team Fortress Classic Team Fortress Classic was also affected, but appears to work almost perfectly fine aside from HUD scaling fixes were non-functional. And another one such as Counter-Strike Counter-Strike, 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 Paranoia (non-Xash3D version) and older version of Cry of Fear Cry of Fear, etc...) will be also crashed on startup aswell (Issues #3710).
PlacementTip.pngWorkaround: To temporarily fix this, select the beta branch 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.pngBug:Overbright lighting (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 Counter-Strike: Condition Zero, Day of Defeat Day of Defeat, and some third-party mods.
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.pngWorkaround: To fix this for the older version of Half-Life Half-Life (steam_legacy branch) and most standalone mods, see Pcgw icon.png Overbright lighting section in PCGamingWiki's Half-Life page for more information.
Icon-Important.pngImportant:Please note that using DLL-based solutions in VAC VAC-protected multiplayer servers may result in a false positive ban. Use -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.pngNote: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 fixed the underwater fog bug, models may not be affected by the overbright lighting.
Icon-Bug.pngBug:On some systems running Windows Windows Vista or later, the engine may suffer from extremely low frame rates during gameplay, especially on Intel iGPUs.
PlacementTip.pngWorkaround:
Icon-Bug.pngBug: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). A feature request about restoring EAX/A3D sound can be found at GitHub (issue #38).
PlacementTip.pngWorkaround: Use MetaAudio; see the Pcgw icon.png Audio section on PCGamingWiki's Half-Life page for more information.
Icon-Important.pngImportant:Please note that using MetaAudio in VAC VAC-protected multiplayer servers may result in a false positive ban. Use -insecure to disable VAC for local servers. This is not an issue for singleplayer, which is unaffected by VAC.
Icon-Bug.pngBug:Running any GoldSrc game other than Half-Life Half-Life over around 100-120FPS or higher can cause issues with movable objects (and prior to October 8, 2019 update, NPC turn rate), being slower or faster. Player movements in Counter-Strike Counter-Strike, Counter-Strike: Condition Zero Counter-Strike: Condition Zero and Condition Zero Deleted Scenes Condition Zero Deleted Scenes, after jumping, will be much slower than normal for few seconds.
Note.pngNote: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 (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.pngImportant:OpenGL mode is somewhat different from software mode. Furthermore, the wave effect on water does not work with software renderer. See patbytes's "Half-Life - A Look at Water" on YouTube. Issue 2165.

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

References

  1. User talk:Erik Johnson (Revision as of 12:53, 1 September 2005)
  2. Half-Life 25th Anniversary Update
  3. Relation between Paranoia & COF