+---
_copy: Copyright (c) 2004-2017 Jeremy Stanley <fungi@yuggoth.org>.
Permission to use, copy, modify, and distribute this software is granted
under terms provided in the LICENSE file distributed with this software.
_desc: This is the top-level configuration file for mudpy service.
-_load: [ archetype.yaml, command.yaml, menu.yaml, sample ]
+_load:
+ - archetype.yaml
+ - command.yaml
+ - menu.yaml
+ - sample
_lock: true
-.mudpy.filing.groups: { account: { flags: [ private ] } }
-.mudpy.filing.prefix: "."
-.mudpy.filing.search: [ "", "etc", "share", "data" ]
-.mudpy.filing.stash: "data"
+.mudpy.filing.groups:
+ account:
+ flags:
+ - private
+.mudpy.filing.prefix: .
+.mudpy.filing.search:
+ - ""
+ - etc
+ - share
+ - data
+.mudpy.filing.stash: data
-.mudpy.linguistic.actions: { "?": "ask", ",": "begin", "-": "begin", ":": "begin", ";": "begin", "!": "exclaim", "...": "muse", ".": "say" }
+.mudpy.linguistic.actions:
+ ?: ask
+ ",": begin
+ -: begin
+ :: begin
+ ;: begin
+ "!": exclaim
+ ...: muse
+ .: say
.mudpy.linguistic.default_punctuation: .
-.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.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.admins: [ admin ]
+.mudpy.limit.admins:
+ - admin
.mudpy.limit.avatars: 7
-#.mudpy.limit.backups: 10
+# .mudpy.limit.backups: 10
.mudpy.limit.password_tries: 3
-#.mudpy.log.file: mudpy.log
+# .mudpy.log.file: var/mudpy.log
.mudpy.log.lines: 1000
.mudpy.log.stdout: true
-#.mudpy.log.syslog: mudpy
+# .mudpy.log.syslog: mudpy
.mudpy.movement.down.enter_term: above
.mudpy.movement.down.exit_term: downward
-.mudpy.movement.down.vector: [0,0,-1]
+.mudpy.movement.down.vector: [0, 0, -1]
.mudpy.movement.east.enter_term: the west
.mudpy.movement.east.exit_term: to the east
-.mudpy.movement.east.vector: [1,0,0]
+.mudpy.movement.east.vector: [1, 0, 0]
.mudpy.movement.north.enter_term: the south
.mudpy.movement.north.exit_term: to the north
-.mudpy.movement.north.vector: [0,1,0]
+.mudpy.movement.north.vector: [0, 1, 0]
.mudpy.movement.south.enter_term: the north
.mudpy.movement.south.exit_term: to the south
-.mudpy.movement.south.vector: [0,-1,0]
+.mudpy.movement.south.vector: [0, -1, 0]
.mudpy.movement.up.enter_term: below
.mudpy.movement.up.exit_term: upward
-.mudpy.movement.up.vector: [0,0,1]
+.mudpy.movement.up.vector: [0, 0, 1]
.mudpy.movement.west.enter_term: the east
.mudpy.movement.west.exit_term: to the west
-.mudpy.movement.west.vector: [-1,0,0]
+.mudpy.movement.west.vector: [-1, 0, 0]
-.mudpy.network.host: '::1'
+.mudpy.network.host: ::1
.mudpy.network.port: 4000
-#.mudpy.process.daemon: true
-#.mudpy.process.pidfile: mudpy.pid
+# .mudpy.process.daemon: true
+# .mudpy.process.pidfile: var/mudpy.pid
.mudpy.timing.idle.disconnect.active: 6048000
.mudpy.timing.idle.disconnect.default: 6000
+---
_copy: Copyright (c) 2004-2017 Jeremy Stanley <fungi@yuggoth.org>.
Permission to use, copy, modify, and distribute this software is granted
under terms provided in the LICENSE file distributed with this software.
_desc: This is an alternative top-level configuration with some values adjusted
to better suit automated testing scenarios.
-_load: [ archetype.yaml, command.yaml, menu.yaml, sample ]
+_load:
+ - archetype.yaml
+ - command.yaml
+ - menu.yaml
+ - sample
_lock: true
-.mudpy.filing.groups: { account: { flags: [ private ] } }
-.mudpy.filing.prefix: "."
-.mudpy.filing.search: [ "", "etc", "share", "data" ]
-.mudpy.filing.stash: "data"
+.mudpy.filing.groups:
+ account:
+ flags:
+ - private
+.mudpy.filing.prefix: .
+.mudpy.filing.search:
+ - ""
+ - etc
+ - share
+ - data
+.mudpy.filing.stash: data
-.mudpy.linguistic.actions: { "?": "ask", ",": "begin", "-": "begin", ":": "begin", ";": "begin", "!": "exclaim", "...": "muse", ".": "say" }
+.mudpy.linguistic.actions:
+ ?: ask
+ ",": begin
+ -: begin
+ :: begin
+ ;: begin
+ "!": exclaim
+ ...: muse
+ .: say
.mudpy.linguistic.default_punctuation: .
-.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.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.admins: [ admin ]
+.mudpy.limit.admins:
+ - admin
.mudpy.limit.avatars: 7
.mudpy.limit.backups: 3
.mudpy.limit.password_tries: 3
.mudpy.log.file: var/mudpy.log
.mudpy.log.lines: 1000
.mudpy.log.stdout: true
-#.mudpy.log.syslog: mudpy
+# .mudpy.log.syslog: mudpy
.mudpy.movement.down.enter_term: above
.mudpy.movement.down.exit_term: downward
-.mudpy.movement.down.vector: [0,0,-1]
+.mudpy.movement.down.vector: [0, 0, -1]
.mudpy.movement.east.enter_term: the west
.mudpy.movement.east.exit_term: to the east
-.mudpy.movement.east.vector: [1,0,0]
+.mudpy.movement.east.vector: [1, 0, 0]
.mudpy.movement.north.enter_term: the south
.mudpy.movement.north.exit_term: to the north
-.mudpy.movement.north.vector: [0,1,0]
+.mudpy.movement.north.vector: [0, 1, 0]
.mudpy.movement.south.enter_term: the north
.mudpy.movement.south.exit_term: to the south
-.mudpy.movement.south.vector: [0,-1,0]
+.mudpy.movement.south.vector: [0, -1, 0]
.mudpy.movement.up.enter_term: below
.mudpy.movement.up.exit_term: upward
-.mudpy.movement.up.vector: [0,0,1]
+.mudpy.movement.up.vector: [0, 0, 1]
.mudpy.movement.west.enter_term: the east
.mudpy.movement.west.exit_term: to the west
-.mudpy.movement.west.vector: [-1,0,0]
+.mudpy.movement.west.vector: [-1, 0, 0]
-.mudpy.network.host: '::1'
+.mudpy.network.host: ::1
.mudpy.network.port: 4000
.mudpy.process.daemon: true
+---
_copy: Copyright (c) 2004-2017 Jeremy Stanley <fungi@yuggoth.org>.
Permission to use, copy, modify, and distribute this software is granted
under terms provided in the LICENSE file distributed with this software.
_desc: This is an index file for a sample collection of elements.
-_load: [ area.yaml, prop.yaml ]
+_load:
+ - area.yaml
+ - prop.yaml
_lock: true
+---
_copy: Copyright (c) 2004-2017 Jeremy Stanley <fungi@yuggoth.org>.
Permission to use, copy, modify, and distribute this software is granted
under terms provided in the LICENSE file distributed with this software.
_desc: This is a set of sample locations for testing and demonstration
purposes.
-area.-1,0,0.description: This is the West Sample Location. It is merely provided as an example of what an area might look like.
-area.-1,0,0.gridlinks: ['east']
+area.-1,0,0.description: This is the West Sample Location. It is merely
+ provided as an example of what an area might look like.
+area.-1,0,0.gridlinks:
+ - east
area.-1,0,0.name: West Sample Location
area.-1,0,0.terrain: inside
-area.0,-1,0.description: This is the South Sample Location. It is merely provided as an example of what an area might look like.
-area.0,-1,0.gridlinks: ['north']
+area.0,-1,0.description: This is the South Sample Location. It is merely
+ provided as an example of what an area might look like.
+area.0,-1,0.gridlinks:
+ - north
area.0,-1,0.name: South Sample Location
area.0,-1,0.terrain: inside
-area.0,0,-1.description: This is the Lower Sample Location. It is merely provided as an example of what an area might look like.
-area.0,0,-1.gridlinks: ['up']
+area.0,0,-1.description: This is the Lower Sample Location. It is merely
+ provided as an example of what an area might look like.
+area.0,0,-1.gridlinks:
+ - up
area.0,0,-1.name: Lower Sample Location
area.0,0,-1.terrain: inside
-area.0,0,0.description: This is the Center Sample Location. It is merely provided as an example of what an area might look like.
-area.0,0,0.gridlinks: ['down', 'east', 'north', 'south', 'up', 'west']
+area.0,0,0.description: This is the Center Sample Location. It is merely
+ provided as an example of what an area might look like.
+area.0,0,0.gridlinks:
+ - down
+ - east
+ - north
+ - south
+ - up
+ - west
area.0,0,0.name: Center Sample Location
area.0,0,0.terrain: inside
-area.0,0,1.description: This is the Upper Sample Location. It is merely provided as an example of what an area might look like.
-area.0,0,1.gridlinks: ['down']
+area.0,0,1.description: This is the Upper Sample Location. It is merely
+ provided as an example of what an area might look like.
+area.0,0,1.gridlinks:
+ - down
area.0,0,1.name: Upper Sample Location
area.0,0,1.terrain: inside
-area.0,1,0.description: This is the North Sample Location. It is merely provided as an example of what an area might look like.
-area.0,1,0.gridlinks: ['south']
+area.0,1,0.description: This is the North Sample Location. It is merely
+ provided as an example of what an area might look like.
+area.0,1,0.gridlinks:
+ - south
area.0,1,0.name: North Sample Location
area.0,1,0.terrain: inside
-area.1,0,0.description: This is the East Sample Location. It is merely provided as an example of what an area might look like.
-area.1,0,0.gridlinks: ['west']
+area.1,0,0.description: This is the East Sample Location. It is merely
+ provided as an example of what an area might look like.
+area.1,0,0.gridlinks:
+ - west
area.1,0,0.name: East Sample Location
area.1,0,0.terrain: inside
+---
_copy: Copyright (c) 2004-2017 Jeremy Stanley <fungi@yuggoth.org>.
Permission to use, copy, modify, and distribute this software is granted
under terms provided in the LICENSE file distributed with this software.
+---
_copy: Copyright (c) 2004-2017 Jeremy Stanley <fungi@yuggoth.org>.
Permission to use, copy, modify, and distribute this software is granted
under terms provided in the LICENSE file distributed with this software.
archetype.actor.is_actor: true
archetype.avatar.default_location: area.0,0,0
-archetype.avatar.inherit: [ archetype.actor ]
+archetype.avatar.inherit:
+ - archetype.actor
+---
_copy: Copyright (c) 2004-2017 Jeremy Stanley <fungi@yuggoth.org>.
Permission to use, copy, modify, and distribute this software is granted
under terms provided in the LICENSE file distributed with this software.
command.chat.action: command_chat(actor)
command.chat.description: Enter and leave chat mode.
-command.chat.help: The chat command toggles chat mode. When in chat mode, all input is passed as a parameter to the say command, unless prepended by an exclamation mark (!). For example, to leave chat mode, use:$(eol)$(eol) !chat
+command.chat.help: The chat command toggles chat mode. When in chat mode, all
+ input is passed as a parameter to the say command, unless prepended by an
+ exclamation mark (!). For example, to leave chat mode,
+ use:$(eol)$(eol) !chat
command.chat.see_also: say
command.create.action: command_create(actor, parameters)
command.create.administrative: true
command.create.description: Create a new element in the universe.
-command.create.help: Ways to create an element:$(eol)$(eol) create actor:fred$(eol) create other:garply foo/bar/baz
+command.create.help: Ways to create an element:$(eol)$(eol) create
+ actor:fred$(eol) create other:garply foo/bar/baz
command.delete.action: command_delete(actor, parameters)
command.delete.administrative: true
command.delete.description: Delete an existing facet from an element.
-command.delete.help: You can delete any facet of an element as follows:$(eol)$(eol) delete area:boardroom terrain
+command.delete.help: You can delete any facet of an element as
+ follows:$(eol)$(eol) delete area:boardroom terrain
command.destroy.action: command_destroy(actor, parameters)
command.destroy.administrative: true
command.destroy.description: Destroy an existing element in the universe.
-command.destroy.help: You can destroy any element in the universe as follows:$(eol)$(eol) destroy prop:dagger
+command.destroy.help: You can destroy any element in the universe as
+ follows:$(eol)$(eol) destroy prop:dagger
command.halt.action: command_halt(actor, parameters)
command.halt.administrative: true
command.halt.description: Shut down the world.
-command.halt.help: This will save all active accounts, disconnect all clients and stop the entire program.
+command.halt.help: This will save all active accounts, disconnect all clients
+ and stop the entire program.
command.help.action: command_help(actor, parameters)
command.help.description: List commands or get help on one.
-command.help.help: This will list all comand words available to you along with a brief description or, alternatively, give you detailed information on one command.
+command.help.help: This will list all comand words available to you along with
+ a brief description or, alternatively, give you detailed information on one
+ command.
command.look.action: command_look(actor, parameters)
command.look.description: Look around.
command.move.action: command_move(actor, parameters)
command.move.description: Move in a specific direction.
-command.move.help: You move in a direction by entering:$(eol)$(eol) move north
+command.move.help: You move in a direction by entering:$(eol)$(eol) move
+ north
command.quit.action: command_quit(actor)
command.quit.description: Leave the World.
-command.quit.help: This will deactivate your avatar and return you to the main menu.
+command.quit.help: This will deactivate your avatar and return you to the main
+ menu.
command.reload.action: command_reload(actor)
command.reload.administrative: true
command.reload.description: Reload modules and data.
-command.reload.help: This will reload all python modules and read-only data files.
+command.reload.help: This will reload all python modules and read-only data
+ files.
command.say.action: command_say(actor, parameters)
command.say.description: State something out loud.
-command.say.help: This allows you to speak to other characters within the same area. If you end your sentence with punctuation, the message displayed will incorporate an appropriate action (ask, exclaim, et cetera). It will also correct common typographical errors, add punctuation and capitalize your sentence as needed (assuming you speak one sentence per line). For example:$(eol)$(eol) > say youre sure i went teh wrong way?$(eol) You ask, "You're sure I went the wrong way?"$(eol)$(eol)If necessary, enclose literal statements in quotation marks:$(eol)$(eol) > say "youre sure i went teh wrong way?"$(eol) You say, "youre sure i went teh wrong way?"
+command.say.help: This allows you to speak to other characters within the same
+ area. If you end your sentence with punctuation, the message displayed will
+ incorporate an appropriate action (ask, exclaim, et cetera). It will also
+ correct common typographical errors, add punctuation and capitalize your
+ sentence as needed (assuming you speak one sentence per line). For
+ example:$(eol)$(eol) > say youre sure i went teh wrong way?$(eol) You
+ ask, "You're sure I went the wrong way?"$(eol)$(eol)If necessary, enclose
+ literal statements in quotation marks:$(eol)$(eol) > say "youre sure i
+ went teh wrong way?"$(eol) You say, "youre sure i went teh wrong way?"
command.say.see_also: chat
command.set.action: command_set(actor, parameters)
command.set.administrative: true
command.set.description: Set a facet of an element.
-command.set.help: Invoke it like this:$(eol)$(eol) set actor:dominique description You see nothing special.
+command.set.help: Invoke it like this:$(eol)$(eol) set actor:dominique
+ description You see nothing special.
command.show.action: command_show(actor, parameters)
command.show.administrative: true
command.show.description: Show various data.
-command.show.help: Here are the possible incantations (<parameter> is required, [option] is optional, (note) is a note):$(eol)$(eol) show groups (list all element group names)$(eol) show group <group> (list the elements in a group)$(eol) show element <element> (list facet definitions for an element)$(eol) show file <filename> (list elements in a file)$(eol) show files (list all element data files)$(eol) show log [level [start [stop]]] (list logs above level from start to stop)$(eol) show result <expression> (evaluates a python expression)$(eol) show time (returns several current timer values)
+command.show.help: Here are the possible incantations (<parameter> is required,
+ [option] is optional, (note) is a note):$(eol)$(eol) show groups (list
+ all element group names)$(eol) show group <group> (list the elements in a
+ group)$(eol) show element <element> (list facet definitions for an
+ element)$(eol) show file <filename> (list elements in a
+ file)$(eol) show files (list all element data files)$(eol) show log
+ [level [start [stop]]] (list logs above level from start to
+ stop)$(eol) show result <expression> (evaluates a python
+ expression)$(eol) show time (returns several current timer values)
+---
_copy: Copyright (c) 2004-2017 Jeremy Stanley <fungi@yuggoth.org>.
Permission to use, copy, modify, and distribute this software is granted
under terms provided in the LICENSE file distributed with this software.
menu.activate_avatar.action_a: pass
menu.activate_avatar.branch_a: main_utility
menu.activate_avatar.choice_a: abort selection
-menu.activate_avatar.create: dict([(str(x+1),y) for x,y in enumerate(user.list_avatar_names())])
+menu.activate_avatar.create: dict([(str(x+1),y) for x,y in
+ enumerate(user.list_avatar_names())])
menu.activate_avatar.default: "1"
-menu.activate_avatar.description: This is the list of avatars available for you to awaken.
+menu.activate_avatar.description: This is the list of avatars available for you
+ to awaken.
menu.activate_avatar.prompt: Whom would you like to awaken?
menu.active.prompt:
menu.checking_new_account_name.choice_g: go back
menu.checking_new_account_name.choice_n: new account
menu.checking_new_account_name.default: d
-menu.checking_new_account_name.description: There is no existing account for "$(account)" (note that an account name is not the same as a character name). Would you like to create a new account by this name, go back and enter a different name or disconnect now?
+menu.checking_new_account_name.description: There is no existing account for
+ "$(account)" (note that an account name is not the same as a character
+ name). Would you like to create a new account by this name, go back and
+ enter a different name or disconnect now?
menu.checking_new_account_name.prompt: "Enter your choice:"
-menu.checking_password.echo: off
+menu.checking_password.echo: false
menu.checking_password.error_incorrect: Incorrect password, please try again...
menu.checking_password.prompt: "Password:"
menu.choose_gender.branch: choose_name
menu.choose_gender.choice_f: female
menu.choose_gender.choice_m: male
-menu.choose_gender.description: First, your new avatar needs a birth gender. Avatars are one of male or female at birth.
+menu.choose_gender.description: First, your new avatar needs a birth gender.
+ Avatars are one of male or female at birth.
menu.choose_gender.prompt: "Pick a birth gender for your new avatar:"
menu.choose_name.action: user.avatar.set("name", user.menu_choices[choice])
menu.choose_name.create_6: random_name()
menu.choose_name.create_7: random_name()
menu.choose_name.default: g
-menu.choose_name.description: Your new avatar needs a name. This will be the name with which $(tpsp) grew up, and will initially be the name by which $(tpsp) is known to others. There are ways for your new avatar to make a name for $(tpop)self over time, so $(tpsp) won't be stuck going by such an unremarkable name forever.
+menu.choose_name.description: Your new avatar needs a name. This will be the
+ name with which $(tpsp) grew up, and will initially be the name by which
+ $(tpsp) is known to others. There are ways for your new avatar to make a
+ name for $(tpop)self over time, so $(tpsp) won't be stuck going by such an
+ unremarkable name forever.
menu.choose_name.prompt: "Choose a name for $(tpop):"
menu.delete_account.action_y: user.destroy()
menu.delete_account.choice_n: no, don't delete my account
menu.delete_account.choice_y: yes, permanently delete my account
menu.delete_account.default: n
-menu.delete_account.description: By deleting your account, all your avatars will also be permanently deleted.
-menu.delete_account.prompt: Are you certain you wish to permanently delete your account?
+menu.delete_account.description: By deleting your account, all your avatars
+ will also be permanently deleted.
+menu.delete_account.prompt: Are you certain you wish to permanently delete your
+ account?
-menu.delete_avatar.action: user.delete_avatar(user.account.get("avatars")[int(choice)-1])
+menu.delete_avatar.action: user.delete_avatar(
+ user.account.get("avatars")[int(choice)-1])
menu.delete_avatar.action_a: pass
menu.delete_avatar.branch: main_utility
menu.delete_avatar.branch_a: main_utility
menu.delete_avatar.choice_a: abort selection
-menu.delete_avatar.create: dict([(str(x+1),y) for x,y in enumerate(user.list_avatar_names())])
+menu.delete_avatar.create: dict([(str(x+1),y) for x,y in
+ enumerate(user.list_avatar_names())])
menu.delete_avatar.default: a
-menu.delete_avatar.description: This is the list of avatars available for you to delete.
+menu.delete_avatar.description: This is the list of avatars available for you
+ to delete.
menu.delete_avatar.prompt: Whom would you like to delete?
menu.disconnecting.prompt: $(red)Disconnecting...$(nrm)$(eol)
-menu.disconnecting_duplicates.prompt: $(red)Closing your previous connection...$(nrm)$(eol)
+menu.disconnecting_duplicates.prompt: $(red)Closing your previous
+ connection...$(nrm)$(eol)
menu.entering_account_name.description: $(inc:login.txt)
-menu.entering_account_name.error_bad_name: Your account name needs to contain only digits (0-9) and letters (a-z).
+menu.entering_account_name.error_bad_name: Your account name needs to contain
+ only digits (0-9) and letters (a-z).
menu.entering_account_name.prompt: "Identify yourself:"
-menu.entering_new_password.echo: off
-menu.entering_new_password.error_weak: That is a weak password... Try something at least 7 characters long with a combination of mixed-case letters, numbers and punctuation/spaces.
+menu.entering_new_password.echo: false
+menu.entering_new_password.error_weak: That is a weak password... Try something
+ at least 7 characters long with a combination of mixed-case letters,
+ numbers and punctuation/spaces.
menu.entering_new_password.prompt: 'Enter a new password for "$(account)":'
-menu.entering_new_password.error_differs: The two passwords did not match. Try again...
+menu.entering_new_password.error_differs: The two passwords did not match. Try
+ again...
menu.active.initial:
menu.main_utility.choice_l: leave for now
menu.main_utility.choice_p: permanently remove your account
menu.main_utility.demand_a: user.account.get("avatars")
-menu.main_utility.demand_c: len(user.account.get("avatars")) < universe.contents["mudpy.limit"].get("avatars")
+menu.main_utility.demand_c: len(user.account.get("avatars")) <
+ universe.contents["mudpy.limit"].get("avatars")
menu.main_utility.demand_d: user.account.get("avatars")
-menu.main_utility.description: $(red)$(inc:banner.txt)$(nrm)$(eol)$(eol)From here you can awaken, create and delete avatars. An avatar is your persona in the World. You can also leave or permanently delete your account.
+menu.main_utility.description: $(red)$(inc:banner.txt)$(nrm)$(eol)$(eol)From
+ here you can awaken, create and delete avatars. An avatar is your persona
+ in the World. You can also leave or permanently delete your account.
menu.main_utility.prompt: What would you like to do?
-menu.verifying_new_password.echo: off
+menu.verifying_new_password.echo: false
menu.verifying_new_password.prompt: "Enter the same new password again:"