<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://www.wiki.obsidianconflict.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TESLA-X4</id>
		<title>Obsidian Conflict Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://www.wiki.obsidianconflict.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TESLA-X4"/>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=Special:Contributions/TESLA-X4"/>
		<updated>2026-05-13T19:42:24Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=1523</id>
		<title>Dedicated Server Setup 2</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=1523"/>
				<updated>2012-08-07T01:38:11Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: Updated to address minor change to SRCDS&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{wip}}&lt;br /&gt;
This page was created since I can't update the one [[Dedicated Server Setup|here]]. I'm still working on it (but don't have enough time to do it all at once), so it may seem incomplete. - [[User:TESLA-X4|TESLA-X4]] 12:01, 3 April 2011 (CEST)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
* A basic understanding of filesystem paths (i.e. &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; refers to the folder &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; ''inside'' &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;, not both the folders), and the different path representations between Windows and *nix (i.e. &amp;lt;tt&amp;gt;\&amp;lt;/tt&amp;gt; in Windows is the same as &amp;lt;tt&amp;gt;/&amp;lt;/tt&amp;gt; in UNIX[-like] operating systems).&lt;br /&gt;
* A basic understanding of the operating system's command-line interface (i.e. [[Wikipedia:Command Prompt|Command Prompt]] for Windows and Terminals for [[Wikipedia:GNOME Terminal|Linux]] and [[Wikipedia::Apple Terminal|Mac OS]]).&lt;br /&gt;
* A fast broadband connection (preferably one without a data transfer limit) to prevent premature aging waiting for the uploads to complete.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;'''Note:''' At the time of writing, no binaries are publicly available for Linux and Mac OS.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Base Server Install==&lt;br /&gt;
===Step 1: Download The HLDS Update Tool===&lt;br /&gt;
{{Windows|Download this file to a temporary location: '''http://www.steampowered.com/download/hldsupdatetool.exe'''}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In a ''Terminal (On Ubuntu: Applications &amp;amp;rarr; Accessories &amp;amp;rarr; Terminal)'' window, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;mkdir srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;wget &amp;lt;nowiki&amp;gt;http://www.steampowered.com/download/hldsupdatetool.bin&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 2: Install The HLDS Update Tool===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
||''This could help : &amp;lt;nowiki&amp;gt;http://planethalflife.gamespy.com/View.php?view=HL2Guides.Detail&amp;amp;id=4&amp;amp;game=3&amp;lt;/nowiki&amp;gt;''|.&lt;br /&gt;
|Double-click on &amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt; and follow the instructions given by the wizard.&lt;br /&gt;
|For the purpose of this tutorial, we will assume that you have installed the server to &amp;lt;tt&amp;gt;c:\srcds&amp;lt;/tt&amp;gt;.&lt;br /&gt;
|Open a ''Command Prompt (Start &amp;amp;rarr; Accessories &amp;amp;rarr; Command Prompt)'' window and execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;c:&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''hldsupdatetool'' will now be downloaded to replace the one installed by the wizard.}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Terminal'' window as [[#Step 1: Download The HLDS Update Tool|Step 1]], execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;chmod +x hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''steam'' (the executable) will now be downloaded to replace the one extracted when you ran &amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;.}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 3: Download The Base Server Files===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Command Prompt'' window as [[#Step 2: Install The HLDS Update Tool|Step 2]], execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''hldsupdatetool'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the existing ''Terminal'' window from Steps 1 and 2, execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''steam'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 4: Setting Up The Folder Structure===&lt;br /&gt;
After [[#Step 3: Download The Base Server Files|Step 3]] completes, you should end up with something like this:&lt;br /&gt;
&lt;br /&gt;
{{Windows|&amp;lt;tt&amp;gt;hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds.exe&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|ClientRegistry.blob&lt;br /&gt;
|HldsUpdateTool.exe&lt;br /&gt;
|HldsUpdateTool_&amp;lt;tool version&amp;gt;.mst&lt;br /&gt;
|InstallRecord.blob&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|&amp;lt;tt&amp;gt;.steam\&lt;br /&gt;
|.steam\clientregistry.blob&lt;br /&gt;
|hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds_linux&lt;br /&gt;
|orangebox\srcds_run&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|hldsupdatetool.bin&lt;br /&gt;
|InstallRecord.blob&lt;br /&gt;
|steam&lt;br /&gt;
|test1.so&lt;br /&gt;
|test2.so&lt;br /&gt;
|test3.so&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, because Valve didn't set up the files properly on their server, you'll need to fix it yourself.&lt;br /&gt;
&lt;br /&gt;
'''GUI Approach:'''&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Merge the two &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folders by copying the contents of the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (the one outside) into the &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder. This may take a while since it totals to about 1.5 GBs.&lt;br /&gt;
&lt;br /&gt;
If you're impatient or tight on time / space, consider doing the inverse instead, i.e. moving the &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; to the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (the one outside), and then moving that folder back into the &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt; folder. This will be significantly faster since move operations are faster than copies.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Command-Line Approach:'''&lt;br /&gt;
&lt;br /&gt;
{{Windows|In the existing ''Command Prompt'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;xcopy /s /e hl2 orangebox\hl2&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|In the existing ''Terminal'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;cp -R hl2 orangebox/hl2&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Campaign Content==&lt;br /&gt;
Campaign content is stored only in GCFs downloadable only via the Steam client, so be prepared to upload the extracted files to your server. You will need [http://nemesis.thewavelength.net/index.php?p=25 this application] in order to proceed.&lt;br /&gt;
&lt;br /&gt;
Things are a little easier for Windows server operators with Remote Desktop access to their servers since they can simply install Steam on their servers and do everything directly there.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The Obsidian Team might offer to copy the extracted GCF content onto servers via their Windows server to save upload time in future, in which case you can safely ignore this section.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life source.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;hl1&amp;lt;/tt&amp;gt; folder (in the GCF) to your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl1&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life Deathmatch: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life 2 content.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====source 2007 binaries.gcf====&lt;br /&gt;
====source 2007 shared materials.gcf====&lt;br /&gt;
====source 2007 shared models.gcf====&lt;br /&gt;
====source 2007 shared sounds.gcf====&lt;br /&gt;
====half-life 2 2007 base content.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;, with &amp;lt;tt&amp;gt;source 2007 binaries.gcf&amp;lt;/tt&amp;gt; being extracted first and &amp;lt;tt&amp;gt;half-life 2 2007 base content.gcf&amp;lt;/tt&amp;gt; being last), extract the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCFs) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Lost Coast===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Huh?  :V  {{Todo|Further elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode One===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode 1 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
====half-life 2 episode one.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====episodic 2007 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
====episode one 2007 content.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, and everything from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Two===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode two content.gcf====&lt;br /&gt;
====episode two maps.gcf====&lt;br /&gt;
====episode two materials.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;), extract everything from the &amp;lt;tt&amp;gt;ep2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/ep2&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist and overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Three===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
You must be living in the future.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Additional Game Content==&lt;br /&gt;
'''Note:''' If you download any of the following (sans ''Portal'') using the ''HLDS Update Tool'' after downloading &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;, &amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;you will be forced to download a new set of engine binaries incompatible with the current release of Obsidian Conflict&amp;lt;/span&amp;gt;. A telltale sign that this has occurred is when you see an engine error along the lines of ''SetupArrayProps_R: array prop '(null)' is at index zero'' or ''Host_Error: IDLLFunctions::DLLInit returned false'' when you try to start the server. To workaround that, simply rename the &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt; folder (inside &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;) to something else (e.g. &amp;lt;tt&amp;gt;bin_se2007&amp;lt;/tt&amp;gt;) '''before''' downloading the game's files. On completion, delete the newly created &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt; folder and rename the old one back to &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For the curious, the reason for this is that almost all official Valve games now run on [http://developer.valvesoftware.com/wiki/Source_Engine_2009 Source Engine 2009], but most mods (sans ''Garry's Mod'') continue to run on the older ''Source Engine 2007'' (Source SDK Base 2007). These two versions are incompatible with each other, and Valve has yet to release a version of ''Source SDK Base'' for ''Source Engine 2009''.&lt;br /&gt;
===Counter-Strike: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
{{Todo|Downloadable with the HLDS Update Tool, elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Day of Defeat: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
{{Todo|Downloadable with the HLDS Update Tool, elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Portal===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Team Fortress 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Downloading And Installing Obsidian==&lt;br /&gt;
Copy the &amp;lt;tt&amp;gt;obsidian&amp;lt;/tt&amp;gt; folder from a fresh install of Obsidian Conflict into your dedicated server's &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
{{Todo|Further elaboration needed.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mounting Content==&lt;br /&gt;
Content mounts are controlled by a set of files in the &amp;lt;tt&amp;gt;obsidian/mount&amp;lt;/tt&amp;gt; folder. Each file determines whether or not the respective game's content is mounted. These files are merely blank files without any extensions - their contents do not matter since the mod merely checks if the file is there, mounting the content if the file is present.&lt;br /&gt;
Valid file names are:&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;css&amp;lt;/tt&amp;gt; &amp;amp;harr; Counter-Strike: Source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;dod&amp;lt;/tt&amp;gt; &amp;amp;harr; Day of Defeat: Source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;ep2&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life 2: Episode Two&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life 2: Episode One&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;hls&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life: Source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;lostcoast&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life 2: Lost Coast&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Todo|Further elaboration needed.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color:grey&amp;quot;&amp;gt;Still in progress, give me more time, will ya?&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:ServerOP]]&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=How_to_make_OC_playermodels&amp;diff=1432</id>
		<title>How to make OC playermodels</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=How_to_make_OC_playermodels&amp;diff=1432"/>
				<updated>2012-04-10T15:44:16Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Originally written by [http://www.obsidianconflict.net/forums/memberlist.php?mode=viewprofile&amp;amp;u=458 fug4life], with tips and tricks from [http://www.obsidianconflict.net/forums/memberlist.php?mode=viewprofile&amp;amp;u=1667 Maestro Fénix] and [http://obsidianconflict.net/forums/memberlist.php?mode=viewprofile&amp;amp;u=1305 TESLA-X4].&lt;br /&gt;
&lt;br /&gt;
In this tutorial, you will learn how to make a player model for Obsidian Conflict.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
*'''Source Development Kit (Source SDK)''': Available in ''Steam &amp;amp;rarr; Library &amp;amp;rarr; Tools''. This is required as a base for the model decompiler program, and to recompile models.&lt;br /&gt;
&lt;br /&gt;
*'''GCFScape (Optional, unless you intend to modify a model from an official Valve game)''': Allows you to browse and extract the contents of [http://developer.valvesoftware.com/wiki/GCF Game Cache Files (GCFs)]. http://nemesis.thewavelength.net/index.php?p=26&lt;br /&gt;
&lt;br /&gt;
*'''MDLDecompiler''': Self-explanatory. http://www.chaosincarnate.net/cannonfodder/mdldecompiler.php&lt;br /&gt;
&lt;br /&gt;
*'''GUI StudioMDL''': This program is a GUI front end for the [http://developer.valvesoftware.com/wiki/Studiomdl Studiomdl] tool in the Source SDK. http://www.wunderboy.org/apps/guistudiomdl2.php&lt;br /&gt;
&lt;br /&gt;
*'''Notepad++ (Optional only for models for [http://developer.valvesoftware.com/wiki/Source_Engine_2006 Source Engine 2006] and below)''': You can use this or any other hex editor. http://notepad-plus.sourceforge.net/uk/site.htm&lt;br /&gt;
&lt;br /&gt;
*'''VTFEdit''': http://nemesis.thewavelength.net/index.php?c=178 &lt;br /&gt;
&lt;br /&gt;
*'''An Image Editor''' (such as ''Paint.NET'', ''Adobe Photoshop'', ''Paint Shop Pro'' or others).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Preparing The Materials==&lt;br /&gt;
First, you will need to create the folder of the new model that you are going to make. Go to your client's &amp;lt;tt&amp;gt;obsidian&amp;lt;/tt&amp;gt; folder (inside &amp;lt;tt&amp;gt;Steam/steamapps/sourcemods&amp;lt;/tt&amp;gt; for the uninitiated) and proceed to navigate to &amp;lt;tt&amp;gt;materials/models/player&amp;lt;/tt&amp;gt;. Create a new folder (with the name of your model) inside this folder (right-click an empty area &amp;amp;rarr; ''New'' &amp;amp;rarr; ''Folder''). Copy your model's materials into the new folder you created, then open their &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files.&lt;br /&gt;
&lt;br /&gt;
You should see something like this, in typical [http://developer.valvesoftware.com/wiki/KeyValues KeyValues] format:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;VertexLitGeneric&amp;quot;&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;$baseTexture&amp;quot; &amp;quot;Models/player/Mossman/mossman_sheet&amp;quot;&lt;br /&gt;
	&amp;quot;$envmap&amp;quot; &amp;quot;env_cubemap&amp;quot;&lt;br /&gt;
	&amp;quot;$bumpmap&amp;quot; &amp;quot;models/player/Mossman/Mossman_normal&amp;quot;&lt;br /&gt;
	&amp;quot;$normalmapalphaenvmapmask&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$envmapcontrast&amp;quot; &amp;quot;.20&amp;quot;&lt;br /&gt;
	&amp;quot;$envmapsaturation&amp;quot; &amp;quot;0.9&amp;quot;&lt;br /&gt;
	&amp;quot;$envmaptint&amp;quot; &amp;quot;[ .36 .36 .36 ]&amp;quot;&lt;br /&gt;
        &amp;quot;$halflambert&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$nodecal&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go to the &amp;lt;tt&amp;gt;$baseTexture&amp;lt;/tt&amp;gt; line, and change &amp;lt;tt&amp;gt;Models/player/Mossman/mossman_sheet&amp;lt;/tt&amp;gt; to point to where your textures (i.e. the [http://developer.valvesoftware.com/wiki/VTF .vtf]s) are located.&lt;br /&gt;
In the case of the above example, it would become &amp;lt;tt&amp;gt;Models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/mossman_sheet&amp;lt;/tt&amp;gt;, where &amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; is the name of your model.&lt;br /&gt;
&lt;br /&gt;
We're not done yet - you will also need to replace all occurences of &amp;lt;tt&amp;gt;Models/player/Mossman/&amp;lt;/tt&amp;gt; with &amp;lt;tt&amp;gt;Models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/&amp;lt;/tt&amp;gt; in that &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; file. To illustrate, in the above example, the line &amp;lt;tt&amp;gt;$bumpmap&amp;lt;/tt&amp;gt; also needs to be changed from &amp;lt;tt&amp;gt;models/player/Mossman/Mossman_normal&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/Mossman_normal&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If you reference an invalid path, your model will have the infamous error texture (a purple and black checkerboard texture will be seen instead of the original).&lt;br /&gt;
&lt;br /&gt;
After you have modified all the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files for your model, you are ready to convert the model for use as a player model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Converting The Model==&lt;br /&gt;
Go to the model files, and open the [http://developer.valvesoftware.com/wiki/MDL .mdl] file with ''Notepad++'' (or your favorite hex editor). The first four bytes in the file should be &amp;lt;tt&amp;gt;IDST&amp;lt;/tt&amp;gt; (hexadecimal sequence: &amp;lt;tt&amp;gt;0x49&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x44&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x53&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x54&amp;lt;/tt&amp;gt;). Now, verify that the fifth byte (immediately after the &amp;lt;tt&amp;gt;T&amp;lt;/tt&amp;gt;) is a &amp;lt;tt&amp;gt;,&amp;lt;/tt&amp;gt; (comma, hexadecimal: &amp;lt;tt&amp;gt;0x2C&amp;lt;/tt&amp;gt;). If it is, then you can safely close the program; nothing else needs to be done. If it is something else, such as a &amp;lt;tt&amp;gt;0&amp;lt;/tt&amp;gt; (zero, hexadecimal: &amp;lt;tt&amp;gt;0x30&amp;lt;/tt&amp;gt;) or a &amp;lt;tt&amp;gt;-&amp;lt;/tt&amp;gt; (minus sign, hexadecimal: &amp;lt;tt&amp;gt;0x2D&amp;lt;/tt&amp;gt;), you will need to change it back to a comma (i.e. &amp;lt;tt&amp;gt;IDST0&amp;lt;/tt&amp;gt; &amp;amp;rarr; &amp;lt;tt&amp;gt;IDST,&amp;lt;/tt&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''Note:''' This workaround is required because the model decompiler was written before games on [http://developer.valvesoftware.com/wiki/Source_Engine_2007 Source Engine 2007 and 2009] were released, and was never updated for forward compatibility by its author.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Open ''MDLDecompiler'', then select the model that you wish to decompile and select the folder where you wish to put the decompiled files. After starting the decompile process, wait for a prompt to appear, informing you of a successful recompile.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If the decompiler crashes for some unknown reason, attempt another 3-4 tries. If it still fails to work, you may wish to attempt to decompile it with [http://www.chaosincarnate.net/cannonfodder/cftools.php?program=studiocompiler StudioCompiler], or [http://developer.valvesoftware.com/wiki/User:Erix920 Erix920]'s [http://kathar.net/other/mdldecompiler.exe modified version of MDLDecompiler] instead.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;'''Additional Note:''' In certain cases, MDLDecompiler will seem to work perfectly fine - no crashes or error messages are generated - but will actually generate corrupted [http://developer.valvesoftware.com/wiki/SMD .smd] files, which when viewed in a modeling program such as ''XSI Mod Tool'' will have no mesh at all. A telltale sign of this is when the file sizes of most of the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; files are unusually small (&amp;lt; 1 MB), coupled with an unusually large physics model &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; (&amp;gt; 1 MB). There is no known solution for this issue at the time of writing, apart from contacting the creator of the model and asking (nicely!) for the model sources.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Go to the folder where the resulting files are. You will see several files with the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; extension and a file &amp;lt;tt&amp;gt;mdldecompiler.qc&amp;lt;/tt&amp;gt;. Open the [http://developer.valvesoftware.com/wiki/Qc .qc] file with ''Notepad++'' or your favorite text editor, for example Wordpad (but not a word processor like ''Microsoft Word''!).&lt;br /&gt;
&lt;br /&gt;
This script file determines the Studiomdl configuration for the model. A snippet is provided below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$cd &amp;quot;C:\Users\User\Desktop\New folder&amp;quot;&lt;br /&gt;
$modelname &amp;quot;player\Flandre.mdl&amp;quot;&lt;br /&gt;
$model &amp;quot;body&amp;quot; &amp;quot;ref.smd&amp;quot;&lt;br /&gt;
$cdmaterials &amp;quot;models\player\Flandre\&amp;quot;&lt;br /&gt;
$hboxset &amp;quot;default&amp;quot;&lt;br /&gt;
// Model uses material &amp;quot;txFlanFace.vmt&amp;quot;&lt;br /&gt;
// Model uses material &amp;quot;txFlandre.vmt&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_shared.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_ss.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_gestures.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_postures.mdl&amp;quot;&lt;br /&gt;
$surfaceprop &amp;quot;flesh&amp;quot;&lt;br /&gt;
$illumposition 0.016 0.578 34.522&lt;br /&gt;
$sequence ragdoll &amp;quot;ragdoll&amp;quot; ACT_DIERAGDOLL 1 fps 30.00&lt;br /&gt;
$ikchain rhand ValveBiped.Bip01_R_Hand knee  0.707 0.707 0.000&lt;br /&gt;
$ikchain lhand ValveBiped.Bip01_L_Hand knee  0.707 0.707 0.000&lt;br /&gt;
$ikchain rfoot ValveBiped.Bip01_R_Foot knee  0.707 -0.707 0.000&lt;br /&gt;
$ikchain lfoot ValveBiped.Bip01_L_Foot knee  0.707 -0.707 0.000&lt;br /&gt;
$collisionjoints &amp;quot;phymodel.smd&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	$mass 60.0&lt;br /&gt;
	$inertia 10.00&lt;br /&gt;
	$damping 0.01&lt;br /&gt;
	$rotdamping 1.50&lt;br /&gt;
	$rootbone &amp;quot;valvebiped.bip01_pelvis&amp;quot;&lt;br /&gt;
	$jointmerge &amp;quot;ValveBiped.Bip01_Pelvis&amp;quot; &amp;quot;ValveBiped.Bip01_Spine1&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A breakdown of the important components of the script:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$cd&amp;lt;/tt&amp;gt;: A pointer to the folder where the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; files reside in. If you moved these files elsewhere after decompiling the model, modify this to reflect that change.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$modelname&amp;lt;/tt&amp;gt;: This command determines where the resulting model will be placed in, with respect to the &amp;lt;tt&amp;gt;models&amp;lt;/tt&amp;gt; folder. Using the above snippet as an example, the resulting (compiled) model will be located at &amp;lt;tt&amp;gt;models/player/Flandre.mdl&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$cdmaterials&amp;lt;/tt&amp;gt;: A pointer to the folder where the materials for the model reside in, with respect to the &amp;lt;tt&amp;gt;materials&amp;lt;/tt&amp;gt; folder. Using the above snippet as an example, the full path will be &amp;lt;tt&amp;gt;materials/models/player/Flandre/&amp;lt;/tt&amp;gt;. Ensure that the path is valid or your model will end up with purple and black checkerboard textures instead.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$includemodel&amp;lt;/tt&amp;gt;: This command determines which model files are 'included' into the model. In layman's terms, this determines which animation libraries are referenced by the model. An Obsidian Conflict player model requires a different set of animation libraries depending on the character's gender:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
'''For a male model''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;$includemodel &amp;quot;player/male_shared.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_ss.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_gestures.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_postures.mdl&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
'''For a female model''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;$includemodel &amp;quot;player/female_shared.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_ss.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_gestures.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_postures.mdl&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$surfaceprop&amp;lt;/tt&amp;gt;: Used to define the physical surface properties the model will have. The default is &amp;lt;tt&amp;gt;flesh&amp;lt;/tt&amp;gt; (organic-human). The complete list is available [http://developer.valvesoftware.com/wiki/Material_surface_properties here].&lt;br /&gt;
'''Note:''' If this command was used in the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files to define multiple surface types and is also present in the &amp;lt;tt&amp;gt;.qc&amp;lt;/tt&amp;gt; script, the values set in the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files will be ignored. If this behavior is not desired, either delete this command from the &amp;lt;tt&amp;gt;mdldecompiler.qc&amp;lt;/tt&amp;gt; script, or specify the value as &amp;lt;tt&amp;gt;default&amp;lt;/tt&amp;gt; instead.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is all that you will typically need to modify in order to make a player model compatible with Obsidian Conflict.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Finishing Touches==&lt;br /&gt;
Save the script file and open ''GUI StudioMDL''. Select &amp;lt;tt&amp;gt;OrangeBox&amp;lt;/tt&amp;gt; for &amp;lt;tt&amp;gt;SDK Version&amp;lt;/tt&amp;gt; and for &amp;lt;tt&amp;gt;Target Mod or &amp;quot;GameInfo&amp;quot; path&amp;lt;/tt&amp;gt; select &amp;lt;tt&amp;gt;Obsidian Conflict&amp;lt;/tt&amp;gt; (you will need to [[Obsidian SDK Setup|configure the Source SDK for Obsidian Conflict]] prior to this). Go to ''File'' &amp;amp;rarr; ''Load .qc file'' and load the &amp;lt;tt&amp;gt;.qc&amp;lt;/tt&amp;gt; file, then click on the &amp;lt;tt&amp;gt;Compile&amp;lt;/tt&amp;gt; button.&lt;br /&gt;
&lt;br /&gt;
When ''GUI StudioMDL'' finishes compiling the model (you should see &amp;lt;tt&amp;gt;Completed &amp;quot;mdldecompiler.qc&amp;quot;&amp;lt;/tt&amp;gt;), open the ''Source SDK'', select &amp;lt;tt&amp;gt;Source 2007&amp;lt;/tt&amp;gt; in the &amp;lt;tt&amp;gt;Engine Version:&amp;lt;/tt&amp;gt; combo box and select &amp;lt;tt&amp;gt;Obsidian Conflict&amp;lt;/tt&amp;gt; in the &amp;lt;tt&amp;gt;Current Game:&amp;lt;/tt&amp;gt; combo box (once again, you will need to [[Obsidian SDK Setup|configure the Source SDK for Obsidian Conflict]] prior to this), then click on &amp;lt;tt&amp;gt;Model Viewer&amp;lt;/tt&amp;gt;. When ''Half-Life Model Viewer'' loads up, go to ''File'' &amp;amp;rarr; ''Load model...'' and select your model.&lt;br /&gt;
&lt;br /&gt;
If all went well, you should now see your model, complete with working animations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once you have verified that your model is in working condition, go to where the model files are located in your client's folder and create a new text file with the name of your model, but with the &amp;lt;tt&amp;gt;.txt&amp;lt;/tt&amp;gt; extension. Using the previous snippet as an example, the file would be &amp;lt;tt&amp;gt;models/player/Flandre.&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;txt&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
Paste the following inside the file (don't forget to alter the gender of the &amp;lt;tt&amp;gt;base model rig&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;voice&amp;lt;/tt&amp;gt; as necessary):&lt;br /&gt;
&amp;lt;pre&amp;gt;ModelSettings&lt;br /&gt;
{&lt;br /&gt;
	//Use this option to choose a base script to use instead.&lt;br /&gt;
	&amp;quot;usefile&amp;quot;	&amp;quot;none&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Base model rig to use (doubles up as a fallback if loading fails). Use either Male_01 or Female_01 for best results.&lt;br /&gt;
	&amp;quot;basemodel&amp;quot;	&amp;quot;Male_01&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Voice Sound 0=none, 1=male, 2=female, 3=combine&lt;br /&gt;
	&amp;quot;voice&amp;quot;	&amp;quot;1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Footstep Sound 1=shoe, 2=combine boots&lt;br /&gt;
	&amp;quot;footsteps&amp;quot;	&amp;quot;1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Gibs, 1 = generic human, 2 = generic alien, 3 = human rebel ragdoll gibs, 4 = Ragdoll only&lt;br /&gt;
	&amp;quot;Gibs&amp;quot;	&amp;quot;4&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Determines if this model should be considered anime-related, 0 = no, 1 = yes&lt;br /&gt;
	&amp;quot;anime&amp;quot;		&amp;quot;0&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
With this file, you can configure the voice, footstep sounds and gibs of the model.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;'''Note:''' At the time of writing, the &amp;lt;tt&amp;gt;anime&amp;lt;/tt&amp;gt; keyvalue is ignored. It will only take effect with the next release of Obsidian Conflict, but applying it now is highly recommended for forward compatibility.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, head over to &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player&amp;lt;/tt&amp;gt; and create a new &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file with the same name as your model's &amp;lt;tt&amp;gt;.mdl&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The path after &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/&amp;lt;/tt&amp;gt; '''must''' reflect the path to the model, i.e. if the model is at &amp;lt;tt&amp;gt;models/player/somemodelname/somemodel.mdl&amp;lt;/tt&amp;gt;, the two files will be &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player/somemodelname/somemodel.vmt&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player/somemodelname/somemodel.vtf&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; file (you can make a copy of an existing one and clear it for use), paste the following:&lt;br /&gt;
&amp;lt;pre&amp;gt;UnlitGeneric&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;$translucent&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$basetexture&amp;quot; &amp;quot;vgui\playermodels\player\Hostage_01&amp;quot;&lt;br /&gt;
	&amp;quot;$vertexcolor&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$vertexalpha&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$no_fullbright&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$ignorez&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$decalscale&amp;quot; &amp;quot;0.250&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On the &amp;lt;tt&amp;gt;$basetexture&amp;lt;/tt&amp;gt; line, change &amp;lt;tt&amp;gt;Hostage_01&amp;lt;/tt&amp;gt; to point to your accompanying &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
To create that &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file, take a screenshot in ''Half-Life Model Viewer'' then save it as a &amp;lt;tt&amp;gt;.tga&amp;lt;/tt&amp;gt; file and open that in ''VTFEdit'', then save it in the &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; format. Give it the same name as your model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once you have placed the two files into your client's &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player&amp;lt;/tt&amp;gt; folder, test it all out in-game. If all works well (animations, textures, sounds, preview image), pat yourself on the back - you've successfully created a new player model.&lt;br /&gt;
*To test the model's preview image, start the game, then go to &amp;lt;tt&amp;gt;Options&amp;lt;/tt&amp;gt; &amp;amp;rarr; &amp;lt;tt&amp;gt;Multiplayer&amp;lt;/tt&amp;gt; tab, and select your model from the combo box.&lt;br /&gt;
*To test the model's animations and textures, select the model, then start a local server and turn on &amp;lt;tt&amp;gt;sv_cheats&amp;lt;/tt&amp;gt;. Execute the &amp;lt;tt&amp;gt;thirdperson&amp;lt;/tt&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Extra ==&lt;br /&gt;
&lt;br /&gt;
OC playermodels are compatible with faceposing, jigglebones and particles. If your model have them, you will be able to see their effects in game. Also, in the next version, it will support multiple skins and bodygroups.&lt;br /&gt;
&lt;br /&gt;
==Tips And Tricks==&lt;br /&gt;
===Creating The VGUI Preview Image===&lt;br /&gt;
====Using Paint Shop Pro====&lt;br /&gt;
You will also need to download and install a [http://nemesis.thewavelength.net/index.php?p=39 VTF Plugin for Paint Shop Pro] beforehand (Information about how to use it and what programs can use it [http://developer.valvesoftware.com/wiki/Photoshop_VTF_Plugin here]).&lt;br /&gt;
&lt;br /&gt;
So, Open Paint Shop Pro and open the screenshot (.tga file) you took in SDK Model Viewer earlier.&lt;br /&gt;
(Prefebably you want the model holding an oc weapon and you can use centre view to get the model where you want it.&lt;br /&gt;
To look around in SDK Model Viewer use: Right mouse click - zoom in/out.&lt;br /&gt;
Left mouse click to rotate. Hold shift and use left click mouse to move the model up/down/left/right).&lt;br /&gt;
&lt;br /&gt;
Also in Paint Shop Pro it helps to add a grid (view/grid, size dosen't matter)it just helps when working.&lt;br /&gt;
&lt;br /&gt;
So lets move on to converting/working on the screenshot.&lt;br /&gt;
&lt;br /&gt;
First we will use the Crop tool to cut the picture just so that we have the top half of the body. Make sure you use free form and have the box size that you are cropping set to 256x200, position in the centre of the top half of the body (showing the head, chest and shoulders), and then crop.&lt;br /&gt;
&lt;br /&gt;
Now, click layers and select new mask layer/show all.&lt;br /&gt;
&lt;br /&gt;
You will see the picture has a mask-raster 1 layer, right click and select delete and then yes.&lt;br /&gt;
&lt;br /&gt;
Select the Magic Wand tool set up with something like mode = replace&lt;br /&gt;
matchmode = RGB value tolerance = 1 use all layers and use contiguous also use Anti-alias and select outside from dropdown box.&lt;br /&gt;
Click on the background on the image and not the model to use the Magic Wand.&lt;br /&gt;
(Baically you want to delete the back ground and not the model itself).&lt;br /&gt;
So if the the whole box and around the model is selected, its ok to delete.&lt;br /&gt;
&lt;br /&gt;
Once the background is deleted, with the Magic Wand tool still open change the matchmode to = All opaque and this time click on the model in the image and it should change the Magic Wand from around the edges and around the model to actually now just around the model only.&lt;br /&gt;
&lt;br /&gt;
Click layers select new mask layer/form image, make sure source opacity is checked and everything else is unchecked, click ok.&lt;br /&gt;
&lt;br /&gt;
Now we are going to cut the highlighted model onto a new image. So with the Magic Wand still highlighting around the model on the image change to the Pan tool and right click on the highlighted model and select: copy merged.&lt;br /&gt;
&lt;br /&gt;
Go to File and create a new image with these properties:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;width =256 pixels&lt;br /&gt;
height =256 pixels&lt;br /&gt;
resolution =72,000 pixels/inch&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Choose Rastor Background&lt;br /&gt;
image depth =RGB - 8bits/channel&lt;br /&gt;
&lt;br /&gt;
And check the Transparent box.&lt;br /&gt;
&lt;br /&gt;
Paste your copied image onto your new image, so, right click on your new image and paste as a new selection. Position into the top left hand corner as much as possible and then just left click.&lt;br /&gt;
&lt;br /&gt;
Now we need to give an alpha channel so go to selections select load/save selection and choose save selection to alpha channel and clcik ok/save in the pop-up.&lt;br /&gt;
&lt;br /&gt;
Finally now click File and save copy as and name it Hostage_01.png using the .PNG file format and press yes to the pop-up. (this is so you have a nice image to upload to the forums).&lt;br /&gt;
&lt;br /&gt;
Click File and save copy as again and this time name it nameofthemodel.vtf using the .VTF file format and press yes/ok to the pop-up.&lt;br /&gt;
&lt;br /&gt;
It´s time to use the VTF plugin. Set the properties as:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Template = Compressed Texture With Alpha&lt;br /&gt;
Format = DXT5 (Common Format)&lt;br /&gt;
Mipmap Filter = Box&lt;br /&gt;
Sharpen Filter = Sharpen Soft&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Check/tick Mipmaps and Thumbnail.&lt;br /&gt;
&lt;br /&gt;
And from the list just make sure Eight Bit Alpha (Format Specific) and Nice Filter are both checked/ticked. Everything else should be unchecked/unticked, then press ok.&lt;br /&gt;
&lt;br /&gt;
Finally add it to your obsidian/materials/VGUI/playermodels/player directory to finish.&lt;br /&gt;
&lt;br /&gt;
Example image:&lt;br /&gt;
&lt;br /&gt;
[[File:Hostage01.png|frame|Example image: Hostage_01]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Using Paint.NET====&lt;br /&gt;
&lt;br /&gt;
# Get the image (you know, &amp;quot;impr. pant&amp;quot; or another way to take a photo of your model).&lt;br /&gt;
# Prepare the image. If you are used &amp;quot;impr. pant&amp;quot;, use the rectangule selection and select &amp;quot;cut selected&amp;quot; (after go to edit-&amp;gt;paste as a new image). Only will have the image that it was inside of the rectangule. Use the &amp;quot;wand&amp;quot; tool and put the tolerancy level to 10% or less. Delete everything that surround the model.&lt;br /&gt;
# Go to &amp;quot;Image&amp;quot; and select &amp;quot;change size&amp;quot;. Deactivate &amp;quot;keep relation size&amp;quot; and set the image in 200x200.&lt;br /&gt;
# Back to &amp;quot;Image&amp;quot; and select &amp;quot;change canvas size&amp;quot;. Set 256x256 and select &amp;quot;upper left position&amp;quot;.&lt;br /&gt;
# Save the image in .tga format with the name of the model.&lt;br /&gt;
# Drag and drop the .tga file into VTFedit. Press &amp;quot;ok&amp;quot; and save as .vtf format. Must have the same name of the model.&lt;br /&gt;
# Create the .vmt coping another .vmt from the materials/VGUI/playermodels/Player folder if you don´t want write it, change the directory of the image and put it in materials/VGUI/playermodels/Player.&lt;br /&gt;
# Sucess.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Fixing the facemap bug===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some models like [http://img17.imageshack.us/img17/7545/badfacemap.jpg this] can present this bug after compiling the model. To fix this, go to the materials folder and edit the facemap material VTF (this model in particular uses the: art_facemap.VTF).&lt;br /&gt;
&lt;br /&gt;
You will need to use the VTF Edit program to open the art_facemap.VTF file.&lt;br /&gt;
&lt;br /&gt;
Once in the program and file is open, under the 'Image' tab is a list of check boxes, we need to un-check (un-tick). The: &amp;lt;tt&amp;gt;Clamp S&amp;lt;/tt&amp;gt; and the &amp;lt;tt&amp;gt;Clamp T&amp;lt;/tt&amp;gt; parameters. Save the file and check back in SDK Model Viewer by 'refreshing' the model and you'll see the face is now fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Recommendations===&lt;br /&gt;
&lt;br /&gt;
All this tutorial is made for models with the Valvebiped skeleton (a.k.a. HL2 biped skeleton). If the model have different names in the bones or a different structure of the skeleton it will give problems. &lt;br /&gt;
&lt;br /&gt;
In this case, open the refencial SMD file of the model in a Model editor program such as 3DS Max, XSI, Blender or others, and fix it changing the name of the bones or directly re-rigging the model with a new skeleton.&lt;br /&gt;
&lt;br /&gt;
After do this, remember modificate too the phymodel and the ragdoll (and the animations file if the model have too).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you are making a playermodel directly from a ragdoll (a model that doesnt have a HL2 skeleton), and you have problems when you try compile it, try adding the following to the .qc file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$poseparameter move_yaw -180.00 180.00&lt;br /&gt;
$poseparameter body_pitch -90.00 90.00&lt;br /&gt;
$poseparameter body_yaw -90.00 90.00&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$attachment &amp;quot;grenade0&amp;quot; &amp;quot;ValveBiped.Bip01_Spine&amp;quot; 5.99 0.39 7.59 rotate 76.91 71.22 57.14&lt;br /&gt;
$attachment &amp;quot;grenade1&amp;quot; &amp;quot;ValveBiped.Bip01_Spine&amp;quot; 6.24 -2.34 6.66 rotate 62.97 100.42 87.46&lt;br /&gt;
$attachment &amp;quot;grenade2&amp;quot; &amp;quot;ValveBiped.Bip01_Spine&amp;quot; -0.35 2.21 -8.34 rotate -75.89 92.68 95.17&lt;br /&gt;
$attachment &amp;quot;grenade3&amp;quot; &amp;quot;ValveBiped.Bip01_Spine&amp;quot; 1.22 -1.11 -7.34 rotate -78.22 82.38 102.13&lt;br /&gt;
$attachment &amp;quot;pistol&amp;quot; &amp;quot;ValveBiped.Bip01_R_Thigh&amp;quot; 0.05 3.84 -6.30 rotate 0.08 -2.59 79.96&lt;br /&gt;
$attachment &amp;quot;primary&amp;quot; &amp;quot;ValveBiped.Bip01_Spine2&amp;quot; 10.44 -5.10 -4.88 rotate -11.71 179.79 3.52&lt;br /&gt;
$attachment &amp;quot;defusekit&amp;quot; &amp;quot;ValveBiped.Bip01_Pelvis&amp;quot; 0.00 1.22 -6.66 rotate -73.06 90.93 179.75&lt;br /&gt;
$attachment &amp;quot;eholster&amp;quot; &amp;quot;ValveBiped.Bip01_L_Thigh&amp;quot; 5.36 0.02 4.90 rotate 8.31 -91.56 99.67&lt;br /&gt;
$attachment &amp;quot;lfoot&amp;quot; &amp;quot;ValveBiped.Bip01_L_Foot&amp;quot; -0.00 5.20 -0.00 rotate -0.00 0.00 -0.00&lt;br /&gt;
$attachment &amp;quot;rfoot&amp;quot; &amp;quot;ValveBiped.Bip01_R_Foot&amp;quot; 0.00 5.20 0.00 rotate 0.00 0.00 0.00&lt;br /&gt;
$attachment &amp;quot;muzzle_flash&amp;quot; &amp;quot;ValveBiped.Bip01_L_Hand&amp;quot; -0.00 -0.00 -0.00 rotate 0.00 -0.00 -0.00&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not always fix the problem, but at least you will have an another chance to get it work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If HLMV (Half-Life model view) crashes when you load your model, try compiling it without the animations (add // or delete the lines of $$includemodel). You will be able to see it (but without animations), useful to search possible bugs. Normally, this happen when the skeleton isnt the HL2 biped type, or if you committed an error when you rigged the model. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If your model is invisible in HLMV (completely, doesnt proyect shadow), there is a problem with the rig of the model. Try re-rigging it again.&lt;br /&gt;
&lt;br /&gt;
If only when the model got the &amp;quot;ragdoll&amp;quot; pose, and when you go to the &amp;quot;physics&amp;quot; tab, the model is screwed, then you will have to remade again the ragdoll SMD file (get the original referencial model, and export it to SMD as a sequence).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This [http://kathar.net/hl2modding/errors.php page] it will be very useful if you have an error with some of the programs that we use in this tutorial. It explains all about the problem, why it happens and how to fix it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To add jigglebones to a model, follow this [http://www.youtube.com/watch?v=tmfK-xlNn88 video]. More information about $jigglebone command [http://developer.valvesoftware.com/wiki/$jigglebone here].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have the following error when you are compiling the model in GUIStudioMDL:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;ERROR: Too many materials used, max 32&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Significates that you reach the limit of textures of the model. Try deleting the bodygroups of the model (if it have) or re-make the UVmapping.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you use 3DS Max to modify a model, remember check in the SMD exporter plugin &amp;lt;tt&amp;gt;alternate normals export method&amp;lt;/tt&amp;gt; to avoid make your model &amp;quot;polygonal&amp;quot;. [http://img585.imageshack.us/img585/2839/21223383.jpg example photo] (only when you are going to export the referencial model, for the ragdoll use the &amp;lt;tt&amp;gt;sequence&amp;lt;/tt&amp;gt; option).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you are going to do a model hack (for example, using the head of a model in a different body), it must have both the same skeleton. If not, remember rig the new part, or you will get bugs like [http://img543.imageshack.us/img543/5624/56712636.jpg this].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you made a phymodel ([http://developer.valvesoftware.com/wiki/Jointed_collision_model Collision model]), remember rig it with the skeleton, or you will have [http://img228.imageshack.us/img228/2781/33368549.jpg this bug].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Just before start the rigging of a model, make sure that the skeleton and the mesh are correctly sized. Use the male_01 or female_01 reference (copy the original model to another folder, decompile it and compare the referencial model inside your model editor with your model). A wrong size will cause deformations on the model like [http://img63.imageshack.us/img63/518/10321754.png this].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Don´t know about how to rig models? No problem, follow the complete guide about how to do it made by MarioKart64n [http://www.facepunch.com/showthread.php?t=542906 here].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ask '''always''' permission if you are going to port/modify a model created for another person. If he/she accepts your request, don´t forget give credit him/her.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If after all you continue having problems or doubts about something, go to the forums to ask help ([http://obsidianconflict.net/forums/viewforum.php?f=7 Modeling help forum]). We will be always give you help (if you first respect us, obiously). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Miscellaneous_Tutorials]]&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=Obsidian_Conflict_FAQ&amp;diff=1320</id>
		<title>Obsidian Conflict FAQ</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=Obsidian_Conflict_FAQ&amp;diff=1320"/>
				<updated>2011-12-28T03:07:16Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: Added SetupArrayProps_R engine error article to page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}} &lt;br /&gt;
&lt;br /&gt;
{{catup|Obsidian_Conflict|Obsidian Conflict|center}}&lt;br /&gt;
This is a directory of Frequently Asked Questions about [[Obsidian_Conflict|Obsidian Conflict]].&lt;br /&gt;
&lt;br /&gt;
== Setting Up Obsidian Conflict ==&lt;br /&gt;
&lt;br /&gt;
* [[Obsidian_Conflict_Setup|How do I play other games in Obsidian Conflict (mount games)?]]&lt;br /&gt;
* [[Supported_Games|What games can I play cooperatively in Obsidian Conflict?]]&lt;br /&gt;
&lt;br /&gt;
== General Troubleshooting ==&lt;br /&gt;
* [[Lobby_Map_Error|Why does a map not load in the lobby?]]&lt;br /&gt;
* [[FAQ_More_Help|Where can i look for more help?]]&lt;br /&gt;
* [[Bug_Report|I found a bug or crashed. How can I report it?]]&lt;br /&gt;
&lt;br /&gt;
== Common Error Messages ==&lt;br /&gt;
* [[MountFilesystem_Failed|MountFilesystem( ### ) failed: SteamMountFilesystem(###,###,###) failed with error]]&lt;br /&gt;
* [[Invalid_Steam_ID_Ticket|Invalid STEAM UserID Ticket]]&lt;br /&gt;
* [[Account_Used_In_Another_Location|Disconnect: This Steam account is being used in another location]]&lt;br /&gt;
* [[SetupArrayProps_R:_array_prop_'(null)'_is_at_index_zero|SetupArrayProps_R: array prop '(null)' is at index zero]]&lt;br /&gt;
&lt;br /&gt;
== General Obsidian Conflict information ==&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=SetupArrayProps_R:_array_prop_%27(null)%27_is_at_index_zero&amp;diff=1319</id>
		<title>SetupArrayProps R: array prop '(null)' is at index zero</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=SetupArrayProps_R:_array_prop_%27(null)%27_is_at_index_zero&amp;diff=1319"/>
				<updated>2011-12-28T03:03:21Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: Created page with &amp;quot;==Definition== If you get this engine error after startup, you're starting ''Obsidian Conflict'' with the incorrect set of engine binaries (for the curious, ''Source Engine 2009'...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Definition==&lt;br /&gt;
If you get this engine error after startup, you're starting ''Obsidian Conflict'' with the incorrect set of engine binaries (for the curious, ''Source Engine 2009'' instead of ''Source Engine 2007''. ''Obsidian Conflict'' runs on ''Source SDK Base 2007'' since Valve has yet to release ''Source SDK Base 2009'' for public consumption).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Resolution==&lt;br /&gt;
To resolve this issue, open &amp;lt;tt&amp;gt;gameinfo.txt&amp;lt;/tt&amp;gt; ('''not to be confused with &amp;lt;tt&amp;gt;[[Obsidian SDK Setup|gameconfig.txt]]&amp;lt;/tt&amp;gt;''') inside your client's &amp;lt;tt&amp;gt;obsidian&amp;lt;/tt&amp;gt; folder (inside &amp;lt;tt&amp;gt;Steam/steamapps/sourcemods&amp;lt;/tt&amp;gt; for the uninitiated).&lt;br /&gt;
You should see the following:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;GameInfo&amp;quot;&lt;br /&gt;
{&lt;br /&gt;
	game	&amp;quot;Obsidian Conflict 1.35&amp;quot;&lt;br /&gt;
	title	&amp;quot;OBSIDIAN CONFLICT 1.35&amp;quot;&lt;br /&gt;
	title2	&amp;quot;OBSIDIAN CONFLICT 1.35&amp;quot;&lt;br /&gt;
	type multiplayer_only&lt;br /&gt;
	nomodels 0&lt;br /&gt;
	nohimodel 1&lt;br /&gt;
	nocrosshair 1&lt;br /&gt;
	hidden_maps&lt;br /&gt;
	{&lt;br /&gt;
		&amp;quot;test_speakers&amp;quot;		1&lt;br /&gt;
		&amp;quot;test_hardware&amp;quot;		1&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	developer &amp;quot;Obsidian Conflict Team&amp;quot;&lt;br /&gt;
	developer_url &amp;quot;http://obsidianconflict.net&amp;quot;&lt;br /&gt;
	manual &amp;quot;http://wiki.obsidianconflict.net&amp;quot;&lt;br /&gt;
	icon &amp;quot;resource/obsidian&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	FileSystem&lt;br /&gt;
	{&lt;br /&gt;
		SteamAppId				218		// This will mount all the GCFs we need (240=CS:S, 220=HL2).&lt;br /&gt;
		ToolsAppId				211		// Tools will load this (ie: source SDK caches) to get things like materials\debug, materials\editor, etc.&lt;br /&gt;
		&lt;br /&gt;
		//&lt;br /&gt;
		// The code that loads this file automatically does a few things here:&lt;br /&gt;
		//&lt;br /&gt;
		// 1. For each &amp;quot;Game&amp;quot; search path, it adds a &amp;quot;GameBin&amp;quot; path, in &amp;lt;dir&amp;gt;\bin&lt;br /&gt;
		// 2. For each &amp;quot;Game&amp;quot; search path, it adds another &amp;quot;Game&amp;quot; path in front of it with _&amp;lt;langage&amp;gt; at the end.&lt;br /&gt;
		//    For example: c:\hl2\cstrike on a french machine would get a c:\hl2\cstrike_french path added to it.&lt;br /&gt;
		// 3. For the first &amp;quot;Game&amp;quot; search path, it adds a search path called &amp;quot;MOD&amp;quot;.&lt;br /&gt;
		// 4. For the first &amp;quot;Game&amp;quot; search path, it adds a search path called &amp;quot;DEFAULT_WRITE_PATH&amp;quot;.&lt;br /&gt;
		//&lt;br /&gt;
&lt;br /&gt;
		//&lt;br /&gt;
		// Search paths are relative to the base directory, which is where hl2.exe is found.&lt;br /&gt;
		//&lt;br /&gt;
		// |gameinfo_path| points at the directory where gameinfo.txt is.&lt;br /&gt;
		// We always want to mount that directory relative to gameinfo.txt, so&lt;br /&gt;
		// people can mount stuff in c:\mymod, and the main game resources are in&lt;br /&gt;
		// someplace like c:\program files\valve\steam\steamapps\half-life 2.&lt;br /&gt;
		//&lt;br /&gt;
		SearchPaths&lt;br /&gt;
		{&lt;br /&gt;
			Game				|gameinfo_path|.&lt;br /&gt;
			Game				|all_source_engine_paths|hl2&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Step One===&lt;br /&gt;
This first thing to check is the &amp;lt;tt&amp;gt;AppId&amp;lt;/tt&amp;gt; mounts. This refers to the following block in the file:&lt;br /&gt;
&amp;lt;pre&amp;gt;	FileSystem&lt;br /&gt;
	{&lt;br /&gt;
		SteamAppId				218		// This will mount all the GCFs we need (240=CS:S, 220=HL2).&lt;br /&gt;
		ToolsAppId				211		// Tools will load this (ie: source SDK caches) to get things like materials\debug, materials\editor, etc.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;SteamAppId&amp;lt;/tt&amp;gt; should '''only''' be &amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;218&amp;lt;/span&amp;gt;, and not anything else. If it is not, change it back to this value.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;ToolsAppId&amp;lt;/tt&amp;gt; should '''only''' be &amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;211&amp;lt;/span&amp;gt;, and not anything else. If it is not, change it back to this value.&lt;br /&gt;
&lt;br /&gt;
'''Note:'''  &amp;lt;tt&amp;gt;AdditionalContentID&amp;lt;/tt&amp;gt;, if present, is ignored by ''Obsidian Conflict''.&lt;br /&gt;
&lt;br /&gt;
===Step Two===&lt;br /&gt;
Next, check the search path configuration. This refers to the following block in the file:&lt;br /&gt;
&amp;lt;pre&amp;gt;		SearchPaths&lt;br /&gt;
		{&lt;br /&gt;
			Game				|gameinfo_path|.&lt;br /&gt;
			Game				|all_source_engine_paths|hl2&lt;br /&gt;
		}&amp;lt;/pre&amp;gt;&lt;br /&gt;
This block defines how ''Obsidian Conflict'' searches for a file to load. For the sample above, the mod will first search for the file inside the &amp;lt;tt&amp;gt;obsidian&amp;lt;/tt&amp;gt; folder, before falling back to the GCFs.&lt;br /&gt;
&lt;br /&gt;
Only the above two lines should be listed in this block (the only exception will be the use of the ''Metamod: Source'' plugin, but that is beyond the scope of this article). If there are excess lines, remove them to return to this configuration.&lt;br /&gt;
&lt;br /&gt;
===Step Three===&lt;br /&gt;
Once both the above blocks are checked and reverted to their proper values, save the file and '''restart ''Steam'''''. The issue should now be resolved.&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=Talk:How_to_make_rappeling_combine&amp;diff=1029</id>
		<title>Talk:How to make rappeling combine</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=Talk:How_to_make_rappeling_combine&amp;diff=1029"/>
				<updated>2011-05-12T01:38:30Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: Created page with &amp;quot;I think you could target the particular NPC that was spawned by the maker with &amp;lt;tt&amp;gt;!activator&amp;lt;/tt&amp;gt; instead of blanket-targetting all spawned instances with the same name - ~~~~&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I think you could target the particular NPC that was spawned by the maker with &amp;lt;tt&amp;gt;!activator&amp;lt;/tt&amp;gt; instead of blanket-targetting all spawned instances with the same name - [[User:TESLA-X4|TESLA-X4]] 03:38, 12 May 2011 (CEST)&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=1006</id>
		<title>Dedicated Server Setup 2</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=1006"/>
				<updated>2011-04-08T17:07:04Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: Added page to ServerOP category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{wip}}&lt;br /&gt;
This page was created since I can't update the one [[Dedicated Server Setup|here]]. I'm still working on it (but don't have enough time to do it all at once), so it may seem incomplete. - [[User:TESLA-X4|TESLA-X4]] 12:01, 3 April 2011 (CEST)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
* A basic understanding of filesystem paths (i.e. &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; refers to the folder &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; ''inside'' &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;, not both the folders), and the different path representations between Windows and *nix (i.e. &amp;lt;tt&amp;gt;\&amp;lt;/tt&amp;gt; in Windows is the same as &amp;lt;tt&amp;gt;/&amp;lt;/tt&amp;gt; in UNIX[-like] operating systems).&lt;br /&gt;
* A basic understanding of the operating system's command-line interface (i.e. [[Wikipedia:Command Prompt|Command Prompt]] for Windows and Terminals for [[Wikipedia:GNOME Terminal|Linux]] and [[Wikipedia::Apple Terminal|Mac OS]]).&lt;br /&gt;
* A fast broadband connection (preferably one without a data transfer limit) to prevent premature aging waiting for the uploads to complete.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;'''Note:''' At the time of writing, no binaries are publicly available for Linux and Mac OS.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Base Server Install==&lt;br /&gt;
===Step 1: Download The HLDS Update Tool===&lt;br /&gt;
{{Windows|Download this file to a temporary location: '''http://www.steampowered.com/download/hldsupdatetool.exe'''}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In a ''Terminal (On Ubuntu: Applications &amp;amp;rarr; Accessories &amp;amp;rarr; Terminal)'' window, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;mkdir srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;wget &amp;lt;nowiki&amp;gt;http://www.steampowered.com/download/hldsupdatetool.bin&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 2: Install The HLDS Update Tool===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|Double-click on &amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt; and follow the instructions given by the wizard.&lt;br /&gt;
|For the purpose of this tutorial, we will assume that you have installed the server to &amp;lt;tt&amp;gt;c:\srcds&amp;lt;/tt&amp;gt;.&lt;br /&gt;
|Open a ''Command Prompt (Start &amp;amp;rarr; Accessories &amp;amp;rarr; Command Prompt)'' window and execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;c:&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''hldsupdatetool'' will now be downloaded to replace the one installed by the wizard.}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Terminal'' window as [[#Step 1: Download The HLDS Update Tool|Step 1]], execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;chmod +x hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''steam'' (the executable) will now be downloaded to replace the one extracted when you ran &amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;.}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 3: Download The Base Server Files===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Command Prompt'' window as [[#Step 2: Install The HLDS Update Tool|Step 2]], execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''hldsupdatetool'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the existing ''Terminal'' window from Steps 1 and 2, execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''steam'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 4: Setting Up The Folder Structure===&lt;br /&gt;
After [[#Step 3: Download The Base Server Files|Step 3]] completes, you should end up with something like this:&lt;br /&gt;
&lt;br /&gt;
{{Windows|&amp;lt;tt&amp;gt;hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds.exe&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|ClientRegistry.blob&lt;br /&gt;
|HldsUpdateTool.exe&lt;br /&gt;
|HldsUpdateTool_&amp;lt;tool version&amp;gt;.mst&lt;br /&gt;
|InstallRecord.blob&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|&amp;lt;tt&amp;gt;.steam\&lt;br /&gt;
|.steam\clientregistry.blob&lt;br /&gt;
|hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds_linux&lt;br /&gt;
|orangebox\srcds_run&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|hldsupdatetool.bin&lt;br /&gt;
|InstallRecord.blob&lt;br /&gt;
|steam&lt;br /&gt;
|test1.so&lt;br /&gt;
|test2.so&lt;br /&gt;
|test3.so&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, because Valve didn't set up the files properly on their server, you'll need to fix it yourself.&lt;br /&gt;
&lt;br /&gt;
'''GUI Approach:'''&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Delete the &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder and copy the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (the one outside) in its place.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Command-Line Approach:'''&lt;br /&gt;
&lt;br /&gt;
{{Windows|In the existing ''Command Prompt'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;rmdir /s orangebox\hl2&lt;br /&gt;
|xcopy /s /e hl2 orangebox&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|In the existing ''Terminal'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;rm -R orangebox/hl2&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cp -R hl2 orangebox&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Campaign Content==&lt;br /&gt;
Campaign content is stored only in GCFs downloadable only via the Steam client, so be prepared to upload the extracted files to your server. You will need [http://nemesis.thewavelength.net/index.php?p=25 this application] in order to proceed.&lt;br /&gt;
&lt;br /&gt;
Things are a little easier for Windows server operators with Remote Desktop access to their servers since they can simply install Steam on their servers and do everything directly there.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The Obsidian Team might offer to copy the extracted GCF content onto servers via their Windows server to save upload time in future, in which case you can safely ignore this section.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life source.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;hl1&amp;lt;/tt&amp;gt; folder (in the GCF) to your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl1&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life Deathmatch: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life 2 content.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====source 2007 binaries.gcf====&lt;br /&gt;
====source 2007 shared materials.gcf====&lt;br /&gt;
====source 2007 shared models.gcf====&lt;br /&gt;
====source 2007 shared sounds.gcf====&lt;br /&gt;
====half-life 2 2007 base content.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;, with &amp;lt;tt&amp;gt;source 2007 binaries.gcf&amp;lt;/tt&amp;gt; being extracted first and &amp;lt;tt&amp;gt;half-life 2 2007 base content.gcf&amp;lt;/tt&amp;gt; being last), extract the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCFs) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Lost Coast===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Huh?  :V  {{Todo|Further elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode One===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode 1 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
====half-life 2 episode one.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====episodic 2007 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
====episode one 2007 content.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, and everything from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Two===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode two content.gcf====&lt;br /&gt;
====episode two maps.gcf====&lt;br /&gt;
====episode two materials.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;), extract everything from the &amp;lt;tt&amp;gt;ep2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/ep2&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist and overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Three===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
You must be living in the future.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Additional Game Content==&lt;br /&gt;
'''Note:''' If you download any of the following (sans ''Portal'') using the ''HLDS Update Tool'' after downloading &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;, &amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;you will be forced to download a new set of engine binaries incompatible with the current release of Obsidian Conflict&amp;lt;/span&amp;gt;. A telltale sign that this has occurred is when you see an engine error along the lines of ''SetupArrayProps_R: array prop '(null)' is at index zero'' or ''Host_Error: IDLLFunctions::DLLInit returned false'' when you try to start the server. To workaround that, simply rename the &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt; folder (inside &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;) to something else (e.g. &amp;lt;tt&amp;gt;bin_se2007&amp;lt;/tt&amp;gt;) '''before''' downloading the game's files. On completion, delete the newly created &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt; folder and rename the old one back to &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For the curious, the reason for this is that almost all official Valve games now run on [http://developer.valvesoftware.com/wiki/Source_Engine_2009 Source Engine 2009], but most mods (sans ''Garry's Mod'') continue to run on the older ''Source Engine 2007'' (Source SDK Base 2007). These two versions are incompatible with each other, and Valve has yet to release a version of ''Source SDK Base'' for ''Source Engine 2009''.&lt;br /&gt;
===Counter-Strike: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
{{Todo|Downloadable with the HLDS Update Tool, elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Day of Defeat: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
{{Todo|Downloadable with the HLDS Update Tool, elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Portal===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Team Fortress 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Downloading And Installing Obsidian==&lt;br /&gt;
Copy the &amp;lt;tt&amp;gt;obsidian&amp;lt;/tt&amp;gt; folder from a fresh install of Obsidian Conflict into your dedicated server's &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
{{Todo|Further elaboration needed.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mounting Content==&lt;br /&gt;
Content mounts are controlled by a set of files in the &amp;lt;tt&amp;gt;obsidian/mount&amp;lt;/tt&amp;gt; folder. Each file determines whether or not the respective game's content is mounted. These files are merely blank files without any extensions - their contents do not matter since the mod merely checks if the file is there, mounting the content if the file is present.&lt;br /&gt;
Valid file names are:&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;css&amp;lt;/tt&amp;gt; &amp;amp;harr; Counter-Strike: Source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;dod&amp;lt;/tt&amp;gt; &amp;amp;harr; Day of Defeat: Source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;ep2&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life 2: Episode Two&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life 2: Episode One&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;hls&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life: Source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;lostcoast&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life 2: Lost Coast&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Todo|Further elaboration needed.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color:grey&amp;quot;&amp;gt;Still in progress, give me more time, will ya?&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:ServerOP]]&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=How_to_make_OC_playermodels&amp;diff=1003</id>
		<title>How to make OC playermodels</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=How_to_make_OC_playermodels&amp;diff=1003"/>
				<updated>2011-04-08T16:52:51Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: Re-added the missing Paint.NET section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{wip}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
Originally written by [http://www.obsidianconflict.net/forums/memberlist.php?mode=viewprofile&amp;amp;u=458 fug4life], with tips and tricks from [http://www.obsidianconflict.net/forums/memberlist.php?mode=viewprofile&amp;amp;u=1667 Maestro Fénix].&lt;br /&gt;
&lt;br /&gt;
In this tutorial, you will learn how to make a player model for Obsidian Conflict.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
*'''Source Development Kit (Source SDK)''': Available in ''Steam &amp;amp;rarr; Library &amp;amp;rarr; Tools''. This is required as a base for the model decompiler program, and to recompile models.&lt;br /&gt;
&lt;br /&gt;
*'''GCFScape (Optional, unless you intend to modify a model from an official Valve game)''': Allows you to browse and extract the contents of [http://developer.valvesoftware.com/wiki/GCF Game Cache Files (GCFs)]. http://nemesis.thewavelength.net/index.php?p=26&lt;br /&gt;
&lt;br /&gt;
*'''MDLDecompiler''': Self-explanatory. http://www.chaosincarnate.net/cannonfodder/mdldecompiler.php&lt;br /&gt;
&lt;br /&gt;
*'''GUI StudioMDL''': This program is a GUI front end for the [http://developer.valvesoftware.com/wiki/Studiomdl Studiomdl] tool in the Source SDK. http://www.wunderboy.org/apps/guistudiomdl2.php&lt;br /&gt;
&lt;br /&gt;
*'''Notepad++ (Optional only for models for [http://developer.valvesoftware.com/wiki/Source_Engine_2006 Source Engine 2006] and below)''': You can use this or any other hex editor. http://notepad-plus.sourceforge.net/uk/site.htm&lt;br /&gt;
&lt;br /&gt;
*'''VTFEdit (Optional if you intend to use ''Notepad++'' to open [http://developer.valvesoftware.com/wiki/Vmt .vmt] files instead)''': http://nemesis.thewavelength.net/index.php?c=178 &lt;br /&gt;
&lt;br /&gt;
*'''An Image Editor''' (such as ''Paint.NET'', ''Adobe Photoshop'', ''Paint Shop Pro'')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Preparing The Materials==&lt;br /&gt;
First, you will need to create the folder of the new model that you are going to make. Go to your client's &amp;lt;tt&amp;gt;obsidian&amp;lt;/tt&amp;gt; folder (inside &amp;lt;tt&amp;gt;Steam/steamapps/sourcemods&amp;lt;/tt&amp;gt; for the uninitiated) and proceed to navigate to &amp;lt;tt&amp;gt;materials/models/player&amp;lt;/tt&amp;gt;. Create a new folder (with the name of your model) inside this folder (right-click an empty area &amp;amp;rarr; ''New'' &amp;amp;rarr; ''Folder''). Copy your model's materials into the new folder you created, then open their &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files.&lt;br /&gt;
&lt;br /&gt;
You should see something like this, in typical [http://developer.valvesoftware.com/wiki/KeyValues KeyValues] format:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;VertexLitGeneric&amp;quot;&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;$baseTexture&amp;quot; &amp;quot;Models/player/Mossman/mossman_sheet&amp;quot;&lt;br /&gt;
	&amp;quot;$envmap&amp;quot; &amp;quot;env_cubemap&amp;quot;&lt;br /&gt;
	&amp;quot;$bumpmap&amp;quot; &amp;quot;models/player/Mossman/Mossman_normal&amp;quot;&lt;br /&gt;
	&amp;quot;$normalmapalphaenvmapmask&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$envmapcontrast&amp;quot; &amp;quot;.20&amp;quot;&lt;br /&gt;
	&amp;quot;$envmapsaturation&amp;quot; &amp;quot;0.9&amp;quot;&lt;br /&gt;
	&amp;quot;$envmaptint&amp;quot; &amp;quot;[ .36 .36 .36 ]&amp;quot;&lt;br /&gt;
        &amp;quot;$halflambert&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$nodecal&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go to the &amp;lt;tt&amp;gt;$baseTexture&amp;lt;/tt&amp;gt; line, and change &amp;lt;tt&amp;gt;Models/player/Mossman/mossman_sheet&amp;lt;/tt&amp;gt; to point to where your textures (i.e. the [http://developer.valvesoftware.com/wiki/VTF .vtf]s) are located.&lt;br /&gt;
In the case of the above example, it would become &amp;lt;tt&amp;gt;Models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/mossman_sheet&amp;lt;/tt&amp;gt;, where &amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; is the name of your model.&lt;br /&gt;
&lt;br /&gt;
We're not done yet - you will also need to replace all occurences of &amp;lt;tt&amp;gt;Models/player/Mossman/&amp;lt;/tt&amp;gt; with &amp;lt;tt&amp;gt;Models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/&amp;lt;/tt&amp;gt; in that &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; file. To illustrate, in the above example, the line &amp;lt;tt&amp;gt;$bumpmap&amp;lt;/tt&amp;gt; also needs to be changed from &amp;lt;tt&amp;gt;models/player/Mossman/Mossman_normal&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/Mossman_normal&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If you reference an invalid path, your model will have the infamous error texture (i.e. a purple and black checkerboard texture will be seen instead).&lt;br /&gt;
&lt;br /&gt;
After you have modified all the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files for your model, you are ready to convert the model for use as a player model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Converting The Model==&lt;br /&gt;
Go to the model files, and open the [http://developer.valvesoftware.com/wiki/MDL .mdl] file with ''Notepad++'' (or your favorite hex editor). The first four bytes in the file should be &amp;lt;tt&amp;gt;IDST&amp;lt;/tt&amp;gt; (hexadecimal sequence: &amp;lt;tt&amp;gt;0x49&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x44&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x53&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x54&amp;lt;/tt&amp;gt;). Now, verify that the fifth byte (immediately after the &amp;lt;tt&amp;gt;T&amp;lt;/tt&amp;gt;) is a &amp;lt;tt&amp;gt;,&amp;lt;/tt&amp;gt; (comma, hexadecimal: &amp;lt;tt&amp;gt;0x2C&amp;lt;/tt&amp;gt;). If it is, then you can safely close the program; nothing else needs to be done. If it is something else, such as a &amp;lt;tt&amp;gt;0&amp;lt;/tt&amp;gt; (zero, hexadecimal: &amp;lt;tt&amp;gt;0x30&amp;lt;/tt&amp;gt;) or a &amp;lt;tt&amp;gt;-&amp;lt;/tt&amp;gt; (minus sign, hexadecimal: &amp;lt;tt&amp;gt;0x2D&amp;lt;/tt&amp;gt;), you will need to change it back to a comma (i.e. &amp;lt;tt&amp;gt;IDST0&amp;lt;/tt&amp;gt; &amp;amp;rarr; &amp;lt;tt&amp;gt;IDST,&amp;lt;/tt&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''Note:''' This workaround is required because the model decompiler was written before games on [http://developer.valvesoftware.com/wiki/Source_Engine_2007 Source Engine 2007 and 2009] were released, and was never updated for forward compatibility by its author.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Open ''MDLDecompiler'', then select the model that you wish to decompile and select the folder where you wish to put the decompiled files. After starting the decompile process, wait for a prompt to appear, informing you of a successful recompile.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If the decompiler crashes for some unknown reason, attempt another 3-4 tries. If it still fails to work, you may wish to attempt to decompile it with [http://www.chaosincarnate.net/cannonfodder/cftools.php?program=studiocompiler StudioCompiler], or [http://developer.valvesoftware.com/wiki/User:Erix920 Erix920]'s [http://kathar.net/other/mdldecompiler.exe modified version of MDLDecompiler] instead.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;'''Additional Note:''' In certain cases, MDLDecompiler will seem to work perfectly fine - no crashes or error messages are generated - but will actually generate corrupted [http://developer.valvesoftware.com/wiki/SMD .smd] files, which when viewed in a modeling program such as ''XSI Mod Tool'' will have no mesh at all. A telltale sign of this is when the file sizes of most of the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; files are unusually small (&amp;lt; 1 MB), coupled with an unusually large physics model &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; (&amp;gt; 1 MB). There is no known solution for this issue at the time of writing, apart from contacting the creator of the model and asking (nicely!) for the model sources.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Go to the folder where the resulting files are. You will see several files with the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; extension and a file &amp;lt;tt&amp;gt;mdldecompiler.qc&amp;lt;/tt&amp;gt;. Open the [http://developer.valvesoftware.com/wiki/Qc .qc] file with ''Notepad++'' or your favorite text editor (but not a word processor like ''Wordpad'' or ''Microsoft Word''!).&lt;br /&gt;
&lt;br /&gt;
This script file determines the Studiomdl configuration for the model. A snippet is provided below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$cd &amp;quot;C:\Users\User\Desktop\New folder&amp;quot;&lt;br /&gt;
$modelname &amp;quot;player\Flandre.mdl&amp;quot;&lt;br /&gt;
$model &amp;quot;body&amp;quot; &amp;quot;ref.smd&amp;quot;&lt;br /&gt;
$cdmaterials &amp;quot;models\player\Flandre\&amp;quot;&lt;br /&gt;
$hboxset &amp;quot;default&amp;quot;&lt;br /&gt;
// Model uses material &amp;quot;txFlanFace.vmt&amp;quot;&lt;br /&gt;
// Model uses material &amp;quot;txFlandre.vmt&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_shared.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_ss.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_gestures.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_postures.mdl&amp;quot;&lt;br /&gt;
$surfaceprop &amp;quot;flesh&amp;quot;&lt;br /&gt;
$illumposition 0.016 0.578 34.522&lt;br /&gt;
$sequence ragdoll &amp;quot;ragdoll&amp;quot; ACT_DIERAGDOLL 1 fps 30.00&lt;br /&gt;
$ikchain rhand ValveBiped.Bip01_R_Hand knee  0.707 0.707 0.000&lt;br /&gt;
$ikchain lhand ValveBiped.Bip01_L_Hand knee  0.707 0.707 0.000&lt;br /&gt;
$ikchain rfoot ValveBiped.Bip01_R_Foot knee  0.707 -0.707 0.000&lt;br /&gt;
$ikchain lfoot ValveBiped.Bip01_L_Foot knee  0.707 -0.707 0.000&lt;br /&gt;
$collisionjoints &amp;quot;phymodel.smd&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	$mass 60.0&lt;br /&gt;
	$inertia 10.00&lt;br /&gt;
	$damping 0.01&lt;br /&gt;
	$rotdamping 1.50&lt;br /&gt;
	$rootbone &amp;quot;valvebiped.bip01_pelvis&amp;quot;&lt;br /&gt;
	$jointmerge &amp;quot;ValveBiped.Bip01_Pelvis&amp;quot; &amp;quot;ValveBiped.Bip01_Spine1&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A breakdown of the important components of the script:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$cd&amp;lt;/tt&amp;gt;: A pointer to the folder where the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; files reside in. If you moved these files elsewhere after decompiling the model, modify this to reflect that change.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$modelname&amp;lt;/tt&amp;gt;: This command determines where the resulting model will be placed in, with respect to the &amp;lt;tt&amp;gt;models&amp;lt;/tt&amp;gt; folder. Using the above snippet as an example, the resulting (compiled) model will be located at &amp;lt;tt&amp;gt;models/player/Flandre.mdl&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$cdmaterials&amp;lt;/tt&amp;gt;: A pointer to the folder where the materials for the model reside in, with respect to the &amp;lt;tt&amp;gt;materials&amp;lt;/tt&amp;gt; folder. Using the above snippet as an example, the full path will be &amp;lt;tt&amp;gt;materials/models/player/Flandre/&amp;lt;/tt&amp;gt;. Ensure that the path is valid or your model will end up with purple and black checkerboard textures instead.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$includemodel&amp;lt;/tt&amp;gt;: This command determines which model files are 'included' into the model. In layman's terms, this determines which animation libraries are referenced by the model. An Obsidian Conflict player model requires a different set of animation libraries depending on the character's gender:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
'''For a male model''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;$includemodel &amp;quot;player/male_shared.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_ss.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_gestures.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_postures.mdl&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
'''For a female model''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;$includemodel &amp;quot;player/female_shared.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_ss.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_gestures.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_postures.mdl&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$surfaceprop&amp;lt;/tt&amp;gt;: Used to define the physical surface properties the model will have. The default is &amp;lt;tt&amp;gt;flesh&amp;lt;/tt&amp;gt; (organic-human). The complete list is available [http://developer.valvesoftware.com/wiki/Material_surface_properties here].&lt;br /&gt;
'''Note:''' If this command was used in the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files to define multiple surface types and is also present in the &amp;lt;tt&amp;gt;.qc&amp;lt;/tt&amp;gt; script, the values set in the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files will be ignored. If this behavior is not desired, either delete this command from the &amp;lt;tt&amp;gt;mdldecompiler.qc&amp;lt;/tt&amp;gt; script, or specify the value as &amp;lt;tt&amp;gt;default&amp;lt;/tt&amp;gt; instead.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is all that you will typically need to modify in order to make a player model compatible with Obsidian Conflict.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Finishing Touches==&lt;br /&gt;
Save the script file and open ''GUI StudioMDL''. Select &amp;lt;tt&amp;gt;OrangeBox&amp;lt;/tt&amp;gt; for &amp;lt;tt&amp;gt;SDK Version&amp;lt;/tt&amp;gt; and for &amp;lt;tt&amp;gt;Target Mod or &amp;quot;GameInfo&amp;quot; path&amp;lt;/tt&amp;gt; select &amp;lt;tt&amp;gt;Obsidian Conflict&amp;lt;/tt&amp;gt; (you will need to [[Obsidian SDK Setup|configure the Source SDK for Obsidian Conflict]] prior to this). Go to ''File'' &amp;amp;rarr; ''Load .qc file'' and load the &amp;lt;tt&amp;gt;.qc&amp;lt;/tt&amp;gt; file, then click on the &amp;lt;tt&amp;gt;Compile&amp;lt;/tt&amp;gt; button.&lt;br /&gt;
&lt;br /&gt;
When ''GUI StudioMDL'' finishes compiling the model (you should see &amp;lt;tt&amp;gt;Completed &amp;quot;mdldecompiler.qc&amp;quot;&amp;lt;/tt&amp;gt;), open the ''Source SDK'', select &amp;lt;tt&amp;gt;Source 2007&amp;lt;/tt&amp;gt; in the &amp;lt;tt&amp;gt;Engine Version:&amp;lt;/tt&amp;gt; combo box and select &amp;lt;tt&amp;gt;Obsidian Conflict&amp;lt;/tt&amp;gt; in the &amp;lt;tt&amp;gt;Current Game:&amp;lt;/tt&amp;gt; combo box (once again, you will need to [[Obsidian SDK Setup|configure the Source SDK for Obsidian Conflict]] prior to this), then click on &amp;lt;tt&amp;gt;Model Viewer&amp;lt;/tt&amp;gt;. When ''Half-Life Model Viewer'' loads up, go to ''File'' &amp;amp;rarr; ''Load model...'' and select your model.&lt;br /&gt;
&lt;br /&gt;
If all went well, you should now see your model, complete with working animations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once you have verified that your model is in working condition, go to where the model files are located in your client's folder and create a new text file with the name of your model, but with the &amp;lt;tt&amp;gt;.txt&amp;lt;/tt&amp;gt; extension. Using the previous snippet as an example, the file would be &amp;lt;tt&amp;gt;models/player/Flandre.&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;txt&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
Paste the following inside the file (don't forget to alter the gender of the &amp;lt;tt&amp;gt;base model rig&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;voice&amp;lt;/tt&amp;gt; as necessary):&lt;br /&gt;
&amp;lt;pre&amp;gt;ModelSettings&lt;br /&gt;
{&lt;br /&gt;
	//Use this option to choose a base script to use instead.&lt;br /&gt;
	&amp;quot;usefile&amp;quot;	&amp;quot;none&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//base model rig to use. Use either Male_01 or Female_01 for best results.&lt;br /&gt;
	&amp;quot;basemodel&amp;quot;	&amp;quot;Male_01&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Voice Sound 0=none, 1=male, 2=female, 3=combine&lt;br /&gt;
	&amp;quot;voice&amp;quot;	&amp;quot;1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Footstep Sound 1=shoe, 2=combine boots&lt;br /&gt;
	&amp;quot;footsteps&amp;quot;	&amp;quot;1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Gibs, 1 = generic human, 2 = generic alien, 3 = human rebel ragdoll gibs, 4 = Ragdoll only&lt;br /&gt;
	&amp;quot;Gibs&amp;quot;	&amp;quot;4&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
With this file, you can configure the voice, footstep sounds and gibs of the model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, head over to &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player&amp;lt;/tt&amp;gt; and create a new &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file with the same name as your model's &amp;lt;tt&amp;gt;.mdl&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The path after &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/&amp;lt;/tt&amp;gt; '''must''' reflect the path to the model, i.e. if the model is at &amp;lt;tt&amp;gt;models/player/somemodelname/somemodel.mdl&amp;lt;/tt&amp;gt;, the two files will be &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player/somemodelname/somemodel.vmt&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player/somemodelname/somemodel.vtf&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; file (you can make a copy of an existing one and clear it for use), paste the following:&lt;br /&gt;
&amp;lt;pre&amp;gt;UnlitGeneric&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;$translucent&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$basetexture&amp;quot; &amp;quot;vgui\playermodels\player\Hostage_01&amp;quot;&lt;br /&gt;
	&amp;quot;$vertexcolor&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$vertexalpha&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$no_fullbright&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$ignorez&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$decalscale&amp;quot; &amp;quot;0.250&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On the &amp;lt;tt&amp;gt;$basetexture&amp;lt;/tt&amp;gt; line, change &amp;lt;tt&amp;gt;Hostage_01&amp;lt;/tt&amp;gt; to point to your accompanying &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
To create that &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file, take a screenshot in ''Half-Life Model Viewer'' then save it as a &amp;lt;tt&amp;gt;.tga&amp;lt;/tt&amp;gt; file and open that in ''VTFEdit'', then save it in the &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; format. Give it the same name as your model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once you have placed the two files into your client's &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player&amp;lt;/tt&amp;gt; folder, test it all out in-game. If all works well (animations, textures, sounds, preview image), pat yourself on the back - you've successfully created a new player model.&lt;br /&gt;
*To test the model's preview image, start the game, then go to &amp;lt;tt&amp;gt;Options&amp;lt;/tt&amp;gt; &amp;amp;rarr; &amp;lt;tt&amp;gt;Multiplayer&amp;lt;/tt&amp;gt; tab, and select your model from the combo box.&lt;br /&gt;
*To test the model's animations and textures, select the model, then start a local server and turn on &amp;lt;tt&amp;gt;sv_cheats&amp;lt;/tt&amp;gt;. Execute the &amp;lt;tt&amp;gt;thirdperson&amp;lt;/tt&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Tips And Tricks==&lt;br /&gt;
===Creating The VGUI Preview Image===&lt;br /&gt;
====Using Paint Shop Pro====&lt;br /&gt;
You will also need to download and install a '''http://nemesis.thewavelength.net/index.php?p=39 VTF Plugin for Paint Shop Pro''' beforehand (Information about how to use it and what programs can use it '''http://developer.valvesoftware.com/wiki/Photoshop_VTF_Plugin here''').&lt;br /&gt;
&lt;br /&gt;
So, Open Paint Shop Pro and open the screenshot (.tga file) you took in SDK Model Viewer earlier.&lt;br /&gt;
(Prefebably you want the model holding an oc weapon and you can use centre view to get the model where you want it.&lt;br /&gt;
To look around in SDK Model Viewer use: Right mouse click - zoom in/out.&lt;br /&gt;
Left mouse click to rotate. Hold shift and use left click mouse to move the model up/down/left/right).&lt;br /&gt;
&lt;br /&gt;
Also in Paint Shop Pro it helps to add a grid (view/grid, size dosen't matter)it just helps when working.&lt;br /&gt;
&lt;br /&gt;
So lets move on to converting/working on the screenshot.&lt;br /&gt;
&lt;br /&gt;
First we will use the Crop tool to cut the picture just so that we have the top half of the body. Make sure you use free form and have the box size that you are cropping set to 256x200, position in the centre of the top half of the body (showing the head, chest and shoulders), and then crop.&lt;br /&gt;
&lt;br /&gt;
Now, click layers and select new mask layer/show all.&lt;br /&gt;
&lt;br /&gt;
Now you will see the picture has a mask-raster 1 layer, right click and select delete and then yes.&lt;br /&gt;
&lt;br /&gt;
Now select the Magic Wand tool set up with something like mode = replace&lt;br /&gt;
matchmode = RGB value tolerance = 1 use all layers and use contiguous also use Anti-alias and select outside from dropdown box.&lt;br /&gt;
Click on the background on the image and not the model to use the Magic Wand.&lt;br /&gt;
(Baically you want to delete the back ground and not the model itself).&lt;br /&gt;
So if the the whole box and around the model is selected, its ok to delete.&lt;br /&gt;
&lt;br /&gt;
Once the background is deleted, with the Magic Wand tool still open change the matchmode to = All opaque and this time click on the model in the image and it should change the Magic Wand from around the edges and around the model to actually now just around the model only.&lt;br /&gt;
&lt;br /&gt;
Now click layers select new mask layer/form image, make sure source opacity is checked and everything else is unchecked, click ok.&lt;br /&gt;
&lt;br /&gt;
Now we are going to cut the highlighted model onto a new image. So with the Magic Wand still highlighting around the model on the image change to the Pan tool and right click on the highlighted model and select: copy merged.&lt;br /&gt;
&lt;br /&gt;
Now go to File and create a new image with these properties:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;width =256 pixels&lt;br /&gt;
height =256 pixels&lt;br /&gt;
resolution =72,000 pixels/inch&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Choose Rastor Background&lt;br /&gt;
image depth =RGB - 8bits/channel&lt;br /&gt;
&lt;br /&gt;
And check the Transparent box.&lt;br /&gt;
&lt;br /&gt;
Now to paste your copied image onto your new image, so, right click on your new image and paste as a new selection. Position into the top left hand corner as much as possible and then just left click.&lt;br /&gt;
&lt;br /&gt;
Now we need to give an alpha channel so go to selections select load/save selection and choose save selection to alpha channel and clcik ok/save in the pop-up.&lt;br /&gt;
&lt;br /&gt;
Finally now click File and save copy as and name it Hostage_01.png using the .PNG file format and press yes to the pop-up. (this is so you have a nice image to upload to the forums).&lt;br /&gt;
&lt;br /&gt;
Now click File and save copy as again and this time name it nameofthemodel.vtf using the .VTF file format and press yes/ok to the pop-up.&lt;br /&gt;
&lt;br /&gt;
Now here we are using the VTF plugin. Set the properties as:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Template = Compressed Texture With Alpha&lt;br /&gt;
Format = DXT5 (Common Format)&lt;br /&gt;
Mipmap Filter = Box&lt;br /&gt;
Sharpen Filter = Sharpen Soft&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
check/tick Mipmaps and Thumbnail.&lt;br /&gt;
&lt;br /&gt;
And from the list just make sure Eight Bit Alpha (Format Specific) and Nice Filter are both checked/ticked. Everything else should be unchecked/unticked, then press ok.&lt;br /&gt;
&lt;br /&gt;
Finally add it to your obsidian/materials/VGUI/playermodels/player directory to finish.&lt;br /&gt;
&lt;br /&gt;
Example image:&lt;br /&gt;
&lt;br /&gt;
[[File:Hostage01.png|frame|Example image: Hostage_01]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Using Paint.NET====&lt;br /&gt;
# Get the image (you know, &amp;quot;impr. pant&amp;quot; or another way to take a photo of your model).&lt;br /&gt;
# Prepare the image. If you are used &amp;quot;impr. pant&amp;quot;, use the rectangule selection and select &amp;quot;cut selected&amp;quot; (after go to edit-&amp;gt;paste as a new image). Only will have the image that it was inside of the rectangule. Use the &amp;quot;wand&amp;quot; tool and put the tolerancy level to 10% or less. Delete everything that surround the model.&lt;br /&gt;
# Go to &amp;quot;Image&amp;quot; and select &amp;quot;change size&amp;quot;. Deactivate &amp;quot;keep relation size&amp;quot; and set the image in 200x200.&lt;br /&gt;
# Back to &amp;quot;Image&amp;quot; and select &amp;quot;change canvas size&amp;quot;. Set 256x256 and select &amp;quot;upper left position&amp;quot;.&lt;br /&gt;
# Save the image in .tga format with the name of the model.&lt;br /&gt;
# Drag and drop the .tga file into VTFedit. Press &amp;quot;ok&amp;quot; and save as .vtf format. Must have the same name of the model.&lt;br /&gt;
# Create the .vmt coping another .vmt from the materials/VGUI/playermodels/Player folder if you don´t want write it, change the directory of the image and put it in materials/VGUI/playermodels/Player.&lt;br /&gt;
# Sucess.&lt;br /&gt;
&lt;br /&gt;
[[Category:Miscellaneous_Tutorials]]&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=1002</id>
		<title>Dedicated Server Setup 2</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=1002"/>
				<updated>2011-04-08T16:39:02Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{wip}}&lt;br /&gt;
This page was created since I can't update the one [[Dedicated Server Setup|here]]. I'm still working on it (but don't have enough time to do it all at once), so it may seem incomplete. - [[User:TESLA-X4|TESLA-X4]] 12:01, 3 April 2011 (CEST)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
* A basic understanding of filesystem paths (i.e. &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; refers to the folder &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; ''inside'' &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;, not both the folders), and the different path representations between Windows and *nix (i.e. &amp;lt;tt&amp;gt;\&amp;lt;/tt&amp;gt; in Windows is the same as &amp;lt;tt&amp;gt;/&amp;lt;/tt&amp;gt; in UNIX[-like] operating systems).&lt;br /&gt;
* A basic understanding of the operating system's command-line interface (i.e. [[Wikipedia:Command Prompt|Command Prompt]] for Windows and Terminals for [[Wikipedia:GNOME Terminal|Linux]] and [[Wikipedia::Apple Terminal|Mac OS]]).&lt;br /&gt;
* A fast broadband connection (preferably one without a data transfer limit) to prevent premature aging waiting for the uploads to complete.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;'''Note:''' At the time of writing, no binaries are publicly available for Linux and Mac OS.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Base Server Install==&lt;br /&gt;
===Step 1: Download The HLDS Update Tool===&lt;br /&gt;
{{Windows|Download this file to a temporary location: '''http://www.steampowered.com/download/hldsupdatetool.exe'''}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In a ''Terminal (On Ubuntu: Applications &amp;amp;rarr; Accessories &amp;amp;rarr; Terminal)'' window, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;mkdir srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;wget &amp;lt;nowiki&amp;gt;http://www.steampowered.com/download/hldsupdatetool.bin&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 2: Install The HLDS Update Tool===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|Double-click on &amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt; and follow the instructions given by the wizard.&lt;br /&gt;
|For the purpose of this tutorial, we will assume that you have installed the server to &amp;lt;tt&amp;gt;c:\srcds&amp;lt;/tt&amp;gt;.&lt;br /&gt;
|Open a ''Command Prompt (Start &amp;amp;rarr; Accessories &amp;amp;rarr; Command Prompt)'' window and execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;c:&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''hldsupdatetool'' will now be downloaded to replace the one installed by the wizard.}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Terminal'' window as [[#Step 1: Download The HLDS Update Tool|Step 1]], execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;chmod +x hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''steam'' (the executable) will now be downloaded to replace the one extracted when you ran &amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;.}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 3: Download The Base Server Files===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Command Prompt'' window as [[#Step 2: Install The HLDS Update Tool|Step 2]], execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''hldsupdatetool'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the existing ''Terminal'' window from Steps 1 and 2, execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''steam'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 4: Setting Up The Folder Structure===&lt;br /&gt;
After [[#Step 3: Download The Base Server Files|Step 3]] completes, you should end up with something like this:&lt;br /&gt;
&lt;br /&gt;
{{Windows|&amp;lt;tt&amp;gt;hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds.exe&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|ClientRegistry.blob&lt;br /&gt;
|HldsUpdateTool.exe&lt;br /&gt;
|HldsUpdateTool_&amp;lt;tool version&amp;gt;.mst&lt;br /&gt;
|InstallRecord.blob&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|&amp;lt;tt&amp;gt;.steam\&lt;br /&gt;
|.steam\clientregistry.blob&lt;br /&gt;
|hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds_linux&lt;br /&gt;
|orangebox\srcds_run&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|hldsupdatetool.bin&lt;br /&gt;
|InstallRecord.blob&lt;br /&gt;
|steam&lt;br /&gt;
|test1.so&lt;br /&gt;
|test2.so&lt;br /&gt;
|test3.so&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, because Valve didn't set up the files properly on their server, you'll need to fix it yourself.&lt;br /&gt;
&lt;br /&gt;
'''GUI Approach:'''&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Delete the &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder and copy the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (the one outside) in its place.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Command-Line Approach:'''&lt;br /&gt;
&lt;br /&gt;
{{Windows|In the existing ''Command Prompt'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;rmdir /s orangebox\hl2&lt;br /&gt;
|xcopy /s /e hl2 orangebox&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|In the existing ''Terminal'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;rm -R orangebox/hl2&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cp -R hl2 orangebox&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Campaign Content==&lt;br /&gt;
Campaign content is stored only in GCFs downloadable only via the Steam client, so be prepared to upload the extracted files to your server. You will need [http://nemesis.thewavelength.net/index.php?p=25 this application] in order to proceed.&lt;br /&gt;
&lt;br /&gt;
Things are a little easier for Windows server operators with Remote Desktop access to their servers since they can simply install Steam on their servers and do everything directly there.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The Obsidian Team might offer to copy the extracted GCF content onto servers via their Windows server to save upload time in future, in which case you can safely ignore this section.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life source.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;hl1&amp;lt;/tt&amp;gt; folder (in the GCF) to your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl1&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life Deathmatch: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life 2 content.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====source 2007 binaries.gcf====&lt;br /&gt;
====source 2007 shared materials.gcf====&lt;br /&gt;
====source 2007 shared models.gcf====&lt;br /&gt;
====source 2007 shared sounds.gcf====&lt;br /&gt;
====half-life 2 2007 base content.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;, with &amp;lt;tt&amp;gt;source 2007 binaries.gcf&amp;lt;/tt&amp;gt; being extracted first and &amp;lt;tt&amp;gt;half-life 2 2007 base content.gcf&amp;lt;/tt&amp;gt; being last), extract the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCFs) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Lost Coast===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Huh?  :V  {{Todo|Further elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode One===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode 1 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
====half-life 2 episode one.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====episodic 2007 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
====episode one 2007 content.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, and everything from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Two===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode two content.gcf====&lt;br /&gt;
====episode two maps.gcf====&lt;br /&gt;
====episode two materials.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;), extract everything from the &amp;lt;tt&amp;gt;ep2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/ep2&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist and overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Three===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
You must be living in the future.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Additional Game Content==&lt;br /&gt;
'''Note:''' If you download any of the following (sans ''Portal'') using the ''HLDS Update Tool'' after downloading &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;, &amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;you will be forced to download a new set of engine binaries incompatible with the current release of Obsidian Conflict&amp;lt;/span&amp;gt;. A telltale sign that this has occurred is when you see an engine error along the lines of ''SetupArrayProps_R: array prop '(null)' is at index zero'' or ''Host_Error: IDLLFunctions::DLLInit returned false'' when you try to start the server. To workaround that, simply rename the &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt; folder (inside &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;) to something else (e.g. &amp;lt;tt&amp;gt;bin_se2007&amp;lt;/tt&amp;gt;) '''before''' downloading the game's files. On completion, delete the newly created &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt; folder and rename the old one back to &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For the curious, the reason for this is that almost all official Valve games now run on [http://developer.valvesoftware.com/wiki/Source_Engine_2009 Source Engine 2009], but most mods (sans ''Garry's Mod'') continue to run on the older ''Source Engine 2007'' (Source SDK Base 2007). These two versions are incompatible with each other, and Valve has yet to release a version of ''Source SDK Base'' for ''Source Engine 2009''.&lt;br /&gt;
===Counter-Strike: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
{{Todo|Downloadable with the HLDS Update Tool, elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Day of Defeat: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
{{Todo|Downloadable with the HLDS Update Tool, elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Portal===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Team Fortress 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Downloading And Installing Obsidian==&lt;br /&gt;
Copy the &amp;lt;tt&amp;gt;obsidian&amp;lt;/tt&amp;gt; folder from a fresh install of Obsidian Conflict into your dedicated server's &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
{{Todo|Further elaboration needed.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mounting Content==&lt;br /&gt;
Content mounts are controlled by a set of files in the &amp;lt;tt&amp;gt;obsidian/mount&amp;lt;/tt&amp;gt; folder. Each file determines whether or not the respective game's content is mounted. These files are merely blank files without any extensions - their contents do not matter since the mod merely checks if the file is there, mounting the content if the file is present.&lt;br /&gt;
Valid file names are:&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;css&amp;lt;/tt&amp;gt; &amp;amp;harr; Counter-Strike: Source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;dod&amp;lt;/tt&amp;gt; &amp;amp;harr; Day of Defeat: Source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;ep2&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life 2: Episode Two&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life 2: Episode One&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;hls&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life: Source&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;lostcoast&amp;lt;/tt&amp;gt; &amp;amp;harr; Half-Life 2: Lost Coast&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Todo|Further elaboration needed.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color:grey&amp;quot;&amp;gt;Still in progress, give me more time, will ya?&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=How_to_make_OC_playermodels&amp;diff=1001</id>
		<title>How to make OC playermodels</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=How_to_make_OC_playermodels&amp;diff=1001"/>
				<updated>2011-04-08T16:04:13Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{wip}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
Original tutorial written by [http://www.obsidianconflict.net/forums/memberlist.php?mode=viewprofile&amp;amp;u=458 fug4life], with tips and tricks from [http://www.obsidianconflict.net/forums/memberlist.php?mode=viewprofile&amp;amp;u=1667 Maestro Fénix].&lt;br /&gt;
&lt;br /&gt;
In this tutorial, you will learn how to make a player model for Obsidian Conflict.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
*'''Source Development Kit (Source SDK)''': Available in ''Steam &amp;amp;rarr; Library &amp;amp;rarr; Tools''. This is required as a base for the model decompiler program, and to recompile models.&lt;br /&gt;
&lt;br /&gt;
*'''GCFScape (Optional, unless you intend to modify a model from an official Valve game)''': Allows you to browse and extract the contents of [http://developer.valvesoftware.com/wiki/GCF Game Cache Files (GCFs)]. http://nemesis.thewavelength.net/index.php?p=26&lt;br /&gt;
&lt;br /&gt;
*'''MDLDecompiler''': Self-explanatory. http://www.chaosincarnate.net/cannonfodder/mdldecompiler.php&lt;br /&gt;
&lt;br /&gt;
*'''GUI StudioMDL''': This program is a GUI front end for the [http://developer.valvesoftware.com/wiki/Studiomdl Studiomdl] tool in the Source SDK. http://www.wunderboy.org/apps/guistudiomdl2.php&lt;br /&gt;
&lt;br /&gt;
*'''Notepad++ (Optional only for models for [http://developer.valvesoftware.com/wiki/Source_Engine_2006 Source Engine 2006] and below)''': You can use this or any other hex editor. http://notepad-plus.sourceforge.net/uk/site.htm&lt;br /&gt;
&lt;br /&gt;
*'''VTFEdit (Optional if you intend to use ''Notepad++'' to open [http://developer.valvesoftware.com/wiki/Vmt .vmt] files instead)''': http://nemesis.thewavelength.net/index.php?c=178 &lt;br /&gt;
&lt;br /&gt;
*'''An Image Editor''' (such as ''Paint.NET'', ''Adobe Photoshop'', ''Paint Shop Pro'')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Preparing The Materials==&lt;br /&gt;
First, you will need to create the folder of the new model that you are going to make. Go to your client's &amp;lt;tt&amp;gt;obsidian&amp;lt;/tt&amp;gt; folder (inside &amp;lt;tt&amp;gt;Steam/steamapps/sourcemods&amp;lt;/tt&amp;gt; for the uninitiated) and proceed to navigate to &amp;lt;tt&amp;gt;materials/models/player&amp;lt;/tt&amp;gt;. Create a new folder (with the name of your model) inside this folder (right-click an empty area &amp;amp;rarr; ''New'' &amp;amp;rarr; ''Folder''). Copy your model's materials into the new folder you created, then open their &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files.&lt;br /&gt;
&lt;br /&gt;
You should see something like this, in typical [http://developer.valvesoftware.com/wiki/KeyValues KeyValues] format:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;VertexLitGeneric&amp;quot;&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;$baseTexture&amp;quot; &amp;quot;Models/player/Mossman/mossman_sheet&amp;quot;&lt;br /&gt;
	&amp;quot;$envmap&amp;quot; &amp;quot;env_cubemap&amp;quot;&lt;br /&gt;
	&amp;quot;$bumpmap&amp;quot; &amp;quot;models/player/Mossman/Mossman_normal&amp;quot;&lt;br /&gt;
	&amp;quot;$normalmapalphaenvmapmask&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$envmapcontrast&amp;quot; &amp;quot;.20&amp;quot;&lt;br /&gt;
	&amp;quot;$envmapsaturation&amp;quot; &amp;quot;0.9&amp;quot;&lt;br /&gt;
	&amp;quot;$envmaptint&amp;quot; &amp;quot;[ .36 .36 .36 ]&amp;quot;&lt;br /&gt;
        &amp;quot;$halflambert&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$nodecal&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go to the &amp;lt;tt&amp;gt;$baseTexture&amp;lt;/tt&amp;gt; line, and change &amp;lt;tt&amp;gt;Models/player/Mossman/mossman_sheet&amp;lt;/tt&amp;gt; to point to where your textures (i.e. the [http://developer.valvesoftware.com/wiki/VTF .vtf]s) are located.&lt;br /&gt;
In the case of the above example, it would become &amp;lt;tt&amp;gt;Models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/mossman_sheet&amp;lt;/tt&amp;gt;, where &amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; is the name of your model.&lt;br /&gt;
&lt;br /&gt;
We're not done yet - you will also need to replace all occurences of &amp;lt;tt&amp;gt;Models/player/Mossman/&amp;lt;/tt&amp;gt; with &amp;lt;tt&amp;gt;Models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/&amp;lt;/tt&amp;gt; in that &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; file. To illustrate, in the above example, the line &amp;lt;tt&amp;gt;$bumpmap&amp;lt;/tt&amp;gt; also needs to be changed from &amp;lt;tt&amp;gt;models/player/Mossman/Mossman_normal&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/Mossman_normal&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If you reference an invalid path, your model will have the infamous error texture (i.e. a purple and black checkerboard texture will be seen instead).&lt;br /&gt;
&lt;br /&gt;
After you have modified all the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files for your model, you are ready to convert the model for use as a player model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Converting The Model==&lt;br /&gt;
Go to the model files, and open the [http://developer.valvesoftware.com/wiki/MDL .mdl] file with ''Notepad++'' (or your favorite hex editor). The first four bytes in the file should be &amp;lt;tt&amp;gt;IDST&amp;lt;/tt&amp;gt; (hexadecimal sequence: &amp;lt;tt&amp;gt;0x49&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x44&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x53&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x54&amp;lt;/tt&amp;gt;). Now, verify that the fifth byte (immediately after the &amp;lt;tt&amp;gt;T&amp;lt;/tt&amp;gt;) is a &amp;lt;tt&amp;gt;,&amp;lt;/tt&amp;gt; (comma, hexadecimal: &amp;lt;tt&amp;gt;0x2C&amp;lt;/tt&amp;gt;). If it is, then you can safely close the program; nothing else needs to be done. If it is something else, such as a &amp;lt;tt&amp;gt;0&amp;lt;/tt&amp;gt; (zero, hexadecimal: &amp;lt;tt&amp;gt;0x30&amp;lt;/tt&amp;gt;) or a &amp;lt;tt&amp;gt;-&amp;lt;/tt&amp;gt; (minus sign, hexadecimal: &amp;lt;tt&amp;gt;0x2D&amp;lt;/tt&amp;gt;), you will need to change it back to a comma (i.e. &amp;lt;tt&amp;gt;IDST0&amp;lt;/tt&amp;gt; &amp;amp;rarr; &amp;lt;tt&amp;gt;IDST,&amp;lt;/tt&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''Note:''' This workaround is required because the model decompiler was written before games on [http://developer.valvesoftware.com/wiki/Source_Engine_2007 Source Engine 2007 and 2009] were released, and was never updated for forward compatibility by its author.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Open ''MDLDecompiler'', then select the model that you wish to decompile and select the folder where you wish to put the decompiled files. After starting the decompile process, wait for a prompt to appear, informing you of a successful recompile.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If the decompiler crashes for some unknown reason, attempt another 3-4 tries. If it still fails to work, you may wish to attempt to decompile it with [http://www.chaosincarnate.net/cannonfodder/cftools.php?program=studiocompiler StudioCompiler], or [http://developer.valvesoftware.com/wiki/User:Erix920 Erix920]'s [http://kathar.net/other/mdldecompiler.exe modified version of MDLDecompiler] instead.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;'''Additional Note:''' In certain cases, MDLDecompiler will seem to work perfectly fine - no crashes or error messages are generated - but will actually generate corrupted [http://developer.valvesoftware.com/wiki/SMD .smd] files, which when viewed in a modeling program such as ''XSI Mod Tool'' will have no mesh at all. A telltale sign of this is when the file sizes of most of the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; files are unusually small (&amp;lt; 1 MB), coupled with an unusually large physics model &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; (&amp;gt; 1 MB). There is no known solution for this issue at the time of writing, apart from contacting the creator of the model and asking (nicely!) for the model sources.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Go to the folder where the resulting files are. You will see several files with the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; extension and a file &amp;lt;tt&amp;gt;mdldecompiler.qc&amp;lt;/tt&amp;gt;. Open the [http://developer.valvesoftware.com/wiki/Qc .qc] file with ''Notepad++'' or your favorite text editor (but not a word processor like ''Wordpad'' or ''Microsoft Word''!).&lt;br /&gt;
&lt;br /&gt;
This script file determines the Studiomdl configuration for the model. A snippet is provided below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$cd &amp;quot;C:\Users\User\Desktop\New folder&amp;quot;&lt;br /&gt;
$modelname &amp;quot;player\Flandre.mdl&amp;quot;&lt;br /&gt;
$model &amp;quot;body&amp;quot; &amp;quot;ref.smd&amp;quot;&lt;br /&gt;
$cdmaterials &amp;quot;models\player\Flandre\&amp;quot;&lt;br /&gt;
$hboxset &amp;quot;default&amp;quot;&lt;br /&gt;
// Model uses material &amp;quot;txFlanFace.vmt&amp;quot;&lt;br /&gt;
// Model uses material &amp;quot;txFlandre.vmt&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_shared.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_ss.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_gestures.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_postures.mdl&amp;quot;&lt;br /&gt;
$surfaceprop &amp;quot;flesh&amp;quot;&lt;br /&gt;
$illumposition 0.016 0.578 34.522&lt;br /&gt;
$sequence ragdoll &amp;quot;ragdoll&amp;quot; ACT_DIERAGDOLL 1 fps 30.00&lt;br /&gt;
$ikchain rhand ValveBiped.Bip01_R_Hand knee  0.707 0.707 0.000&lt;br /&gt;
$ikchain lhand ValveBiped.Bip01_L_Hand knee  0.707 0.707 0.000&lt;br /&gt;
$ikchain rfoot ValveBiped.Bip01_R_Foot knee  0.707 -0.707 0.000&lt;br /&gt;
$ikchain lfoot ValveBiped.Bip01_L_Foot knee  0.707 -0.707 0.000&lt;br /&gt;
$collisionjoints &amp;quot;phymodel.smd&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	$mass 60.0&lt;br /&gt;
	$inertia 10.00&lt;br /&gt;
	$damping 0.01&lt;br /&gt;
	$rotdamping 1.50&lt;br /&gt;
	$rootbone &amp;quot;valvebiped.bip01_pelvis&amp;quot;&lt;br /&gt;
	$jointmerge &amp;quot;ValveBiped.Bip01_Pelvis&amp;quot; &amp;quot;ValveBiped.Bip01_Spine1&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A breakdown of the important components of the script:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$cd&amp;lt;/tt&amp;gt;: A pointer to the folder where the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; files reside in. If you moved these files elsewhere after decompiling the model, modify this to reflect that change.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$modelname&amp;lt;/tt&amp;gt;: This command determines where the resulting model will be placed in, with respect to the &amp;lt;tt&amp;gt;models&amp;lt;/tt&amp;gt; folder. Using the above snippet as an example, the resulting (compiled) model will be located at &amp;lt;tt&amp;gt;models/player/Flandre.mdl&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$cdmaterials&amp;lt;/tt&amp;gt;: A pointer to the folder where the materials for the model reside in, with respect to the &amp;lt;tt&amp;gt;materials&amp;lt;/tt&amp;gt; folder. Using the above snippet as an example, the full path will be &amp;lt;tt&amp;gt;materials/models/player/Flandre/&amp;lt;/tt&amp;gt;. Ensure that the path is valid or your model will end up with purple and black checkerboard textures instead.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$includemodel&amp;lt;/tt&amp;gt;: This command determines which model files are 'included' into the model. In layman's terms, this determines which animation libraries are referenced by the model. An Obsidian Conflict player model requires a different set of animation libraries depending on the character's gender:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
'''For a male model''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;$includemodel &amp;quot;player/male_shared.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_ss.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_gestures.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_postures.mdl&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
'''For a female model''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;$includemodel &amp;quot;player/female_shared.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_ss.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_gestures.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_postures.mdl&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$surfaceprop&amp;lt;/tt&amp;gt;: Used to define the physical surface properties the model will have. The default is &amp;lt;tt&amp;gt;flesh&amp;lt;/tt&amp;gt; (organic-human). The complete list is available [http://developer.valvesoftware.com/wiki/Material_surface_properties here].&lt;br /&gt;
'''Note:''' If this command was used in the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files to define multiple surface types and is also present in the &amp;lt;tt&amp;gt;.qc&amp;lt;/tt&amp;gt; script, the values set in the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files will be ignored. If this behavior is not desired, either delete this command from the &amp;lt;tt&amp;gt;mdldecompiler.qc&amp;lt;/tt&amp;gt; script, or specify the value as &amp;lt;tt&amp;gt;default&amp;lt;/tt&amp;gt; instead.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is all that you will typically need to modify in order to make a player model compatible with Obsidian Conflict.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Finishing Touches==&lt;br /&gt;
Save the script file and open ''GUI StudioMDL''. Select &amp;lt;tt&amp;gt;OrangeBox&amp;lt;/tt&amp;gt; for &amp;lt;tt&amp;gt;SDK Version&amp;lt;/tt&amp;gt; and for &amp;lt;tt&amp;gt;Target Mod or &amp;quot;GameInfo&amp;quot; path&amp;lt;/tt&amp;gt; select &amp;lt;tt&amp;gt;Obsidian Conflict&amp;lt;/tt&amp;gt; (you will need to [[Obsidian SDK Setup|configure the Source SDK for Obsidian Conflict]] prior to this). Go to ''File'' &amp;amp;rarr; ''Load .qc file'' and load the &amp;lt;tt&amp;gt;.qc&amp;lt;/tt&amp;gt; file, then click on the &amp;lt;tt&amp;gt;Compile&amp;lt;/tt&amp;gt; button.&lt;br /&gt;
&lt;br /&gt;
When ''GUI StudioMDL'' finishes compiling the model (you should see &amp;lt;tt&amp;gt;Completed &amp;quot;mdldecompiler.qc&amp;quot;&amp;lt;/tt&amp;gt;), open the ''Source SDK'', select &amp;lt;tt&amp;gt;Source 2007&amp;lt;/tt&amp;gt; in the &amp;lt;tt&amp;gt;Engine Version:&amp;lt;/tt&amp;gt; combo box and select &amp;lt;tt&amp;gt;Obsidian Conflict&amp;lt;/tt&amp;gt; in the &amp;lt;tt&amp;gt;Current Game:&amp;lt;/tt&amp;gt; combo box (once again, you will need to [[Obsidian SDK Setup|configure the Source SDK for Obsidian Conflict]] prior to this), then click on &amp;lt;tt&amp;gt;Model Viewer&amp;lt;/tt&amp;gt;. When ''Half-Life Model Viewer'' loads up, go to ''File'' &amp;amp;rarr; ''Load model...'' and select your model.&lt;br /&gt;
&lt;br /&gt;
If all went well, you should now see your model, complete with working animations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once you have verified that your model is in working condition, go to where the model files are located in your client's folder and create a new text file with the name of your model, but with the &amp;lt;tt&amp;gt;.txt&amp;lt;/tt&amp;gt; extension. Using the previous snippet as an example, the file would be &amp;lt;tt&amp;gt;models/player/Flandre.&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;txt&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
Paste the following inside the file (don't forget to alter the gender of the &amp;lt;tt&amp;gt;base model rig&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;voice&amp;lt;/tt&amp;gt; as necessary):&lt;br /&gt;
&amp;lt;pre&amp;gt;ModelSettings&lt;br /&gt;
{&lt;br /&gt;
	//Use this option to choose a base script to use instead.&lt;br /&gt;
	&amp;quot;usefile&amp;quot;	&amp;quot;none&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//base model rig to use. Use either Male_01 or Female_01 for best results.&lt;br /&gt;
	&amp;quot;basemodel&amp;quot;	&amp;quot;Male_01&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Voice Sound 0=none, 1=male, 2=female, 3=combine&lt;br /&gt;
	&amp;quot;voice&amp;quot;	&amp;quot;1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Footstep Sound 1=shoe, 2=combine boots&lt;br /&gt;
	&amp;quot;footsteps&amp;quot;	&amp;quot;1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Gibs, 1 = generic human, 2 = generic alien, 3 = human rebel ragdoll gibs, 4 = Ragdoll only&lt;br /&gt;
	&amp;quot;Gibs&amp;quot;	&amp;quot;4&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
With this file, you can configure the voice, footstep sounds and gibs of the model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, head over to &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player&amp;lt;/tt&amp;gt; and create a new &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file with the same name as your model's &amp;lt;tt&amp;gt;.mdl&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The path after &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/&amp;lt;/tt&amp;gt; '''must''' reflect the path to the model, i.e. if the model is at &amp;lt;tt&amp;gt;models/player/somemodelname/somemodel.mdl&amp;lt;/tt&amp;gt;, the two files will be &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player/somemodelname/somemodel.vmt&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player/somemodelname/somemodel.vtf&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; file (you can make a copy of an existing one and clear it for use), paste the following:&lt;br /&gt;
&amp;lt;pre&amp;gt;UnlitGeneric&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;$translucent&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$basetexture&amp;quot; &amp;quot;vgui\playermodels\player\Hostage_01&amp;quot;&lt;br /&gt;
	&amp;quot;$vertexcolor&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$vertexalpha&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$no_fullbright&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$ignorez&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$decalscale&amp;quot; &amp;quot;0.250&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On the &amp;lt;tt&amp;gt;$basetexture&amp;lt;/tt&amp;gt; line, change &amp;lt;tt&amp;gt;Hostage_01&amp;lt;/tt&amp;gt; to point to your accompanying &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
To create that &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file, take a screenshot in ''Half-Life Model Viewer'' then save it as a &amp;lt;tt&amp;gt;.tga&amp;lt;/tt&amp;gt; file and open that in ''VTFEdit'', then save it in the &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; format. Give it the same name as your model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once you have placed the two files into your client's &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player&amp;lt;/tt&amp;gt; folder, test it all out in-game. If all works well (animations, textures, sounds, preview image), pat yourself on the back - you've successfully created a new player model.&lt;br /&gt;
*To test the model's preview image, start the game, then go to &amp;lt;tt&amp;gt;Options&amp;lt;/tt&amp;gt; &amp;amp;rarr; &amp;lt;tt&amp;gt;Multiplayer&amp;lt;/tt&amp;gt; tab, and select your model from the combo box.&lt;br /&gt;
*To test the model's animations and textures, select the model, then start a local server and turn on &amp;lt;tt&amp;gt;sv_cheats&amp;lt;/tt&amp;gt;. Execute the &amp;lt;tt&amp;gt;thirdperson&amp;lt;/tt&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Tips And Tricks==&lt;br /&gt;
===Creating The VGUI Preview Image===&lt;br /&gt;
====Using Paint Shop Pro====&lt;br /&gt;
You will also need to download and install a '''http://nemesis.thewavelength.net/index.php?p=39 VTF Plugin for Paint Shop Pro''' beforehand (Information about how to use it and what programs can use it '''http://developer.valvesoftware.com/wiki/Photoshop_VTF_Plugin here''').&lt;br /&gt;
&lt;br /&gt;
So, Open Paint Shop Pro and open the screenshot (.tga file) you took in SDK Model Viewer earlier.&lt;br /&gt;
(Prefebably you want the model holding an oc weapon and you can use centre view to get the model where you want it.&lt;br /&gt;
To look around in SDK Model Viewer use: Right mouse click - zoom in/out.&lt;br /&gt;
Left mouse click to rotate. Hold shift and use left click mouse to move the model up/down/left/right).&lt;br /&gt;
&lt;br /&gt;
Also in Paint Shop Pro it helps to add a grid (view/grid, size dosen't matter)it just helps when working.&lt;br /&gt;
&lt;br /&gt;
So lets move on to converting/working on the screenshot.&lt;br /&gt;
&lt;br /&gt;
First we will use the Crop tool to cut the picture just so that we have the top half of the body. Make sure you use free form and have the box size that you are cropping set to 256x200, position in the centre of the top half of the body (showing the head, chest and shoulders), and then crop.&lt;br /&gt;
&lt;br /&gt;
Now, click layers and select new mask layer/show all.&lt;br /&gt;
&lt;br /&gt;
Now you will see the picture has a mask-raster 1 layer, right click and select delete and then yes.&lt;br /&gt;
&lt;br /&gt;
Now select the Magic Wand tool set up with something like mode = replace&lt;br /&gt;
matchmode = RGB value tolerance = 1 use all layers and use contiguous also use Anti-alias and select outside from dropdown box.&lt;br /&gt;
Click on the background on the image and not the model to use the Magic Wand.&lt;br /&gt;
(Baically you want to delete the back ground and not the model itself).&lt;br /&gt;
So if the the whole box and around the model is selected, its ok to delete.&lt;br /&gt;
&lt;br /&gt;
Once the background is deleted, with the Magic Wand tool still open change the matchmode to = All opaque and this time click on the model in the image and it should change the Magic Wand from around the edges and around the model to actually now just around the model only.&lt;br /&gt;
&lt;br /&gt;
Now click layers select new mask layer/form image, make sure source opacity is checked and everything else is unchecked, click ok.&lt;br /&gt;
&lt;br /&gt;
Now we are going to cut the highlighted model onto a new image. So with the Magic Wand still highlighting around the model on the image change to the Pan tool and right click on the highlighted model and select: copy merged.&lt;br /&gt;
&lt;br /&gt;
Now go to File and create a new image with these properties:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;width =256 pixels&lt;br /&gt;
height =256 pixels&lt;br /&gt;
resolution =72,000 pixels/inch&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Choose Rastor Background&lt;br /&gt;
image depth =RGB - 8bits/channel&lt;br /&gt;
&lt;br /&gt;
And check the Transparent box.&lt;br /&gt;
&lt;br /&gt;
Now to paste your copied image onto your new image, so, right click on your new image and paste as a new selection. Position into the top left hand corner as much as possible and then just left click.&lt;br /&gt;
&lt;br /&gt;
Now we need to give an alpha channel so go to selections select load/save selection and choose save selection to alpha channel and clcik ok/save in the pop-up.&lt;br /&gt;
&lt;br /&gt;
Finally now click File and save copy as and name it Hostage_01.png using the .PNG file format and press yes to the pop-up. (this is so you have a nice image to upload to the forums).&lt;br /&gt;
&lt;br /&gt;
Now click File and save copy as again and this time name it nameofthemodel.vtf using the .VTF file format and press yes/ok to the pop-up.&lt;br /&gt;
&lt;br /&gt;
Now here we are using the VTF plugin. Set the properties as:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Template = Compressed Texture With Alpha&lt;br /&gt;
Format = DXT5 (Common Format)&lt;br /&gt;
Mipmap Filter = Box&lt;br /&gt;
Sharpen Filter = Sharpen Soft&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
check/tick Mipmaps and Thumbnail.&lt;br /&gt;
&lt;br /&gt;
And from the list just make sure Eight Bit Alpha (Format Specific) and Nice Filter are both checked/ticked. Everything else should be unchecked/unticked, then press ok.&lt;br /&gt;
&lt;br /&gt;
Finally add it to your obsidian/materials/VGUI/playermodels/player directory to finish.&lt;br /&gt;
&lt;br /&gt;
Example image:&lt;br /&gt;
&lt;br /&gt;
[[File:Hostage01.png|frame|Example image: Hostage_01]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Miscellaneous_Tutorials]]&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=How_to_make_OC_playermodels&amp;diff=1000</id>
		<title>How to make OC playermodels</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=How_to_make_OC_playermodels&amp;diff=1000"/>
				<updated>2011-04-08T15:52:27Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: Refined the contents and structure of the page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{wip}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
Original tutorial written by [http://www.obsidianconflict.net/forums/memberlist.php?mode=viewprofile&amp;amp;u=458 fug4life], with tips and tricks from [http://www.obsidianconflict.net/forums/memberlist.php?mode=viewprofile&amp;amp;u=1667 Maestro Fénix].&lt;br /&gt;
&lt;br /&gt;
In this tutorial, you will learn how to make a player model for Obsidian Conflict.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
*'''Source Development Kit (Source SDK)''': Available in ''Steam &amp;amp;rarr; Library &amp;amp;rarr; Tools''. This is required as a base for the model decompiler program, and to recompile models.&lt;br /&gt;
&lt;br /&gt;
*'''GCFScape (Optional, unless you intend to modify a model from a game)''': Allows you to browse and extract the contents of [http://developer.valvesoftware.com/wiki/GCF Game Cache Files (GCFs)]. http://nemesis.thewavelength.net/index.php?p=26&lt;br /&gt;
&lt;br /&gt;
*'''MDLDecompiler''': Self-explanatory. http://www.chaosincarnate.net/cannonfodder/mdldecompiler.php&lt;br /&gt;
&lt;br /&gt;
*'''GUI StudioMDL''': This program is a GUI front end for the [http://developer.valvesoftware.com/wiki/Studiomdl Studiomdl] tool in the Source SDK. http://www.wunderboy.org/apps/guistudiomdl2.php&lt;br /&gt;
&lt;br /&gt;
*'''Notepad++ (Optional only for models for [http://developer.valvesoftware.com/wiki/Source_Engine_2006 Source Engine 2006] and below)''': You can use this or any other hex editor. http://notepad-plus.sourceforge.net/uk/site.htm&lt;br /&gt;
&lt;br /&gt;
*'''VTFEdit (Optional if you intend to use ''Notepad++'' to open [http://developer.valvesoftware.com/wiki/Vmt .vmt] files instead)''': http://nemesis.thewavelength.net/index.php?c=178 &lt;br /&gt;
&lt;br /&gt;
*'''An Image Editor''' (such as ''Paint.NET'', ''Adobe Photoshop'', ''Paint Shop Pro'')&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Preparing The Materials==&lt;br /&gt;
First, you will need to create the folder of the new model that you are going to make. Go to your client's &amp;lt;tt&amp;gt;obsidian&amp;lt;/tt&amp;gt; folder (inside &amp;lt;tt&amp;gt;Steam/steamapps/sourcemods&amp;lt;/tt&amp;gt; for the uninitiated) and proceed to navigate to &amp;lt;tt&amp;gt;materials/models/player&amp;lt;/tt&amp;gt;. Create a new folder (with the name of your model) inside this folder (right-click an empty area &amp;amp;rarr; ''New'' &amp;amp;rarr; ''Folder''). Copy your model's materials into the new folder you created, then open their &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files.&lt;br /&gt;
&lt;br /&gt;
You should see something like this, in typical [http://developer.valvesoftware.com/wiki/KeyValues KeyValues] format:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;VertexLitGeneric&amp;quot;&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;$baseTexture&amp;quot; &amp;quot;Models/player/Mossman/mossman_sheet&amp;quot;&lt;br /&gt;
	&amp;quot;$envmap&amp;quot; &amp;quot;env_cubemap&amp;quot;&lt;br /&gt;
	&amp;quot;$bumpmap&amp;quot; &amp;quot;models/player/Mossman/Mossman_normal&amp;quot;&lt;br /&gt;
	&amp;quot;$normalmapalphaenvmapmask&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$envmapcontrast&amp;quot; &amp;quot;.20&amp;quot;&lt;br /&gt;
	&amp;quot;$envmapsaturation&amp;quot; &amp;quot;0.9&amp;quot;&lt;br /&gt;
	&amp;quot;$envmaptint&amp;quot; &amp;quot;[ .36 .36 .36 ]&amp;quot;&lt;br /&gt;
        &amp;quot;$halflambert&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$nodecal&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go to the &amp;lt;tt&amp;gt;$baseTexture&amp;lt;/tt&amp;gt; line, and change &amp;lt;tt&amp;gt;Models/player/Mossman/mossman_sheet&amp;lt;/tt&amp;gt; to point to where your textures (i.e. the [http://developer.valvesoftware.com/wiki/VTF .vtf]s) are located.&lt;br /&gt;
In the case of the above example, it would become &amp;lt;tt&amp;gt;Models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/mossman_sheet&amp;lt;/tt&amp;gt;, where &amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; is the name of your model.&lt;br /&gt;
&lt;br /&gt;
We're not done yet - you will also need to replace all occurences of &amp;lt;tt&amp;gt;Models/player/Mossman/&amp;lt;/tt&amp;gt; with &amp;lt;tt&amp;gt;Models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/&amp;lt;/tt&amp;gt; in that &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; file. To illustrate, in the above example, the line &amp;lt;tt&amp;gt;$bumpmap&amp;lt;/tt&amp;gt; also needs to be changed from &amp;lt;tt&amp;gt;models/player/Mossman/Mossman_normal&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;models/player/&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;lt;your model name&amp;gt;&amp;lt;/span&amp;gt;/Mossman_normal&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If you reference an invalid path, your model will have the infamous error texture (i.e. a purple and black checkerboard texture will be seen instead).&lt;br /&gt;
&lt;br /&gt;
After you have modified all the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files for your model, you are ready to convert the model for use as a player model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Converting The Model==&lt;br /&gt;
Go to the model files, and open the [http://developer.valvesoftware.com/wiki/MDL .mdl] file with ''Notepad++'' (or your favorite hex editor). The first four bytes in the file should be &amp;lt;tt&amp;gt;IDST&amp;lt;/tt&amp;gt; (hexadecimal sequence: &amp;lt;tt&amp;gt;0x49&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x44&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x53&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;0x54&amp;lt;/tt&amp;gt;). Now, verify that the fifth byte (immediately after the &amp;lt;tt&amp;gt;T&amp;lt;/tt&amp;gt;) is a &amp;lt;tt&amp;gt;,&amp;lt;/tt&amp;gt; (comma, hexadecimal: &amp;lt;tt&amp;gt;0x2C&amp;lt;/tt&amp;gt;). If it is, then you can safely close the program; nothing else needs to be done. If it is something else, such as a &amp;lt;tt&amp;gt;0&amp;lt;/tt&amp;gt; (zero, hexadecimal: &amp;lt;tt&amp;gt;0x30&amp;lt;/tt&amp;gt;) or a &amp;lt;tt&amp;gt;-&amp;lt;/tt&amp;gt; (minus sign, hexadecimal: &amp;lt;tt&amp;gt;0x2D&amp;lt;/tt&amp;gt;), you will need to change it back to a comma (i.e. &amp;lt;tt&amp;gt;IDST0&amp;lt;/tt&amp;gt; &amp;amp;rarr; &amp;lt;tt&amp;gt;IDST,&amp;lt;/tt&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''Note:''' This workaround is required because the model decompiler was written before games on [http://developer.valvesoftware.com/wiki/Source_Engine_2007 Source Engine 2007 and 2009] were released, and was never updated for forward compatibility by its author.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Open ''MDLDecompiler'', then select the model that you wish to decompile and select the folder where you wish to put the decompiled files. After starting the decompile process, wait for a prompt to appear, informing you of a successful recompile.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If the decompiler crashes for some unknown reason, attempt another 3-4 tries. If it still fails to work, you may wish to attempt to decompile it with [http://www.chaosincarnate.net/cannonfodder/cftools.php?program=studiocompiler StudioCompiler], or [http://developer.valvesoftware.com/wiki/User:Erix920 Erix920]'s [http://kathar.net/other/mdldecompiler.exe modified version of MDLDecompiler] instead.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;'''Additional Note:''' In certain cases, MDLDecompiler will seem to work perfectly fine - no crashes or error messages are generated - but will actually generate corrupted [http://developer.valvesoftware.com/wiki/SMD .smd] files, which when viewed in a modeling program such as ''XSI Mod Tool'' will have no mesh at all. A telltale sign of this is when the file sizes of most of the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; files are unusually small (&amp;lt; 1 MB), coupled with an unusually large physics model &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; (&amp;gt; 1 MB). There is no known solution for this issue at the time of writing, apart from contacting the creator of the model and asking (nicely!) for the model sources.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Go to the folder where the resulting files are. You will see several files with the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; extension and a file &amp;lt;tt&amp;gt;mdldecompiler.qc&amp;lt;/tt&amp;gt;. Open the [http://developer.valvesoftware.com/wiki/Qc .qc] file with ''Notepad++'' or your favorite text editor (but not a word processor like ''Wordpad'' or ''Microsoft Word''!).&lt;br /&gt;
&lt;br /&gt;
This script file determines the Studiomdl configuration for the model. A snippet is provided below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$cd &amp;quot;C:\Users\User\Desktop\New folder&amp;quot;&lt;br /&gt;
$modelname &amp;quot;player\Flandre.mdl&amp;quot;&lt;br /&gt;
$model &amp;quot;body&amp;quot; &amp;quot;ref.smd&amp;quot;&lt;br /&gt;
$cdmaterials &amp;quot;models\player\Flandre\&amp;quot;&lt;br /&gt;
$hboxset &amp;quot;default&amp;quot;&lt;br /&gt;
// Model uses material &amp;quot;txFlanFace.vmt&amp;quot;&lt;br /&gt;
// Model uses material &amp;quot;txFlandre.vmt&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_shared.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_ss.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_gestures.mdl&amp;quot;&lt;br /&gt;
$includemodel &amp;quot;player/female_postures.mdl&amp;quot;&lt;br /&gt;
$surfaceprop &amp;quot;flesh&amp;quot;&lt;br /&gt;
$illumposition 0.016 0.578 34.522&lt;br /&gt;
$sequence ragdoll &amp;quot;ragdoll&amp;quot; ACT_DIERAGDOLL 1 fps 30.00&lt;br /&gt;
$ikchain rhand ValveBiped.Bip01_R_Hand knee  0.707 0.707 0.000&lt;br /&gt;
$ikchain lhand ValveBiped.Bip01_L_Hand knee  0.707 0.707 0.000&lt;br /&gt;
$ikchain rfoot ValveBiped.Bip01_R_Foot knee  0.707 -0.707 0.000&lt;br /&gt;
$ikchain lfoot ValveBiped.Bip01_L_Foot knee  0.707 -0.707 0.000&lt;br /&gt;
$collisionjoints &amp;quot;phymodel.smd&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	$mass 60.0&lt;br /&gt;
	$inertia 10.00&lt;br /&gt;
	$damping 0.01&lt;br /&gt;
	$rotdamping 1.50&lt;br /&gt;
	$rootbone &amp;quot;valvebiped.bip01_pelvis&amp;quot;&lt;br /&gt;
	$jointmerge &amp;quot;ValveBiped.Bip01_Pelvis&amp;quot; &amp;quot;ValveBiped.Bip01_Spine1&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A breakdown of the important components of the script:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$cd&amp;lt;/tt&amp;gt;: A pointer to the folder where the &amp;lt;tt&amp;gt;.smd&amp;lt;/tt&amp;gt; files reside in. If you moved these files elsewhere after decompiling the model, modify this to reflect that change.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$modelname&amp;lt;/tt&amp;gt;: This command determines where the resulting model will be placed in, with respect to the &amp;lt;tt&amp;gt;models&amp;lt;/tt&amp;gt; folder. Using the above snippet as an example, the resulting (compiled) model will be located at &amp;lt;tt&amp;gt;models/player/Flandre.mdl&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$cdmaterials&amp;lt;/tt&amp;gt;: A pointer to the folder where the materials for the model reside in, with respect to the &amp;lt;tt&amp;gt;materials&amp;lt;/tt&amp;gt; folder. Using the above snippet as an example, the full path will be &amp;lt;tt&amp;gt;materials/models/player/Flandre/&amp;lt;/tt&amp;gt;. Ensure that the path is valid or your model will end up with purple and black checkerboard textures instead.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$includemodel&amp;lt;/tt&amp;gt;: This command determines which model files are 'included' into the model. In layman's terms, this determines which animation libraries are referenced by the model. An Obsidian Conflict player model requires a different set of animation libraries depending on the character's gender:&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
'''For a male model''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;$includemodel &amp;quot;player/male_shared.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_ss.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_gestures.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/male_postures.mdl&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
'''For a female model''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;$includemodel &amp;quot;player/female_shared.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_ss.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_gestures.mdl&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
$includemodel &amp;quot;player/female_postures.mdl&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;$surfaceprop&amp;lt;/tt&amp;gt;: Used to define the physical surface properties the model will have. The default is &amp;lt;tt&amp;gt;flesh&amp;lt;/tt&amp;gt; (organic-human). The complete list is available [http://developer.valvesoftware.com/wiki/Material_surface_properties here].&lt;br /&gt;
'''Note:''' If this command was used in the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files to define multiple surface types and is also present in the &amp;lt;tt&amp;gt;.qc&amp;lt;/tt&amp;gt; script, the values set in the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; files will be ignored. If this behavior is not desired, either delete this command from the &amp;lt;tt&amp;gt;mdldecompiler.qc&amp;lt;/tt&amp;gt; script, or specify the value as &amp;lt;tt&amp;gt;default&amp;lt;/tt&amp;gt; instead.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is all that you will typically need to modify in order to make a player model compatible with Obsidian Conflict.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Finishing Touches==&lt;br /&gt;
Save the script file and open ''GUI StudioMDL''. Select &amp;lt;tt&amp;gt;OrangeBox&amp;lt;/tt&amp;gt; for &amp;lt;tt&amp;gt;SDK Version&amp;lt;/tt&amp;gt; and for &amp;lt;tt&amp;gt;Target Mod or &amp;quot;GameInfo&amp;quot; path&amp;lt;/tt&amp;gt; select &amp;lt;tt&amp;gt;Obsidian Conflict&amp;lt;/tt&amp;gt; (you will need to [[Obsidian SDK Setup|configure the Source SDK for Obsidian Conflict]] prior to this). Go to ''File'' &amp;amp;rarr; ''Load .qc file'' and load the &amp;lt;tt&amp;gt;.qc&amp;lt;/tt&amp;gt; file, then click on the &amp;lt;tt&amp;gt;Compile&amp;lt;/tt&amp;gt; button.&lt;br /&gt;
&lt;br /&gt;
When ''GUI StudioMDL'' finishes compiling the model (you should see &amp;lt;tt&amp;gt;Completed &amp;quot;mdldecompiler.qc&amp;quot;&amp;lt;/tt&amp;gt;), open the ''Source SDK'', select &amp;lt;tt&amp;gt;Source 2007&amp;lt;/tt&amp;gt; in the &amp;lt;tt&amp;gt;Engine Version:&amp;lt;/tt&amp;gt; combo box and select &amp;lt;tt&amp;gt;Obsidian Conflict&amp;lt;/tt&amp;gt; in the &amp;lt;tt&amp;gt;Current Game:&amp;lt;/tt&amp;gt; combo box (once again, you will need to [[Obsidian SDK Setup|configure the Source SDK for Obsidian Conflict]] prior to this), then click on &amp;lt;tt&amp;gt;Model Viewer&amp;lt;/tt&amp;gt;. When ''Half-Life Model Viewer'' loads up, go to ''File'' &amp;amp;rarr; ''Load model...'' and select your model.&lt;br /&gt;
&lt;br /&gt;
If all went well, you should now see your model, complete with working animations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once you have verified that your model is in working condition, go to where the model files are located in your client's folder and create a new text file with the name of your model, but with the &amp;lt;tt&amp;gt;.txt&amp;lt;/tt&amp;gt; extension. Using the previous snippet as an example, the file would be &amp;lt;tt&amp;gt;models/player/Flandre.&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;txt&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
Paste the following inside the file (don't forget to alter the gender of the &amp;lt;tt&amp;gt;base model rig&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;voice&amp;lt;/tt&amp;gt; as necessary):&lt;br /&gt;
&amp;lt;pre&amp;gt;ModelSettings&lt;br /&gt;
{&lt;br /&gt;
	//Use this option to choose a base script to use instead.&lt;br /&gt;
	&amp;quot;usefile&amp;quot;	&amp;quot;none&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//base model rig to use. Use either Male_01 or Female_01 for best results.&lt;br /&gt;
	&amp;quot;basemodel&amp;quot;	&amp;quot;Male_01&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Voice Sound 0=none, 1=male, 2=female, 3=combine&lt;br /&gt;
	&amp;quot;voice&amp;quot;	&amp;quot;1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Footstep Sound 1=shoe, 2=combine boots&lt;br /&gt;
	&amp;quot;footsteps&amp;quot;	&amp;quot;1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	//Gibs, 1 = generic human, 2 = generic alien, 3 = human rebel ragdoll gibs, 4 = Ragdoll only&lt;br /&gt;
	&amp;quot;Gibs&amp;quot;	&amp;quot;4&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
With this file, you can configure the voice, footstep sounds and gibs of the model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, head over to &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player&amp;lt;/tt&amp;gt; and create a new &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file with the same name as your model's &amp;lt;tt&amp;gt;.mdl&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The path after &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/&amp;lt;/tt&amp;gt; '''must''' reflect the path to the model, i.e. if the model is at &amp;lt;tt&amp;gt;models/player/somemodelname/somemodel.mdl&amp;lt;/tt&amp;gt;, the two files will be &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player/somemodelname/somemodel.vmt&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player/somemodelname/somemodel.vtf&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In the &amp;lt;tt&amp;gt;.vmt&amp;lt;/tt&amp;gt; file (you can make a copy of an existing one and clear it for use), paste the following:&lt;br /&gt;
&amp;lt;pre&amp;gt;UnlitGeneric&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;$translucent&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$basetexture&amp;quot; &amp;quot;vgui\playermodels\player\Hostage_01&amp;quot;&lt;br /&gt;
	&amp;quot;$vertexcolor&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$vertexalpha&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$no_fullbright&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$ignorez&amp;quot; &amp;quot;1&amp;quot;&lt;br /&gt;
	&amp;quot;$decalscale&amp;quot; &amp;quot;0.250&amp;quot;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On the &amp;lt;tt&amp;gt;$basetexture&amp;lt;/tt&amp;gt; line, change &amp;lt;tt&amp;gt;Hostage_01&amp;lt;/tt&amp;gt; to point to your accompanying &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
To create that &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; file, take a screenshot in ''Half-Life Model Viewer'' then save it as a &amp;lt;tt&amp;gt;.tga&amp;lt;/tt&amp;gt; file and open that in ''VTFEdit'', then save it in the &amp;lt;tt&amp;gt;.vtf&amp;lt;/tt&amp;gt; format. Give it the same name as your model.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once you have placed the two files into your client's &amp;lt;tt&amp;gt;obsidian/materials/VGUI/playermodels/player&amp;lt;/tt&amp;gt; folder, test it all out in-game. If all works well (animations, textures, sounds, preview image), pat yourself on the back - you've successfully created a new player model.&lt;br /&gt;
*To test the model's preview image, start the game, then go to &amp;lt;tt&amp;gt;Options&amp;lt;/tt&amp;gt; &amp;amp;rarr; &amp;lt;tt&amp;gt;Multiplayer&amp;lt;/tt&amp;gt; tab, and select your model from the combo box.&lt;br /&gt;
*To test the model's animations and textures, select the model, then start a local server and turn on &amp;lt;tt&amp;gt;sv_cheats&amp;lt;/tt&amp;gt;. Execute the &amp;lt;tt&amp;gt;thirdperson&amp;lt;/tt&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Tips And Tricks==&lt;br /&gt;
===Creating The VGUI Preview Image===&lt;br /&gt;
*'''Using Paint Shop Pro:'''&lt;br /&gt;
You will also need to download and install a '''http://nemesis.thewavelength.net/index.php?p=39 VTF Plugin for Paint Shop Pro''' beforehand (Information about how to use it and what programs can use it '''http://developer.valvesoftware.com/wiki/Photoshop_VTF_Plugin here''').&lt;br /&gt;
&lt;br /&gt;
So, Open Paint Shop Pro and open the screenshot (.tga file) you took in SDK Model Viewer earlier.&lt;br /&gt;
(Prefebably you want the model holding an oc weapon and you can use centre view to get the model where you want it.&lt;br /&gt;
To look around in SDK Model Viewer use: Right mouse click - zoom in/out.&lt;br /&gt;
Left mouse click to rotate. Hold shift and use left click mouse to move the model up/down/left/right).&lt;br /&gt;
&lt;br /&gt;
Also in Paint Shop Pro it helps to add a grid (view/grid, size dosen't matter)it just helps when working.&lt;br /&gt;
&lt;br /&gt;
So lets move on to converting/working on the screenshot.&lt;br /&gt;
&lt;br /&gt;
First we will use the Crop tool to cut the picture just so that we have the top half of the body. Make sure you use free form and have the box size that you are cropping set to 256x200, position in the centre of the top half of the body (showing the head, chest and shoulders), and then crop.&lt;br /&gt;
&lt;br /&gt;
Now, click layers and select new mask layer/show all.&lt;br /&gt;
&lt;br /&gt;
Now you will see the picture has a mask-raster 1 layer, right click and select delete and then yes.&lt;br /&gt;
&lt;br /&gt;
Now select the Magic Wand tool set up with something like mode = replace&lt;br /&gt;
matchmode = RGB value tolerance = 1 use all layers and use contiguous also use Anti-alias and select outside from dropdown box.&lt;br /&gt;
Click on the background on the image and not the model to use the Magic Wand.&lt;br /&gt;
(Baically you want to delete the back ground and not the model itself).&lt;br /&gt;
So if the the whole box and around the model is selected, its ok to delete.&lt;br /&gt;
&lt;br /&gt;
Once the background is deleted, with the Magic Wand tool still open change the matchmode to = All opaque and this time click on the model in the image and it should change the Magic Wand from around the edges and around the model to actually now just around the model only.&lt;br /&gt;
&lt;br /&gt;
Now click layers select new mask layer/form image, make sure source opacity is checked and everything else is unchecked, click ok.&lt;br /&gt;
&lt;br /&gt;
Now we are going to cut the highlighted model onto a new image. So with the Magic Wand still highlighting around the model on the image change to the Pan tool and right click on the highlighted model and select: copy merged.&lt;br /&gt;
&lt;br /&gt;
Now go to File and create a new image with these properties:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;width =256 pixels&lt;br /&gt;
height =256 pixels&lt;br /&gt;
resolution =72,000 pixels/inch&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Choose Rastor Background&lt;br /&gt;
image depth =RGB - 8bits/channel&lt;br /&gt;
&lt;br /&gt;
And check the Transparent box.&lt;br /&gt;
&lt;br /&gt;
Now to paste your copied image onto your new image, so, right click on your new image and paste as a new selection. Position into the top left hand corner as much as possible and then just left click.&lt;br /&gt;
&lt;br /&gt;
Now we need to give an alpha channel so go to selections select load/save selection and choose save selection to alpha channel and clcik ok/save in the pop-up.&lt;br /&gt;
&lt;br /&gt;
Finally now click File and save copy as and name it Hostage_01.png using the .PNG file format and press yes to the pop-up. (this is so you have a nice image to upload to the forums).&lt;br /&gt;
&lt;br /&gt;
Now click File and save copy as again and this time name it nameofthemodel.vtf using the .VTF file format and press yes/ok to the pop-up.&lt;br /&gt;
&lt;br /&gt;
Now here we are using the VTF plugin. Set the properties as:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Template = Compressed Texture With Alpha&lt;br /&gt;
Format = DXT5 (Common Format)&lt;br /&gt;
Mipmap Filter = Box&lt;br /&gt;
Sharpen Filter = Sharpen Soft&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
check/tick Mipmaps and Thumbnail.&lt;br /&gt;
&lt;br /&gt;
And from the list just make sure Eight Bit Alpha (Format Specific) and Nice Filter are both checked/ticked. Everything else should be unchecked/unticked, then press ok.&lt;br /&gt;
&lt;br /&gt;
Finally add it to your obsidian/materials/VGUI/playermodels/player directory to finish.&lt;br /&gt;
&lt;br /&gt;
Example image:&lt;br /&gt;
&lt;br /&gt;
[[File:Hostage01.png|frame|Example image: Hostage_01]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Miscellaneous_Tutorials]]&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=984</id>
		<title>Dedicated Server Setup 2</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=984"/>
				<updated>2011-04-07T14:46:16Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{wip}}&lt;br /&gt;
This page was created since I can't update the one [[Dedicated Server Setup|here]]. I'm still working on it (but don't have enough time to do it all at once), so it may seem incomplete. - [[User:TESLA-X4|TESLA-X4]] 12:01, 3 April 2011 (CEST)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
* A basic understanding of filesystem paths (i.e. &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; refers to the folder &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; ''inside'' &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;, not both the folders), and the different path representations between Windows and *nix (i.e. &amp;lt;tt&amp;gt;\&amp;lt;/tt&amp;gt; in Windows is the same as &amp;lt;tt&amp;gt;/&amp;lt;/tt&amp;gt; in UNIX[-like] operating systems).&lt;br /&gt;
* A basic understanding of the operating system's command-line interface (i.e. [[Wikipedia:Command Prompt|Command Prompt]] for Windows and Terminals for [[Wikipedia:GNOME Terminal|Linux]] and [[Wikipedia::Apple Terminal|Mac OS]]).&lt;br /&gt;
* A fast broadband connection (preferably one without a data transfer limit) to prevent premature aging waiting for the uploads to complete.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;'''Note:''' At the time of writing, no binaries are publicly available for Linux and Mac OS.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Base Server Install==&lt;br /&gt;
===Step 1: Download The HLDS Update Tool===&lt;br /&gt;
{{Windows|Download this file to a temporary location: '''http://www.steampowered.com/download/hldsupdatetool.exe'''}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In a ''Terminal (On Ubuntu: Applications &amp;amp;rarr; Accessories &amp;amp;rarr; Terminal)'' window, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;mkdir srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;wget &amp;lt;nowiki&amp;gt;http://www.steampowered.com/download/hldsupdatetool.bin&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 2: Install The HLDS Update Tool===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|Double-click on &amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt; and follow the instructions given by the wizard.&lt;br /&gt;
|For the purpose of this tutorial, we will assume that you have installed the server to &amp;lt;tt&amp;gt;c:\srcds&amp;lt;/tt&amp;gt;.&lt;br /&gt;
|Open a ''Command Prompt (Start &amp;amp;rarr; Accessories &amp;amp;rarr; Command Prompt)'' window and execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;c:&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''hldsupdatetool'' will now be downloaded to replace the one installed by the wizard.}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Terminal'' window as [[#Step 1: Download The HLDS Update Tool|Step 1]], execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;chmod +x hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''steam'' (the executable) will now be downloaded to replace the one extracted when you ran &amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;.}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 3: Download The Base Server Files===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Command Prompt'' window as [[#Step 2: Install The HLDS Update Tool|Step 2]], execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''hldsupdatetool'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the existing ''Terminal'' window from Steps 1 and 2, execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''steam'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 4: Setting Up The Folder Structure===&lt;br /&gt;
After [[#Step 3: Download The Base Server Files|Step 3]] completes, you should end up with something like this:&lt;br /&gt;
&lt;br /&gt;
{{Windows|&amp;lt;tt&amp;gt;hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds.exe&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|ClientRegistry.blob&lt;br /&gt;
|HldsUpdateTool.exe&lt;br /&gt;
|HldsUpdateTool_&amp;lt;tool version&amp;gt;.mst&lt;br /&gt;
|InstallRecord.blob&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|&amp;lt;tt&amp;gt;.steam\&lt;br /&gt;
|.steam\clientregistry.blob&lt;br /&gt;
|hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds_linux&lt;br /&gt;
|orangebox\srcds_run&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|hldsupdatetool.bin&lt;br /&gt;
|InstallRecord.blob&lt;br /&gt;
|steam&lt;br /&gt;
|test1.so&lt;br /&gt;
|test2.so&lt;br /&gt;
|test3.so&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, because Valve didn't set up the files properly on their server, you'll need to fix it yourself.&lt;br /&gt;
&lt;br /&gt;
'''GUI Approach:'''&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Delete the &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder and copy the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (the one outside) in its place.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Command-Line Approach:'''&lt;br /&gt;
&lt;br /&gt;
{{Windows|In the existing ''Command Prompt'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;rmdir /s orangebox\hl2&lt;br /&gt;
|xcopy /s /e hl2 orangebox&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|In the existing ''Terminal'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;rm -R orangebox/hl2&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cp -R hl2 orangebox&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Campaign Content==&lt;br /&gt;
Campaign content is stored only in GCFs downloadable only via the Steam client, so be prepared to upload the extracted files to your server. You will need [http://nemesis.thewavelength.net/index.php?p=25 this application] in order to proceed.&lt;br /&gt;
&lt;br /&gt;
Things are a little easier for Windows server operators with Remote Desktop access to their servers since they can simply install Steam on their servers and do everything directly there.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The Obsidian Team might offer to copy the extracted GCF content onto servers via their Windows server to save upload time in future, in which case you can safely ignore this section.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life source.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;hl1&amp;lt;/tt&amp;gt; folder (in the GCF) to your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl1&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life Deathmatch: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life 2 content.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====source 2007 binaries.gcf====&lt;br /&gt;
====source 2007 shared materials.gcf====&lt;br /&gt;
====source 2007 shared models.gcf====&lt;br /&gt;
====source 2007 shared sounds.gcf====&lt;br /&gt;
====half-life 2 2007 base content.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;, with &amp;lt;tt&amp;gt;source 2007 binaries.gcf&amp;lt;/tt&amp;gt; being extracted first and &amp;lt;tt&amp;gt;half-life 2 2007 base content.gcf&amp;lt;/tt&amp;gt; being last), extract the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCFs) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Lost Coast===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Huh?  :V&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode One===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode 1 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
====half-life 2 episode one.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====episodic 2007 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
====episode one 2007 content.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, and everything from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Two===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode two content.gcf====&lt;br /&gt;
====episode two maps.gcf====&lt;br /&gt;
====episode two materials.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;), extract everything from the &amp;lt;tt&amp;gt;ep2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/ep2&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist and overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Three===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
You must be living in the future.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Additional Game Content==&lt;br /&gt;
'''Note:''' If you download any of the following (sans ''Portal'') using the ''HLDS Update Tool'' after downloading &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;, &amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;you will be forced to download a new set of engine binaries incompatible with the current release of Obsidian Conflict&amp;lt;/span&amp;gt;. A telltale sign that this has occurred is when you see an engine error along the lines of ''SetupArrayProps_R: array prop '(null)' is at index zero'' or ''Host_Error: IDLLFunctions::DLLInit returned false'' when you try to start the server. To workaround that, simply rename the &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt; folder (inside &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;) to something else (e.g. &amp;lt;tt&amp;gt;bin_se2007&amp;lt;/tt&amp;gt;) '''before''' downloading the game's files. On completion, delete the newly created &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt; folder and rename the old one back to &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt;.&lt;br /&gt;
===Counter-Strike: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
{{Todo|Downloadable with the HLDS Update Tool, elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Day of Defeat: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
{{Todo|Downloadable with the HLDS Update Tool, elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Portal===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Team Fortress 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Incompatible at the time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Downloading And Installing Obsidian==&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Copy the &amp;lt;tt&amp;gt;obsidian&amp;lt;/tt&amp;gt; folder from a fresh install of Obsidian Conflict into your dedicated server's &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
{{Todo|Further elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Mounting Content==&lt;br /&gt;
Content mounts are controlled by a set of files in the &amp;lt;tt&amp;gt;obsidian/mount&amp;lt;/tt&amp;gt; folder. Each file determines whether or not the respective game's content is mounted. These files are merely blank files without any extensions - their contents do not matter since the mod merely checks if the file is there, mounting the content if the file is present.&lt;br /&gt;
Valid file names are:&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;css&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;dod&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;ep2&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;hls&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;lostcoast&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{Todo|Further elaboration needed.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color:grey&amp;quot;&amp;gt;Still in progress, give me more time, will ya?&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=981</id>
		<title>Dedicated Server Setup 2</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=981"/>
				<updated>2011-04-03T13:43:17Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{wip}}&lt;br /&gt;
This page was created since I can't update the one [[Dedicated Server Setup|here]]. I'm still working on it (but don't have enough time to do it all at once), so it may seem incomplete. - [[User:TESLA-X4|TESLA-X4]] 12:01, 3 April 2011 (CEST)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
* A basic understanding of filesystem paths, and the different path representations between Windows and *nix (i.e. &amp;lt;tt&amp;gt;\&amp;lt;/tt&amp;gt; in Windows is the same as &amp;lt;tt&amp;gt;/&amp;lt;/tt&amp;gt; in UNIX[-like] operating systems).&lt;br /&gt;
* A basic understanding of the operating system's command-line interface (i.e. [[Wikipedia:Command Prompt|Command Prompt]] for Windows and Terminals for [[Wikipedia:GNOME Terminal|Linux]] and [[Wikipedia::Apple Terminal|Mac OS]]).&lt;br /&gt;
* A fast broadband connection (preferably one without a data transfer limit) to prevent premature aging waiting for the uploads to complete.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;'''Note:''' At the time of writing, no binaries are publicly available for Linux and Mac OS.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Base Server Install==&lt;br /&gt;
===Step 1: Download The HLDS Update Tool===&lt;br /&gt;
{{Windows|Download this file to a temporary location: '''http://www.steampowered.com/download/hldsupdatetool.exe'''}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In a ''Terminal (On Ubuntu: Applications &amp;amp;rarr; Accessories &amp;amp;rarr; Terminal)'' window, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;mkdir srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;wget &amp;lt;nowiki&amp;gt;http://www.steampowered.com/download/hldsupdatetool.bin&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 2: Install The HLDS Update Tool===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|Double-click on &amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt; and follow the instructions given by the wizard.&lt;br /&gt;
|For the purpose of this tutorial, we will assume that you have installed the server to &amp;lt;tt&amp;gt;c:\srcds&amp;lt;/tt&amp;gt;.&lt;br /&gt;
|Open a ''Command Prompt (Start &amp;amp;rarr; Accessories &amp;amp;rarr; Command Prompt)'' window and execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;c:&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''hldsupdatetool'' will now be downloaded to replace the one installed by the wizard.}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Terminal'' window as [[#Step 1: Download The HLDS Update Tool|Step 1]], execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;chmod +x hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''steam'' (the executable) will now be downloaded to replace the one extracted when you ran &amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;.}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 3: Download The Base Server Files===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Command Prompt'' window as [[#Step 2: Install The HLDS Update Tool|Step 2]], execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''hldsupdatetool'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the existing ''Terminal'' window from Steps 1 and 2, execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''steam'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 4: Setting Up The Folder Structure===&lt;br /&gt;
After [[#Step 3: Download The Base Server Files|Step 3]] completes, you should end up with something like this:&lt;br /&gt;
&lt;br /&gt;
{{Windows|&amp;lt;tt&amp;gt;hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds.exe&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|ClientRegistry.blob&lt;br /&gt;
|HldsUpdateTool.exe&lt;br /&gt;
|HldsUpdateTool_&amp;lt;tool version&amp;gt;.mst&lt;br /&gt;
|InstallRecord.blob&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|&amp;lt;tt&amp;gt;.steam\&lt;br /&gt;
|.steam\clientregistry.blob&lt;br /&gt;
|hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds_linux&lt;br /&gt;
|orangebox\srcds_run&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|hldsupdatetool.bin&lt;br /&gt;
|InstallRecord.blob&lt;br /&gt;
|steam&lt;br /&gt;
|test1.so&lt;br /&gt;
|test2.so&lt;br /&gt;
|test3.so&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, because Valve didn't set up the files properly on their server, you'll need to fix it yourself.&lt;br /&gt;
&lt;br /&gt;
'''GUI Approach:'''&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Delete the &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder and copy the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (the one outside) in its place.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Command-Line Approach:'''&lt;br /&gt;
&lt;br /&gt;
{{Windows|In the existing ''Command Prompt'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;rmdir /s orangebox\hl2&lt;br /&gt;
|xcopy /s /e hl2 orangebox&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|In the existing ''Terminal'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;rm -R orangebox/hl2&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cp -R hl2 orangebox&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Campaign Content==&lt;br /&gt;
Campaign content is stored only in GCFs downloadable only via the Steam client, so be prepared to upload the extracted files to your server. You will need [http://nemesis.thewavelength.net/index.php?p=25 this application] in order to proceed.&lt;br /&gt;
&lt;br /&gt;
Things are a little easier for Windows server operators since they can simply install Steam on it and do everything directly there.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The Obsidian Team might offer to copy the extracted GCF content onto servers via their Windows server to save upload time in future, in which case you can safely ignore this section.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life source.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;hl1&amp;lt;/tt&amp;gt; folder (in the GCF) to your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl1&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half Life Deathmatch: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Not useable at time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life 2 content.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====source 2007 binaries.gcf====&lt;br /&gt;
====source 2007 shared materials.gcf====&lt;br /&gt;
====source 2007 shared models.gcf====&lt;br /&gt;
====source 2007 shared sounds.gcf====&lt;br /&gt;
====half-life 2 2007 base content.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;, with &amp;lt;tt&amp;gt;source 2007 binaries.gcf&amp;lt;/tt&amp;gt; being extracted first and &amp;lt;tt&amp;gt;half-life 2 2007 base content.gcf&amp;lt;/tt&amp;gt; being last), extract the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCFs) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Lost Coast===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Huh?  :V&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode One===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode 1 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
====half-life 2 episode one.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====episodic 2007 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
====episode one 2007 content.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, and everything from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Two===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode two content.gcf====&lt;br /&gt;
====episode two maps.gcf====&lt;br /&gt;
====episode two materials.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;), extract everything from the &amp;lt;tt&amp;gt;ep2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/ep2&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist and overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Three===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
You must be living in the future.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Portal===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Not useable at time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Additional Game Content==&lt;br /&gt;
'''Note:''' If you download any of the following using the ''HLDS Update Tool'' after downloading &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;, &amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;you will be forced to download a new set of engine binaries incompatible with the current release of Obsidian Conflict&amp;lt;/span&amp;gt;. A telltale sign that this has occurred is when you see an engine error along the lines of ''SetupArrayProps_R: array prop '(null)' is at index zero'' or ''Host_Error: IDLLFunctions::DLLInit returned false'' when you try to start the server. To workaround that, simply rename the &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt; folder (inside &amp;lt;tt&amp;gt;orangebox&amp;lt;/tt&amp;gt;) to something else (e.g. &amp;lt;tt&amp;gt;bin_se2007&amp;lt;/tt&amp;gt;) '''before''' downloading the game's files. On completion, delete the newly created &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt; folder and rename the old one back to &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt;.&lt;br /&gt;
===Counter-Strike: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
{{Todo|Downloadable with the HLDS Update Tool, elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Day of Defeat: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
{{Todo|Downloadable with the HLDS Update Tool, elaboration needed.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Team Fortress 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Not useable at time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Downloading And Installing Obsidian==&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
???&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color:grey&amp;quot;&amp;gt;Still in progress, give me more time, will ya?&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=980</id>
		<title>Dedicated Server Setup 2</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=980"/>
				<updated>2011-04-03T12:35:28Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{wip}}&lt;br /&gt;
This page was created since I can't update the page [[Dedicated Server Setup|here]]. I'm still working on it (but don't have enough time to do it all at once), so it may seem incomplete. - [[User:TESLA-X4|TESLA-X4]] 12:01, 3 April 2011 (CEST)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
* A basic understanding of filesystem paths, and the different path representations between Windows and *nix (i.e. &amp;lt;tt&amp;gt;\&amp;lt;/tt&amp;gt; in Windows is the same as &amp;lt;tt&amp;gt;/&amp;lt;/tt&amp;gt; in UNIX[-like] operating systems).&lt;br /&gt;
* A basic understanding of the operating system's command-line interface (i.e. [[Wikipedia:Command Prompt|Command Prompt]] for Windows and Terminals for [[Wikipedia:GNOME Terminal|Linux]] and [[Wikipedia::Apple Terminal|Mac OS]]).&lt;br /&gt;
* A fast broadband connection (preferably one without a data transfer limit) to prevent premature aging waiting for the uploads to complete.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;'''Note:''' At the time of writing, no binaries are publicly available for Linux and Mac OS.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Base Server Install==&lt;br /&gt;
===Step 1: Download The HLDS Update Tool===&lt;br /&gt;
{{Windows|Download this file to a temporary location: '''http://www.steampowered.com/download/hldsupdatetool.exe'''}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In a ''Terminal (On Ubuntu: Applications &amp;amp;rarr; Accessories &amp;amp;rarr; Terminal)'' window, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;mkdir srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds_l&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;wget &amp;lt;nowiki&amp;gt;http://www.steampowered.com/download/hldsupdatetool.bin&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 2: Install The HLDS Update Tool===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|Double-click on &amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt; and follow the instructions given by the wizard.&lt;br /&gt;
|For the purpose of this tutorial, we will assume that you have installed the server to &amp;lt;tt&amp;gt;c:\srcds&amp;lt;/tt&amp;gt;.&lt;br /&gt;
|Open a ''Command Prompt (Start &amp;amp;rarr; Accessories &amp;amp;rarr; Command Prompt)'' window and execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;c:&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cd srcds&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''hldsupdatetool'' will now be downloaded to replace the one installed by the wizard.}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Terminal'' window as [[#Step 1: Download The HLDS Update Tool|Step 1]], execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;chmod +x hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|An updated version of ''steam'' (the executable) will now be downloaded to replace the one extracted when you ran &amp;lt;tt&amp;gt;./hldsupdatetool.bin&amp;lt;/tt&amp;gt;.}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 3: Download The Base Server Files===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Command Prompt'' window as [[#Step 2: Install The HLDS Update Tool|Step 2]], execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;hldsupdatetool.exe&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''hldsupdatetool'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the existing ''Terminal'' window from Steps 1 and 2, execute the following command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/tt&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;tt&amp;gt;./steam&amp;lt;/tt&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-command update&amp;lt;/tt&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;tt&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/tt&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''steam'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 4: Setting Up The Folder Structure===&lt;br /&gt;
After [[#Step 3: Download The Base Server Files|Step 3]] completes, you should end up with something like this:&lt;br /&gt;
&lt;br /&gt;
{{Windows|&amp;lt;tt&amp;gt;hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds.exe&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|ClientRegistry.blob&lt;br /&gt;
|HldsUpdateTool.exe&lt;br /&gt;
|HldsUpdateTool_&amp;lt;tool version&amp;gt;.mst&lt;br /&gt;
|InstallRecord.blob&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|&amp;lt;tt&amp;gt;.steam\&lt;br /&gt;
|.steam\clientregistry.blob&lt;br /&gt;
|hl2\&lt;br /&gt;
|orangebox\&lt;br /&gt;
|orangebox\bin\&lt;br /&gt;
|orangebox\hl2\&lt;br /&gt;
|orangebox\platform\&lt;br /&gt;
|orangebox\reslists\&lt;br /&gt;
|orangebox\hlds_steamgames.vdf&lt;br /&gt;
|orangebox\srcds_linux&lt;br /&gt;
|orangebox\srcds_run&lt;br /&gt;
|orangebox\steam_appid.txt&lt;br /&gt;
|hldsupdatetool.bin&lt;br /&gt;
|InstallRecord.blob&lt;br /&gt;
|steam&lt;br /&gt;
|test1.so&lt;br /&gt;
|test2.so&lt;br /&gt;
|test3.so&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, because Valve didn't set up the files properly on their server, you'll need to fix it yourself.&lt;br /&gt;
&lt;br /&gt;
'''GUI Approach:'''&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Delete the &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder and copy the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (the one outside) in its place.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Command-Line Approach:'''&lt;br /&gt;
&lt;br /&gt;
{{Windows|In the existing ''Command Prompt'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;rmdir /s orangebox\hl2&lt;br /&gt;
|xcopy /s /e hl2 orangebox&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|In the existing ''Terminal'' window from the earlier steps, execute the following commands:&lt;br /&gt;
|&amp;lt;tt&amp;gt;rm -R orangebox/hl2&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;cp -R hl2 orangebox&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Campaign Content==&lt;br /&gt;
Campaign content is stored only in GCFs downloadable only via the Steam client, so be prepared to upload the extracted files to your server. You will need [http://nemesis.thewavelength.net/index.php?p=25 this application] in order to proceed.&lt;br /&gt;
&lt;br /&gt;
Things are a little easier for Windows server operators since they can simply install Steam on it and do everything directly there.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The Obsidian Team might offer to copy the extracted GCF content onto servers via their Windows server to save upload time in future, in which case you can safely ignore this section.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life source.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;hl1&amp;lt;/tt&amp;gt; folder (in the GCF) to your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl1&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half Life Deathmatch: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Not useable at time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====half-life 2 content.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====source 2007 binaries.gcf====&lt;br /&gt;
====source 2007 shared materials.gcf====&lt;br /&gt;
====source 2007 shared models.gcf====&lt;br /&gt;
====source 2007 shared sounds.gcf====&lt;br /&gt;
====half-life 2 2007 base content.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;, with &amp;lt;tt&amp;gt;source 2007 binaries.gcf&amp;lt;/tt&amp;gt; being extracted first and &amp;lt;tt&amp;gt;half-life 2 2007 base content.gcf&amp;lt;/tt&amp;gt; being last), extract the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCFs) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Lost Coast===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
Huh?  :V&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode One===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode 1 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist.&lt;br /&gt;
====half-life 2 episode one.gcf====&lt;br /&gt;
Extract the &amp;lt;tt&amp;gt;maps&amp;lt;/tt&amp;gt; folder from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
====episodic 2007 shared.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
====episode one 2007 content.gcf====&lt;br /&gt;
Extract everything from the &amp;lt;tt&amp;gt;episodic&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/episodic&amp;lt;/tt&amp;gt; folder, and everything from the &amp;lt;tt&amp;gt;hl2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/hl2&amp;lt;/tt&amp;gt; folder, overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Two===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
====episode two content.gcf====&lt;br /&gt;
====episode two maps.gcf====&lt;br /&gt;
====episode two materials.gcf====&lt;br /&gt;
For all of the above GCFs (&amp;lt;u&amp;gt;in given order&amp;lt;/u&amp;gt;), extract everything from the &amp;lt;tt&amp;gt;ep2&amp;lt;/tt&amp;gt; folder (in the GCF) into your dedicated server's &amp;lt;tt&amp;gt;orangebox/ep2&amp;lt;/tt&amp;gt; folder, creating the folder if it doesn't exist and overwriting if prompted to do so.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Half-Life 2: Episode Three===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
You must be living in the future.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Portal===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Not useable at time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Additional Game Content==&lt;br /&gt;
===Counter-Strike: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
???&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Day of Defeat: Source===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
???&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Team Fortress 2===&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
''Not useable at time of writing.''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Downloading And Installing Obsidian==&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 1em 0.5em 1em; border: 1px dashed #2f6fab; color: black; background-color: #f9f9f9; line-height: 1.1em;&amp;quot;&amp;gt;&lt;br /&gt;
???&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color:grey&amp;quot;&amp;gt;Still in progress, give me more time, will ya?&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	<entry>
		<id>https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=979</id>
		<title>Dedicated Server Setup 2</title>
		<link rel="alternate" type="text/html" href="https://www.wiki.obsidianconflict.net/?title=Dedicated_Server_Setup_2&amp;diff=979"/>
				<updated>2011-04-03T10:01:08Z</updated>
		
		<summary type="html">&lt;p&gt;TESLA-X4: Created page with &amp;quot;{{wip}} This page was created since I can't update the page here. I'm still working on it (but don't have enough time to do it all at once), so it may ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{wip}}&lt;br /&gt;
This page was created since I can't update the page [[Dedicated Server Setup|here]]. I'm still working on it (but don't have enough time to do it all at once), so it may seem incomplete. - [[User:TESLA-X4|TESLA-X4]] 12:01, 3 April 2011 (CEST)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Base Server Install==&lt;br /&gt;
===Step 1: Download the HLDS Update Tool===&lt;br /&gt;
{{Windows|Download this file to a temporary location: '''http://www.steampowered.com/download/hldsupdatetool.exe'''}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In a ''Terminal'' window, execute the following commands:&lt;br /&gt;
|&amp;lt;code&amp;gt;mkdir srcds_l&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;cd srcds_l&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;wget &amp;lt;nowiki&amp;gt;http://www.steampowered.com/download/hldsupdatetool.bin&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 2: Install the HLDS Update Tool===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|Double-click on '''hldsupdatetool.exe''' and follow the instructions given by the wizard.&lt;br /&gt;
|For the purposes of this tutorial, we will assume that you have installed the server to '''c:\srcds'''.&lt;br /&gt;
|Open a ''Command Prompt (Start → Accessories → Command Prompt)'' window and execute the following commands:&lt;br /&gt;
|&amp;lt;code&amp;gt;c:&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;cd srcds&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;hldsupdatetool&amp;lt;/code&amp;gt;|&lt;br /&gt;
|An updated version of ''hldsupdatetool'' will now be downloaded to replace the one installed by the wizard.}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Terminal'' window as [[#Step 1: Download the HLDS Update Tool|Step 1]], execute the following commands:&lt;br /&gt;
|&amp;lt;code&amp;gt;chmod +x hldsupdatetool.bin&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;./hldsupdatetool.bin&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;./steam&amp;lt;/code&amp;gt;|&lt;br /&gt;
|An updated version of ''steam'' (the executable) will now be downloaded to replace the one extracted when you ran ''./hldsupdatetool.bin''.}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Step 3: Download the Base Server Files===&lt;br /&gt;
{{Windows|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1097362093&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the same ''Command Prompt'' window as [[#Step 2: Install the HLDS Update Tool|Step 2]], execute the following command:&lt;br /&gt;
|&amp;lt;code&amp;gt;hldsupdatetool -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/code&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;code&amp;gt;hldsupdatetool&amp;lt;/code&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;code&amp;gt;-command update&amp;lt;/code&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;code&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/code&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;code&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''hldsupdatetool'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Linux|''Adapted from &amp;lt;nowiki&amp;gt;http://www.srcds.com/db/engine.php?subaction=showfull&amp;amp;id=1098643920&amp;lt;/nowiki&amp;gt;''|&lt;br /&gt;
|In the existing ''Terminal'' window from Steps 1 and 2, execute the following command:&lt;br /&gt;
|&amp;lt;code&amp;gt;./steam -command update -game &amp;quot;orangebox&amp;quot; -dir .&amp;lt;/code&amp;gt;|&lt;br /&gt;
|A breakdown of the command:&lt;br /&gt;
|&amp;lt;code&amp;gt;./steam&amp;lt;/code&amp;gt;: The executable to run.&lt;br /&gt;
|&amp;lt;code&amp;gt;-command update&amp;lt;/code&amp;gt;: Omnipresent, never omit this.&lt;br /&gt;
|&amp;lt;code&amp;gt;-game &amp;quot;&amp;lt;game&amp;gt;&amp;quot;&amp;lt;/code&amp;gt;: The set of files to download, specify ''list'' instead to see what can be downloaded.&lt;br /&gt;
|&amp;lt;code&amp;gt;-dir &amp;lt;nowiki&amp;gt;&amp;lt;directory|.&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;: The directory to install the files in, specify '.' to automatically use the directory ''steam'' is located in.|&lt;br /&gt;
|The base server files will now be downloaded. It will take a while, so don't go staring at the window waiting for it to complete. ;)}}&lt;br /&gt;
&lt;br /&gt;
{{Mac|''Unavailable at time of writing.''}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;color:grey&amp;quot;&amp;gt;The rest: Still in progress, give me more time, will ya?&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>TESLA-X4</name></author>	</entry>

	</feed>