5 .. Copyright (c) 2004-2020 mudpy authors. Permission to use, copy,
6 modify, and distribute this software is granted under terms
7 provided in the LICENSE file distributed with this software.
17 Each item in the dict identifies options for the default backing
18 file of the group named in its key. The value is itself a dict with
19 its keys and values corresponding to those options (for now, only
20 ``flags`` is implemented, with a value of ``private`` indicating it
21 should be readable only by the system user under which the mudpy
36 This is the root path beneath which all relative file references,
37 including directories comprising the search path, are assumed to be
38 found. The default value of ``.`` indicates the current working
39 directory at the time the service was initially started.
43 .mudpy.filing.prefix: .
50 Directories to search for expected data files. If not a fully
51 canonical path, this is assumed to be relative to the ``prefix``.
66 This is the default directory where new data files will be written
67 if their full paths are not specified and they aren't already found
68 in the ``search`` list. If not a fully canonical path, this is
69 assumed to be relative to the ``prefix``.
73 .mudpy.filing.stash: data
78 .mudpy.linguistic.actions
79 ~~~~~~~~~~~~~~~~~~~~~~~~~
83 This is used to tailor the appearance of output generated by the
84 ``say`` command and its relatives, so as to add some readability and
85 flavor. It matches a visible action to punctuation (ask, exclaim, et
90 .mudpy.linguistic.actions:
100 .mudpy.linguistic.default_punctuation
101 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
105 Unpunctuated statements made by actors should be assumed to
106 terminate with this value.
110 .mudpy.linguistic.default_punctuation: .
112 .mudpy.linguistic.typos
113 ~~~~~~~~~~~~~~~~~~~~~~~
117 Replacements for common typographical and capitalization errors.
121 .mudpy.linguistic.typos:
138 The first users to create accounts with names in this list will
139 automatically be given full administrative privileges.
151 This is the maximum number of avatars allowed for each account.
155 .mudpy.limit.avatars: 7
162 This is the number of backups to keep and rotate when overwriting
163 data files. If unspecified or set to 0, no backup copies will be
168 .mudpy.limit.backups: 10
175 Whether unsafe debugging functionality is enabled. If unspecified or
176 set to false, unsafe debugging functions will be disabled. Be very
177 careful enabling this feature, as debugging commands may allow service
178 administrators to run arbitrary shell commands or modify files
179 accessible to the system user underwhich the service is running.
183 .mudpy.limit.debug: true
185 .mudpy.limit.password_tries
186 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
190 This is the maximum number of password failures allowed during the
191 login process. Once exceeded, the user will be disconnected.
195 .mudpy.limit.password_tries: 3
205 If set, log messages will be recorded to this file.
209 .mudpy.log.file: var/mudpy.log
216 Number of log entries to keep in memory (the oldest are
217 discarded)... If unset or 0, none will be written to mudpy's
222 .mudpy.log.lines: 1000
229 If set to ``yes``, messages will be logged to the standard output of
230 the mudpy process. If unspecified, the default is ``no``.
234 .mudpy.log.stdout: true
241 If set, mudpy will send messages to the system log, and under the
242 name specified by this value (Unix derivatives only).
246 .mudpy.log.syslog: mudpy
251 .mudpy.movement.*.enter_term
252 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
256 Word or words describing the direction from where you are seen to
257 enter the next room when moving.
261 .mudpy.movement.down.enter_term: above
262 .mudpy.movement.east.enter_term: the west
263 .mudpy.movement.north.enter_term: the south
264 .mudpy.movement.south.enter_term: the north
265 .mudpy.movement.up.enter_term: below
266 .mudpy.movement.west.enter_term: the east
268 .mudpy.movement.*.exit_term
269 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
273 Word or words describing the direction where you are seen to exit
274 the current room when moving.
278 .mudpy.movement.down.exit_term: downward
279 .mudpy.movement.east.exit_term: to the east
280 .mudpy.movement.north.exit_term: to the north
281 .mudpy.movement.south.exit_term: to the south
282 .mudpy.movement.up.exit_term: upward
283 .mudpy.movement.west.exit_term: to the west
285 .mudpy.movement.*.vector
286 ~~~~~~~~~~~~~~~~~~~~~~~~
290 Vector of signed integer units for use in vector addition to derive
291 the destination coordinates from the current coordinates when moving
292 through a gridlink exit. The example coordinate system used is left
293 handed (east, north and up are positive, west, south and down are
294 negative) and three-dimensional with a tuple component order of
295 (longitude, latitude, altitude).
299 .mudpy.movement.down.vector: [0, 0, -1]
300 .mudpy.movement.east.vector: [1, 0, 0]
301 .mudpy.movement.north.vector: [0, 1, 0]
302 .mudpy.movement.south.vector: [0, -1, 0]
303 .mudpy.movement.up.vector: [0, 0, 1]
304 .mudpy.movement.west.vector: [-1, 0, 0]
314 The IP address on which to listen. If unspecified, the default is
315 all available addresses.
319 .mudpy.network.host: ::1
326 The TCP port on which to listen.
330 .mudpy.network.port: 4000
335 .mudpy.process.daemon
336 ~~~~~~~~~~~~~~~~~~~~~
340 If set to ``yes``, mudpy will immediately fork and detach a child to
341 become a daemon process, then close all open file descriptors and
342 terminate the parent process (Unix derivatives only). The default
347 .mudpy.process.daemon: true
349 .mudpy.process.pidfile
350 ~~~~~~~~~~~~~~~~~~~~~~
354 If set, this filename will contain the daemon's process ID (Unix
359 .mudpy.process.pidfile: var/mudpy.pid
364 .mudpy.timing.idle.disconnect.*
365 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
369 This value indicates the number of increments allowed to pass
370 without input on a socket connection before it is terminated. This
371 avoids accumulation of dead sockets which could otherwise max out
372 allowed file descriptors. The differentiators are either ``default``
373 or a state name used to override the default value for that specific
374 state (``active``, ``entering_account_name``, et cetera).
378 .mudpy.timing.idle.disconnect.active: 6048000
379 .mudpy.timing.idle.disconnect.default: 6000
380 .mudpy.timing.idle.disconnect.entering_account_name: 600
382 .mudpy.timing.idle.warn.*
383 ~~~~~~~~~~~~~~~~~~~~~~~~~
387 This value indicates the number of increments allowed to pass
388 without input on a socket connection before it is warned that
389 termination is imminent. The differentiators are either
390 ``default`` or a state name used to override the default value
391 for that specific state. It is recommended that this be less than
392 the corresponding ``.mudpy.timing.idle.disconnect.*`` value.
396 .mudpy.timing.idle.warn.active: 5040000
397 .mudpy.timing.idle.warn.default: 5000
398 .mudpy.timing.idle.warn.entering_account_name: 500
400 .mudpy.timing.increment
401 ~~~~~~~~~~~~~~~~~~~~~~~
405 This value indicates the number of real system clock seconds (or
406 more commonly, fraction thereof) each pass through the main loop is
407 intended to take. This roughly sets the frequency with which queued
408 socket I/O operations are performed, pending events are triggered,
409 and directly impacts the speed at which virtual time passes within
414 .mudpy.timing.increment: 0.1
421 Number of increments between updates of changed persistent data
426 .mudpy.timing.save: 600
433 Number of increments to wait between logging mudpy status messages.
434 If unspecified or set to 0, no mudpy status messages will be
439 .mudpy.timing.status: 6000
444 .mudpy.user.pref_admin
445 ~~~~~~~~~~~~~~~~~~~~~~
449 This can be used to list facets an administrative user is allowed to
450 set or override on their own ``account`` element, in addition to any
451 in the `.mudpy.user.pref_allow`_ list. Note that this is merely a
452 convenience, as an administrator is already able to call the ``set``
453 command to set values for facets of any element.
457 .mudpy.user.pref_admin:
460 .mudpy.user.pref_allow
461 ~~~~~~~~~~~~~~~~~~~~~~
465 This can be used to list facets any user is allowed to set or
466 override on their own ``account`` element with the ``preference``
471 .mudpy.user.pref_allow: