Pre-release
AdventureJS Docs Downloads
Score: 0 Moves: 0

Defined in: adventure/Settings.js, line 5

Framework class

Description

Settings is a repository for global Game options. Settings is created automatically by Game. This is an internal class that authors should not need to construct. However, authors can set options from their game file as shown below, or change them during runtime with calls to MyGame.settings.set().

Example:

var MyGame = new adventurejs.Game( "MyGame", "GameDisplay" );
MyGame.settings.set({
  max_undos: 20,
  show_room_names_in_exit_descriptions: false,
  can_auto_open_apertures: false
});

Private Constructor:

var foo = new adventurejs.Settings(game)

Parameters:

  • game Game
    A reference to the game instance.
Inherited Overrides

Index

Methods:

Properties:

Methods Collapse all  |  Expand all

getCommonWordMessage
getCommonWordMessage(word) → {string}

Defined in: adventure/Settings.js, line 1123

Parameters:

  • word string
    The unknown word.
Get if_word_is_common_print_this and substitute word if needed.

Returns:

string
getUnknownVerbMessage
getUnknownVerbMessage(word) → {string}

Defined in: adventure/Settings.js, line 1093

Parameters:

  • word string
    The unknown verb.
Get if_verb_is_unknown_print_this and substitute word if needed.

Returns:

string
getUnknownWordMessage
getUnknownWordMessage(word) → {string}

Defined in: adventure/Settings.js, line 1108

Parameters:

  • word string
    The unknown word.
Get if_word_is_unknown_print_this and substitute word if needed.

Returns:

string
getUnparsedMessage
getUnparsedMessage()

Defined in: adventure/Settings.js, line 1073

Take input and return a standardized "unparsed" message. settings.if_parser_has_no_response_print_this.
set
set(props) → {adventurejs.Settings}

Defined in: adventure/Settings.js, line 1061

Parameters:

  • props Object
    A generic object containing properties to copy to the instance.
Provides a chainable shortcut method for setting a number of properties on the instance.

Returns:

adventurejs.Settings Returns the instance the method is called on (useful for chaining calls.)

Properties  | 

ambient_temperature
ambient_temperature :Number

Defined in: adventure/Settings.js, line 542

Default value: 20

Todos: celsius/farenheit conversion

Ambient temperature in celsius.
apply_color_classes_to_drawn_things
apply_color_classes_to_drawn_things :Boolean

Defined in: adventure/Settings.js, line 1034

Default value: true

If true, when player inputs "draw foo with red pen", the drawn thing will be printed to the display with a CSS class that is the name of the color. For example: foo
apply_color_classes_to_written_strings
apply_color_classes_to_written_strings :Boolean

Defined in: adventure/Settings.js, line 1024

Default value: true

If true, when player inputs "write 'foo' with red pen", the written text will be printed to the display with a CSS class that is the name of the color. For example: foo
asset_list_format
asset_list_format :String

Defined in: adventure/Settings.js, line 341

Use asset_list_format to customize printed lists of assets, such as: "On the bed you see a pillow, a blanket, and a stuffed bear." Use these placeholders to represent dynamic content.
  • Use {preposition} for the aspect
  • Use {name} for the asset name (including articles)
  • Use {we} for dynamic pronoun (or not, if you have a fixed pronoun)
  • Use {list} for the dynamic asset list
  • Use {is} to stand in for is/are depending on the number of list items
Here are some examples (though you would only use one at a time):
var MyGame = new adventurejs.Game( "MyGame", "GameDisplay" );
MyGame.settings.set({
  asset_list_format: `{Preposition} {name} {we} see {list}. `
  asset_list_format: `{Preposition} {name} {is} {list}. `
  asset_list_format: `{List} {is} {preposition} {name}. `
  asset_list_format: `{We} see {list} {preposition} {name}. `
});
auto_mount_vehicles
auto_mount_vehicles :Boolean

