nyuuzyou/wikis huggingface dataset:
Complimentary Victory Lift

This tutorial will show how to create the Lift Platform seen in the Portal test chambers. The lift usually starts in its raised position, and lowers when a certain object is activated, such as an energy pellet catcher or a switch. The lift then raises when the player steps on it.
== Construction ==
=== Step 1 ===
Create a 16w*16l*128h brush textured with tools/toolsinvisible. Tie this brush to a func_door entity and make sure all of its flags are unchecked. Next, set the following keyvalues on it:
Property Name 	Value
Name 	lift
Speed 	20
Start Sound 	apc_engine_start
Stop Sound 	apc_engine_stop
Delay Before Reset	-1
Move Direction 	90 0 0
=== Step 2 ===
Create a 24w*24l*136h 12-sided cylinder and position it so it's in the same place as the lift brush. Tie it to a func_brush and set its Name to brush_lift and its Parent to lift.
Finally, texture the sides of the cylinder with metal/metal_lift001.
=== Step 3 ===
Create a prop_dynamic entity and set its Name to model_lift_platform, its Parent to lift and its World Model to models/props/lift_platform.mdl. Position it on top of the brush_lift brush so its origin is 2 units below the top of the brush.
=== Step 4 ===
Create a 120w*120l*1h brush. Texture the top and bottom sides of the brush with glass/glasswindow_frosted_003, and texture all of the sides with tools/toolsnodraw. Position the brush so its in the middle of the model_lift_platform entity, with its bottom side being 6 units above the origin of model_lift_platform.
Next, create a 128w*128l*4h brush textured with tools/toolsplayerclip. Position it so it surrounds the model_lift_platform entity with its bottom side being 4 units above the origin of model_lift_platform.
Now, select both the glass brush and the playerclip brush and tie them to a single func_brush entity. Set its Name to lift_brush_2 and set its Parent to lift.
=== Step 5 ===
Create a 112w*128l*92h brush textured with tools/toolstrigger. Tie it to a trigger_multiple entity and set its Name to lift_up_trigger, its Parent to lift and Start Disabled to Yes. Next, add the following outputs to it:
	OnTrigger 	lift	Close	 	0.00	No
	OnEndTouch	lift	Open 	 	0.00	No
The Lift Platform is now completed and ready to be implemente in a map.
== Implementation ==
=== Step 1 ===
Place the lift where it should be in the map. The top of the lift_brush_2 playerclip brush should be 2 units below the floor level of the upper floor. If the lift needs to travel more than 128 units, stretch the brush_lift and lift brushes down to the lower floor level. The length of the lift brush determines how far the Lift Platform travels.
=== Step 2 ===
Add an output to the entity that will activate the lift that sends the Open input to lift and the Enable input to lift_up_trigger. 
== See also ==
*Portal Level Creation
Category:Portal
Category:Level Design
Category:Tutorials
Compression

Compression is the act of making data smaller, either by algorithmically packing data or by algorithmically removing data.
* For various tips on optimizing the file size of Source 1 files, see Compression (Source 1)
* For information about out DXT5, a form of texture compression, see DirectX Texture compression 5
File formats relevant to Valve's engines which can contain compressed data include:
* AVI
* BIK
* BSP (Source 1) (LZMA; , , , and consoles only)
* BZ2
* DDS
* JPG
* MDL (GoldSrc) (Vertex data is -compressed; contained textures are not)
* MP3
* PCX ()
* PNG
* TGA ()
* VSND_C (ADPCM, MP3)
* VTF
* WAV (ADPCM)
* WEBM
* ZIP
Category:Glossary
ConVar

