nyuuzyou/wikis huggingface dataset:
Sdk lightmap

sdk_lightmap is a sample Shader that was provided with the original Source SDK, it has since been replaced by the current set of SDK Shaders.
== sdk_lightmap_ps20.fxc ==
#include "common_ps_fxc.h"
sampler BaseTextureSampler	: register( s0 );
sampler LightmapSampler		: register( s1 );
struct PS_INPUT
{
	HALF2 vBaseTexCoord	: TEXCOORD0;
	HALF2 vLightmapTexCoord : TEXCOORD1;
};
HALF4 main( PS_INPUT i ) : COLOR
{
	// Sample the texture and lightmap.
	HALF4 baseColor = tex2D( BaseTextureSampler, i.vBaseTexCoord );
	HALF4 lightmapSample = tex2D( LightmapSampler, i.vLightmapTexCoord );
	
	// Multiply the base and lightmap colors.
	baseColor *= lightmapSample;
	
	return baseColor;
}
== sdk_lightmap_vs20.fxc ==
#include "common_vs_fxc.h"
struct VS_INPUT
{
	float3 vPos						: POSITION;
	float2 vBaseTexCoord			: TEXCOORD0;
	float2 vLightmapTexCoord		: TEXCOORD1;
};
struct VS_OUTPUT
{
 float4 vProjPos					: POSITION;	
	float flFog					: FOG;
	float2 vBaseTexCoord			: TEXCOORD0;
	float2 vLightmapTexCoord		: TEXCOORD2;
};
VS_OUTPUT main( const VS_INPUT v )
{
	VS_OUTPUT o = ( VS_OUTPUT )0;
	// Project the point.
	float4 vProjPos = mul( float4( v.vPos, 1 ), cModelViewProj );
	o.vProjPos = vProjPos;
	// Pass texture coordinates through to the pixel shader.
	o.vBaseTexCoord = v.vBaseTexCoord;
	o.vLightmapTexCoord = v.vLightmapTexCoord;
	// Calculate the fog.
	float3 worldPos = mul( float4( v.vPos, 1 ), cModel[0] );
	o.flFog = 0;
	return o;
}
== sdk_lightmap.cpp ==
//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose: Just about as simple as a shader gets. Specify a vertex
// and pixel shader, bind textures, and that's it.
//
// $Header: $
// $NoKeywords: $
//=============================================================================//
#include "BaseVSShader.h"
#include "convar.h"
// Note: you have to run buildshaders.bat to generate these files from the FXC code.
#include "sdk_lightmap_ps20.inc"
#include "sdk_lightmap_vs20.inc"
BEGIN_VS_SHADER( SDK_Lightmap, "Help for SDK_Lightmap" )
	BEGIN_SHADER_PARAMS
	END_SHADER_PARAMS
	// Set up anything that is necessary to make decisions in SHADER_FALLBACK.
	SHADER_INIT_PARAMS()
	{
	}
	SHADER_FALLBACK
	{
		return 0;
	}
	SHADER_INIT
	{
		LoadTexture( BASETEXTURE );
	}
	SHADER_DRAW
	{
		SHADOW_STATE
		{
			// Enable the texture for base texture and lightmap.
			pShaderShadow->EnableTexture( SHADER_TEXTURE_STAGE0, true );
			pShaderShadow->EnableTexture( SHADER_TEXTURE_STAGE1, true );
			
			int fmt = VERTEX_POSITION;
			pShaderShadow->VertexShaderVertexFormat( fmt, 2, 0, 0, 0 );
			sdk_lightmap_vs20_Static_Index vshIndex;
			pShaderShadow->SetVertexShader( "sdk_lightmap_vs20", vshIndex.GetIndex() );
			sdk_lightmap_ps20_Static_Index pshIndex;
			pShaderShadow->SetPixelShader( "sdk_lightmap_ps20", pshIndex.GetIndex() );
			DefaultFog();
		}
		DYNAMIC_STATE
		{
			BindTexture( SHADER_TEXTURE_STAGE0, BASETEXTURE, FRAME );
			pShaderAPI->BindLightmap( SHADER_TEXTURE_STAGE1 );
		}
		Draw();
	}
END_SHADER
Category: Programming
Category: Shaders
Category: Snippets
Sebastian