Defined in: adventure/Settings.js, line 762

Default value: false

If true, when player tries inputs something like "ride east on bike" while not nested on the bike, the game will attempt to nest the player automatically. Otherwise the game will return "you're not on the bike".
auto_open_containers
auto_open_containers :Boolean

Defined in: adventure/Settings.js, line 497

Default value: true

If true, if player tries to interact with an asset that is inside another, closed asset, the closed asset will be automatically opened if player is carrying any necessary Keys.
auto_open_containers_after_first_use
auto_open_containers_after_first_use :Boolean

Defined in: adventure/Settings.js, line 507

Default value: true

If true, if player tries to interact with an asset that is inside another, closed asset, the closed asset will be automatically opened, but only if player has already opened or closed that asset before, and if player is carrying any necessary Keys.
auto_pick_inferred_container
auto_pick_inferred_container :Boolean

Defined in: adventure/Settings.js, line 686

Default value: true

If true, when infer_containers results in multiple assets, automatically pick one. Otherwise prompt player to select one.
auto_pick_inferred_objects
auto_pick_inferred_objects :Boolean

Defined in: adventure/Settings.js, line 728

Default value: true

If true, when infer_objects results in multiple assets, the first found asset will be used Otherwise prompt player to select one.
auto_stand_on_travel
auto_stand_on_travel :Boolean

Defined in: adventure/Settings.js, line 745

Default value: false

If true, when player tries to travel while kneeling or sitting or lying on the floor, player will stand up automatically.
auto_take_assets
auto_take_assets :Boolean

Defined in: adventure/Settings.js, line 478

Default value: true

If true, if player tries to interact with an asset that is not carried but which needs to be carried, player will automatically pick up the asset.
auto_take_assets_after_first_use
auto_take_assets_after_first_use :Boolean

Defined in: adventure/Settings.js, line 487

Default value: true

If true, if player tries to interact with an asset that is not carried but which needs to be carried, player will automatically pick up the asset, but only if they have previously interacted with the asset.
auto_unnest_on_travel
auto_unnest_on_travel :Boolean

Defined in: adventure/Settings.js, line 737

Default value: false

If true, when player tries to travel while nested, player will auto-unnest unless prevented by circumstances.
concatenate_descriptions
concatenate_descriptions :Boolean

Defined in: adventure/Settings.js, line 833

Default value: false

When a user inputs look or examine, the game looks for a base description for the specified asset, and also looks for any modified descriptions, such as looking with a special light or through a lens or from a particular location. If a modified description is found, depending on how you write descriptions, you may want the modified description appended to the base description, or you may want the modified description to completely replace the base description. This is purely a matter of stylistic preference. See the examples below to learn more about the distinction.

Example:

Consider this chalice: it has a base description for "look" and a modified description for "look with occult candle", and it makes sense that we might want to print both.
var MyGame = new adventurejs.Game( "MyGame", "GameDisplay" );
MyGame.createAsset({
  class: "Chalice",
  name: "chalice",
  place: { in: "Treasure Room" },
  descriptions: {
    look: {
      default: "The chalice is baked from rough clay. ",
      "with occult candle":
        "The light of the candle reveals glowing runes inscribed in the clay. ",
    },
  },
});
Now consider this sword. It's set up the same way, but it's written such that we want the modified description to replace the base description entirely.
var MyGame = new adventurejs.Game( "MyGame", "GameDisplay" );
MyGame.createAsset({
  class: "Chalice",
  name: "chalice",
  place: { in: "Treasure Room" },
  descriptions: {
    look: {
      default: "It's an unremarkable steel sword. ",
      "with occult candle":
        "Seen beneath the light of the occult candle, the sword dances with eldritch flames. ",
    },
  },
});
debug
debug :Object

Defined in: adventure/Settings.js, line 129

Display debugging: control what keywords print to the display. See the available list of keywords below. Set individual properties to true to print debug messages to the display.

