Primeiramente você precisa criar um novo plugin com o nome de mapcache.
Para fazer isso, vai até a pasta do seu emulador e procure a pasta "vsproj-14, 15 ou 16".
Abra a "vsproj-" de acordo com a qual seu emulador foi compilado.
Por exemplo: se você compilou seu emulador utilizando Hercules15.sln, deverá abrir "vsproj-15".
Dentro da pasta vsproj-15". Dê um ctrl +C e ctrl +V no arquivo "plugin-sample.vcxproj" e renomeie para "mapcache".
Abra o arquivo que você renomeou: "mapcache.vcxproj" e dê um crtl+F, localize "plugin-sample" e "sample" e substituta por "mapcache".
Salve o arquivo.
Depois vá até a pasta do seu emulador novamente. Entre em conf>plugin.conf e adicione o nome "mapcache".
Abra seu Hercules.sln (no exemplo estou utilizando o 15).
Clique com o botão direito do mouse próximo (mas não encima), de seu map-server, char-server, ou login server. E adicione um projeto existente. Que você criou anteriormente na pasta "vsproj-15" chamado "mapcache".
Com o mapcache adicionado, o próximo passo é compilar seu emulador novamente juntamente com o mapcache.
(Essa etapa anterior é necessária para qualquer plugin que for adicionar no seu servidor).
Vou levar em consideração que você já adicionou o mapa no seu servidor . nos arquivos: map_index.txt, maps.conf...
Também estou levando em consideração que você já tenha adicionado sua grf para o emulador ler grf.files.txt.
Prosseguindo:
Abra seu prompt de comando e digite:
cd C:\Pasta\onde\está\Seu\Servidor
dentro disso vc digita: map-server.exe --map "nome do mapa sem aspas"
C:\Pasta\onde\está\Seu\Servidor\map-server.exe --map "nome do mapa sem aspas"
Dai se os arquivos do seu mapa estiverem corretamente na sua grf, serão lidos e adicionados no mapcache.