Bumping The Monster Count
Metlslime has it right, the infomation is only sent to a client when they first connect to the server by default. If you were running a coop server with your mod as it stands, I believe a player who connected after you changed the monster count would see the correct value.
Luckily, there's a way to update these stats after the fact, by composing your own message to the client, in a similar way to the way that temporary entities are done(ie teleflashes, explosions, lightning). The following code would adjust the monster count for self, assuming self is a player.
msg_entity = self;
WriteByte (MSG_ONE, SVC_UPDATESTAT);
WriteByte (MSG_ONE, 12);
WriteLong (MSG_ONE, total_monsters);
The 12 tells the client you wish to update the client's total_monsters variable, and the total_monsters in the write long is the server's value for total_monsters. There are a few other variables that can be altered in this way, 11 is total secrets for example. 6 is ammo_shells, although this is kept in sync with the server automatically. In fact, most of the possible variables are updated automatically or have functions that will do so, total_monsters is the exception. See
http://wiki.quakesrc.org/index.php/SVC_UPDATESTAT if you want a complete list.
One more thing to note is that this isn't identical to the way temporary messages are sent. The message is sent using MSG_ONE instead of MSG_BROADCAST. Broadcast is an unreliable message, and so may be dropped over the network due to lag, but with particles that's not too much of a problem. You wouldn't want an altered monster count to be dropped, so you send it by the reliable MSG_ONE. If you strictly wanted this mod to work fine in coop, you'd want to send the message as MSG_ALL, which is supposedly reliable to all clients, or make the code loop through all the clients with MSG_ONE.