TEAMS IN LPMUD
==============

BACKGROUND
==========

Teams are basically an idea from the world of roleplaying. When players
cooperate the game supports group movement and sharing of experience.
Together they can explore the world, fight monsters they cannot handle
alone and naturally two know more than one.

IMPLEMENTATION
==============

A team consists of a leader and one or more members. Teams are not
limited to players, any living object can join a team, though NPC's and
players cannot be in the same team. There is no limit to the number
members in a team, though people with a (much) lower DIS cannot lead
people with a higher DIS.

When the leader of a team moves, all members in the team move with him,
though there is a slight chance the player fumbles and stays behind.
Combat experience is shared by all members of a team who are present in
the room at the time the victim dies, even if the other members are not
fighting him.

FUNCTIONS
=========

The basic routines in /std/living allows any mix in a team, however in
the player files and in the npc files there are guards against mixed
teams.

There are some basic routines in all living objects to handle teams:

    set_leader(object leader)  /* Puts me in a team lead by 'leader'    */
    team_join(object member)   /* Adds 'member' to the team I lead      */
    team_leave(object member)  /* Removes 'member' from the team I lead */
    query_team()               /* The members of the team I lead        */
    query_team_others()        /* Everyone in the team I am a member of */

Players have the following commands:

    invite member_name         Allow another player join my team.
    join leader_name           Join a team you are invited to.
    leave                      Leave a team you are a member of.
    leave member_name          Force a member out of your team.
