levels

concepts
CONCEPT
	levels


LAST UPDATE
	Mateese, 17-Mar-98


PLAYER LEVELS

	One Step Beyond has two different levels systems: player levels and
	immortal levels These two systems are completely distinct and
	independent from one another.

	Player levels are subdivided into two groupings, low level
	players (LLP's) and high level players (HLP's). LLP's range from
	levels 1-19, and HLP's range from levels 20-50. 
	
	Players require both experience points (XP) and quest points (QP)
	to advance up to level 20. Once a player attains HLP status, only
	XP is necessary to advance levels. 

	Players are able to advance their levels in their respective guild
	houses. It is not necessary, however, for a player to join a guild;
	any player may advance their level in the Adventurers' Guild.
	
	The 'level' (P_LEVEL) of the player is a completely guild
	specific value and not mandatory at all. However, for
	comparison purposes, there is an internal P_REAL_LEVEL which is
	computed from the players experience and solved quests.
	Players with a 'real level' of more than 19 are 'high level
	players'. It is not stored explicitely in a player, but computed 
	on the fly by the /obj/racemaster.
	
	
BECOMING IMMORTAL

	There are two kinds of immortality: Ancience and Wizardhood. COmmon
	two both is that the player is no longer part of the game.

	Any player who has reached level 20 may become Ancient. This doesn't
	happen automatically, instead the player has to ask a wizard or other
	elder (her sponsor) to promote her. As an Ancient, the player is immortal,
	has access to the wizard channels and boards, and teleport abilities,
	but no access to the implementation details.

	A player may become wizard any time. To become a wizard, the player
	has to find a sponsoring wizard which puts her request up for voting.
	If the vote comes out in favor (>= 66% of all registered voters), the
	sponsor can promote the player to wizardhood.

	In any case the sponsors are responsible for teaching the new elder
	or wizard about their status: help them get started, explain the
	rules to them, etc.

	
TECHNICAL DETAILS

	The immortality system is based on the notion of the 'user level'.
	This level is not a player-property, but is rather maintained by
	the /secure/master.

	Internally the levels are represented by numbers according to
	this scheme:

	    Player : userlevel = LVL_PLAYER (0)
            Ancient : userlevel = LVL_ANCIENT  (1)
	    Wizard : userlevel = LVL_WIZARD (2)

	The userlevel of someone can be queried with the sefun
	query_user_level(). For easier use, following macros exist:

 	    IS_PLAYER(x)   : True if 'x' is a player.
            IS_ANCIENT(x)  : True if 'x' is an Ancient.
	    IS_WIZARD(x)   : True if 'x' is a Wizard.
	    IS_IMMORTAL(x) : True if 'x' is an Ancient or a Wizard.

	When displaying information about a player, printing the numeric
	level is higly discouraged. Instead the short descriptions returned
	by the sefun query_user_tag() are to be used.
	

IMPORTANT NOTE

	The various userlevels DO NOT form a social hierarchy.
	Read that again and keep it in mind.


SEE ALSO
	query_user_level(sefun), query_user_tag(sefun)