nyuuzyou/wikis huggingface dataset:
Custom Menu Screen 2

C:/Steam/SteamApps/SourceMods/ModName/Resource/GameMenu.res
This will change the game menu of the mod/game with "text".
THIS IS ONLY AN EXAMPLE.
Contains both single player and multi-player options.
"GameMenu"
{
//	"1"
//	{
//		"label" "Toggle Console"
//		"command" "engine toggleconsole"
//		"InGameOrder" "10"
//		"notsteam" "1"
//		"ConsoleOnly" "0"
//		"notsingle" "0"
//		"notmulti" "0"
//		"OnlyInGame" "0"
//	}
//		"label"	"#GameUI_LoadCommentary"
//		"command" "OpenLoadSingleplayerCommentaryDialog"
//		"label" "#GameUI_GameMenu_Achievements"
//		"command" "OpenAchievementsDialog"
//		"label" "#GameUI_Controller"
//		"command" "OpenControllerDialog"
	"1"
	{
		"label" "#GameUI_GameMenu_ResumeGame"
		"command" "ResumeGame"
		"OnlyInGame" "1"
	}
	"2"
	{
		"label" "#GameUI_GameMenu_Disconnect"
		"command" "Disconnect"
		"OnlyInGame" "1"
	}
	"3"
	{
		"label" "#GameUI_GameMenu_PlayerList"
		"command" "OpenPlayerListDialog"
		"OnlyInGame" "1"
		"notsingle" "1"
	}
	"4"
	{
		"label" ""
		"command" ""
		"OnlyInGame" "1"
	}
	"5"
	{
		"label" "#GameUI_GameMenu_NewGame"
		"command" "OpenNewGameDialog"
		"notmulti" "1"
	}
	"6"
	{
		"label" "#GameUI_GameMenu_LoadGame"
		"command" "OpenLoadGameDialog"
		"notmulti" "1"
	}
	"7"
	{
		"label" "#GameUI_GameMenu_SaveGame"
		"command" "OpenSaveGameDialog"
		"notmulti" "1"
		"OnlyInGame" "1"
	}
	"8"
	{
		"label" "#GameUI_GameMenu_FindServers"
		"command" "OpenServerBrowser"
		"notsingle" "1"
	}
	"9"
	{
		"label" "#GameUI_GameMenu_CreateServer"
		"command" "OpenCreateMultiplayerGameDialog"
		"notsingle" "1"
	}
//	"11"
//	{
//		"name" "LoadDemo"
//		"label" "#GameUI_GameMenu_PlayDemo"
//		"command" "OpenLoadDemoDialog"
//	}
	"12"
	{
		"label" ""
		"command" ""
		"notsingle" "1"
	}
	"13"
	{
		"label" "#GameUI_GameMenu_ChangeGame"
		"command" "OpenChangeGameDialog"
		"notsteam" "1"
		"notsingle" "1"
		"notmulti" "1"
	}
	"14" // "10"
	{
		"label" "#GameUI_GameMenu_Options"
		"command" "OpenOptionsDialog"
	}
	"15" // "11"
	{
		"label" "#GameUI_GameMenu_Quit"
		"command" "Quit"
	}
}
Category:Programming
Custom ViewRender

If ever you need to work with CViewRender, say for applying a post-process effect, this is a way of deriving it so that you keep your own code contained and do not have to edit Valve's code.
Create SDKViewRender.cpp and insert the following:
#include "cbase.h"
#include "viewrender.h"
#include "view_scene.h"
// memdbgon must be the last include file in a .cpp file!!!
#include "tier0/memdbgon.h"
class C_SDKViewRender : public CViewRender {
	DECLARE_CLASS(C_SDKViewRender, CViewRender);
public:
	C_SDKViewRender::C_SDKViewRender();
	virtual void RenderView(const CViewSetup &view, int nClearFlags, int whatToDraw);
};
static C_SDKViewRender g_ViewRender;
//=================================================================================
C_SDKViewRender::C_SDKViewRender() {
	if (!view) {
		view = (IViewRender *)&g_ViewRender;
	}
}
void C_SDKViewRender::RenderView(const CViewSetup &view, int nClearFlags, int whatToDraw) {
	BaseClass::RenderView(view, nClearFlags, whatToDraw);
	//Your code could go here.
}
Category:Programming
Category:Snippets
Custom camera effects

