Skip to content

MoveParty

Move the party one cell; facing follows the movement direction.

Full documentation: MoveParty. Wire type: move_party.

Legal session modes: exploring

JSON Schema

{
  "$defs": {
    "Direction": {
      "description": "The four grid directions.\n\nThe wire values are lowercase \u2014 they serialize into commands, events, and\nsaves; changing them is a `schema_version` bump.",
      "enum": [
        "north",
        "east",
        "south",
        "west"
      ],
      "title": "Direction",
      "type": "string"
    }
  },
  "description": "Move the party one cell; facing follows the movement direction.\n\nThe party must already be inside a dungeon: a fresh session starts in town, and\n[`EnterDungeon`][osrlib.crawl.commands.EnterDungeon] is what places the party at\nthe entrance and switches the session to `exploring`.\n\nModes:\n    `exploring`\n\nRejections:\n    - `session.command.wrong_mode` \u2014 the session is not exploring a dungeon.\n    - `exploration.move.cannot_move` \u2014 the party cannot move: it is overloaded,\n      or a living member is unable to walk.\n    - `exploration.move.blocked` \u2014 a wall, a closed or secret door, or the map\n      edge blocks that direction.\n\nEvents:\n    [`PartyMovedEvent`][osrlib.crawl.events.PartyMovedEvent] with the new position\n    and facing. Entering a new cell can also trigger area descriptions, keyed\n    encounters, traps, treasure discovery, wandering-monster checks, light\n    burn-down, and doors swinging shut, each reported by its own event.",
  "properties": {
    "command_type": {
      "const": "move_party",
      "default": "move_party",
      "title": "Command Type",
      "type": "string"
    },
    "direction": {
      "$ref": "#/$defs/Direction"
    }
  },
  "required": [
    "direction"
  ],
  "title": "MoveParty",
  "type": "object"
}