Post tutorial RSS Dark Messiah SDK - Singleplayer & Multiplayer - Installation and Setup

This guide will guide you through how to install and setup the Dark Messiah of Might and Magic SDK for both the singleplayer and multiplayer version of the game.

Posted by on - Basic Mapping/Technical

Introduction

The following guide will teach you how to install and setup the Dark Messiah SDK for both the singleplayer and multiplayer version alike which are part of the Source Engine which the games is build upon, to begin creating maps and mods for Dark Messiah the Might and Magic.

Another version of this guide can also be found on the Valve Developer Community (VDC) and Steam guides. The Reason for that is the majority of the content found in this guide is taken directly from the Valve Developer Community, and is done because I wrote the same content found there and wanted to share it with more of the community found here - as I have read comments from people interested in how to get started mapping for the game but may be unaware of the VDC's existence and also might just want a simple 'How to get started!' guide without having to use too much time searching the web for answers.

This guide will however NOT teach you how to use any of the tools included with the SDK and it is assumed that the user either already knows afterwards how to use them or is willing to learn more about their usage through both external sources, as well as other guides that may be available elsewhere on steam - when the time comes.

Singleplayer SDK

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.

Download


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 on 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 (overriding the folder /mm at every turn by adding to it) 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)

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"
}

Running hammer on a linux system


If you are using a linux based system you have to do a little bit more setup to get it running, luckily this has been made so much easier than in the past with the release of Proton which allows hammer to run without much additional setup.

Go into your steam library and click the button on the bottom that says ADD A GAME -> Add a Non-Steam Game and click browse to locate plus add hammer.exe which are inside of the /bin folder as mentioned in the section above. When done, right click on its entry in your steam library and go into properties, there give the shortcut a more appropriate name like Dark Messiah of Might & Magic Single Player - hammer.exe so it is easier to find if multiple hammer editor versions for different games are added to your library. Furthermore in the Launch Options field make sure to add PROTON_USE_WINED3D=1 %command% and enable Proton Experimental under the Compatibility tab afterwards.

From there on you should be able to run hammer without any problems from your steam library.

Accessing the SDK Launcher


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.

On a linux based system, prepend the following to the Launch Options field PROTON_USE_WINED3D=1 %command% and enable Proton Experimental under the Compatibility tab afterwards, which should make sure both the launcher and all of its tools opens correctly.

Package includes


The Dark Messiah SDK includes the following content:

  • Hammer Editor - Source level editor.
  • Faceposer - Choreography creation tool.
  • HLMV - Half-Life Model Viewer.
  • Suite of command line compiling utilities, such as studiomdl and map compiling tools.
  • Official sources for all the maps featured in the game.
  • Model sources for the player and orcs.

Multiplayer SDK

The Multiplayer version of Dark Messiah of Might and Magic does not come with a separate SDK unlike with the singleplayer version of the game and as so require a longer setup process to function properly, however once done it becomes very easy to create maps for the game and at the same time excludes the use of the now obsolete Source SDK unlike earlier written versions of said setup guide.

To be able to get this to work, both the singleplayer and multiplayer version of the game need to be installed (preferably on the same drive), plus it is a requirement that the singleplayer SDK Installation process has already been completed and that it has been tested locally that being able to build and run maps for the singleplayer version of the game is possible.

VPK Extracting & Editor Assets


Start out by creating a backup of the folders: sound, models and materials located inside of Dark Messiah Might and Magic Single Player\mm by renaming them (example by adding the postfix _backup) as these represent the singleplayer content and shall not get lost so it is always possible to switch back and fourth between developing maps for both game versions. Next you will need to extract the contents of the following VPK files located inside of the Dark Messiah Might and Magic Multi-Player/vpks folder with GCFScape to your Dark Messiah Might and Magic Single Player/mm folder. Click yes when Windows ask if you want to override any folders in the process:

  • depot_2132_dir.vpk (models)
  • depot_2133_dir.vpk (materials)
  • depot_2134_dir.vpk (materials)
  • depot_2135_dir.vpk (sound)
  • depot_2136_dir.vpk (sound)

Next you will have to copy the folder /editor, now located inside of the backed up materials and models folders for the singleplayer version to the current active folders of their type, as the multiplayer folders does not contain the editor files and therefore hammer will provide fatal error messages upon opening any maps without them.

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 add the following content above the "Dark Messiah" entry already in the file, in-between the Games clause. You also have to correct the $SteamUserDir strings below afterwards, 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/):