== Overview ==
With the Citadel on the verge of a catastrophic meltdown, Barney and Gordon Freeman are trying to escape City 17 when their plans take an unexpected detour.
Sebastian features:
* Two new single player maps for Half-Life 2: Episode One
* Custom voice acting and choreography
* A unique final encounter that uses the gravity gun in a new way
Requires Half-Life 2 and Half-Life 2: Episode One. Users should also be running on Source Engine 2009, which was deployed in May/June 2010 by Valve.
== Download ==
* 7z file @ PlanetPhillip
* ZIP file @ FileFront
* 
== Media ==
Visit PlanetPhillip for more screenshots, a panoramic viewer, and reviews!
== History ==
This map was released on December 27, 2010. Development had started back in June 2010. More history is coming soon.
== Credits ==
Credits:
Design and Construction
* Jason Gimba
				
Voice Acting
* Brett Kinsella (as Barney)
	
Playtesting
* Jon Azzara
* Matt Holdener
* Phillip Marlowe
* Brian Morgan
					
Texture Resources
* Blender Foundation
* DejaVu Fonts
* National Cancer Institute
* Wikipedia
					
Special Thanks
* All Tutorial Authors
* Audacity
* Interlopers
* Nem's Tools
* PlanetPhillip
* Valve Developer Community
					
Bonus Shoutouts
* Tom Edwards for writing a plug-in for FacePoser lip sync functionality in Windows Vista.
* Silwerfish and rrk on Mod DB for describing how to get the plug-in to function correctly.
== External links ==
* Sebastian @ PlanetPhillip
* Kyo Maps
Category:Single Player Mods
Sector C Test Labs & Control Facilities

== Introduction ==
The Sector C Test Labs & Control Facilities is the primary base for the anti-mass spectrometer used for testing known and unknown samples from varying environments. Sector C is nick-named 'Anomalous Materials' because of its nature. Sector C deals with, as Anomalous implies, deviating from the normal or common order, form, or rule: studying a highly purified alien sample from another dimension would fit well into this class. This is a low-medium security area with a large amount of scientific focus on the anti-mass spectrometer with a few varying laboratories and offices scattered throughout.
== Architecture ==
The architecture of the Sector C Test Labs & Control Facilities are very similar to the that of the remaining Black Mesa Research Facility. Yet, Sector C contains a massive amount of computers and various devices compared to some other parts of the facility. The reason for this must be that the studies of materials brought there from Xen and elsewhere requires a broad arsenal of technology.
== Environment ==
The Sector C test labs were just that: test labs. The environment was enclosing and full of high-end super computers. The theme of the area was that of a concrete shell enclosing some of the greatest electronic equipment in the entire facility. 
Built in the 1960s, this area was probably used for something entirely different originally. It could have been control facilities, maintenance bays or even machine storage. As Black Mesa Research Facility was once a cold-war, first-strike missile complex the area was designed and constructed with that very purpose in mind. The construction is primarily concrete with metal rebar and metal support structures varying throughout the sector. The elevator shafts are simple, few moving parts and connected intricately to the walls to stabilize it in the event of earthquake or a nuclear blast.
== NPCs ==
There were several NPCs present in Sector C, the most central of which was the scientist. The scientists were the lab personnel; they conducted tests and were in charge of running the labs. Another of the NPCs present was Barney, the security guard, who was assigned the task of a 'help-desk' among his security duties. Barney also assisted the scientists with technical issues around the facility from broken elevators to computer control equipment (as seen in Half-Life: Blue Shift). 
Other NPCs include the Gman and, post-disaster, the headcrab, Vortigaunt, and the zombie.
== References ==
Category:Regions & Atmospheres
Category:Half-Life Continuity
Security Camera

Security cameras are present in the GlaDOS test chambers. A security camera is an NPC entity that automatically follows the player wherever he/she is in the room and are similar to the ones seen in the first . The camera does not need a to become detached as it did in the original.
== Creation ==
# Create an entity using the entity tool.
# Place the entity within the level by clicking anywhere in the 3D viewfinder.
# Double-click on the entity to adjust its properties.
== Properties ==
Skin
::
Value	Skin 0: Clean
Value	Skin 1: Dirty
Category:Portal 2 Level Design
Category:Portal 2 Tutorials
SendProp

==dt_send.h==
===SendPropFloat===
===SendPropVector===
===SendPropAngle===
===SendPropQAngles===
===SendPropInt===
===SendPropString===
===SendPropArray3===
===SendPropDataTable===
===SendPropExclude===
==sendproxy.h==
===SendPropBool===
===SendPropEHandle===
===SendPropIntWithMinusOneFlag===
===SendPropTime===
===SendPropPredictableId===
===SendPropStringT===
==dt_utlvector_send.h==
===SendPropUtlVector===
Category:Networking
SendPropArray()

