You would need to paint with material as well as color.
To start, you need to have Mrgb turned on when you fill the object. This tells ZBrush to fill with both color and material.
From then on, when you paint you will paint with both material and color. For areas that you want to be shinier you’ll need a material that has a higher specular setting. For this reason, either don’t use MatCap materials or create a double shade material with a copy of the MatCap in the S1 channel.
If you don’t want to paint with color and material at the same time, start with just Rgb active when you fill the object. Do all your color painting. Then to paint materials, turn on M and do another fill object. This will fill with material but not affect color. You can now paint the various materials where you want them.
Keep in mind that this will NOT affect exported maps. Materials are instructions to the rendering engine and so they are unique to each program. You can’t take materials from ZBrush and export them to another program. So painting with both material and color is typically something you’ll only do if you’re going to render in ZBrush. For use in other programs you would need to create separate maps – such as a specular map. This can be done using ZBrush’s 3D Layers feature since it now support polypaint. You can paint all your color on one layer. Then on another layer you’d paint a grayscale map of where you want the shininess. You can then create separate maps from each layer, exporting them for use in your other program.