configuration¶
.mudpy.filing¶
.mudpy.filing.groups¶
dict, optional
Each item in the dict identifies options for the default backing
file of the group named in its key. The value is itself a dict with
its keys and values corresponding to those options (for now, only
flags
is implemented, with a value of private
indicating it
should be readable only by the system user under which the mudpy
process is running).
Example:
.mudpy.filing.groups:
account:
flags:
- private
.mudpy.filing.prefix¶
string, optional
This is the root path beneath which all relative file references,
including directories comprising the search path, are assumed to be
found. The default value of .
indicates the current working
directory at the time the service was initially started.
Example:
.mudpy.filing.prefix: .
.mudpy.filing.search¶
list, required
Directories to search for expected data files. If not a fully
canonical path, this is assumed to be relative to the prefix
.
Example:
.mudpy.filing.search:
- ""
- etc
- share
- data
.mudpy.filing.stash¶
string, required
This is the default directory where new data files will be written
if their full paths are not specified and they aren’t already found
in the search
list. If not a fully canonical path, this is
assumed to be relative to the prefix
.
Example:
.mudpy.filing.stash: data
.mudpy.linguistic¶
.mudpy.linguistic.actions¶
dict, optional
This is used to tailor the appearance of output generated by the
say
command and its relatives, so as to add some readability and
flavor. It matches a visible action to punctuation (ask, exclaim, et
cetera).
Example:
.mudpy.linguistic.actions:
?: ask
",": begin
-: begin
:: begin
;: begin
"!": exclaim
...: muse
.: say
.mudpy.linguistic.default_punctuation¶
string, optional
Unpunctuated statements made by actors should be assumed to terminate with this value.
Example:
.mudpy.linguistic.default_punctuation: .
.mudpy.linguistic.typos¶
dict, optional
Replacements for common typographical and capitalization errors.
Example:
.mudpy.linguistic.typos:
i: I
i'd: I'd
i'll: I'll
i'm: I'm
teh: the
theyre: they're
youre: you're
.mudpy.limit¶
.mudpy.limit.admins¶
list, optional
The first users to create accounts with names in this list will automatically be given full administrative privileges.
Example:
.mudpy.limit.admins:
- admin
.mudpy.limit.avatars¶
int, required
This is the maximum number of avatars allowed for each account.
Example:
.mudpy.limit.avatars: 7
.mudpy.limit.backups¶
int, optional
This is the number of backups to keep and rotate when overwriting data files. If unspecified or set to 0, no backup copies will be made.
Example:
.mudpy.limit.backups: 10
.mudpy.limit.debug¶
bool, optional
Whether unsafe debugging functionality is enabled. If unspecified or set to false, unsafe debugging functions will be disabled. Be very careful enabling this feature, as debugging commands may allow service administrators to run arbitrary shell commands or modify files accessible to the system user under which the service is running.
Example:
.mudpy.limit.debug: true
.mudpy.limit.password_tries¶
int, required
This is the maximum number of password failures allowed during the login process. Once exceeded, the user will be disconnected.
Example:
.mudpy.limit.password_tries: 3
.mudpy.log¶
.mudpy.log.file¶
string, optional
If set, log messages will be recorded to this file.
Example:
.mudpy.log.file: var/mudpy.log
.mudpy.log.lines¶
int, optional
Number of log entries to keep in memory (the oldest are discarded)… If unset or 0, none will be written to mudpy’s internal memory.
Example:
.mudpy.log.lines: 1000
.mudpy.log.stdout¶
bool, optional
If set to yes
, messages will be logged to the standard output of
the mudpy process. If unspecified, the default is no
.
Example:
.mudpy.log.stdout: true
.mudpy.log.syslog¶
string, optional
If set, mudpy will send messages to the system log, and under the name specified by this value (Unix derivatives only).
Example:
.mudpy.log.syslog: mudpy
.mudpy.movement¶
.mudpy.movement.*.enter_term¶
string, multiple
Word or words describing the direction from where you are seen to enter the next room when moving.
Example:
.mudpy.movement.down.enter_term: above
.mudpy.movement.east.enter_term: the west
.mudpy.movement.north.enter_term: the south
.mudpy.movement.south.enter_term: the north
.mudpy.movement.up.enter_term: below
.mudpy.movement.west.enter_term: the east
.mudpy.movement.*.exit_term¶
string, multiple
Word or words describing the direction where you are seen to exit the current room when moving.
Example:
.mudpy.movement.down.exit_term: downward
.mudpy.movement.east.exit_term: to the east
.mudpy.movement.north.exit_term: to the north
.mudpy.movement.south.exit_term: to the south
.mudpy.movement.up.exit_term: upward
.mudpy.movement.west.exit_term: to the west
.mudpy.movement.*.vector¶
triplet, multiple
Vector of signed integer units for use in vector addition to derive the destination coordinates from the current coordinates when moving through a gridlink exit. The example coordinate system used is left handed (east, north and up are positive, west, south and down are negative) and three-dimensional with a tuple component order of (longitude, latitude, altitude).
Example:
.mudpy.movement.down.vector: [0, 0, -1]
.mudpy.movement.east.vector: [1, 0, 0]
.mudpy.movement.north.vector: [0, 1, 0]
.mudpy.movement.south.vector: [0, -1, 0]
.mudpy.movement.up.vector: [0, 0, 1]
.mudpy.movement.west.vector: [-1, 0, 0]
.mudpy.network¶
.mudpy.network.host¶
string, optional
The IP address on which to listen. If unspecified, the default is all available addresses.
Example:
.mudpy.network.host: ::1
.mudpy.network.port¶
int, required
The TCP port on which to listen.
Example:
.mudpy.network.port: 4000
.mudpy.process¶
.mudpy.process.daemon¶
bool, optional
If set to yes
, mudpy will immediately fork and detach a child to
become a daemon process, then close all open file descriptors and
terminate the parent process (Unix derivatives only). The default
value is no
.
Example:
.mudpy.process.daemon: true
.mudpy.process.pidfile¶
string, optional
If set, this filename will contain the daemon’s process ID (Unix derivatives only).
Example:
.mudpy.process.pidfile: var/mudpy.pid
.mudpy.timing¶
.mudpy.timing.idle.disconnect.*¶
int, multiple
This value indicates the number of increments allowed to pass
without input on a socket connection before it is terminated. This
avoids accumulation of dead sockets which could otherwise max out
allowed file descriptors. The differentiators are either default
or a state name used to override the default value for that specific
state (active
, entering_account_name
, et cetera).
Example:
.mudpy.timing.idle.disconnect.active: 6048000
.mudpy.timing.idle.disconnect.default: 6000
.mudpy.timing.idle.disconnect.entering_account_name: 600
.mudpy.timing.idle.warn.*¶
int, multiple
This value indicates the number of increments allowed to pass
without input on a socket connection before it is warned that
termination is imminent. The differentiators are either
default
or a state name used to override the default value
for that specific state. It is recommended that this be less than
the corresponding .mudpy.timing.idle.disconnect.*
value.
Example:
.mudpy.timing.idle.warn.active: 5040000
.mudpy.timing.idle.warn.default: 5000
.mudpy.timing.idle.warn.entering_account_name: 500
.mudpy.timing.increment¶
float, required
This value indicates the number of real system clock seconds (or more commonly, fraction thereof) each pass through the main loop is intended to take. This roughly sets the frequency with which queued socket I/O operations are performed, pending events are triggered, and directly impacts the speed at which virtual time passes within the simulation.
Example:
.mudpy.timing.increment: 0.1
.mudpy.timing.save¶
int, required
Number of increments between updates of changed persistent data storage.
Example:
.mudpy.timing.save: 600
.mudpy.timing.status¶
int, optional
Number of increments to wait between logging mudpy status messages. If unspecified or set to 0, no mudpy status messages will be written.
Example:
.mudpy.timing.status: 6000
.mudpy.user¶
.mudpy.user.pref_admin¶
list, optional
This can be used to list facets an administrative user is allowed to
set or override on their own account
element, in addition to any
in the .mudpy.user.pref_allow list. Note that this is merely a
convenience, as an administrator is already able to call the set
command to set values for facets of any element.
Example:
.mudpy.user.pref_admin:
- loglevel
.mudpy.user.pref_allow¶
list, optional
This can be used to list facets any user is allowed to set or
override on their own account
element with the preference
command.
Example:
.mudpy.user.pref_allow:
- prompt