SendPropArray() and RecvPropArray() are datatable macros that wrap around an existing send/receive prop and allow it to transmit as an array. They should be used with SENDINFO_ARRAY() in place of SENDINFO().
 usage:
 	Send/RecvPropArray( <prop template>, <source/destination array> ),
 server:
 	SendPropArray( SendPropInt( SENDINFO_ARRAY(m_iMyArray) ), m_iMyServerArray ),
 client:
 	RecvPropArray( RecvPropInt( RECVINFO_ARRAY(m_iMyArray) ), m_iMyClientArray ),
==See also==
*SendPropArray3()
Category:Macros
Category:Networking
SendPropArray3()

SendPropArray3() and RecvPropArray3() are datatable macros that wrap around an existing send/receive prop and allow it to transmit as an array. 
Unlike SendPropArray(), they are compatible with Ehandles. They do not appear to have any relation to three-dimensional arrays; "3" is more likely to be a version number.
 usage:
 	SendPropArray3( SENDINFO_ARRAY3( <array variable> ), <prop template>( SENDINFO_ARRAY( <array variable>[0] ) ) ),
 server:
 	SendPropArray3( SENDINFO_ARRAY3(m_Inventory), SendPropEHandle( SENDINFO_ARRAY(m_Inventory) ) ),
 client:
 	RecvPropArray3( RECVINFO_ARRAY(m_Inventory), RecvPropEHandle( RECVINFO( m_Inventory[0] ) ) ),
Note the use of RECVINFO_ARRAY(), not RECVINFO_ARRAY3(), and the parameters for RecvPropEHandle().
==See also==
*SendPropArray()
Category:Macros
Category:Networking
Server

A server is a system (software and suitable computer hardware) that responds to requests across a computer network to provide, or help to provide, a network service. Servers can be run on a dedicated computer, which is also often referred to as "the server", but many networked computers are capable of hosting servers. In many cases, a computer can provide several services and have several servers running.
For this Wiki a dedicated or listening server will refer to a server that hosts a particular game such as Counter-Strike.
== See also ==
* Source Dedicated Server
* Half-Life Dedicated Server
* server.cfg
* listenserver.cfg
* Wikipedia:Server
* Wikipedia:Game Server
Category:GlossaryCategory:Dedicated Server
ServerCmd()

ServerCmd() is a quick and easy method for passing user input to the server available through cbase.h. It uploads an ASCII string, including with it information about which connected client sent it. The received strings are processed in ClientCommand() as a CCommand (i.e. a string array where 0 is the command itself and 1+ are parameters).
==Example==
 client:
 	engine->ServerCmd( VarArgs("MyCommand %i", m_iMyNumber) ); // No variables? Pass the command as a simple string.
 server:
 	bool CBasePlayer::ClientCommand( const CCommand &args )
 	{
 		if ( !V_stricmp( args[0], "MyCommand" ) )
 		{
 			Msg( "MyCommand received! Value: %i\n", atoi(args[1]) );
 			return true;
 		}
 	}
==See also==
*cl_restrict_server_commands
*Usercmd
Category:Functions
Category:Networking
Server Settings GUI

The server settings pages for listen servers and for dedicated servers are editable through scripts.
== Listen Server settings ==
The listen server settings page is scripted by cfg/settings_default.scr and cfg/settings.scr. The file which should be edited is settings_default.scr, as settings.scr is regenerated by the game/mod when the listen server dialog is used. However, if your mod uses AppID 320 (HL2DM) you may need to create a blank settings.scr file in your cfg directory so that the file from the Half-Life 2 Deathmatch GCF is not used.
The .scr files are plain text scripts.
It is highly recommended that you copy an existing script file from one of the GCF archives to edit rather than trying to create one from scratch.
== Dedicated Server settings ==
The dedicated server settings page is scripted by scripts/GameServerConfig.vdf.
The .vdf file is also a plain text script, but as with .scr files, you will find it much easier to edit an existing file than to create a new one from scratch.
Each setting in the .vdf file begins with the following structure:
"gamemode" //CVAR which this setting option controls
{
 "name"	"Game Mode" //Name displayed with this setting option, may be localized
	...
Following this block, a variety of "types" may be used.
The simplest one appears as a text box, where the user types in a string. It is denoted as follows:
	"type" "string"
No additional options are used with this type.
Another type is the drop down box, where the user is given several specific options to choose from. It is denoted as follows:
	"type" "enumeration"		
	"list"
	{
		"0" "Disabled"
		"1" "Enabled"
	}
This type uses the "list" structure to define each selectable option. Its syntax is "<CVAR Value>" "<Option Name>".
After the type and its options are defined, be sure to close the structure with an ending brace.
}
Category:Modding
Servercfgfile

