About the event
This is a dynamical mud, and all the dynamic data will be stored in three tables, and these tables will be handled by three basic daemons char_d.c area_d.c and country_d.c. To modify these dynamical data will be and will only be through calling the functions in these daemons. Well, since these data will become more and more and the relationship will become extremely complex with the process of the construction. It becomes quite hard and unreliable to put all the codes in the three daemons. Now, a new concept will be introduced into our mud. That is event.
What is event? 
An event is something happened which will cause the system to update the dynamic data of this mud.
Elements of event
An event has following elements: trigger, condition check, result, announcement, and code position.
Triggers:
In this mud, there will be 3 different kinds of trigger:
1 triggers issued by wizards
 This is just used when some data will be initialised, corrected, or tested. Now wizards can send certain command to launch nearly all events, from the most complex one to the simplest one, that is quite convenient for the testing, but may sometime cause the system data in confused situation. In the following development some limitation will be added to reduce the probability of these errors.
2 triggers by the system
The system will atomically trigger many events, such as the local area development and the unemployed npc char move from an area to another.
3 triggers by the players or half by player and half by the system
This is the most complex situation, many events will be trigged by players certain action. For example, if a player want to establish a new country. 
Condition Check:
When a trigger has been sent, the system need to check if the condition is suitable for such an event, or sometime, with the same trigger, under different situation, different events will happened.
Result:
I think that no explanation needed for this part.
Announcement:
It includes two parts: the target and the method.
When a certain event has happened, the system need use certain method to inform certain players. 
Code Position:
Currently, all the code for the existed events are put in that three daemons, as we know, there will be perhaps nearly one half hundred event designed, so put all these code in that three daemon will be quite inconvenient, so a new path /sgdomain/event/
Will be used to store all the new code for events, and for most events (especially for those complex ones) , it is suggested to use one separate program to handle just one event.
Fire
July 20, 98
