Skip to content

AdventureCompletedEvent

The adventure is over in triumph: the session is in victory.

Full documentation: AdventureCompletedEvent. Wire type: adventure_completed.

Default visibility: player

Message codes: session.adventure.completed

JSON Schema

{
  "$defs": {
    "Visibility": {
      "description": "Who may see an event.\n\nThe wire values are `\"player\"` and `\"referee\"` \u2014 lowercase, serialized into every\nevent; changing them is a `schema_version` bump.",
      "enum": [
        "player",
        "referee"
      ],
      "title": "Visibility",
      "type": "string"
    }
  },
  "description": "The adventure is over in triumph: the session is in `victory`.\n\nFollows the [`QuestCompletedEvent`][osrlib.crawl.events.QuestCompletedEvent] of\nthe quest that concludes the adventure, and carries the same completion beat.\n`name` is that quest's authored display name, defaulting empty only because an\nevent logged before the field existed still parses; the engine always fills it.\nThe transition happens once and only from a session still in play \u2014 a party that\nfinishes the job after it has already fallen completes the quest and gets no\nending event.",
  "properties": {
    "code": {
      "default": "session.adventure.completed",
      "title": "Code",
      "type": "string"
    },
    "visibility": {
      "$ref": "#/$defs/Visibility",
      "default": "player"
    },
    "event_type": {
      "const": "adventure_completed",
      "default": "adventure_completed",
      "title": "Event Type",
      "type": "string"
    },
    "quest_id": {
      "title": "Quest Id",
      "type": "string"
    },
    "name": {
      "default": "",
      "title": "Name",
      "type": "string"
    },
    "narrative": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Narrative"
    }
  },
  "required": [
    "quest_id"
  ],
  "title": "AdventureCompletedEvent",
  "type": "object"
}