nyuuzyou/wikis huggingface dataset:
Commentary auto

It's usable in all games with the Commentary System implemented, including and . This entity is similar to 's role in firing outputs when the map is loaded, firing outputs when the developer commentary system is loaded. It will only function when used inside of a commentary file, but it does not appear to be available in the Commentary Editor directly and it is not available in any FGDs. The only known way to implement it is by directly defining it in the commentary file via a text editor. See Commentary System for more information on how this system works.
__NOTOC__
==Example==
 entity
 {
 	"classname" "commentary_auto"
 	"origin" "0 0 1024"
 	"connections"
 	{
 		"OnCommentaryNewGame" "remove_in_commentary,Kill,,0,-1"
 		"OnCommentaryMidGame" "remove_in_commentary,Disable,,0,-1"
 		"OnCommentaryMidGame" "remove_in_commentary,TurnOff,,0,-1"
 	}
 }
==Inputs==
==Outputs==
== See Also ==
* 
Category:Commentary System
Category:Source Base Entities
Category:Point Entities
Comp choreo sceneset

It chains set of choreography .VCD scenes together, and allows quick but basic configuration of the choreography. When the map is compiled, this entity is then converted into a entity, with its given KVs / I/O procedurally transferred over.
==KeyValues==
:* 0 : No
:* 1 : Yes
:* 0 : Start immediately
:* 1 : Wait for actor to finish
:* 2 : Interrupt at next interrupt event
:* 3 : Cancel at next interrupt event
:* 0 : Do nothing
:* 1 : Cancel Script and return to AI
==Inputs==
==Outputs==
==See also==
* TeamSpen's Hammer Addons
Comp entity finder

It finds the closest entity of a given type, then outputs various values depending on the keyvalues set.
==KeyValues==
:*0: No
:*1: Yes
:*0: No
:*1: Yes
:*none: None
:*const2target: Constant -> Target Ent KV
:*const2known: Constant -> Known Ent KV
:*known2target: Known Ent KV -> Target Ent KV
:*target2known: Target Ent KV -> Known Ent KV
:*replacetarget: Replace Outputs
==Outputs==
==See also==
* TeamSpen's Hammer Addons
Comp kv setter

It sets a keyvalue on an entity to a new value. This can be used in cases to compute spawnflags, or to adjust keyvalues when the target entity's options cannot be set to a fixup variable.
==KeyValues==
:*kv: KeyValues
:*flags: SpawnFlags
:*0: No
:*1: Yes
:*0: No
:*1: Yes
:*0: No
:*1: Yes
==Outputs==
Any output may be used. All outputs defined on a comp_kv_setter are copied to the target entity.
==See also==
* TeamSpen's Hammer Addons
Comp numeric transition

It changes a keyvalue or input over time with various options, when triggered.
==KeyValues==
:*0: No
:*0: Yes
:*auto: Automatic
:*io: Input
:*kv: KeyValue (AddOutput)
:*set: Instantly Set
:*moveto: Move to value
:*speed: Adjust Speed
:*light: Light Pattern
:*linear: None
:*quad: Quadratic (x^2)
:*cubic: Cubic (x^3)
:*quartic: Quartic (x^4)
:*sine: Sinusoidal
:*linear: None
:*quad: Quadratic (x^2)
:*cubic: Cubic (x^3)
:*quartic: Quartic (x^4)
:*sine: Sinusoidal
==Flags==
==Inputs==
==Outputs==
==See also==
* TeamSpen's Hammer Addons
Comp pack

It is a Point entity that works with the TeamSpen's Hammer Addons' postcompiler to forcefully pack selected models/materials/sounds/soundscripts into the .BSP file when compiling, essentially eliminating the need to manually pack files with Bspzip. This entity is removed on on map compilation and does not contribute to the entity limit.
Multiple comp_packs can be used in conjunction to pack multiple files into the BSP. 
==KeyValues==
==See also==
*TeamSpen's Hammer Addons
Comparison of BSP decompilers (GoldSrc)

This article reviews and compares several map decompilers for the GoldSrc engine.
Will introduce 5 decompilers:
* Decompiler 005
* WinBSPC
* BSP2MAP
* Unified SDK Map Decompiler
* MBSPC
Map converters such as Crafy and BSPViewer will not be introduced because they are not efficient in producing a quality source file.
4 maps were chosen for decompilation:
# bb_chp1_heavensgate from Brain Bread
# op4ctf_power from Opposing Force
# cz_silo02 from Counter-Strike: Condition Zero Deleted Scenes.
# rock2 from Team Fortress: Classic
Compile Pal