verbaction, verbreaction, and verbphase each represent types of hooks that authors can use to inject custom code. Enabling these will show you what hooks fire during a turn.
disambiguation_considers_last_turn
disambiguation_considers_last_turn :Boolean

Defined in: adventure/Settings.js, line 882

Default value: true

Determine whether to consider the last turn when disambiguation is required. For example, consider a room with a gold key, a silver key, and a brass key, where player inputs "take gold key", and then on the next turn inputs "unlock door with key". By default, the parser will find all three keys and prompt for disambiguation, ie "which key did you mean". But we can guess that the player probably meant the key that they just picked up.
enable_events
enable_events :Boolean

Defined in: adventure/Settings.js, line 645

Default value: true

If true, room/zone events will print. See Area Events for more information.
goto_excludes_locked_doors
goto_excludes_locked_doors :Boolean

Defined in: adventure/Settings.js, line 949

Default value: false

If true, when player inputs "go to room", if there are any unlockable doors between player and destination, goTo will fail, leaving player at their origin room. If false, goTo will partially succeed, and only take player as far as the locked door.
goto_excludes_unvisited_locations
goto_excludes_unvisited_locations :Boolean

Defined in: adventure/Settings.js, line 960

Default value: true

If true, when player inputs "go to room", if the player hasn't visited the room, goTo will fail.
goto_prints_room_descriptions
goto_prints_room_descriptions :Boolean

Defined in: adventure/Settings.js, line 968

Default value: true

If true, when player inputs "go to room", the game will print the description of each room traveled through. If false, room descriptions will be omitted in favor of simple concatenated travel messages, ex: "You go east. You go north.". Note: If the rooms player travels through print messages on enter or exit, those messages may be inserted awkwardly.
handful
handful :Number

Defined in: adventure/Settings.js, line 529

Default value: 100

Standard value for holding in hands, in ml. Generally if player tries to interact with substances without a container they're given some kind of "slips through your fingers" message but in the case of something like "throw sand" when player is on a beach, we'll let them throw a handful of sand, and if the containing object is not infinite, subtract this amount from it.
if_input_is_an_asset_name_examine_it
if_input_is_an_asset_name_examine_it :Boolean

Defined in: adventure/Settings.js, line 425

Default value: true

If true, when player enters just a noun, treat it as if player typed "examine x". Otherwise play dumb.
if_input_is_empty_print_room_description
if_input_is_empty_print_room_description :Boolean

Defined in: adventure/Settings.js, line 298

Default value: false

If true, when player enters a blank line, treat it as if player typed "look". Otherwise play dumb.
if_input_is_empty_print_this
if_input_is_empty_print_this :*

Defined in: adventure/Settings.js, line 307

if_input_is_empty_print_this can return string or array or function.
if_parser_has_no_response_print_this
if_parser_has_no_response_print_this :Boolean

Defined in: adventure/Settings.js, line 313

When the parser can't understand a player's input, it prints a generic statement using this string. The statement is also used in some other arbitrary places, which is to say, players may see it a lot. If you would like to customize this output you can do so by setting this property to your preferred output and including {input} as a token to be replaced with the player's input. For example:
MyGame.settings.set({
  if_parser_has_no_response_print_this: "I didn't understand {input}. ",
});
This example wraps the player's input in an <em> element so that it can be styled differently from the rest of the output. This isn't required and you can omit the <em> if you prefer. And in fact you don't even need to include the original input if you prefer not to. Just omit {input} from your string and the string will be printed as you set it.

if_parser_has_no_response_print_this supports the use of getStringArrayFunction meaning that you can vary it up if you like by setting it to a rotating array of strings or a contextually aware function.
if_room_is_dark_print_this
if_room_is_dark_print_this :Boolean

Defined in: adventure/Settings.js, line 413

If the current room is dark, print this instead of a room description.
if_verb_is_unknown_print_this
if_verb_is_unknown_print_this :Boolean

