Computer programs called agents can be used to create emotionally intelligent NPCs for virtual game worlds and virtual realities.
Agents are autonomous programs which can act own their own and do some tasks independently.
By emotionally intelligent NPC I mean that NPC has personality, has emotions and it can show. NPC should also be able to learn to recognize places and other characters and form opinions about those. Thus NPCs are needed for rich and believable game worlds. Emotional responses are used to make characters that we encounter believable and engaging. For example, if we were to walk into virtual bar and all the characters in the bar had distinct personalities the scene would be very impressive and believable social situation.