is an open source map compiling tool by ruarai.
Compile Pal is designed to be easy to set up and use. Configuration is automatic and it auto detects the last ran SDK. The tool provides batch map compiling capability as well as extremely easy-to-use compiling presets.
Development is currently active and source code is hosted on GitHub.
==Features==
*Automatic SDK detection for any Source game
*Easy editing of different compile configurations, with a GUI describing every different command line setting
*Batch compiling allows for the compiling of many maps in order
*Pack files and automatically build Cubemaps.
*Works independently from 
==Postcompiler fix==
Postcompiler is a program included in , however, with how Compile Pal is designed, it cannot be ran natively with how a user would normally install Compile Pal. Here are some steps to fix this.
First, install Compile Pal directly into your game's folder. After this, run Compile Pal. Select the desired preset and click the + to the right of the Processes text and click CUSTOM. Next, click the + to the right of Parameters, and put the path to the postcompiler (e.g. ). In the arguments section, put the following: . Finally, in the order tab, drag postcompiler.exe below VBSP and above VVIS.
==See alsо==
*review about Compile Pal- ENG
*review about Compile Pal- RUS
== External links ==
*Compile Pal homepage (archived)
*GitHub Project Page - The GitHub project page
*Compile Pal - Easily configurable map compiling- Facepunch Forums release thread (archived)
Category:Third Party Source Tools
Category:Source 1 BSP compilers
Compiler

A compiler is a program that takes a certain data/file format as the input and generates (compiles) data in a different format as the output.
The term applies to several topics:
*In GoldSrc level design:
**HLCSG, HLBSP, HLVIS, HLRAD - the official tools for compiling GoldSrc levels.
**ZHLT, VHLT - alternative GoldSrc compilers commonly used in the modern era.
*In Source level design:
**VBSP, VVIS, VRAD - the official tools for compiling Source levels.
**Slammin' Compile Tools - its updated versions.
**Valve Batch Compile Tool - an alternative, third-party compiler for Source levels. 
**Compile Pal - a third-party utility for managing the compiling process. 
*In Source 2 level design and modding:
**Resourcecompiler - the multi-purpose script, map and asset compiler for Source 2.
**VRAD (Source 2) - the lighting compiler for Source 2 levels.
*In programming:
**Compiler choices - instructions for choosing a compiler for the SDK's source code.
*In modelling:
**StudioMDL (GoldSrc) - the GoldSrc tool that compiles the models.
**StudioMDL (Source) - its Source counterpart.
*Other:
**Captioncompiler - the tool for compiling closed captions.
**VTEX (Source) - the official command-line tool for compiling VTF texture files (often side-stepped by using third-party plugins and tools).
== External links==
* on Wikipedia
Category:Tools
Compiler choices

You have several choices for compiling unedited variants of the Source SDK depending on which version you are using.
= Visual Studio =
Visual Studio is an (IDE) developed and maintained by Microsoft. It is the default IDE recommended for use with the Source SDK on Windows. In , the default version of Visual Studio used for Source engine development is Visual Studio 2013. Older versions of Visual Studio are not compatible with Source 2013, and newer versions of Visual Studio will not work with Source 2013 by default. Please see Installing Visual Studio for Source SDK 2013 for more information on how to install Visual Studio 2013, as well as how newer versions of Visual Studio can be used.
== Availability ==
Different versions of Visual Studio are supported between different versions of the Source SDK.
Version 	Engine branch 	Requirements
Visual Studio 2002	and earlier 	See Compiling under VS2002.
Visual Studio 2003	and earlier 	See Compiling under VS2003.
Visual Studio 2005	, and earlier	See Compiling under VS2005.
Visual Studio 2008	, and earlier	See Compiling under VS2008.
Visual Studio 2010	, and earlier	See Compiling under VS2010.
Visual Studio 2012	, and earlier	See Compiling under VS2012.
Visual Studio 2013	 	Default
Visual Studio 2015	 	See Compiling under VS2022.
Visual Studio 2017	 	See Compiling under VS2022.
Visual Studio 2019	 	See Compiling under VS2022.
Visual Studio 2022	 	See Compiling under VS2022.
= GCC =
The GNU Compiler Collection (GCC) is a collection of code compilers maintained by the GNU Project. G++ in particular is the default compiler recommended for use with the Source SDK on Linux.
== Availability ==
Version 	Engine branch	Requirements
GCC 4.2.x or lower	and earlier 	See Compiling under Linux.
GCC 4.6-4.8 	 	See Source SDK 2013 on Linux ("container" method).
GCC 5 or higher 	 	See Source SDK 2013 on Linux ("container" method) and optional step for changing the toolchain.
= See also =
* Building without Visual Studio
* — A rich text editor commonly used with scripts outside of the code.
== External links ==
* Visual Studio
* GCC
Category:Source SDK FAQ
Category:Programming
Compiling a prop dynamic from the base game with animations