It is possible to create custom camera effects by using point_camera or by adding a new HUD element.
== Point Camera ==
Custom camera effects are easily produceable with point_camera.
=== Broken lens effect ===
Take the invisible texture and make a block in front of the point_camera. Then using the decal tool, take the texture decals/glass/shot1 and place it right in front of the point_camera entity. Through the monitor it will now look like the image was shot through the broken lens.
== HUD Modification ==
Another possible solution would be to add a new HUD element which fits the whole screen. The Basic Hud Modification tutorial explains how to perform a similar addition.
Category:Camera
Customizable triggered HUD-message

There's an entity to display HUD-messages called game_text with various properties to define which, where and how to display text. But it's missing one possibility which could be very handy: you can't define the message via a triggered input.
That means, if several in-game messages are needed, like "the door has opened", "someone shot the sheriff", etc which are triggered by entities via their outputs, many "game_text" entities need to be created. This can lead to a huge number of "game_text" entities which can only cause problems later on.
The class CGameText, to which the game_text-entity is linked, is defined in dlls/maprules.cpp. To enhance the CGameText, just inherit from it and add an additional input to it, providing the text to be shown. Usually one would include a header (maprules.h) in your cpp and define the new class there, but unfortunately it's empty, which makes it harder to enhance it in a clean way.
The easier way is to include the new class in maprules.cpp and hope it won't get changed too much by future SDK-updates:
Find the end of the data description for CGameText and append this, the comments should be sufficient:
class CGSGameText : public CGameText
{
public:
 // that's right, we're inheriting from CGameText
 DECLARE_CLASS(CGSGameText, CGameText);
 DECLARE_DATADESC();
 // this function handles the triggered input
 void InputDisplayText( inputdata_t &inputdata );
};
// the entity is called "mm_game_text"
LINK_ENTITY_TO_CLASS( mm_game_text, CGSGameText );
BEGIN_DATADESC( CGSGameText )
 // the parameter of the input-function is a string
 DEFINE_INPUTFUNC( FIELD_STRING, "DisplayText", InputDisplayText ),
END_DATADESC()
void CGSGameText::InputDisplayText( inputdata_t &inputdata )
{
 // the baseclass already defines a memberfunction to set the 
 // message-text (CGameText::MessageSet), we just call it
 MessageSet( STRING(inputdata.value.StringID()) );
 // and show the message
 Display( inputdata.pActivator );
}
To use the entity in hammer, The following additions to your *.fgd need to be added:
@PointClass base(game_text) iconsprite("editor/game_text.vmt") = mm_game_text : 
 "An entity that displays customized text on player's screens."
[
 input DisplayText(string) : "Display this message text."
]
All that is needed is to create that entity (mm_game_text) in a map, customize it as though it were the entity game_text and link as many different outputs to it as needed.
Credits
This tutorial was originally from sourcewiki.org, and modified for the Valve Developer Community to adhere to the wiki standards.
Category:Tutorials
Category:Programming
Customizing Gamepad UI

This page details how to customize the controller-oriented UI, referred as Gamepad UI in and/or .
== Scheme resource files ==
All of these files are located in folder. Open these files with any text editors (such as Windows Notepad, ) to edit them.
* - Achievement page.
* - New game/select chapters.
* - Extras ( 20th anniversary update only)
* - Menu options (basically but for Gamepad UI)
* - Title, navigation buttons, and message.
* - Save/load menu UI.
* - Tabs, used in options menu.
=== Options menu ===
* - Checkbox
* - Section header (used in Options > Keyboard)
* - Difficulty options
* - Slider (used in Options)
* - Toggle (used in Options)
=== Colors ===
All color values are RGBA.
=== Fonts ===
Fonts can be also changed. By default in (since 20th anniversary), it uses the GorDIN font, while (and HL2 /previous version), uses the DIN1451Alt and Deja Vu Sans/Noto Sans font.
Category:VGUI
Cvarlist

