For some quests, we may want to apply some special effects on the players before they finish the quest. We may want to restrict them from going somewhere, adding special visual effects to their screens, or may be disable some attributes of the avatars.
Take the Fantastic Age virtual world as an example. There is a quest that is telling the story about the mad scientist's invention of a machine that makes the whole virtual world cloudy and stormy. A cloudy visual effect is then added to the players who are working on this quest until they finish it by destroying the machine.
Moreover, each daemon class is also in charge of keeping track of the progress of the quest. Quest progress is advanced when the player plays in the game. The daemon's role is to track the progress and determine when to show something and when to hide it to make the quest run smoothly. Also it will determine if the quest is completed.
Before coding our daemons, we need some server-side extensions...