com.gamethesky.hauntthesky.house

gamethesky.com

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A haunted house somebody made in Haunt the Sky's editor and published into their own repo: one floor, its look, its name, and optionally the maker's own cast. Anyone can play it from its link; runs in it name it by a strong ref, so a house rebuilt later never changes a night already played.",
      "key": "tid",
      "record": {
        "properties": {
          "cast": {
            "description": "The maker's own Foe Booth cast, included on purpose so everyone who plays the house meets them; each photo is a public blob in the maker's repo. Looks only. Absent, players meet their own cast.",
            "items": {
              "ref": "com.gamethesky.hauntthesky.run#member",
              "type": "ref"
            },
            "maxLength": 7,
            "type": "array"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "look": {
            "description": "Whose wallpaper, floor and dark it has: the front hall's, upstairs', or the basement's.",
            "knownValues": [
              "hall",
              "upstairs",
              "basement"
            ],
            "type": "string"
          },
          "name": {
            "description": "The house's name, 60 characters at most.",
            "maxGraphemes": 60,
            "maxLength": 240,
            "type": "string"
          },
          "rows": {
            "description": "The floor as rows of tiles, all the same length, 8 to 24 across and 8 to 20 down. `#` wall, `P` wall with a portrait, `W` wall with a window, `.` floor, `S` the start (one), `D` a locked door, `K` the key (at most one), `E` the stairs out (at most one), `A` rounds, `+` a medkit, `g` a ghoul, `h` a hound, `a` a ghoul that waits for the key, `T` the Thing (at most one), `V` the one you came for (at most one). The outside is all walls. A house is won by the stairs (any doors open with the key), or, with `V`, by putting the Thing down (its doors open then) and reaching `V`; everything that matters must be reachable. A reader refuses a house that breaks these.",
            "items": {
              "maxLength": 24,
              "minLength": 8,
              "type": "string"
            },
            "maxLength": 20,
            "minLength": 8,
            "type": "array"
          }
        },
        "required": [
          "name",
          "look",
          "rows",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "com.gamethesky.hauntthesky.house",
  "lexicon": 1
}

Validate Record

Validate a record against com.gamethesky.hauntthesky.house

Validation Options
Automatically resolve and include external schemas for full validation
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:fpi7mvknwqh264gz6kug7pmk
CID
bafyreihlzydp2wsa4sqe6othrw2vrpdexve3fihlwophrltw75s2ntrc2y
Indexed At
2026-10-21 20:17 UTC
AT-URI
at://did:plc:fpi7mvknwqh264gz6kug7pmk/com.atproto.lexicon.schema/com.gamethesky.hauntthesky.house

Referenced Schemas (1)

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • One night of Haunt the Sky, published by the player into their own repo. The record stores every input rather than trusting a score: the sim is deterministic, so replaying the log on the same seed reproduces the run exa…

Lexicon Garden

@