__NOTOC__
== Compiling a prop dynamic ==
For this, the animatic_truckclean.mdl present in \models\scenery\vehicles\paneltruck will be used.
Here are the result of the decompile:
It contains:
The base mesh animatic_truckclean_New_animclose_r.smd
The physic animatic_truckclean_physics.smd
The animation in the folder animatic_truckclean_anims
The qc animatic_truckclean.qc
*1. In the generated folder create a folder named compile.
*2. In the compile folder create a folder named xmodel.
*3. Copy the original mdl (animatic_truckclean.mdl) and phy file if it exists (animatic_truckclean.phy) in this xmodel folder.
*4. Rename those file name with truckclean you should have this in the xmodel folder:
*5. Go to your compile folder.
*6. Copy inside the _anims folder all the smd files that you need as well as the qc file.
*7. Rename the animatic_truckclean_New_animclose_r.smd to truckc_REF.smd
*8. Rename the animatic_truckclean_physics.smd to truckc_physics.smd
*9. Rename the animatic_truckclean.qc to truckc.qc
*10 Edit your qc file by replacing the different original file with the new name you should have this:
 $modelname "scenery/vehicles/paneltruck/Animatic_truckclean.mdl"
 $bodygroup "Body"
 {
 	studio "truckc_REF"
 }
 $illumposition 0 0 0
 $eyeposition 0.5 -0.5 0.5
 $cdmaterials "models\scenery\vehicles\paneltruck\"
 $cdmaterials "models\scenery\misc\bathtub\"
 $texturegroup "skinfamilies"
 {
 	{ "paneltruck2aclean" "paneltruckaclean" "NULL" "bath5" }
 }
 $cbox 0 0 0 0 0 0
 $bbox -140.912 -52.383 -8.222 110.503 52.02 125.546
 $sequence "idle_open" {
 	"animatic_truckclean_anims\idle_open.smd"
 	fps 1
 }
 $sequence "close" {
 	"animatic_truckclean_anims\close.smd"
 	fps 45
 }
 $sequence "idle_close" {
 	"animatic_truckclean_anims\idle_close.smd"
 	fps 1
 }
 $collisionmodel "truckc_physics"
 {
 	$mass 0
 	$inertia 1
 	$damping 0
 	$rotdamping 0
 	$rootbone " "
 }
*11 Open Crowbar, go to Compile tab and select the Alien Swarn compiler
*12. Select your newly created qc file in the First top browse
*13. The work directory should be your mod directory, you can select it in the second top browse
*14. Click on Compile, the compile process will start you have done everything ok, you shouldn't have any error.
*15. Your files have been generated in your mod folder.
*16 Test your model, create a prop_dynamic in a map and pick your newly generated model, give it a name for testing.
*17. Run your map
*18 Test your prop by opening the console
 t=Find("truck")
 t.SetAnimation("close")
Congratulation You are done!
Here is a video of what you should have in game.
Compiling a prop static

__NOTOC__
== Compiling a prop static ==
For this, the BaseProp_example present in the Bloodlines SDK at Vampire The Masquerade - Bloodlines\SDKContent\ModelSrc will be used
It contains:
The base mesh Chair_Basic_REF.smd
The LOD mesh Chair_Basic_REF_lod1.smd
The physic Chair_Basic_physics.smd
The animation in the folder Chair_Basic_anims
The qc Chair_Basic.qc
For more information, don't hesitate to click on the qc command or have a look to QC
*1. You can edit the qc by opening in a text editor, you will have those lines:
 $modelname	"scenery/furniture/Chair_Basic/Chair_Basic.mdl"
 $bodygroup "Body"
 {
 	studio "Chair_Basic_REF"
 }
 $lod 25
 {
 	replacemodel "Chair_Basic_REF.smd" "Chair_Basic_REF_lod1.smd"
 }
 $staticprop
 $illumposition 0 0 0
 $eyeposition 0.5 -0.5 0.5
 $cdmaterials	"models\scenery\furniture\couch_basic\"
 $cbox 0 0 0 0 0 0
 $bbox -30.441 -42.366 -27.903 30.512 42.366 27.503
 $sequence "only_sequence" {
 	"chair_basic_anims\only_sequence.smd"
 	activity "ACT_IDLE" 1
 	fps 30
 }
 $collisionmodel	"chair_basic_physics.smd"
 {
 	$mass 20
 	$inertia 1
 	$damping 0
 	$rotdamping 0
 	$rootbone " "
 }