Defined in: adventure/Settings.js, line 400

If the player uses a word that is not known to the parser, print this error message back to the player. Include {word} to print the word back to the player.

if_verb_is_unknown_print_this supports the use of getStringArrayFunction meaning that you can vary it up if you like by setting it to a rotating array of strings or a contextually aware function.
if_word_is_common_print_this
if_word_is_common_print_this :Boolean

Defined in: adventure/Settings.js, line 366

If the player uses a word that is not known to the parser, but listed in game.dictionary.common_words, print this error message back to the player. Include {word} to print the unknown word back to the player.

The idea behind this is that players may use words which could reasonably expect to be recognized, even if the author hasn't used them - words like mother and father, street and alley, nurse and doctor, cellar and attic, etc – and this lets the author return a different response than the one for a completely unknown word. It's purely a matter of preference.

if_word_is_common_print_this supports the use of getStringArrayFunction meaning that you can vary it up if you like by setting it to a rotating array of strings or a contextually aware function.
if_word_is_unknown_print_this
if_word_is_unknown_print_this :Boolean

Defined in: adventure/Settings.js, line 387

If the player uses a word that is not known to the parser, print this error message back to the player. Include {word} to print the word back to the player.

if_word_is_unknown_print_this supports the use of getStringArrayFunction meaning that you can vary it up if you like by setting it to a rotating array of strings or a contextually aware function.
include_contents_in_roomdocks
include_contents_in_roomdocks :Boolean

Defined in: adventure/Settings.js, line 1052

Default value: true

If true and game is using roomdocks, room contents will be printed to the dock description.
include_exits_in_roomdocks
include_exits_in_roomdocks :Boolean

Defined in: adventure/Settings.js, line 1044

Default value: true

If true and game is using roomdocks, room exits will be printed to the dock description.
infer_containers
infer_containers :Boolean

Defined in: adventure/Settings.js, line 654

Default value: true

If true, some verbs, on receiving input of sentence structure "verb substance" may infer a substance container if one is required and player is carrying it. This pattern is intended to help with situations where the player may input something like "drink water" without specifying a container. If the player is carrying a glass of water, the game can infer it instead of prompting the player for an object, which may seem obnoxious in some circumstances.
infer_containers_prefers_reservoir
infer_containers_prefers_reservoir :Boolean

Defined in: adventure/Settings.js, line 669

Default value: true

If player inputs something like "throw rock at water", the word "water" may be ambiguous because multiple water containers are present: a glass of water, a bottle of water, a lake. If any of those containers is a body of water like a lake or ocean, we can probably assume that the player meant "throw rock in lake". If infer_containers_prefers_reservoir is true, the verb throw's logic will make that assumption, rather than prompting player to specify an indirect object.
infer_objects
infer_objects :Boolean

Defined in: adventure/Settings.js, line 695

Default value: true

If true, some verbs, on receiving input of sentence structure "verb noun" may infer an indirect object if one is required and player is carrying it. This pattern is intended chiefly for locks and keys, with the idea being that if player inputs "unlock door" while carrying a door key, the game can infer the door key instead of prompting the player for a key, which may seem obnoxious in some circumstances. It works with lock / unlock, seal / unseal, open / close, and some others.
known_by_all_players
known_by_all_players :Boolean

Defined in: adventure/Settings.js, line 903

Default value: true

If true, when an asset becomes known, it will be known by all player characters. Only useful when using player character switching.
log
log :Object

Defined in: adventure/Settings.js, line 67

Console logging: control what keywords log to console. Warnings and Errors will print regardless of settings. See the available list of keywords below. Set false to remove those from console output.

Set log.all to true to log all keywords.