servercfgfile is console variable, tells to server which configure file it execute on map start and map change. Default value is "server.cfg"
 "servercfgfile" = "server.cfg"
You can tell server to use another file than default server.cfg, from:
...cfg/autoexec.cfg
 servercfgfile "my_server.cfg"
Or, if you have forked servers, multiple servers launched from same program, use launch parameter. Add config file to each server, if you like.
 -console -game tf +map cp_dustbowl +servercfg server_1.cfg
== See also ==
* Source Dedicated Server
* Server
Category:Dedicated Server
SetSolid()

SetSolid() defines the manner in which this entity's collisions are handled. SetSolidFlags() can be used to tweak behaviour further.
== SolidTypes ==
; SOLID_NONE
: The entity does not generate its own collisions. Depending on the MoveType, its origin may still collide with brushes but will Touch() unreliably. 
; SOLID_BSP
: The entity has a brush model defined by the map. Does not collide with other SOLID_BSP entities.
; SOLID_BBOX
: The entity collides with an axis-aligned bounding box. Collides with everything. Required for hitbox tests.
: Use UTIL_SetSize() to define the extents of the box. 
; SOLID_OBB
; SOLID_OBB_YAW
: The entity collides with an object-aligned bounding box. OBB_YAW restricts orientation to the Z-axis. UTIL_SetSize() can be used to define the box's extents.
; SOLID_CUSTOM
: TestCollision() is called every frame to handle collisions. 
; SOLID_VPHYSICS
: Loads a collision mesh from the entity's model. This results in the same collision shape as VPhysics would have, without actually enabling VPhysics collisions or simulation.
== See also ==
* CCollisionProperty
* SetSolidFlags()
* VPhysics
* Bounding box
Category:Functions
SetSolidFlags()

SetSolidFlags() implements various flags that affect the precise nature of an entity's solidity. It is used in conjunction with SetSolid().
== Other functions ==
; void AddSolidFlags()
; void RemoveSolidFlags()
: Adds or removes flags without affecting those already active.
; bool IsSolidFlagSet()
: Tests whether a particular flag is set.
; int GetSolidFlags()
: Get the complete SolidFlags bitstring.
== Flags ==
; FSOLID_CUSTOMRAYTEST
: Ignore solid type + always call into the entity for ray tests. 
; FSOLID_CUSTOMBOXTEST
: Ignore solid type + always call into the entity for swept box tests. 
; FSOLID_NOT_SOLID
: Entity becomes non-solid (without losing its underlying SolidType). prop_dynamic entities set to SOLID_NONE are upgraded to SOLID_OBB and FSOLID_NOT_SOLID when Spawned so that the bounding box will properly rotate.
; FSOLID_TRIGGER
: Touch() is triggered even if collisions are disabled.
; FSOLID_NOT_STANDABLE
: Players can't stand on this. 
; FSOLID_VOLUME_CONTENTS
: Contains a volumetric substance like water.
; FSOLID_FORCE_WORLD_ALIGNED
: Forces the collision rep to be world-aligned even if it's SOLID_BSP or SOLID_VPHYSICS. 
; FSOLID_USE_TRIGGER_BOUNDS
: Uses a special trigger bounds separate from the normal OBB. 
; FSOLID_ROOT_PARENT_ALIGNED
: Collisions are defined in the root parent's local coordinate space.
; FSOLID_TRIGGER_TOUCH_DEBRIS
: This FSOLID_TRIGGER entity will also Touch() debris objects.
== See also ==
* CCollisionProperty
* SetSolid()
* VPhysics
* Bounding box
Category:Functions
Seth stage sops

__NOTOC__
 SourceOps is an addon for Blender to export Studiomdl Data and generate QC files, and export displacements and brushes.
 