This console command generates a list of all console commands for the game it is run from. Parameters allow the generation of a partial list and saving the list to a file.
Not all games have this command, however, or even if, it might be non-functional.
== Syntax ==
:
cvarlist : List all cvars
cvarlist ? : Shows this help
cvarlist <prefix> : List cvars starting with 'prefix'
cvarlist log <prefix> : Logs cvars to file "cvarlist.txt" in the gamedir
:
cvarlist
cvarlist <prefix>
cvarlist <prefix> log <filename>
== See also ==
*Developer console
*Console Command List
**:Category:Lists of console commands and variables - List of console commands and variables for specific games.
D.I.P.R.I.P.

Category:Multiplayer Mods
== Features ==
 D.I.P.R.I.P. is a Half-Life 2 multiplayer total conversion. Gameplay is based on vehicle combat in various post-war environments. Vehicles use multiple weapon mounts which are activated by finding weapons scattered around the battle grounds. Available game modes are Deathmatch, Team Deathmatch, Bombing Run and Uranium Run. There will also be a possibility to enable players to upgrade their vehicles' weapons and subsystems through the use of a 'money for damage' system.
== Vehicles ==
Most electronics were destroyed by electromagnetic pulses during the war, so the only usable vehicles left were old, reliable designs. Every available vehicle has been armored, fitted with weapons and enhanced in every way possible by post-war amateur mechanics. 
== Weapons ==
* Machine gun - every vehicles' basic weapon. All vehicles start with the machine gun equipped as the primary weapon. It has infinite ammo but very low damage.
* Minigun - a high velocity chain gun that rips through amour like a hot knife through butter. Very high damage and ammo usage.
* Mortar - fires mortar shells high into the air. Practically useless at low range. Can fire one or multiple shells.
* Unguided missiles - unguided missiles launcher. Fires single, fast moving, unguided rockets that deliver a high damage warhead.
* Guided missiles - guided missiles launcher. Fires single, slow moving, heat guided rockets that deliver a low damage warhead. Flying rockets are accompanied by a whistling sound.
* Mines - anti-vehicle mines that explode when a vehicle comes in it's proximity. They explode with a 0,5 second delay.
* Satchel charge - a remotely detonated satchel charge. Creates a very large explosion that annihilates everything in it's radius.
== Environments ==
Action takes place in varied post-war sceneries. Key places in the post-war world are areas rich in uncontaminated water and fuel. Most of the terrain has been left in a mechanically unchanged state. Abandoned city centers, supermarkets, refineries, country food storages, old military bases and other such places are the scenery of raging battles. The main theater is Mid-Eastern Europe which at the dawn of war was too poorly developed to be the target of a main attack. After the war it has become one of the wealthiest areas of the world.
== Media ==
Image:DIPRIP_market001.jpg|The Market
Image:DIPRIP_pgr003_400.jpg|PGR
Image:DIPRIP_ConceptMaluch_400.jpg|Chaos 126p, concept art
== External links ==
* D.I.P.R.I.P. - the official website.
* 
Category:Steamworks games
DAVSub Source

== Story ==
 is a single-player only mod for Half-Life 2: Episode 2 based on the original DAVSub for Half-Life.
Before the events in Half-Life 2, before having vortigaunts as allies, the G-Man decides to test your skills and drops you in the middle of a Combine occupied area. 
You find yourself on the run again... 
== Features ==
* Over 10 maps designed by Davide 'DAV' Cintrão
* Vortigaunts are your enemies
* Half-Life 2: Episode 2 game style
* New models
* New sounds
* New graphics
== Panoramic views ==
* DAVSub Source QTVR 1
* DAVSub Source QTVR 2
== Screenshots ==
Image:DAVSubSource_sc_01.jpg
Image:DAVSubSource_sc_02.jpg
Image:DAVSubSource_sc_03.jpg
Image:DAVSubSource_sc_04.jpg
Image:DAVSubSource_sc_05.jpg
== See also ==
* 
* Point Of View
== External links ==
* DAV Levels - the author's website.
* 
Category:Single Player Mods
DDS