this.log = {
  • all: false,
  • character: false,
  • copyoperations: false ,
  • debug: false,
  • dictionary: false,
  • display: false,
  • exit: false,
  • game: false,
  • parser: false,
  • print: false,
  • room: false,
  • substanceemitter: false,
  • substancemixer: false,
  • tangible: false,
  • travel: false,
  • utility: false,
  • verb: false,
  • verbaction: false,
  • verbreaction: false,
  • verbphase: false,
  • vessel: false,
};
log_level
log_level :Number

Defined in: adventure/Settings.js, line 44

Default value: 1

Console logging: control the types of statements that print to console. Useful for debugging. 0 = critical ( warnings & errors only ) 1 = high 2 = medium 3 = low
log_trace_level
log_trace_level :Number

Defined in: adventure/Settings.js, line 56

Default value: 0

Trace log statements: control which log levels call console.trace() Useful for debugging.
max_level_of_modified_descriptions_to_stack
max_level_of_modified_descriptions_to_stack :int

Defined in: adventure/Settings.js, line 980

Default value: 1

This is a subtle and complex setting. Description modifiers allow authors to provide alternate descriptions for assets when they are seen in certain conditions, such as when wearing x-ray specs, or under a black light, or from a particular location. It's even possible for authors to create complex modifiers that require two or more conditions, such as when wearing the x-ray specs AND under the black light. The logic that determines when to print these descriptions can stack them, or not, depending on this setting, which is to say, if it finds three separate descriptions whose conditions are all met, it may print them all, or only one.

For example, let's say that "through x-ray specs" and "with black light" are two separate modifiers. If max_level_of_modified_descriptions_to_stack is 0, only the first one found will be printed. If max_level_of_modified_descriptions_to_stack is 1, both descriptions will be printed.

On the other hand, let's say the author has set "through x-ray specs, with black light" as a third option. It's one combined modifier with two clauses, that is only satisfied if both conditions are tru. If max_level_of_modified_descriptions_to_stack is 0 or 1, only the combined description will be printed. If max_level_of_modified_descriptions_to_stack were set to 2 or higher, the description for "through x-ray specs, with black light" would print, as would any other double claused descriptions whose conditions were met.

See Description Modifiers and Advanced Descriptions for more info.
max_undos
max_undos :Number

Defined in: adventure/Settings.js, line 35

Default value: 10

Each level of undo stores a snapshot of the entire game state in memory. Raising a game's undo count will increase its memory requirements.
mouthful
mouthful :Number

Defined in: adventure/Settings.js, line 518

Default value: 100

Standard value for drinking, in ml. If player drinks from a Vessel, this is the quantity of liquid that will be removed from it (unless the Vessel has custom drink logic).
name_for_dark_rooms
name_for_dark_rooms :Boolean

Defined in: adventure/Settings.js, line 419

If the current room is dark, print this instead of a room name.
obfuscate_saves
obfuscate_saves :Boolean

Defined in: adventure/Settings.js, line 941

Default value: false

If true, text of saved game files will be obfuscated to make them non human readable.
objects_must_be_used_before_inferring
objects_must_be_used_before_inferring :Boolean

Defined in: adventure/Settings.js, line 712

Default value: false

If true, infer_objects will only be applied once a player has already interacted with the direct object. This pattern is intended to prevent giving away puzzle solutions. For example, perhaps there are many keys but only one that opens a certain lock, and determining which key opens the lock is part of a puzzle. If this is set to true, it would prevent players from being able to unlock the door without trying all the keys to find the correct one.
on_floor_blocks_travel
on_floor_blocks_travel :Boolean

Defined in: adventure/Settings.js, line 754

Default value: false

If true, player will be prevented from traveling while kneeling or sitting or lying on the floor.
person
person :String

Defined in: adventure/Settings.js, line 592

The person setting allows you to change the pronouns in all of the default response strings built-in to AdventureJS. For instance, if take has a response that says You pick up the axe. you can change the word You to I in this and all other responses by setting person from SECOND to FIRST.
print_inferred
print_inferred :Boolean

Defined in: adventure/Settings.js, line 895

Default value: true