ConVar is the C++ class used to create a console variable (frequently shortened to "cvar"), which is used in the Developer Console.
Documentation on specific console variables can be found at :Category:Console variables.
For creating a new Console Variable see this. Developer Console Control
ConVar uses the constructor shown below:
The default value given as the second argument of the ConVar constructor is not the value set. To set a value, use:
;
== Good Practices ==
* Variables that you wish to be saved should be marked with flag FCVAR_ARCHIVE. These will be saved with the user bindings in config.cfg. Any cheat cvar should not be archived.
* After whatever flags you may want to add (or 0 if you don't want any), you can set a help string. This will display when someone enters in the ConVar without any value or if they enter an invalid value. You can use to make a new line and use spaces after that to indent lines. Make your help-strings as rich and detailed as you want!
* Use the flag FCVAR_CHEAT to signify a ConVar that can only be used when sv_cheats is turned on.
* Use the flag FCVAR_REPLICATED to signify a server variable which is then replicated onto clients. For example, round timers or game rules should have this flag.
* For multiplayer games, use FCVAR_NOTIFY to send a message in chat whenever this variable is changed. Use this for ConVars that change game mechanics.
For more tips using ConVar flags, see this page.
== Examples ==
The code below will define a cvar named cl_test:
Whats happening here is first, we are declaring the variable to be a ConVar, then we are setting the name of the cvar that would be used in games console,
and after that, we set the default value, then flags, and finally, the help text for the console.
We can use use these cvars to initialize other variables, like if you wanted to create a integer named test you could do as so
You could also have it be a float, and call GetFloat()
Finally, don't forget to include convar.h in your file
== See also ==
Developer Console Control
Category:Classes
Concave

A concave brush is any brush that is not convex. If a brush is convex, then any imaginary line you could draw from one vertex to another will never be outside the brush. Therefore, if such a line can be drawn, the brush is concave. To put it another way, a brush is concave if any of its vertices sticks inward instead of outward.
Concave brushes are not allowed in the BSP format. Hammer and the compile tools will report concave brushes so you can repair them (by reshaping solids) if your map is still open. However, Hammer will not be able to load concave brushes from a saved map. If Hammer cannot fix them when the map is opened, they will be ignored.
File:Concave example.JPG
Note how the left and middle brushes are convex (legal) while the right brush is concave (illegal).
== External links ==
* Concave objects (Vadear.com)
* Wikipedia: Convex and concave polygons
Category:Glossary
Concept

A concept is high-level statement that the code is trying to convey, such as say hello(TLK_HELLO), answer some question(TLK_ANSWER), call for help(TLK_HELP_ME), etc. 
You can command a NPC to speak based on a concept by using Speak( AIConcept_t concept, const char *modifiers /*= NULL*/ ) method. This is defined in AI_Speech.cpp.
bool CAI_Expresser::Speak( AIConcept_t concept, const char *modifiers /*= NULL*/ )
{
	AI_Response *result = SpeakFindResponse( concept, modifiers );
	if ( !result )
	{
		return false;
	}
	SpeechMsg( GetOuter(), "%s (%x) spoke %s (%f)\n", STRING(GetOuter()->GetEntityName()),
		GetOuter(), concept, gpGlobals->curtime );
	bool spoke = SpeakDispatchResponse( concept, result );
	return spoke;
}
It tries to find a response for the concept from Response System scripts. Then if it finds one, tries to dispatch it.
NPC_talker.cpp is a good example integrating concept speaks within tasks and schedules. If you want to make a custom NPC that talks, this would be the best place to start.
You can also make a NPC choose a response via "DispatchResponse" entity input.
==See also==
* Concept list
Category:AI Programming
Concept list

The following are the strings of the concept definitions.
===ai_behavior_lead.h===
*TLK_LEAD_START
*TLK_LEAD_ARRIVAL
*TLK_LEAD_SUCCESS
*lead_fail
*TLK_LEAD_COMINGBACK
*TLK_LEAD_CATCHUP
*TLK_LEAD_RETRIEVE
*TLK_LEAD_ATTRACTPLAYER
*TLK_LEAD_WAITOVER
*TLK_LEAD_MISSING_WEAPON
===ai_playerally.h===
*TLK_ANSWER
*TLK_QUESTION
*TLK_IDLE
*TLK_STARE
*TLK_USE
*TLK_STARTFOLLOW
*TLK_STOPFOLLOW
*TLK_JOINPLAYER
*TLK_STOP
*TLK_NOSHOOT
*TLK_HELLO
*TLK_PHELLO
*TLK_PIDLE
*TLK_PQUESTION
*TLK_PLHURT1
*TLK_PLHURT2
*TLK_PLHURT3
*TLK_PLPUSH
*TLK_PLRELOAD
*TLK_SMELL
*TLK_SHOT
*TLK_WOUND
*TLK_MORTAL
*TLK_DANGER
*TLK_SEE_COMBINE
*TLK_ENEMY_DEAD
*TLK_SELECTED	// selected by player in command mode.
*TLK_COMMANDED // received orders from player in command mode
*TLK_COMMAND_FAILED 
*TLK_BETRAYED	// player killed an ally in front of me.
*TLK_ALLY_KILLED // witnessed an ally die some other way.
*TLK_ATTACKING // about to fire my weapon at a target
*TLK_HEAL // healing someone
*TLK_GIVEAMMO // giving ammo to someone
*TLK_DEATH	// Death rattle
*TLK_HELP_ME // call out to the player for help
*TLK_PLYR_PHYSATK	// Player's attacked me with a thrown physics object
*TLK_ANSWER_VORT
*TLK_ANSWER_CIT
*TLK_QUESTION_VORT
*TLK_QUESTION_CIT
*TLK_NEWWEAPON
*TLK_PLDEAD
*TLK_HIDEANDRELOAD
*TLK_STARTCOMBAT
*TLK_WATCHOUT
*TLK_RESUME // resume is as I was saying... or anyhow...
*TLK_TGSTAYPUT// tourguide stuff 
*TLK_TGFIND
*TLK_TGSEEK
*TLK_TGLOSTYOU
*TLK_TGCATCHUP
*TLK_TGENDTOUR
Category:AI Programming
Concrete Terrors

== Overview ==
Concrete Terrors is a Left 4 Dead 2 custom campaign currently in the initial development stage set in New York City. A group of four new survivors, after crashing a van they planned to use to escape, must trek through the zombie-ridden streets to a skyscraper where they have called a rescue helicopter.
== Features ==
(Note that since this campaign is still early in development, these features are subject to change.)
* Four new survivors
* Varied maps
* 5-chapter campaign
* Fully voice acted
* Compatible with co-op/realism, versus, and survival modes
* Holdout crescendo
* Gauntlet finale
* Business casual skins for the Smoker, Jockey, and Spitter (during the "Skyscraper Finale" chapter)
== Chapters ==
* Chapter 1: The Interstate (Short map in which survivors make their way across a wrecked overpass and down through the streets underneath into the city)
* Chapter 2: Uptown (Survivors head through New York's residential district, jumping across rooftops and through apartments)
* Chapter 3: Downtown (Down on the zombie-infested streets, survivors trek through back alleys and through a bus station down to the subway station)
* Chapter 4: The Subway (Nearing their skyscraper destination, the survivors brave the depths of an abandoned subway system, culminating in a fight with a Tank in close quarters outside the safe room)
* Chapter 5: Skyscraper Finale (The survivors make a break for freedom in a mad dash up a skyscraper teeming with infected to the helicopter waiting above)
== Development ==
* Chapter 1 is completely mapped, but things like weapons/items, infected spawns, etc. are not added yet
* Initial concepts for new survivors are finished (Chuck, a NYC tour guide; Lester, an escaped convict and gang member; Samantha, a convenience store clerk who was working through college; and Ned, a college dropout and aspiring "artist" who is, quite frankly, scared as hell)
== Team ==
-Rollertoaster (Maps, models) ANYONE INTERESTED IN WORKING WITH MAPPING, MODELING, OR SURVIVOR VOICES, CONTACT ROLLERTOASTER ON:
* Steam (Rollertoaster)
* Gmail (rd0229818@gmail.com)
* VALVe Developer Community (Rolertoaster)
Category:Left 4 Dead Projects
Configuring Hammer++ for Half-Life: Source

This guide is about configuring Hammer++ for Half-life: Source
==Preparations==
1. Install Hammer++ Source SDK Base 2013 Singleplayer to your Half-Life 2/bin directory AND DONT OPEN IT, IT WOULD LEAD TO BAD CONFIG IF YOU CONFIGURE IT RIGHT NOW
2. Edit HL:S's gameinfo so in between of and lines you have and 
It Should look something like this:
==Configuring==
* Setting up Hammer
==See also==
* Level creation for Half Life: Source
Category:Hammer++
Configuring the SDK for Eternal Silence

How to set up the SDK for Eternal Silence:
1. In Steam, navigate to Library > Tools
2. Download and open Source SDK.
3. Select the 2006 engine.
4. Select any game that you have installed and played.
5. Click Hammer Editor.
http://i.imgur.com/V3cIL.png
6. Navigate to Tools > Options
7. Click Edit
8. Click Add
9. Type Eternal Silence and click OK.
http://i.imgur.com/YW82e.png
10. Select Eternal Silence from the Configuration drop down.
11. Set the directories as shown.
http://i.imgur.com/aTFDF.png
Note: The VMF directory should not be located in the program files.
12. Select the Build Programs tab.
13. Set the following directories. (Note: the final text field named "Place compiled maps..." should be set to this directory: "$SteamDir\steamapps\SourceMods\Eternal-Silence\maps")
http://i.imgur.com/D6lGr.png
14. Click OK
15. Close Hammer and Source SDK, and reopen.
Beta Developers: Steps 11 , and 13 
Category:Eternal Silence
Configuring the Source SDK for Dreamball

To set up Source SDK to map for Dreamball, navigate to:
steam/steamapps/USERNAME/sourcesdk/bin/orangebox/bin/
and open GameConfig.txt and inside it add this entry amongst the rest:
Add this and replace the paths/username with your own ones:
 "Dreamball"
 {
 "GameDir"		"c:\program files\steam\steamapps\SourceMods\dreamball"
 "hammer"
 {
 "GameData0"		"c:\program files\steam\steamapps\SourceMods\dreamball\SDK\dreamball.fgd"
 "TextureFormat"		"5"
 "MapFormat"		"4"
 "DefaultTextureScale"		
 "0.250000"
 "DefaultLightmapScale"		"16"
 "GameExe"		"c:\program files\steam\steamapps\USERNAME\source sdk base 2007\hl2.exe"
 "DefaultSolidEntity"		"func_detail"
 "DefaultPointEntity"		"prop_static"
 "BSP"		"c:\program files\steam\steamapps\USERNAME\sourcesdk\bin\orangebox\bin\vbsp.exe"
 "Vis"		"c:\program files\steam\steamapps\USERNAME\sourcesdk\bin\orangebox\bin\vvis.exe"
 "Light"		"c:\program files\steam\steamapps\USERNAME\sourcesdk\bin\orangebox\bin\vrad.exe"
 "GameExeDir"		"c:\program files\steam\steamapps\USERNAME\source sdk base 2007"
 "MapDir"		"C:\Program Files\Steam\steamapps\USERNAME\sourcesdk_content\dreamball\mapsrc"
 "BSPDir"		"c:\program files\steam\steamapps\SourceMods\dreamball\maps"
 "CordonTexture"		"tools\toolsskybox"
 "MaterialExcludeCount"		"0"
 }
 }
Replace any paths (i.e. C:\ may be F:\ for you) and USERNAME fields with your own.
Category:Dreamball
Conflict Theory

==Overview==
Conflict Theory was a mod attempt that was planned to feature a story that was going to span from video game to comic book. The levels would all exist in the same world, which means you should have been able to figure out where one level would take place versus the last level played. Three distict locals were planned in the world: A desolate iron jungle, a utopian city and a ghetto.
==Planned features==
* All new weapons.
* All new storyline that would not be a part of the Half-Life series.
* All new graphics with new textures, models, levels, characters and more.
==Media==
*Spire video (YouTube)
*City video (YouTube)
==History==
This mod was intended to be a graduation project for December 2006. It had been in the making for three years, most of it being in concept only.
It seem to have died due to a lack of programmers. ("As far as this project fizzling out, Not gonna happen. If this project doesn't go gold, we don't graduate. This means we need to get everything done by December.")
==Team==
The team consisted of Co11 and another fulltime partner. The rest of the work was to consist of contractors to do specific deeds. The team had one contractor working on music, another on some Zbrush modeling, and another to get started with the very basic programming.
==Help Wanted==
* The team were looking for a skilled AI programmer, as well as programming help with creating a few new game modes that they had planned out.
==External links==
*Official site
Consecutive Key Presses

=Overview=
Below is a proposition for a system to monitor consecutive key presses within the Source engine. In the example provided, we'll monitor for two taps of the same key within a certain number of seconds. This system could be useful in a number of situations. One possible example would be a combo-based movement or combat system.
=Our KeyTracker structure=
First we define a structure to track various keypresses. For each key we record a flag (to monitor its state) and the LastPressTime, which is relatively self-explanatory. As far as the flag value is concerned: 0 represents the key having never been pressed. 1 represents one press and 2 represents two presses.
struct KeyTracker 
{
	int flag;
	float LastPressTime;
} doubleTap[ 2 ];
=Checking for key presses=
I suggest creating a simple HandleKeyPress method which would be triggered in various circumstances.
if (m_afButtonPressed & IN_FORWARD) 
{
	HandleKeyTap( 0 );
}
=Handling the key presses=
The following code is relatively self-explanatory, If the key has never been pressed, we set its flag to 1. If the key has already been pressed, we check to see whether the player pressed the key fast enough for it to count as a 'combo' or 'double tap'. Otherwise, we set it back to 1. After each call to HandleKeyPress we set LastPressTime to record the time of the keypress. This is used later to check if a player was fast enough in pressing that particular key a second time. In the following example, they have a 5 second window.
void HandleKeyTap( int iKeyId ) 
{
	if( !doubleTap[iKeyId].flag ) 
 {
		doubleTap[iKeyId].flag = 1;	
	} 
 else if( doubleTap[iKeyId].flag > 0 && doubleTap[iKeyId].flag < 2 ) 
 {
		// Check if the key was pressed fast enough to count as a double tap!
		if( doubleTap[iKeyId].LastPressTime + 5.0f < gpGlobals->curtime ) 
 {
 doubleTap[iKeyId].flag = 1; // Too slow!
		} 
 else 
 {
			doubleTap[iKeyId].flag = 2; // Double tap!
		}
	} 
 else if( doubleTap[iKeyId].flag >= 2 ) 
 {
		doubleTap[iKeyId].flag = 1;
	}
	doubleTap[iKeyId].LastPressTime = gpGlobals->curtime;
}
=Possible improvements=
The above solution is fairly primitive and, as such, can be updated and improved upon in a number of ways. Here are a few possible suggestions:
* Don't hard code the 'window' time value. Instead, set the value via a CON_COMMAND or a similarly flexible configuration routine.
* Allocate the KeyTracker array in such a way as to avoid giving particula r actions numeric ID's (in this example, pressing the IN_FORWARD key was assigned the value 0). Instead, it would be far better to map thearray to keys themselves.
Category:Programming
Console Command List

The following list comprises console commands common to all -engine games, and most and games, some of these console commands are also originally available from the engine (which Valve later heavily modified to create the GoldSrc engine).
To enable Console in games, go to Options ▶ Keyboard, then click Advanced... ▶ Enable developer console, then press on your keyboard to open Console. In some games, such as , , or in , the method is slightly different because of the different game UI, or in some cases, if the option "Enable developer console" is not available, you can use the command line parameters to forcing the Console to be enabled.
To enable Console in games, simply press , and it will show up. But if you have an older WON/Retail version of those games, the game must be launched with , after that, click Console on the menu (the key will only work on WON/Retail version if the map has been loaded).
For lists of console commands for specific games, see :Category:Lists of console commands and variables
== Table of Contents ==
Commands are sorted alphabetically:'''
'''
== A ==
== B ==
== C ==
== D ==
== E ==
== F ==
== G ==
== H ==
== I ==
== J ==
== K ==
== L ==
== M ==
== N ==
== O ==
== P ==
== Q ==
== R ==
== S ==
== T ==
== U ==
== V ==
== W ==
== Z ==
*
Category:Lists
Category:Lists of console commands and variables
__NOTOC__ __NOEDITSECTION__
Console Command List/B

BCategory:ListsCategory:Lists of console commands and variables
Command 	Default	Cheat?	Help Text
+back 	 	 	Start moving player backward (button down)
-back 	 	 	Stop moving player backward (button up)
banid 	 	 	Add a user ID to the ban list.
bench_end 	 	Yes 	Ends gathering of info.
bench_showstatsdialog 	 	 	Shows a dialog displaying the most recent benchmark results.
bench_start 	 	 	Starts gathering of info. Arguments: <filename>
bench_upload 	 	 	Uploads most recent benchmark stats to the Valve servers.
benchframe 	 	 	Takes a snapshot of a particular frame in a time demo.
bgmvolume 	1 	 	CD sound playback volume.
bind 	 	 	Bind a key. Arguments: <key> "<command>"
BindToggle 	 	 	Performs a bind <key> "increment var <cvar> 0 1 1"
birds_debug 	0 	 	None
blink_duration 	0.2 	 	How many seconds an eye blink will last.
bloodspray 	 	 	blood
box 	 	 	Draw a debug box.
+break 	 	 	None
-break 	 	 	None
breakable_disable_gib_limit 	0 	 	None
breakable_multiplayer 	1 	 	None
buddha 	 	 	Toggle. Similar to god, Player takes damage but won't die. (If developer = 1 , shows red cross when health is zero or 1)
budget_averages_window 	30 	 	number of frames to look at when figuring out average frametimes
budget_background_alpha 	128 	 	how translucent the budget panel is
budget_bargraph_background_alpha 	128 	 	how translucent the budget panel is
budget_bargraph_range_ms 	16 	 	budget bargraph range in milliseconds
budget_history_numsamplesvisible 	100 	 	number of samples to draw in the budget history window. The lower the better as far as rendering overhead of the budget panel
budget_history_range_ms 	66 	 	budget history range in milliseconds
budget_panel_bottom_of_history_fraction	0 	 	number between 0 and 1
budget_panel_height 	384 	 	height in pixels of the budget panel
budget_panel_width 	512 	 	width in pixels of the budget panel
budget_panel_x 	0 	 	number of pixels from the left side of the game screen to draw the budget panel
budget_panel_y 	50 	 	number of pixels from the top side of the game screen to draw the budget panel
budget_peaks_window 	30 	 	number of frames to look at when figuring out peak frametimes
budget_show_averages 	0 	 	enable/disable averages in the budget panel
budget_show_history 	1 	 	turn history graph off and on. . good to turn off on low end
budget_show_peaks 	1 	 	enable/disable peaks in the budget panel
bug 	 	 	Show/hide the bug reporting UI.
bug_swap 	 	 	Automatically swaps the current weapon for the bug bait and back again.
bugreporter_includebsp 	1 	 	Include .bsp for internal bug submissions.
buildcubemaps 	 	 	Rebuild cubemaps.Requires -tools launch options to build cubemaps in games.
building_cubemaps 	0 	 	None