DDS (DirectDraw Surface) is an texture format developed by Microsoft for DirectX 7 which stores textures in formats that can read directly by the GPU. Although designed for DirectX, it also sees frequent use with non-DirectX APIs due to its popularity.
* uses DXT1-compressed DDS files for radar images.
* uses DDS files for textures instead of WAD files.
DDS files can be remuxed to or from VTF or VTEX_C files without image reencoding, however mipmaps will need to be rearranged; DDS stores mipmaps from largest to smallest, whereas VTF and VTEX_C store mipmaps from smallest to largest.
== See also ==
* VTF
* VTEX_C
* WAD
* TGA
* BMP
Category:Image formats
DLC

DLC (short for DownLoadable Content) is add-on content for a given video game that is distributed via download after the game's release. DLC will generally add new assets to a game that may be accessible to developers, including new maps, entities, sound effects, etc. To use the new content one must own the original game, as they are only additions to the base.
While DLC generally costs money on consoles, Valve have traditionally released DLC for their PC games free of charge.
DLC coming from Valve will always automatically be patched into the game through steam. However, some DLC will require a manual download, such as expansion packs or on games that are not directly linked to a steam account.
==How to download a DLC==
Most of the DLC available to games on steam will automatically be patched to the appropriate game, free of charge. There are exceptions such as, expansion packs, additional missions, additional in-game player models, etc. These can be purchased from the Steam store.
After you have purchased the DLC you could easily go to your 'Steam library' and from there check the DLC link on the far-right end of the 'detailed list'; the DLC will be featured there, all you have to do is select and download it.
Category:Steam
DMX/Binary

class Binary
{
	string header = "<!-- dmx encoding binary %i format %s %i -->\n";
	
	// String table exists for version 2 and above.
	int			stringCount;	// The number of strings in the string table.
	string[]	stringTable;	// List of null terminated strings.
	int			elementCount;	// The number of elements in the data model.
	DmElement[]	elements;		// List of elements in the data model.
	// For each element, it reads all the attributes attached to it.
	// It begins by reading an int value to determine the count of attributes the element possesses.
	// Subsequently, it reads all the DmAttribute instances based on the count and pushes each attribute to the element's attributes list.
};
class DmElement
{
	// This is an int value index to the string table if version is greater than 1 else it's a null terminated string.
	string		type;	// The type of the element.
	// This is an int value index to the string table if version is greater than 3 else it's a null terminated string.
	string		name;	// The name of the element.
	char[16]	id;		// The UUID of the element.
	DmAttribute[]	attributes;	// The attributes the element has.
};
class DmAttribute
{
	// This is an int value index to the string table if version is greater than 1 else it's a null terminated string.
	string	name;	// The name of the attribute.
	char	type;	// The type of attribute, see below.
	void*	value;	// see below
};
=== Attribute Types ===
Check DmAttributeType_t in public/datamodel/dmattributetypes.h to get the index of each attribute type.
=== Attribute Values ===
Most values are stored in their native binary format (check tier0 for the layout of the fancier types). Exceptions are:
; Elements
: Element values are represented by an int. The value is the element's position in the element index.
:* -1 means "no value"
:* -2 followed by an ASCII UUID (yes, ASCII!) means a "external element" which exists but was excluded from the DMX
; Strings
: String values are stored as an int index in the string dictionary when version 4 or higher. String array values are stored inline as a null-terminated char array.
; Binary (AT_VOID)
: Binary values are stored with an int count, then that many bytes immediately after.
; Object Id
: A UUID object stored if the version is lower than 3.
; Time
: Time values are float in memory but are stored in binary DMX as (int)(this*10000).
; Color
: Color values are objects with four ints in memory but stored in binary DMX as char[4].
; Matrix
: A 4 by 4 float matrix.
; Arrays
: Arrays start with an int defining the number of items they contained and are tightly-packed.
== Previous versions ==
Version 	Changes
Binary_v2	Earliest known version. Header is <!-- DMXVersion binary_v2 -->\n.
1 	Standard DMX header introduced: <!-- dmx encoding binary %i format %s %i -->\n.
2 	String dictionary added for element types and attribute names; length and indices are short.
3 	Object Id attribute type replaced with Time attribute type.
4 	
String dictionary length is now int, even though indices are still short.
String values (non-array) and element names moved to string dictionary.
5 	
String dictionary indices are now int too.
Category:File formats
DMX/Source 2 Vertex attributes