*2. Make your change in the qc file:
When you port a model, try to stick to this example, you may try to add some commands that are in the original file, the compiler will throw error if those commands are not taken into account.
When you compile a base game model, there is usually no changes, except if you want to remove LOD.
*3. Compile your model, select your qc file in the explorer, do a right click and choose compile mdl.
*4. It opens a command windows and then ask if you want to rotate the mesh to have it corrected, click yes so the model will appear normal in game.
*5. Your model is ready and have been compiled in the path specified in the $modelname in your configured mod directory.
Compiling under Linux

Creating a Linux build of your multiplayer dedicated server or server plugin is not required, but does make it much more likely to be accepted by commercial server operators.
Building on Linux requires an existing Visual Studio project, which is converted to a makefile by Valve's vcpm tool ("Visual C++ Project to Make").
== Getting Linux ==
If you are unsure which version of Linux to use, go for Ubuntu, which tries to be user-friendly. It has a "software centre" that makes installing packages simple, and can be run from a CD if you want to experiment (but you'll want to install it permanently before you start digging in).
== Requirements ==
* GCC and G++ 4.2.x or lower
* Vprojtomake 2010 or Xerces XML parser 2.8.x
* libstdc++ 6
* libc 2.4 or higher
If you are running 64-bit Linux:
* ia32-libs (or you will be told that 32-bit binaries don't exist)
* GCC multilib for your GCC release
* Make sure you have the 32-bit build of Xerces, if you haven't upgraded to Vprojtomake 2010.
== Setting up ==
Open sdk_root/linux_sdk/Makefile. Most of the config options here are straightforward, except for:
; MOD_CONFIG
: These values should come straight out of your VS project. Remove all whitespace. To build the 'My Server' project in release mode, this should read MyServer_ReleaseWin32.
; GAME_DIR
: To get this, you need to download a dedicated server from Valve. You need the orangebox game.
; CC, CPLUS, CLINK
: Change these to read "gcc -m32" or "g++ -m32", with quotes. If your system's default build of GCC is too recent, specify an older version with "gcc-4.2 -m32" or similar; check /usr/bin to see what you've got installed.
; CPP_LIB
: These files may not be where Valve think they are. To find them, browse to /usr/lib and search. 64-bit users will encounter two version of each file; choose the ones in the '32' folder.
* Server plugins need extra configuration. See Server plugins#Compiling.
* Experienced GCC programmers may be interested in Getting the SDK to work under -Wall -Werror.
== Making ==
Once everything is configured correctly, you can build your mod by navigating to the linux_sdk folder and performing a make.
== Running ==
To run the mod perform make install to copy the server binary to your mod's folder, then cd into your dedicated server folder and do ./srcds_run with the appropriate -game parameter.
Category:Programming
Category:Linux
Compiling under VS2002

The Visual Studio project files provided in the Source SDK are VS2003 project files. This page details the changes to these files necessary to allow them to be opened and compiled in Visual Studio 2002.
==Changes==
Edit listed files in a text editor.
To verify that you have successfully made these changes, open the src/Game_sdk.sln file in VS2002 and compile the solution.
======
↓
======
	→	
===Patch===
Download this to fix VS2002 compile errors.
== See also ==
*Compiling under VS2003
*Compiling under VS2005
Category:Tutorials Category:Programming
Compiling under VS2003

== Introduction ==
The following is a general guide to getting (or earlier) compiling under VS 2003, aswell how to obtain Visual Studio 2003.
== Installation ==
Since Visual Studio .NET 2003 is no longer supported, users will need to download it from Internet Archive.
* Disc 1
* Disc 2
* Service Pack 1
== Compiling ==
* Open Microsoft Visual Studio .NET 2003.
* Choose Open Project from the File menu.
* Navigate to the directory where you installed the source code. In our example, it would be C:\MyMod\Src.
* Open the game_sdk.sln file.
* Choose Rebuild Solution from the Build menu.
* Wait for the source code to build. You should now have two DLLs in your C:\Steam\SteamApps\SourceMods\MyMod\bin folder (depending on where your Steam is installed and what name you entered for your mod in the Create a Mod dialog). One is called client.dll and the other is called server.dll.
== See also ==
*Compiling under VS2002
*Compiling under VS2005
Category:Tutorials
Category:Programming
Compiling under VS2012

Using Visual Studio 2012 is possible for Source. However it is not possible to use Visual Studio 2012 with the Source 2013 code base. You can use the free C++ Express edition for the 2007 code base and below.
* With the default VS2012 settings, linking some projects will fail with "Error lnk2026: module unsafe for safeseh image". This seems to happen when you try to link to libraries that were compiled with different versions of the compiler. As a workaround, set the linker option /SAFESEH[:NO] .
== See also ==
* Visual Studio 2012
* Launching from Visual Studio
Category:Tutorials
Category:Programming
Category:Source SDK FAQ
Compiling under VS2022

With Visual Studio 2013 being out of support, and harder to obtain, there is a lot of pressure to use a newer version of Visual Studio when working with Source SDK 2013. However, as the codebase does not support the changes brought about by later toolset versions, some work is required to get it functioning.
This article is primarily based on these two GitHub repos:
* https://github.com/Source-SDK-Resources/source-sdk-vs2022
* https://github.com/SCell555/Source-PlusPlus
If necessary, these changes can also be made to work with VS2015—VS2019 by changing $PlatformToolset in source_win32_base.vpc.
== I'm starting from scratch! ==
If you don't want to deal with setting up the project, or if you have problems compiling the source code because of certain errors, you can clone this repo since it's based on the official repo with minimal changes to allow it to run without problems. Please disregard any "compile process successful but file not found" warning as it is meaningless.
=== Using ===
Mapbase can be compiled with any version of Visual Studio, from 2013-2022. You can toggle support by editing 
== Editing Existing Code ==
If you need to edit an existing codebase (Such as the version of Valve provides on GitHub), you will need to edit or replace certain files. 
=== Running VPC ===
If you don't have Visual Studio 2013 on your computer, VPC will fail to run, as it can't find registry keys specific to older versions.
You can:
* Grab an edit of VPC that works for modern versions of Visual Studio, such as this one
* Add the registry keys VPC is looking for. See here.
Once ran, the generated VPC scripts will need to be modified to support the newer toolsets.
=== Fixing ===
Once everything's compiling, you'll hit a snag with particles.lib. It defines the symbol _hypot, and when using VS 2022, that symbol is already being used. 
The best solution for this is to go grab an edit of particles.lib that's been fixed.
(Like this one)
If you're not a fan of that idea, one alternative could be telling VPC to allow multiple symbols to exist for the client project. This is not a great practice though!
Example
=== Fixing ===
The main file that needs to be fixed for Source to work under VS 2022 is . Replace it with this one.
== In Recap ==
Do what this page asks you to do while ignoring any reference to Visual Studio 2013, fix the Registry keys problem with the fix from the same page, download particles.lib to from this, and finally, replace located at with this one. Have fun making Source mods with updated software ;)
Category:Tutorials
Category:Programming
Category:Source SDK FAQ
Compiling vgui controls.lib

The following is a short guide to successfully compiling your vgui2 modifications to lib\public\vgui_controls.lib.
Change this line in AnimationController.cpp
:
return AnimationController::RelativeAlignment::a_northwest;
↓
return a_northwest;
Open src\vgui2\controls\vgui_controls.vcproj in your MSVC++ .NET and compile it with the Release configuration.
The library should be copied and overwrite lib\public\vgui_controls.lib once the compilation is complete.
Category:Programming
Category:Tutorials
Compiling your map using htct

Compiling with the can be much easier than messing with 's Expert Compile
= Download and setting up =
== Downloading ==
Download the software from one of these 2 places:
*HTCT v0.6.0 BETA download link 
* HTCT v0.5.0 Download @ TheRaZZeRApp
After downloading, extract the zip file into a folder that it is easy to access.
== Setting up ==
Run , if you get an anti-virus popup, press continue.
Configure as following:
Option 	Needed input
Enter your path to your steam directory:	You may keep the default one if it is correct.
Choose SDK version to use: 	Black Mesa
Choose game configuration: 	Black Mesa
Remember compile queue: 	This is personal preference
= Using the tool =
== The main interface ==
Once setup, you should see a window open, this is your main interface you will be using.
* The top settings button allows you to change the configuration if needed
* The Edit Presets button allows you to edit the presets.
* And the last button is the select preset button which allows you to select a preset to use for the compile of your map(s)
=== Starting a compile ===
At the bottom of the main interface you will see a Map Source FIles list, to add your vmfs to the compile queue, simply press the add button
* Once at-least one vmf has been added you can start the compile!