Dota 2
344 ratings
How To: Dota 2 Model Viewer - [Old Client]
By Wyk
The Dota 2 Model Viewer is now available to users who wish to view the models and in-game assests with improved features and native support for all Dota 2 content. This guide will teach you all about it.
As of the Three Spirits update, users now have public access to the Dota 2 Model Viewer that comes with native support for Dota 2 Models and In-Game Assests and improved Shader support, View Modes and Cloth Physics enabled. This guide will take you through a little course on how to go about using it. I'll further update it when the SDK is updated in the future.

Where Do I Find It?
The Model Viewer is named "hlmv.exe" and can be found in the "bin" folder of your Dota 2 installation.

General locations for the model viewer are -
  • ...\Steam\SteamApps\common\dota 2 beta\bin
  • ...\Steam\SteamApps\common\dota 2 test\bin

Note: As of November 13, 2013, this can be found only in the Dota 2 Test installation and will be available on the Main Client once the update is ported on November 14, 2013.
How Do I Get It Running?
When you initially launch the "hlmv.exe", you might face a couple of errors that can be fixed with easily. They are more or less just some missing files in the directory that need to be addressed.

You will need to copy two files before you can get the Model Viewer running.

  • 1. Gameinfo.txt - This is the file that pretty much tells your model viewer where to look for the content. This is normally found in the "dota" folder of your Dota or Dota 2 Test Installation. Depending on which model viewer you are planning on running, copy that "gameinfo.txt" from the 'dota' folder to the "bin" folder where the hlmv.exe is located.

    The gameinfo.txt should basically have something like this inside. In any case you cannot find it in your folders, just copy the text below and paste it to Notepad and save it as gameinfo.txt and you'll have your file.

    "GameInfo" { game "DOTA 2" gamelogo 1 type multiplayer_only nomodels 1 nohimodel 1 nocrosshair 0 GameData "dota.fgd" SupportsDX8 0 FileSystem { SteamAppId 816 // This will mount all the GCFs we need (240=CS:S, 220=HL2). ToolsAppId 211 // Tools will load this (ie: source SDK caches) to get things like materials\debug, materials\editor, etc. // // The code that loads this file automatically does a few things here: // // 1. For each "Game" search path, it adds a "GameBin" path, in <dir>\bin // 2. For each "Game" search path, it adds another "Game" path in front of it with _<langage> at the end. // For example: c:\hl2\cstrike on a french machine would get a c:\hl2\cstrike_french path added to it. // 3. For the first "Game" search path, it adds a search path called "MOD". // 4. For the first "Game" search path, it adds a search path called "DEFAULT_WRITE_PATH". // // // Search paths are relative to the base directory, which is where hl2.exe is found. // // |gameinfo_path| points at the directory where gameinfo.txt is. // We always want to mount that directory relative to gameinfo.txt, so // people can mount stuff in c:\mymod, and the main game resources are in // someplace like c:\program files\valve\steam\steamapps\<username>\half-life 2. // SearchPaths { Game |gameinfo_path|. Game dota. } } }

  • 2. scripts/game_sounds_manifest.txt - This file can be found within the VPK's but I'll attach it here for sake of easy finding. You need make a new folder within the 'bin' folder called "scripts" and copy this file into that.

    Get it here: Dropbox[]
Once you have both the files copied, Dota 2 Model Viewer should be up and running. Now to get the models working on it.

Note: If you are getting the "Error post-loading model", go to your gameinfo.txt file and scroll down to the bottom. Find "SearchPaths" and under that look for the second Game column. If it reads "platform" just change it to "dota." instead and it should fix your issue.
Importing the Models
The Model Viewer currently doesn't directly detect content off the VPK's so you will have to do it the old-fashioned way of extracting the models first and placing them in the folders to get it working.

So the first step would be to extract the models / materials / animations and other raw content from inside the game. Valve stores all of their packaged content (never code) under the VPK (Valve PAK) format. If you’re familiar with modding other games from the company, you will be familiar with GCF files. The VPK’s are more or less the successors to these files and can be extracted in the same way the GCF’s were done – using GCFScape[].

Download and install GCFScape. Now visit your Dota 2 folder (C:\Program Files (x86)\Steam\steamapps\common\dota 2 beta\dota) and find the “pak01_dir.vpk” which is the parent extraction file that will rip out all the content from all archives attached to it. Open this file in GCFScape and extract all the content to a new folder.

Note: Now make a backup of your entire Dota 2 Installation and copy / experiment with these files there just to be on the safer side. Try not to mess with your default installation.

Once you have them extracted, you will have a new folder created called "root" with a bunch of files inside. Now all you need to do is copy the files inside this folder to the "...\SteamApps\common\dota2 beta\dota" folder.

This will load up the content in the Dota 2 Model Viewer natively. You can also copy just the 'models' and 'materials' files if you're only looking to view the models.

Now your content is place. All that is left is to launch the "hlmv.exe" and load the models.
What's new in this Model Viewer?
There are quite a few benefits to viewing Dota 2 content in the new model viewer when compared to what the CS:GO, Alien Swarm and Source Filmmaker SDK's offered.

To begin with -

1. Shader Support - To give you a better understanding of how the materials will look inside the game. As you can see in the image below, rim lighting and other material effects load up perfect.

2. Cloth Physics - Models such as Abaddon's Cape, Lina's Skirt, Invoker's Cape, Couriers and more have cloth physics on them and the older model viewers could not simulate this.

You can turn it off and turn it on from the Options menu at the top.

3. New View Modes - There are new view modes available that will allow you to view the models with Normals enabled (two modes) and Value only.

You can check out a preview of what they do below.

4. Unload All - One of the more nifty features now available to users is the option to unload all loaded weapon slots. This should propel your work speed by a good amount.

In addition to this, there are a couple of other nifty features that are semi-functional right now. You can tinker around with them if you wish to. I'll cover them in more detail in a future guide.
That's it for now. You can follow me on Facebook or Twitter and buzz me with any further queries. I'll try to respond to as many as you can.
< >
saudade Sep 14, 2015 @ 5:15am 
hlmv has gone with old dota
where can I get new one?
TBLaCKLoTuS Aug 24, 2015 @ 4:46am 
tiny Jun 21, 2015 @ 8:29pm 
for now try just using the dotahattery
mmmsquishy Jun 20, 2015 @ 6:58pm 
So I am an artist. And I really want to draw Nyx Assassin. (Or in the model viewer, Nerubian Assassin) But when I load the model "nerubian_assassin.mdl" There are parts of him missing. Is there a way that I can get the model viewer to load the ENTIRE model?
Zero-PAiN Apr 24, 2015 @ 12:45am 
Anyone know any other fix for the "Unable to load manifest file 'scripts/game_sounds_manifest.txt'" ?

I've tried every said solution that's been posted and nothing has come of it. :(
PsychopomP Apr 3, 2015 @ 3:41pm 
I am, I always get an error "Error post-loading model". And it does not matter what I change in Gameinfo.txt
The program worked yesterday. I did not do anything. Now it is useless as all the software for developers from Valve.
EpicDragon Feb 5, 2015 @ 7:08pm 
Hey does anyone know why the textures are all missing? I'm getting pink and black textures on every single model
StarryMight Jan 5, 2015 @ 12:13pm 
Hey guys, late last year, I read a guide by T_Vitdotto on Polycount about how to preview your custom "Dota 2" models in several ways, and one of them was this here Model Viewer!

Very interestingly, he cited the Model Viewer in the Test version of the game, and when he said how to find it, he just said to download the Test Client and run the hlmv.exe without explicitly mentioning any special instructions on how to get it to work. (He did mention this tutorial and Cyborgmatt's tutorial as great resources for using it, however.)

Also very interestingly, he listed as a "Con" of it, and I quote in Boldface: "It will crash if your dota test updates, everytime it updates you will need to get rid of the main .vpk file."

Hmm...could THIS be what causes the program to "randomly" break? (The date of T3hScoT.'s post below me is the day the Shifting Snows update hit the Test Client...)

I would post a link to his preview tutorial on Polycount, but is that considered okay?
T3hScoT. Dec 17, 2014 @ 9:43pm 
My hlmv is working fine until i started having an error in hlmv when opening because of -error unable to load sound manifest, after a while this message stops appearing but it now show hlmv.exe has stopped working i don't understand how these things are happening

On another note how can you successfully open an mdl. that you made? when trying to open mine i get error post loading
T3hScoT. Dec 17, 2014 @ 9:37pm 
For those getting the error post loading file ou can try to change dota. in the "dota." to the address of where the root files are extracted eg. "C:\Program Files (x86)\Steam\SteamApps\common\dota 2 beta\dota\root", there's a comment here that explains this, just keep searching for it.