Guest Functionality

Allows for guest logins by entering 'connect guest' at the login screen.
Cleans up after itself but does not yet clean up stale guests from a
system crash.
This commit is contained in:
n0q 2014-07-06 16:46:02 -04:00
parent 16b1aeffc2
commit b9661c5c96
5 changed files with 182 additions and 75 deletions

View file

@ -287,6 +287,8 @@ CHANNEL_TYPECLASS_PATHS = ["game.gamesrc.conf", "contrib"]
# Typeclass for player objects (linked to a character) (fallback)
BASE_PLAYER_TYPECLASS = "src.players.player.Player"
# Typeclass for guest player objects (linked to a character)
BASE_GUEST_TYPECLASS = "src.players.player.Guest"
# Typeclass and base for all objects (fallback)
BASE_OBJECT_TYPECLASS = "src.objects.objects.Object"
# Typeclass for character objects linked to a player (fallback)
@ -304,10 +306,14 @@ BASE_SCRIPT_TYPECLASS = "src.scripts.scripts.DoNothing"
# fallback if an object's normal home location is deleted. Default
# is Limbo (#2).
DEFAULT_HOME = "#2"
# The default home location used for guests.
GUEST_HOME = "#2"
# The start position for new characters. Default is Limbo (#2).
# MULTISESSION_MODE = 0, 1 - used by default unloggedin create command
# MULTISESSION_MODE = 2 - used by default character_create command
START_LOCATION = "#2"
# The start position used for guest characters.
GUEST_START_LOCATION = "#2"
# Lookups of Attributes, Tags, Nicks, Aliases can be aggressively
# cached to avoid repeated database hits. This often gives noticeable
# performance gains since they are called so often. Drawback is that
@ -376,6 +382,13 @@ PERMISSION_HIERARCHY = ("Players",
"Immortals")
# The default permission given to all new players
PERMISSION_PLAYER_DEFAULT = "Players"
# The permission given to guests
PERMISSION_GUEST_DEFAULT = "Guests"
# The naming convention for guest players/characters. The size of this list
# also detemines how many guests may be on the game at once. The default is
# a maximum of five guests, named Guest1 through Guest5.
# Set to None to disable guest logins entirely.
GUEST_LIST = ["Guest" + str(s+1) for s in range(5)]
######################################################################
# In-game Channels created from server start