Custom Minimap Icons

edited June 2016 in Tutorials

Here is a quick and simple step by step guide on how to make and use your own minimap icons for creatures

Step 1: Get the files

minimap_icon.zip - From the Resources page

This contains the following files:

  • addon_hud_textures.txt
  • vgui/hud/minimap_icon.txt
  • vgui/hud/minimap_icon.vmat
  • vgui/hud/minimap_icon.psd

addon_hud_textures is an unique file to define the paths for every custom icon.

The 3 minimap_icon files are used together, and should be renamed to the name your future icon, like minimap_questgiver or boss_kappa.

Step 2: Edit the files

PSD Image

Use a graphic editor such as Photoshop or GIMP to edit the PSD file.

In the example source file, I quickly made this transparent image from this source:

img

The suggested image size is 64x64.
If you want to use a different image size it must be a power of two.

Important: You need to have an Alpha layer filled with the transparent figure you want to display:

img

For better results, add strong black borders to the image as an outline (and remember to update the Alpha layer accordingly).

VMAT Material

Open the vmat with any code editor and make sure to change minimap_icon.psd for the name of your choice. Keep the rest unchanged

"Layer0"
{
    "Shader"            "ui.vfx"
    "F_STENCIL_MASKING" "1"
    "Texture"           "materials/vgui/hud/minimap_icon.psd" //EDIT THIS
    "F_TRANSLUCENT"     "1"
}

Texture KV File

Same process in the addon_hud_textures.txt file

""
{
    "TextureData"
    {
        "minimap_icon" //EDIT THIS
        {
            "file"     "materials/vgui/hud/minimap_icon.vmat" //EDIT THIS
            "x"        "0"
            "y"        "0"
            "width"    "64"
            "height"   "64"
        }
    }
}

For more icons, just copy the minimap_icon block again with another name inside TextureData

Step 3: Move the files

  • minimap_icon files go in content/dota_addons/YOUR_ADDON/materials/vgui/hud/.

  • addon_hud_textures.txt file goes in game/dota_addons/YOUR_ADDON/scripts/

Step 4: Compile and check

Go into the asset browser, write the name of your icon, open the vmat by double clicking on it (this will compile it).

img

Step 5: Set your unit to use the new icon

In the unit definition, add these lines:

"MinimapIcon"        "minimap_icon"
"MinimapIconSize"    "1000"
"MinimapDisableTint" "1"

MinimapIconSize determines the relative size of the minimap icon, while MinimapDisableTint can be 0 or omitted if you want the creature to use different team colors.

6. Try it ingame

img


The concept of Modding Community doesn't go well together with Competitive Business
My Project Page || My GitHub Profile ||

Comments

  • JNOJNO
    edited December 2015 Posts: 2

    I found placing addon_hud_textures.txt in

    dota 2 beta/game/dota_addons/YOUR_ADDON/scripts/

    rather than

    dota 2 beta/content/dota_addons/YOUR_ADDON/scripts/

    was necessary.

  • DunDun
    Posts: 123

    Anyone had luck with replacing hero icons? materials/vgui/hud/minimap_hero_sheet.vmat for instance

  • Redirecting the following question to this thread:

    Probably doesn't work anymore because the sheet is gone, try this tutorial on minimap icons: https://moddota.com/forums/discussion/1067/custom-minimap-icons

    This tutorial still up to date? I have tried the described steps without success. I have worked with the example minimap_boat and was able to compile "minimap_boat.vmat_c" which was placed into /game/dota_addons/MY_ADDON/materials/vgui/hud/
    (sources of the compiled output are placed in the corresponding "content" folder).
    Afterwards I added

    "minimap_boat"
    {
     "file"     "materials/vgui/hud/minimap_boat.vmat"  //Path to source or compiled file neccessary?
     "x"        "0"
     "y"        "0"
     "width"    "64"
     "height"   "64"
    }
    

    to my existing addon_hud_textures.txt file.
    I was not sure about the path here. Should the key "file" be assigned with the path to the source file minimap_boat.vmat or the compiled file minimap_boat.vmat_c? - Tried both. No success. Finally I added

    "MinimapIcon"               "minimap_boat"
    "MinimapIconSize"           "1000"
    

    to my unit which is a npc_dota_creature. What is wrong? I dont have high demands to the minimap icons. If there are some basic icons that I can use without creating icons myself I´d be happy enough for the start.



    Answered by Noya:

    Yeah it should still be up to date, or at least the minimap icons created via that method still work for me. Please redirect the question on that respective thread.

  • edited June 2016 Posts: 1,670

    I will try making a new icon later if it's still not working for anyone, perhaps the method is broken or changed.

    The concept of Modding Community doesn't go well together with Competitive Business
    My Project Page || My GitHub Profile ||