Dark Messiah MP"
{
    "GameDir" "$SteamUserDir\Dark Messiah Might and Magic Single Player\mm"

    "hammer"
    {
        "GameData0" "$SteamUserDir\Dark Messiah Might and Magic Multi-Player\cfg\base.fgd"
        "GameData1" "$SteamUserDir\Dark Messiah Might and Magic Multi-Player\cfg\MightAndMagic.fgd"
        "TextureFormat" "5"
        "MapFormat" "4"
        "DefaultTextureScale" "0.250000"
        "DefaultLightmapScale" "16"
        "GameExe" "$SteamUserDir\Dark Messiah Might and Magic Multi-Player\mm.exe"
        "DefaultSolidEntity" "func_detail"
        "DefaultPointEntity" "info_player_start"
        "BSP" "$SteamUserDir\Dark Messiah Might and Magic Multi-Player\bin\vbsp.exe"
        "Vis" "$SteamUserDir\Dark Messiah Might and Magic Multi-Player\bin\vvis.exe"
        "Light" "$SteamUserDir\Dark Messiah Might and Magic Multi-Player\bin\vrad.exe"
        "GameExeDir" "$SteamUserDir\Dark Messiah Might and Magic Multi-Player"
        "MapDir" "$SteamUserDir\Dark Messiah Might and Magic Multi-Player\mm_content\mapsrc"
        "BSPDir" "$SteamUserDir\Dark Messiah Might and Magic Multi-Player\maps"
        "CordonTexture" "tools\toolsskybox"
        "MaterialExcludeCount" "0"
    }
}

Post-Setup Process


At this point it should now be possible to development maps by launching the hammer editor from the bin folder of the singleplayer version of the game and choosing "Dark Messiah MP" configuration when asked. All official map sources are already included with the Multiplayer version and can be found in Dark Messiah Might and Magic Multi-Player\mapsrc directory, which also can be opened to check that all game content such as materials and models are found successfully by the editor.

From here on a basic test map should be created and compiled before creating more ambitious maps to ensure everything works as indented when run by the game. How to create a multiplayer map with the least amount of requirements can be found either on VDC or by reading page six in the officially included PDF file inside of Dark Messiah Might and Magic Multi-Player\Docs.

Note:

  • Some displacement blend materials will still show up as missing and there is also no compiler configurations available from the get go which will require additional setup.
  • It also might not be possible to run the multiplayer version of the game directly once the map is compiled as hammer is unable to copy the mapfile outside of the main directory, as such make sure to copy the final compiled BSP map into the Dark Messiah Might and Magic Multi-Player\maps directory before running the game.

Where do I go from here?

Go learn more


The Dark Messiah Level Creation page 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.

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.

3kliksphilip Tutorials - Beginner Source SDK Tutorials

Bugs and Issues


Post all issues you may have in the Dark Messiah Steam Discussions Board. If you have a bug specific to the Dark Messiah SDK or game and are able to replicate it, perhaps even know a fix, please add it as an entry to the Dark Messiah Bugs page.

See the Source SDK FAQ for answers to general SDK questions. For level design and Hammer editor issues, see the Level Design FAQ.

Community


The Dark Messiah of Might and Magic Videogame Community is from what I know of no longer around due it being an old game, however the Source Engine Community itself is still thriving to this day with new games and mods releasing all the time.

Valve Developer Community (VDC) - Wiki about everything Source.
Source Modding Community - General Source/GoldSource Modding Discord Server.
Source SDK Steam page - Source SDK Steam Community.
Valvetime Forums - Source Modifications Forum.
Interlopers Forum - General Game/Half-Life Forum

The end

Thanks for taking the time to read this guide and I hope it has provided all of the information you need to begin your journey into creating possible maps and mods for the game. If anyone finds any information in this guide misleading, not describing something well enough, contains any spelling mistakes or just unsure of anything; please write a comment below and I, or possibly someone else, will try to answer/fix the problem as good and fast as possible.

I hope to create more content and guides for the game over time, anyways thanks again and have a wonderful day!

Comments
LithTechGuru
LithTechGuru

This is very impressive. Are you planning on writing any more guides?

Reply Good karma Bad karma+3 votes
soer4769 Author
soer4769

I posted these guides here so that more people have access to them. I have been documenting and cleaning up the Valve Developer Community Wiki for some times now which includes rewriting guides, so if the time ever comes up again that another guide need to be rewritten or people reach out because they are interested in seeing something specific, then sure I will write more guides.

Reply Good karma+3 votes
hexaae
hexaae

I wanted to fix a pair of bugs in the game:
- 1 lever working but not animating in L08_A2 (stone wall, when you enter the chamber full of zombies)
- some ropes models "all black" (= missing texture) in the level you wake up after you die (with orcs and the cyclope)

Reply Good karma Bad karma+1 vote
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.