If true, the game will print inferences such as "take candy (from baby)".
print_room_contents
print_room_contents :String

Defined in: adventure/Settings.js, line 625

If print_room_contents is true, a list of room contents will be appended to room descriptions.
print_room_exits
print_room_exits :String

Defined in: adventure/Settings.js, line 618

If print_room_exits is true, a list of exits will be appended to room descriptions.
print_verbose_room_descriptions_on_first_visit
print_verbose_room_descriptions_on_first_visit :String

Defined in: adventure/Settings.js, line 638

If true, game will print brief descriptions of rooms on subsequent visits.
pronouns
pronouns :Object

Defined in: adventure/Settings.js, line 560

Default value: { FIRST: "first", PLURAL: "plural", SECOND: "second", MALE: "male", FEMALE: "female", NONBINARY: "non-binary", NONHUMAN: "non-human" }

The pronouns setting is a lookup table for use with asset.person. Pronouns are distinct from genders.
pronouns
pronouns :Object

Defined in: adventure/Settings.js, line 577

Default value: { MALE: "male", FEMALE: "female", NONBINARY: "non-binary", TRANSGENDER: "transgender", NONHUMAN: "non-human", }

The genders setting is a lookup table for use with asset.gender. Genders are distinct from pronouns.
quiet
quiet :Boolean

Defined in: adventure/Settings.js, line 921

Default value: false

This is an optional flag for authors who use random room / zone events. It's intended so that players can use verb "quiet" to suppress these random events. Whether that is respected is up to authors.
randomize_arrays_in_getStringArrayFunction
randomize_arrays_in_getStringArrayFunction :Boolean

Defined in: adventure/Settings.js, line 434

Default value: false

Todos: List properties that this applies to.

We're all about strings here. Your job as an author is to write lots and lots and lots of them. Sometimes it gets boring seeing the same string over and over again, and you just want to show some alternates. Some properties let you do that through the use of getStringArrayFunction. You can feed getStringArrayFunction a string or an array or a function (that returns a string). If you provide an array, this setting determines whether strings in the array are presented in sequence, or randomly. If this setting is true, arrays will be randomized.

For more information, see How to Use String Array Function
randomize_arrays_in_getStringArrayFunction
randomize_arrays_in_getStringArrayFunction :Boolean

Defined in: adventure/Settings.js, line 456

Default value: true

Todos: List properties that this applies to.

We're all about strings here. Your job as an author is to write lots and lots and lots of them. Sometimes it gets boring seeing the same string over and over again, and you just want to show some alternates. Some properties let you do that through the use of getStringArrayFunction. You can feed getStringArrayFunction a string or an array or a function (that returns a string). If you provide an array, this setting determines whether the array loops back to the beginning when the last item is reached. If this setting is true, arrays will be reset.

For more information, see How to Use String Array Function
respect_quiet
respect_quiet :Boolean

Defined in: adventure/Settings.js, line 932

Default value: true

If an author uses room / zone events and/or character idle events, players may use verb "quiet" to suppress them, if respect_quiet is true.
seen_by_all_players
seen_by_all_players :Boolean

Defined in: adventure/Settings.js, line 912

Default value: true

If true, when an asset becomes seen, it will be seen by all player characters. Only useful when using player character switching.
show_compass_rose_in_status
show_compass_rose_in_status :Boolean

Defined in: adventure/Settings.js, line 772

Default value: true

Set the visibility of the compass rose in the status bar.
show_disambiguation_as_ordered_list
show_disambiguation_as_ordered_list :Boolean

Defined in: adventure/Settings.js, line 238

Default value: false

If true, disambiguation prompts will present an ordered list rather than plain text.

'Disambiguation' means the player has asked for an object that could refer to multiple things, and the Parser hasn't been able to narrow it down to one object. Let's say there are three cats of different colors in the room. Normally the game would ask the player:
which cat did you mean, the orange cat, the black cat, or the piebald cat?
If this is true, prompts will look like this instead:
Which cat did you mean?
1) the orange cat
2) the black cat
3) the piebald cat
When this is done, the player can enter 1, 2, or 3 and the parser will understand their choice.

