# FILE:  db/config
# HUB configuration options -- Part of the HUB Game System
#
# Format is:   <type> NAME = VALUE
#
# Where type is one of:   string, int, long
# From within the game "stat -global" will list all current config settings.
#
#
# Author: H.M. 1/11/97, 2/97, etc.


# Optional Compatabilty Warning
# Version data shown by "hubdrv --version" is in the general form of:
# VOLUME.NUMBER.REVISION TYPE DATE
# 
# You may set strings for VERSION,REVISION and NUMBER.  If any do not match
# the driver version you will be warned and the process will exit -- Test
# is made during game boot

string VERSION="0"
# string REVISION="5"
string NUMBER="5"

# The following few commands control boot options.  They supercede
# conflicting command line selections.  NOTE: NOT ALL AVAILABLE OPTIONS
# CAN BE SET FROM HERE.  Notably -xu -d  These (and others) must be set
# via the command line.

# Force cold boot?      (-c)
# int OPT_COLD_BOOT=1

# Force save at shutdown to single DB?   (-m)
# int OPT_SAVE_SINGLE=1

# Disable swaps?       (-n)
# int OPT_SWAPS_OFF=1

# Set a single db file name --- lib directory must be set on the command line
# (-e DB_NAME)
string DB_NAME="lunar"

# Specify where to get help data from -- this location is INDEPENDENT of
# the data directory specified on the command line with -d -- It cannot
# be effectively modified during runtime for security reasons.
# (-w HELP)
# string HELP="db/help"

# (-p DEFAULT_GAME_PORT)
int DEFAULT_GAME_PORT=9500

# ###################################################################
#
#  The following may be modified during runtime.
#

# Define to only display entry sign to users trying to enter game
# Warning: if defined AT game boot, all OPT_*'s above will be ignored and
# everyone including you will be locked out.  This option may be modified
# during runtime.
# int SHOW_ONLY=1

# How to contact the game administrator(s)
string ADMIN_CONTACT="haji@u.washington.edu"

# Name of the game, appears in WHO listings and other places
string HUB_NAME="DEMO"

# Define to disable creation of new users
# int NO_NEW_USERS   

# How many players can be in-game at once? -- Actual limit may be even less
# due to restrictions placed on your copy of hub -- Only effective during
# boot.
int USER_LIMIT=20

# You don't need to deifne these, but then an icky default will be used
string LOGON_PROMPT="Enter player name: "
string NEW_PROMPT="Enter the name you would like to use: "
string PASS_PROMPT="Password: "

# Player start location 
string START="start"

# Where ghost go
string DEATH="start"

# Message sent to start location when a new user is being created
string START_PRE="The airlock warning lights flash.\n"

# Players in start location see  <user> START_MSG -- when new user enters
# game there
string START_MSG="arrives from the airlock.\n"

# What to tell a NEW user when they first enter game
string START_INFO="\nHubba Hubba Hubba...\n"


# Control booting idle users.  LOGON_IDLE is for non-authenticated
# connections.  MAX_IDLE is optionally for authenticated users.

long LOGON_IDLE=70

#  long MAX_IDLE=190

# How many aliases for commands may a user have?
int ALIAS_LIMIT=20

# Capacity of user mailboxes
int MAX_MAIL_MSGS=20

# Default terminal characteristics
int DEFAULT_COLS=78
int DEFAULT_ROWS=25

# Terminal types currently supported include:
#  0  DUMB   <-- no graphics
#  1  ANSI
#  2  vt100    (currently the same as ANSI)
#  3  Sun      reserved for future use
#
# HINT: If you start with anything but DUMB, try using $_uxm instead of $_zm
# in your entry file.  Still expect some people to not like your use of
# unsolicited graphics ;)

int DEFAULT_TERM_TYPE=0

# How often to process various lists and deal with certain objects
# This processing concerns only the most basic things NOT in-object code
#
#   PLAYER_PERIOD   - how often to update player stats/etc
#   NPC_PERIOD      - how often to update NPCs
#   ROOM_PERIOD     - how often to update rooms
#   OTHER_PERIOD    - how often to update other objects
#   SWAP_PERIOD     - how often scan for and deal with inactive objects
#   CLEANUP_PERIOD  - how often to free dead memory associated with objects
#
#   To get best speed -- no two values should be be even multiples
#   of each other.  All values are in seconds
#
#   NOTE: If none of these are defined, defaults will be made for you,
#   but not visible via "stat -global"

int PLAYER_PERIOD=40
int NPC_PERIOD=88
int ROOM_PERIOD=120
int OTHER_PERIOD=72
int SWAP_PERIOD=300
int AUTO_SAVE=660
int CLEANUP_PERIOD=120

# To put it simply, these values determine how fast the
# server deallocates memory asigned to certain object
# types after they have been destroyed.
#
# THE VALUES MUST BE GREATER THAN -1
#
# NOTE: the greater these values are, the larger the overhead carried.
# On the other hand, the fewer memory allocation calls will need to be made.
#
# Setting all to >=1 is a good idea.

int LOOSE_OBJECTS=1
int LOOSE_TOKENS=1
int LOOSE_VARS=1
int LOOSE_FILES=2
int LOOSE_USERS=1

# Line used by "who" and basic "stat" commands

string SLINE="wmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmwmm\n\r"

# BANNED_SITES is a list of address patterns to ban.
# 
# Each entry is seperated by space(s).  *=wild card.
# All data is read from RIGHT to LEFT.  Parsing stops when the first wild
# card is found.  Therefore   abcd*eef is equivalent to  *eef
#
# NB: Remote ports cannot be banned, only addresses.  So don't bother
# attempting things like 255.32.22.1:88

# string BANNED_SITES="addr1 addr2"
# string ACCEPT_SITES="200.22.3.1 *22.123"