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

From Valve Developer Community
Jump to navigation Jump to search
 
(9 intermediate revisions by 2 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 in the [[http://forums.steampowered.com/forums/showthread.php?p=21088346#post21088346 Steam Users' Forums]]. 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)]]}}
{{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.moddb.com/games/dark-messiah-of-might-magic/downloads/dark-messiah-might-and-magic-sdk )
== 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\common\Dark Messiah Might and Magic Single Player''


=== Extracting the Dark Messiah VPKs ===
== 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 VPK (Valve Pak) files into your Dark Messiah Might and Magic Single Player folder, because the editor cannot access the VPK files itself. Use GCFScape again to extract the contents of:
{{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.}}


:* depot_2103_dir.vpk (models)
== Configuring the Hammer Editor ==
:* depot_2104_dir.vpk (materials)
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/''):
:* depot_2105_dir.vpk (materials for models)
:* depot_2106_dir.vpk (materials for levels)
:* depot_2107_dir.vpk (sounds)
:* depot_2108_dir.vpk (more sounds)


These VPK files can be found in the ''Steam\steamapps\common\Dark Messiah Might and Magic Single Player\vpks'' folder and need to be extracted to:
<pre>
 
"Configs"
:''Steam\steamapps\common\Dark Messiah Might and Magic Single Player''
 
=== 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\common\Dark Messiah Might and Magic Single Player\bin\GameConfig.txt''
Replace the contents of the GameConfig.txt with the code below. You may have to correct the whole path:
 
<pre>"Configs"
{
{
     "Games"
     "Games"
Line 42: Line 42:
         "Dark Messiah"
         "Dark Messiah"
         {
         {
             "GameDir" "C:\Program Files\Steam\steamapps\common\Dark Messiah Might and Magic Single Player\mm"
             "GameDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm"
             "hammer"
             "hammer"
             {
             {
                 "GameData0" "C:\Program Files\Steam\steamapps\common\Dark Messiah Might and Magic Single Player\bin\halflife2.fgd"
                 "GameData0" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\halflife2.fgd"
                 "TextureFormat" "5"
                 "TextureFormat" "5"
                 "MapFormat" "4"
                 "MapFormat" "4"
                 "DefaultTextureScale" "0.250000"
                 "DefaultTextureScale" "0.250000"
                 "DefaultLightmapScale" "16"
                 "DefaultLightmapScale" "16"
                 "GameExe" "C:\Program Files\Steam\steamapps\common\Dark Messiah Might and Magic Single Player\mm.exe"
                 "GameExe" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm.exe"
                 "DefaultSolidEntity" "func_detail"
                 "DefaultSolidEntity" "func_detail"
                 "DefaultPointEntity" "info_player_start"
                 "DefaultPointEntity" "info_player_start"
                 "BSP" "C:\Program Files\Steam\steamapps\common\Dark Messiah Might and Magic Single Player\bin\vbsp.exe"
                 "BSP" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\vbsp.exe"
                 "Vis" "C:\Program Files\Steam\steamapps\common\Dark Messiah Might and Magic Single Player\bin\vvis.exe"
                 "Vis" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\vvis.exe"
                 "Light" "C:\Program Files\Steam\steamapps\common\Dark Messiah Might and Magic Single Player\bin\vrad.exe"
                 "Light" "$SteamUserDir\Dark Messiah Might and Magic Single Player\bin\vrad.exe"
                 "GameExeDir" "C:\Program Files\Steam\steamapps\common\Dark Messiah Might and Magic Single Player"
                 "GameExeDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player"
                 "MapDir" "C:\Program Files\Steam\steamapps\common\Dark Messiah Might and Magic Single Player\mm_content\mapsrc"
                 "MapDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm_content\mapsrc"
                 "BSPDir" "C:\Program Files\Steam\steamapps\common\Dark Messiah Might and Magic Single Player\mm\maps"
                 "BSPDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm\maps"
                 "CordonTexture" "tools\toolsskybox"
                 "CordonTexture" "tools\toolsskybox"
                 "MaterialExcludeCount" "0"
                 "MaterialExcludeCount" "0"
Line 65: Line 65:
     }
     }
     "SDKVersion" "1"
     "SDKVersion" "1"
}</pre>
}
 
</pre>
=== Using the editor for map creation ===
 
Open "hammer.exe" located in:
:''Steam\steamapps\common\Dark Messiah Might and Magic Single Player\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
==Accessing the Dark Messiah SDK==
# Right click on Dark Messiah Might and Magic Single Player
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.
# 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>


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.


== Known Bugs and Issues ==
==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.


=== Shading Issue ===
== Package includes ==
:'''Problem:''' In the 3D viewport ‘3D Textured Shaded' looks the same as ‘3D Textured'.
The package includes:  
:'''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.
* 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.


=== White Textures ===
== Where do I go from here? ==
:'''Problem:''' Some textures appear white in the editor.
* 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:''' Open the affected textures' .vmt files and remove or comment out the "$envmap" and "$normalmapalphaenvmapmask" parameters.
* 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.


=== NPC Model Issue ===
== Bugs and issues ==
:'''Problem:''' Some NPCs look like a different NPC type: E.g. a Goblin has the appearance of a dragon.
* Post all issues and bugs in the [https://steamcommunity.com/app/2100/discussions/ Dark Messiah Steam Discussions Board].
:'''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 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://www.gamefront.com/files/20121754/mm_sdk_sp.7z Alternate SDK Download Mirror (Gamefront)]
* [http://nemesis.thewavelength.net/index.php?p=26 GCFScape Site]
* [http://www.7-zip.org/ 7-Zip Homepage]


[[Category:Dark Messiah]]
[[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