The DMX mesh format (Version 22) supports arbitrary mesh attributes. The Source 2 tools can make use of many attributes besides the standard ones to control per-vertex model features.
==Standard==
Attribute 	Type 	Description
position 	vector3	Vertex position.
normal 	vector3	Vertex normal.
texcoord 	vector2	UV coordinates. A second UV map can be added with texcoord$1.
blendweights	float 	
blendindices	int 	
wrinkle 	 	
balance 	float 	
tangent 	vector4	
speed 	 	
==Vertex Color Maps==
Attribute 	Type 	Description
color 	vector4	Vertex color. Can be used in the VR shaders to tint a model with the appropriate material attribute enabled.
VertexPaintBlendParams 	vector4	Used to blend between texture layers in bland materials. Works the same way as the Hammer Terrain Blending tool.
VertexPaintBlendParams1	vector4	
VertexPaintTintColor 	vector4	
==Cloth Simulation==
Attribute 	Type 	Description
cloth_enable 	float	(0 - 1) Enables cloth simulation and creates a cloth node on the vertex when set to 1.
cloth_animation_attract 	float	Legacy parameter deprecated in favor of cloth_goal_strength.
cloth_animation_force_attract 	float	Legacy parameter deprecated in favor of cloth_goal_strength.
cloth_goal_strength 	float	(0 - 1) Controls the how much animations influence the vertex position.
cloth_goal_strength_v2 	float	(0 - 1)
cloth_goal_damping 	float	
cloth_drag 	float	
cloth_drag_v2 	float	
cloth_mass 	float	
cloth_gravity 	float	
cloth_gravity_z 	float	
cloth_collision_radius 	float	
cloth_ground_collision 	float	
cloth_ground_friction 	float	
cloth_use_rods 	float	
cloth_make_rods 	float	
cloth_anchor_free_rotate 	float	(0 - 1) Controls how freely cloth nodes bordering to non-cloth vertices can rotate.
cloth_volumetric 	float	
cloth_suspenders 	float	
cloth_bend_stiffness 	float	(0 - 1) Controls curvature of bend springs. Requires m_bAddStiffnessRods to be enabled.
cloth_stray_radius_inv 	float	
cloth_stray_radius 	float	
cloth_stray_radius_stretchiness	float	
cloth_antishrink 	float	
cloth_shear_resistance 	float	
cloth_stretch 	float	(0..+inf) A value of 1 gives extremely loose cloth. Strechiness increases exponentially with value.
cloth_friction 	float	
cloth_collision_layer_0 - 15 	float	
cloth_vertex_set_<set_name> 	float	
Category:Modeling
Category:File formats
DODS/Assault class

The Assault class is one of the most used classes, next to the rifleman. Many players enjoy the assault class due to their smoke grenades, while others enjoy them because of the SMGs.
== Weapon loadout ==
=== Allies ===
:Thompson
:.45 1911 Colt
:Frag Grenade
:Smoke Grenade
=== Axis ===
:MP40
:Walther p38
:Stick Grenade
:Smoke Grenade
== See also ==
* Day of Defeat: Source Classes and weapons - Overview of all classes and weapons.
Category:Day of Defeat: Source
DODS/Creating cap zones

