Mob caps are directly proportional to the total number of chunks eligible for spawning. To calculate the cap, the spawning area is expanded by one chunk in every direction (so the default gives 17×17 chunks), then the total number of chunks is plugged into the following formula:
cap = constant * chunks / 256
Each mob category has a separate cap and a different constant in the formula:
Hostile = 70
Passive = 10
Ambient (Bats) = 15
Water = 5
So the most hostile monsters you can have is 70 and then no more mobs will spawn.
In multiplayer, chunks that are in range of multiple players are only counted once. So the more spread out the players are, the more chunks will be covered and the higher the caps will be.
As you already have the objectives set up and working, it's fairly simple to output them. You'll need to use the JSON format to get the player's score, like this:
["",{"score":{"name":"*","objective":"ObjectiveName"}}]
Where ObjectiveName is the name of the objective you want to get the player's value of.
/title
already accepts JSON data, so all you need to do is:
/title @p title ["",{"score":{"name":"*","objective":"ObjectiveName"}}]
/say
doesn't accept the JSON format, so you should use /tellraw
instead, which does:
/tellraw @p ["",{"score":{"name":"*","objective":"ObjectiveName"}}]
If you want it as part of a sentence, you could change the JSON part to something like:
["You have died ",{"score":{"name":"*","objective":"ObjectiveName"}}, " times."]
Best Answer
You want the EntityPolice Bukkit plugin: