Adding monsters is pretty simple.
Make an IEntity interface and control the simple entityfields there. You can use for players, npcs, mobs etc.
Next thing is you make a mobclass and you implent the interface there.
Then you read the mobs from your database with spawns etc.
You could be using MSSQL or MySQL, then just get the right table.
It could be 'MobSpawns', then load all the mobs. Load them from ID and not by name, because an integer is getting read a way faster than a string.
Now compare the ID from the load to the ID from your MobInfos (Make a new table for that). If the ID is matching, then you loads a new instance of a mob.
Ex.
Code:
Mob mob = new Mob();
You will need to send the spawn packets after you have loaded the mobs.
From reading my own post, then I know I forgot some things, but this should give you some basic informations on it.