If you are going to make a complete set you should get all the names correct and in the right folder, you need to replace the VTF files only, the VMT is not needed in this case as the standard VMT is correct to display transparency. In the folder dod\materials\sprites\player_icons get all the VTF files, get all the VTF files, look at the file name, it is for a class or displays the "War Hero" one, I do not know where the normal Allied and Axis (american.vtf and german.vtf) ones are used, perhaps they left it there because mappers sometimes use these in a map, dod_farmersland_b2 is one of those.
Ok... you have a generic allied and axis one, a war hero one for each side and each class has a icon for the main weapon.
You need some small images for the weapons, no big deal, just use the ones out of the same file, or if you want to change that to say Russian weapons or custom types do this...
I use the actual weapons file for screenshots sometimes. This requires you place those custom weapon files in your game folder and use the "Half Life Model viewer" it's in the SDK tools under the games menu in "Tools".
It's a bit confusing to navigate but worth it, "File", "Load Model", go to "[ROOT]\models\weapons" set the "Attachments" tab to "none" and take a screen shot after you have the weapon in a good position using your mouse...also difficult to use but possible to jag it around pressing the left mouse button, holding it and moving back and forward for zoom and right button spin.
These images you get are good because you have a nice one colored background that can be selected in the photo editor of your choice, deleted and made transparent and after that maybe use the "Blur" filter to smooth out the edges.
Then shrink down to the size you need and import it into a layer of the photoshop image of your icon. Repeat for all weapons and save the VTF via turning off and on the layers keeping them the same size and they will all look like a matching set.
How do I view these after edits!!!
To view these in game you have to go online and hope someone has that class or, do what I do...
1. Change the vtf name to 'american_rifelman.vtf' no matter if it is a another class, if you are working on the Thompson icon (american_assault.vtf) rename it temporarily to display for a rife class.
2. Start a simple map and make a bot join. That bot will have the new icon because the bots default to a allied rifleman class. Test Axis like this as well, just use the bots and rename the image to 'american_rifelman.vtf' temporarly and place it in dod/materials/sprites/player_icons.
To do this I use one of my test maps (see Maps, Bots and Notes on this page), HUD_Test_Det, it has bind information in the map info screen (bring up your team menu) to control bots.