For more information about Disambiguation, see How to Disambiguate
show_room_names_in_exit_descriptions
show_room_names_in_exit_descriptions :Boolean

Defined in: adventure/Settings.js, line 196

Default value: true

If set true, Exit descriptions can include the name of the Room that the Exit leads to. (The logic for this may also consider other conditions such as whether the player knows about the other Room.) Though this is a global setting, Exits can have their own setting. Exit setting overrides global setting.
show_room_names_in_exit_descriptions_only_after_exit_has_been_used
show_room_names_in_exit_descriptions_only_after_exit_has_been_used :Boolean

Defined in: adventure/Settings.js, line 225

Default value: true

If set true, Exit descriptions can include the name of the Room that the Exit leads to once player has used the Exit. Though this is a global setting, Exits can have their own setting. Exit setting overrides global setting.
show_room_names_in_exit_descriptions_only_when_room_is_known
show_room_names_in_exit_descriptions_only_when_room_is_known :Boolean

Defined in: adventure/Settings.js, line 210

Default value: false

If set true, Exit descriptions can include the name of the Room that the Exit leads to once player knows about the destination Room. Generally player must visit a room to know about it, but there can be exceptions. Though this is a global setting, Exits can have their own setting. Exit setting overrides global setting.
states
states :Object

Defined in: adventure/Settings.js, line 550

States lookup for substances.
use_nested_verb_phase_hooks
use_nested_verb_phase_hooks :Boolean

Defined in: adventure/Settings.js, line 160

Default value: false

Verb phase hooks are called during the lifecycle of a verb and exist to give authors opportunities to inject custom code. For example, if a player inputs "swim down", these phase hooks are called: swim.doBeforeTry(), swim.doAfterTry(), swim.doBeforeSuccess(), swim.doAfterSuccess() Many verbs verbs forward to other verbs. In fact, the verb swim forwards to the verb go, which handles the majority of logic for moving through the game world. In these cases, the option exists to call phase hooks not only for the initiating verb, but for all nested verbs. For example, setting this value to true will result in "swim down" calling: swim.doBeforeTry(), go.doBeforeTry(), swim.doAfterTry(), go.doAfterTry(), swim.doBeforeSuccess(), go.doBeforeSuccess(), swim.doAfterSuccess(), go.doAfterSuccess(). The option is set to false by default. A reason why you might want to set it true is if you want to throw a broader net, so to speak, to catch a wider range of player input.
when_travel_fails_list_exits
when_travel_fails_list_exits :Boolean

Defined in: adventure/Settings.js, line 184

Default value: true

If set true, when player tries to go in a direction that hasn't got an Exit, print the current room's Exits as a reminder of what Exits are available. Though this is a global setting, Rooms can have their own setting. Room setting overrides global setting.
xz_determines_reachability
xz_determines_reachability :Boolean

Defined in: adventure/Settings.js, line 806

Default value: false

We can track the user's x/y/z position. This option sets whether x/z are considered in determining reachability. All tangible assets are created at a default position of x:0,y:0,z:0. At this position, reachability checks will always return true. Now imagine you have a dorm room with a bed and a desk, where the bed is at x:3 and the desk is across the room at x:-3. If this property is true, then their relative distance apart will be taken into account when determining reachability.
xz_determines_reachability
xz_determines_reachability :Boolean

Defined in: adventure/Settings.js, line 820

Default value: false

Todos: implement this

We can track the user's x/y/z position. This option sets whether y is considered in determining reachability. By default, all tangible assets are positioned at x:0,y:0,z:0. Now imagine you have a roof that is 2 high. If this property is true, the height of the roof will be taken into account when determining reachability of objects on the roof.