Features 	An overview of SourceOps
Installation 	Walking you through Installing SourceOps
Setup 	Setting up game directories
Models 	Setting up your models directory
Model Settings 	Model Settings
Materials & Skins 	Setting up your material directories and defining skins
Sequences 	Setting up animations on your rigged model
Events 	Events
Attachments 	Setting up Attachments on Rigged Models
Displacements & Brushes	Exporting Displacements and Brushes
Simulation 	Simulation
Misc 	Misc
== Features ==
* Export SMD files with animation
* Generate QC files based on parameters
* Buttons to compile and view models in HLMV
* Export multiple objects to one body
* Export displacements and brushes to their own VMF
== Installation ==
# Install Blender 2.80 or later. Or [steam://rungameid/365670 Install from Steam] (AppID: 365670)
# Download SourceOps. Don’t unzip.
# In Blender:
## Select Edit > Preferences
## Move to the Add-ons tab
## Click Install... at the top-right of the window
## Find the downloaded zip file and select it (Double click)
## SourceOps should be the only add-on shown if installed correctly. Check the box to the left and wait a moment for activation to complete.
== Setup ==
To start using SourceOps, you must first set up a game to compile your models for. SourceOps makes this easy by only initally making you select the gameinfo.txt file. Selecting that will autofill everything else for you. You can change these directories if you need to.
== Models ==
== Model Settings ==
== Materials & Skins ==
== Sequences ==
== Events ==
== Attachments ==
== Displacements & Brushes ==
== Simulation ==
== Misc ==
== Links ==
* SourceOps GitHub
* SourceOps + SourceIO Discord
* QC Commands Page
Category:BlenderCategory:ModelingCategory:Third Party Tools
Setinfo

setinfo is a console command that creates a new console variable. The variable and its value will be preserved across map loads, and (possibly to your downfall) game saves. There doesn't seem to be a way to mark one as a cheat.
==Syntax==
setinfo VAR VALUE
If you wanted to make a variable to count how many NPCs you kill, you could type setinfo mykills 0. (Or you can set it to any impressive number ;) )
mykills would become a variable just like anything else, such as .
====Convar VAR is already registered but not as user info value====
If you see this in the console, it means you tried to set a console variable that already exists, such as .
==See also==
*, a convenient command for counting things.
Setting up Synergy

In order to map for Synergy, you first have to set up the SDK.
== Setting up Source ==
Go to the tools section in steam and scroll to the bottom until you find Source SDK. Install it, the first time you run it, you have to wait for it to finish configuring files.
Next you need to download Synergy and run it at least once so it makes the proper files for source.
Go to your steam\steamapps\<SteamAccount>\sourcesdk\bin\source2007\bin and find the GameConfig.txt file.
Open it with notepad and scroll down to the bottom. Copy and paste the code found [here] with the other game definitions. Be sure to place it within the brackets of the "Games" key group.
Afterwards if you already know how to use Hammer, you can start modding for Synergy.
== See also ==
* Synergy Level Creation
Category:synergy
Setting up an Output

==Creating an Output==
Double click on the entity which you want to broadcast the out from
and then navigate over to the Outputs tab.
Once on the Outputs tab, click on the "add" button; all of the options
which were previously greyed out should now be editable.
=Changing the parameters=
The parameters come the shape of "drop-downs" boxes
and "Check boxes", here is a table explaining what each
parameter dose.
Parameter 	Definition
My Output Named 	This is the condition
that must be met 
for the for the Output to be fired.
Target Entities Named	Where you enter the name of the entities or entity
which will be affected.
Via This Input 	The thing that will be changed through this output.
Parameter Override 	Some extra data that the Output may require to function.
Delay This Input 	How long after the condition is met that
the Output will be fired.
Fire Only Once 	If the box it ticked, this Output will only be fired once.
See Next: Viewing Inputs
Category:IO System
SetupArrayProps R: array prop 'null' is at index zero

The startup error SetupArrayProps R: array prop 'null' is at index zero is caused by trying to run a Source 2007 game/mod with the Source 2009 engine. This is not possible.
== Solution ==
The only Source 2007 game left today is Source SDK Base 2007. To use it:
# Change the SteamAppId value in gameinfo.txt to 218, then restart Steam.
# Make sure that any paths to hl2.exe (such as the launch path for the Visual Studio debugger) are pointing to SteamApps/account_name/source sdk base 2007/hl2.exe.
# If the SDK launcher lists any Source 2007 games, reset it for each engine version to prevent future confusion.
# Use the SDK launcher's "Edit Game Configurations" tool to move your mod's SDK profile to Source 2007.
Category:Errors