Dark Messiah: Single-Player Level Creation: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
 
(17 intermediate revisions by 7 users not shown)
Line 1: Line 1:
[[Image:DMMaMHammerSplash.jpg|thumb|250px|right| Dark Messiah Single-Player Hammer Startup.]]
{{back | Dark Messiah Level Creation}}
{{note|This tutorial is an edited version of the translation found here: <nowiki>http://forums.steampowered.com/forums/showthread.php?p=21088346#post21088346</nowiki>}}
{{DISPLAYTITLE: Dark Messiah - Singleplayer SDK Installation}}
{{toc-right}}


== Setting up the SDK for [[Dark Messiah of Might and Magic]] ==
The Dark Messiah SDK, also known as an SDK, is a set of software utilities that allow you to create your own missions, weapons, enemies and other gameplay elements. It includes a standalone version of the Source SDK tools that have been updated to work with the Dark Messiah Singleplayer version of the Source Engine and is freely available on Steam. There is also a tutorial on how to setup the 2007/2009 versions of the SDK for developing Dark Messiah maps: [[Dark Messiah: Single-Player Level Creation/SourceSDK|Dark Messiah: Single-Player Level Creation (Source SDK 2007/2009)]]


=== Requirements ===
{{clr}}


# Dark Messiah of Might and Magic Single-Player SDK ( Found at: http://www.hammer-tutorial.com/data/files/tools/mm_sdk_sp.7z )
== Download ==
# [[GCFScape]]
[[file: Dark messiah sdk launcher.jpg | thumb | right | 225px | The Dark Messiah SDK launcher.]]
# 7-Zip ( Found at: http://www.7-zip.org/ )
Unlike other source engine development kits, the one for Dark Messiah is not available on Steam and instead you will need to download the Dark Messiah of Might and Magic Singleplayer SDK files from [http://www.moddb.com/games/dark-messiah-of-might-magic/downloads/dark-messiah-might-and-magic-sdk Moddb] and extract the content using something like [http://www.7-zip.org/ 7-Zip] to somewhere on your computer like your desktop.


=== Installing the SDK ===
Afterwards open the two [[GCF]] files individually with [[GCFScape]] and in the window that appears, select all folders inside and extract them to the directory where you have installed Dark Messiah of Might and Magic Single Player, which can be found in the location ''steamapps\common\Dark Messiah Might and Magic Single Player'' on your active steam library drive or:
# Go into your Steam library.
# Right-click on Dark Messiah of Might and Magic Single Player.
# Click on properties.
# A new window will open, here click on local files.
# Then click the 'Browse...' button to access the folder


# Extract the contents of 'mm_sdk_sp.7z' using 7-Zip. It should contain two Game Cache Files.
{{clr}}
# With GCFScape installed, double-click a Game Cache File to open it. In the window that appears, select all folders and extract them to: ''Steam\steamapps\STEAM USERNAME\dark messiah might and magic singleplayer''


=== Extracting the Dark Messiah GCF's ===
== Extracting the vpks ==
Next you will need to extract the contents of the following Dark Messiah [[VPK]] files inside of the ''/vpks'' folder with GCFScape to your ''Dark Messiah of Might and Magic Single Player'' directory mentioned earlier, because this version of the [[Hammer Editor]] cannot access the content of vpk files directly:
* depot_2101_dir.vpk (scripts)
* depot_2103_dir.vpk (models)
* depot_2104_dir.vpk (materials)
* depot_2105_dir.vpk (materials for models)
* depot_2106_dir.vpk (materials for levels)
* depot_2107_dir.vpk (sounds)
* depot_2108_dir.vpk (sounds)


Now you need to extract the contents of the following Dark Messiah GCF's (Game Cache Files) into your Dark Messiah Singleplayer folder, because the editor cannot access the .GCF files:
{{Todo|See [[Fixing VPK mounting for older Source SDK Bases]], adding both {{code|steam_vpks.vdf}} (with all the VPKs above mounted) along with Steam.dll wrapper (copy this from Source SDK 2006 or 2007), might fix Hammer unable to mount VPKs issues.}}


:* mm_materials_a_pub.gcf
== Configuring the Hammer Editor ==
:* mm_materials_b_pub.gcf
Once all the files have been extracted, you still need to tell Hammer where to look for these files. To do this, open the GameConfig.txt file located in the ''/bin'' folder inside of the Dark Messiah of Might and Magic Single Player directory and replace all its content with the code below. You also have to correct the ''$SteamUserDir'' strings below, after replacing the file's content, to the directory where your steam library is located (examples, windows: ''C:\Program Files\Steam\steamapps\common\'', linux: ''/home/USERNAME/.local/share/Steam/steamapps/common/''):
:* mm_materials_c_pub.gcf
:* mm_models_pub.gcf
:* mm_sound_lang_en_pub.gcf
:* mm_sound_pub.gcf


These GCF's can be found in the ''Steam/steamapps'' folder and need to be extracted to:
<pre>
 
"Configs"
:''Steam\steamapps\STEAM USERNAME\dark messiah might and magic singleplayer''
 
=== Configuring the Hammer Editor ===
 
Once all the files have been extracted, you still need to tell the Hammer editor where to look for these files. To do this, open the GameConfig.txt file located at:
:''Steam\steamapps\STEAM USERNAME\dark messiah might and magic singleplayer\bin\GameConfig.txt''
Replace the contents of the GameConfig.txt with the code below and replace <USER> with your Steam user name. You may have to correct the whole path:
 
<pre>"Configs"
{
"Games"
{
"Dark Messiah"
{
"GameDir" "C:\Program Files\Steam\SteamApps\<USER>\dark messiah might and magic single player\mm"
"hammer"
{
{
"GameData0" "C:\Program Files\Steam\SteamApps\<USER>\dark messiah might and magic single player\bin\halflife2.fgd"
    "Games"
"TextureFormat" "5"
    {
"MapFormat" "4"
        "Dark Messiah"
"DefaultTextureScale" "0.250000"
        {
"DefaultLightmapScale" "16"
            "GameDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm"
"GameExe" "C:\Program Files\Steam\SteamApps\<USER>\dark messiah might and magic single player\mm.exe"
            "hammer"
"DefaultSolidEntity" "func_detail"
            {
"DefaultPointEntity" "info_player_start"
                "GameData0" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\halflife2.fgd"
"BSP" "C:\Program Files\Steam\SteamApps\<USER>\dark messiah might and magic single player\bin\vbsp.exe"
                "TextureFormat" "5"
"Vis" "C:\Program Files\Steam\SteamApps\<USER>\dark messiah might and magic single player\bin\vvis.exe"
                "MapFormat" "4"
"Light" "C:\Program Files\Steam\SteamApps\<USER>\dark messiah might and magic single player\bin\vrad.exe"
                "DefaultTextureScale" "0.250000"
"GameExeDir" "C:\Program Files\Steam\SteamApps\<USER>\dark messiah might and magic single player"
                "DefaultLightmapScale" "16"
"MapDir" "C:\Program Files\Steam\SteamApps\<USER>\dark messiah might and magic single player\mm_content\mapsrc"
                "GameExe" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm.exe"
"BSPDir" "C:\Program Files\Steam\SteamApps\<USER>\dark messiah might and magic single player\mm\maps"
                "DefaultSolidEntity" "func_detail"
"CordonTexture" "tools\toolsskybox"
                "DefaultPointEntity" "info_player_start"
"MaterialExcludeCount" "0"
                "BSP" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\vbsp.exe"
                "Vis" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\vvis.exe"
                "Light" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\vrad.exe"
                "GameExeDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player"
                "MapDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm_content\mapsrc"
                "BSPDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm\maps"
                "CordonTexture" "tools\toolsskybox"
                "MaterialExcludeCount" "0"
            }
        }
    }
    "SDKVersion" "1"
}
}
}
</pre>
}
"SDKVersion" "1"
}</pre>
 
=== Using the editor for map creation ===
 
Open "hammer.exe" located in:
:''Steam/steamapps/dark messiah might and magic singleplayer/bin''
 
{{note|If you have compiled a map, it might be wise to close hammer before starting the game, otherwise the editor may lock up.}}
 
== Playing Your Maps ==
 
To play a map you must enable the developer console:
 
# Open Steam
# Right click on Dark Messiah Might and Magic Singleplayer
# Click on 'Properties'
# Click on 'Set Launch Options...'
# Enter <pre>-console</pre>
# Start the game
# Access the console by pressing '~', and type: <pre>map <mapname></pre>Example:<pre>map sp_tutorialmap</pre>


==Accessing the Dark Messiah SDK==
Even through all of the tools included in the download can be accessed without the issues without the use of the SDK launcher itself, one is still present within the download but cannot be opened directly without beforehand giving it the full path to its required scripts or it will just refuse to open.


== Known Bugs and Issues ==
To do this, create a shortcut to ''SDKLauncher.exe'' located inside of bin folder in Dark Messiah's installation directory through steam by adding it as a non-steam game. When done, right click on its entry in the library and add the following parameter in the ''launch options'' field:  ''-game "$SteamUserDir\Dark Messiah Might and Magic Single Player\launcher"'' and replace ''$SteamUserDir'' with the steam library directory, and you should now be able to launch it like any another standalone Source SDK application installed through Steam.


=== Shading Issue ===
==Linux support==
:'''Problem:''' In the 3D viewport ‘3D Textured Shaded' looks the same as ‘3D Textured'.
If you want to run hammer on a linux-based system, go into your steam library and click button at the bottom ''Add a game'' -> ''Add a Non-Steam Game'' and click browse to locate and add ''hammer.exe'' which are inside of the ''/bin'' folder for the game. Next, right click on its newly added entry in your steam library and go into properties, from there add to the ''Launch Options'' field the string ''PROTON_USE_WINED3D=1 %command%'' and enable ''Proton Experimental'' under the Compatibility tab afterwards. The same procedure can be used for the SDK itself after finishing the setup process beforehand as described above.
:'''Solution:''' There is no current solution to this. As a workaround, you could create the brushes of your map in a different Hammer editor. Any Source Engine game that ships with the Hammer editor will work for this. You can then later add models and entities in the Dark Messiah editor.


=== White Textures ===
== Package includes ==
:'''Problem:''' Some textures appear white in the editor.
The package includes:  
:'''Solution:''' Exporting and saving the affected texture's .vtf file again might fix this issue.
* The [[Hammer Editor]], the Source level editor.
* [[Faceposer]].
* Half-Life Model Viewer ([[HLMV]]).
* Standalone version of the [[Source SDK]] tools updated to work with [[Dark Messiah]].
* Suite of command line compiling utilities, such as studiomdl and map compiling tools.
* [[Vmf]] sources for all the maps featured in the game.
* [[Model]] sources for the player and orcs.


=== NPC Model Issue ===
== Where do I go from here? ==
:'''Problem:''' Some NPCs look like a different NPC type: E.g. a Goblin has the appearance of a dragon.
* The [[Dark Messiah Level Creation]] is a good place to go if you are familiar with Source mapping already. If not, you will need to master the basics of Source level design first ([[:Category:Level Design|Level Design]]).  
:'''Solution:''' This happens when you copy and paste an NPC entity or when you duplicate a NPC entity and change the entity type. Make sure that you correct the model after duplicating an existing NPC.
* If you want to learn about how to create content for the Source Engine in general, the main page of the [[SDK Docs | Source SDK documentation]] is a good place to start.


== Bugs and issues ==
* Post all issues and bugs in the [https://steamcommunity.com/app/2100/discussions/ Dark Messiah Steam Discussions Board].
* If you have a bug specific to the Dark Messiah SDK or game and perhaps know a fix, please add it as an entry to [[Dark Messiah Bugs]].
* See the [[:Category:Source SDK FAQ | Source SDK FAQ]] for answers to general SDK questions.
* For level design and Hammer editor issues, see the [[:Category:Level Design FAQ | Level Design FAQ]].


== Links and Citations ==
== Sources ==
* [http://www.hammer-tutorial.com/forum/hammer-editor-tutorials/dark-messiah-singleplayer-sdk-einrichten/ Original Tutorial (In German)]
* [http://web.archive.org/web/20140725042500/http://forums.steampowered.com/forums/showthread.php?p=21088346 Steam Users' Forums] (archived).  
* [http://forums.steampowered.com/forums/showthread.php?p=21088346#post21088346 Translated Tutorial (Steam Forums)]
* [http://www.hammer-tutorial.com/data/files/tools/mm_sdk_sp.7z Dark Messiah Single-Player SDK]
* [http://www.filefactory.com/file/cadd5a6/n/mm_sdk_sp.7z Alternate SDK Download Mirror (FileFactory)]
* [http://nemesis.thewavelength.net/index.php?p=26 GCFScape Site]
* [http://www.7-zip.org/ 7-Zip Homepage]


[[Category:Level Design]]
[[Category:Level Design]][[Category: Dark Messiah Level Creation]][[Category:Dark Messiah]]

Latest revision as of 05:24, 22 September 2024

Dark Messiah Level Creation

The Dark Messiah SDK, also known as an SDK, is a set of software utilities that allow you to create your own missions, weapons, enemies and other gameplay elements. It includes a standalone version of the Source SDK tools that have been updated to work with the Dark Messiah Singleplayer version of the Source Engine and is freely available on Steam. There is also a tutorial on how to setup the 2007/2009 versions of the SDK for developing Dark Messiah maps: Dark Messiah: Single-Player Level Creation (Source SDK 2007/2009)

Download

The Dark Messiah SDK launcher.

Unlike other source engine development kits, the one for Dark Messiah is not available on Steam and instead you will need to download the Dark Messiah of Might and Magic Singleplayer SDK files from Moddb and extract the content using something like 7-Zip to somewhere on your computer like your desktop.

Afterwards open the two GCF files individually with GCFScape and in the window that appears, select all folders inside and extract them to the directory where you have installed Dark Messiah of Might and Magic Single Player, which can be found in the location steamapps\common\Dark Messiah Might and Magic Single Player on your active steam library drive or:

  1. Go into your Steam library.
  2. Right-click on Dark Messiah of Might and Magic Single Player.
  3. Click on properties.
  4. A new window will open, here click on local files.
  5. Then click the 'Browse...' button to access the folder

Extracting the vpks

Next you will need to extract the contents of the following Dark Messiah VPK files inside of the /vpks folder with GCFScape to your Dark Messiah of Might and Magic Single Player directory mentioned earlier, because this version of the Hammer Editor cannot access the content of vpk files directly:

  • depot_2101_dir.vpk (scripts)
  • depot_2103_dir.vpk (models)
  • depot_2104_dir.vpk (materials)
  • depot_2105_dir.vpk (materials for models)
  • depot_2106_dir.vpk (materials for levels)
  • depot_2107_dir.vpk (sounds)
  • depot_2108_dir.vpk (sounds)
Todo: See Fixing VPK mounting for older Source SDK Bases, adding both steam_vpks.vdf (with all the VPKs above mounted) along with Steam.dll wrapper (copy this from Source SDK 2006 or 2007), might fix Hammer unable to mount VPKs issues.

Configuring the Hammer Editor

Once all the files have been extracted, you still need to tell Hammer where to look for these files. To do this, open the GameConfig.txt file located in the /bin folder inside of the Dark Messiah of Might and Magic Single Player directory and replace all its content with the code below. You also have to correct the $SteamUserDir strings below, after replacing the file's content, to the directory where your steam library is located (examples, windows: C:\Program Files\Steam\steamapps\common\, linux: /home/USERNAME/.local/share/Steam/steamapps/common/):

"Configs"
{
    "Games"
    {
        "Dark Messiah"
        {
            "GameDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm"
            "hammer"
            {
                "GameData0" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\halflife2.fgd"
                "TextureFormat" "5"
                "MapFormat" "4"
                "DefaultTextureScale" "0.250000"
                "DefaultLightmapScale" "16"
                "GameExe" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm.exe"
                "DefaultSolidEntity" "func_detail"
                "DefaultPointEntity" "info_player_start"
                "BSP" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\vbsp.exe"
                "Vis" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\vvis.exe"
                "Light" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\vrad.exe"
                "GameExeDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player"
                "MapDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm_content\mapsrc"
                "BSPDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm\maps"
                "CordonTexture" "tools\toolsskybox"
                "MaterialExcludeCount" "0"
            }
        }
    }
    "SDKVersion" "1"
}

Accessing the Dark Messiah SDK

Even through all of the tools included in the download can be accessed without the issues without the use of the SDK launcher itself, one is still present within the download but cannot be opened directly without beforehand giving it the full path to its required scripts or it will just refuse to open.

To do this, create a shortcut to SDKLauncher.exe located inside of bin folder in Dark Messiah's installation directory through steam by adding it as a non-steam game. When done, right click on its entry in the library and add the following parameter in the launch options field: -game "$SteamUserDir\Dark Messiah Might and Magic Single Player\launcher" and replace $SteamUserDir with the steam library directory, and you should now be able to launch it like any another standalone Source SDK application installed through Steam.

Linux support

If you want to run hammer on a linux-based system, go into your steam library and click button at the bottom Add a game -> Add a Non-Steam Game and click browse to locate and add hammer.exe which are inside of the /bin folder for the game. Next, right click on its newly added entry in your steam library and go into properties, from there add to the Launch Options field the string PROTON_USE_WINED3D=1 %command% and enable Proton Experimental under the Compatibility tab afterwards. The same procedure can be used for the SDK itself after finishing the setup process beforehand as described above.

Package includes

The package includes:

  • The Hammer Editor, the Source level editor.
  • Faceposer.
  • Half-Life Model Viewer (HLMV).
  • Standalone version of the Source SDK tools updated to work with Dark Messiah.
  • Suite of command line compiling utilities, such as studiomdl and map compiling tools.
  • Vmf sources for all the maps featured in the game.
  • Model sources for the player and orcs.

Where do I go from here?

  • The Dark Messiah Level Creation is a good place to go if you are familiar with Source mapping already. If not, you will need to master the basics of Source level design first (Level Design).
  • If you want to learn about how to create content for the Source Engine in general, the main page of the Source SDK documentation is a good place to start.

Bugs and issues

Sources