Cap zones in Day of Defeat: Source are the locations in which players stand to capture an area for their team. Every cap zone should have a flag near its centre to make it clear who is in control of the zone, and where the zone is. Cap zones can be configured to take longer or shorter amounts of time and to require different numbers of friendly soldiers to capture.
A cap zone consists of two entities:
*dod_capture_area
**Brush entity
**Defines the area the cap zone will cover
**Defines the time needed to cap
**Defines the number of soldiers needed to cap
**Defines which flag (dod_control_point) it refers to
**Must be textured with a trigger texture, such as tools/toolstrigger
*dod_control_point
**Point entity
**Displays the cap zone's flag
**Must have a unique index point number
**Stores the cap zone's name 
**Defines sound to play (e.g. "Area secure!") when zone is capped
**Defines the flag icon to display in the HUD
Every DoD Source map also requires a single dod_control_point_master, to define any round timers and do various other things behind the scenes.
When placing cap zones, take great care to ensure they are balanced between the two teams. A map with every flag in the Axis spawn isn't going to be much fun! You can achieve balance through positioning, tweaking the number of soldiers needed to cap and/or the amount of time needed to cap for each team, or even making a cap zone inactive until another cap zone is taken, creating a chain.
===Tips===
*Always provide some form of cover at a cap zone, unless you specifically want there to be none
*Try to put cap zones in locations that a platoon would logically want to have in their possession
Category:Day of Defeat: Source
Category:Tutorials
Category:Level Design
DODS/Creating the Mini-Map

==Creating the Mini-Map==
To create a map overview, follow these steps:
#Start the game using 1280x1024 Video settings on Normal
#Make sure the "Far Z Clip Plane" is disabled in the env_fog_controller
#Load your map with 
#Join a team
#Disable any fog with 
#Switch to the overhead view with X, where X is the scale factor you wish to use
#Turn on the 1024 marker by using , to place a red marker on the right.
#Walk around (use or change the scale factor if needs be) until the entire map is on the screen and left of the red marker
#Hide the game interface with 
#Take your screenshot, ideally in TGA format
#Note down the most recent position information displayed in the console
#Resize your screenshot from 1280x1024 to 1024x1024 using a photo editor of your choice.
#Create a VTF from your screenshot (see Creating a Material)
#*Due to how mini-maps are displayed, transparency is generally something to avoid.
#*You can find a generic background image for your mini-map on the Day of Defeat forums. 
#Create a VMT for your new texture (see below for code)
#*Do not include the .bsp extension in $basetexture when creating the VMT
#*Ensure both files have the same name as your map, again without the .bsp extension
#Place both the VTF and VMT in the dod/materials/overviews/ folder
#Create an overview file in dod/resource/overviews (see below for code)
#*The file should be called mapname.txt
#Load the map and ensure that the overview is working
You may wish to use BSPZIP to embed the files you created in your BSP.
===VMT code===
 "UnlitGeneric"
 {
 	"$basetexture" "overviews/mapname"
 	"$vertexcolor" "1"
 	"$vertexalpha" "1"
 	"$no_fullbright" "1"
 	"$ignorez" "1"
 }
Do not include the .bsp extension in $basetexture!
===Overview definition code===
 "mapname"
 {
 	"material" "overviews/mapname"
 	"pos_x" "Your position data"
 	"pos_y" "Your position data"
 	"scale" "Your scale"
 	"rotate" "0"
 	"zoom" "1"
 }
*Do not include the .bsp extension for mapname!
*Fill in pos_x, pos_y, and scale from the console message you noted down.
===My overview is missing bits of my map!===
The overview tool attempts to intelligently remove portions of the map that are not wanted on an overview: roofs, inaccessible areas, and so on. However, it is not perfect.
Required: how to get round these issues
Sometimes it also depends on what roof is your character on, before cl_leveloverview X command. Try to do various screens, by moving the character on different roofs before using cl_leveloverview X, then patch them all for better result.
== See also ==
* Level Overviews
Category:Day of Defeat: Source