dev.tsunagite.chart

tsunagite.dev

Schema Diff

+2 -2

From

CID
bafyreibrtw3iii3...
Indexed At
2026-01-09 19:32 UTC
View this version

To

CID
bafyreiaopkleedv...
Indexed At
2026-01-11 02:50 UTC
View this version
1 1
{
2 2
  "id": "dev.tsunagite.chart",
3 3
  "defs": {
4 4
    "main": {
5 5
      "key": "any",
6 6
      "type": "record",
7 7
      "record": {
8 8
        "type": "object",
9 9
        "required": [
10 10
          "game",
11 11
          "song",
12 12
          "difficulty",
13 13
          "rating"
14 14
        ],
15 15
        "properties": {
16 16
          "game": {
17 17
            "type": "string",
18 18
            "format": "at-uri",
19 19
            "description": "The game this chart is included in. URI must point to a record of type `dev.tsunagite.game`."
20 20
          },
21 21
          "song": {
22 22
            "type": "string",
23 23
            "format": "at-uri",
24 24
            "description": "The song this chart is for. URI must point to a record of type `dev.tsunagite.song`."
25 25
          },
26 26
          "jacket": {
27 27
            "type": "blob",
28 28
            "accept": [
29 29
              "image/png",
30 30
              "image/jpeg",
31 31
              "image/jxl",
32 32
              "image/webp"
33 33
            ],
34 34
            "maxSize": 8000000,
35 35
            "description": "The jacket or banner art of this chart, for display in UI. Will fall back to the song jacket if not present"
36 36
          },
37 37
          "rating": {
38 38
            "type": "string",
39 39
            "description": "The numeric difficulty rating displayed to players, formatted as a string to support decimal or + difficulties."
40 40
          },
41 41
          "difficulty": {
42 42
            "refs": [
43 43
              "dev.tsunagite.difficulty",
44 44
              "dev.tsunagite.types#typedRef"
45 45
            ],
46 46
            "type": "union",
47 47
            "description": "The difficulty slot this chart is placed in. Can be an inline definition or a reference to a standard-defined difficulty slot."
48 48
          },
49 49
          "jacketArtist": {
50 50
            "ref": "dev.tsunagite.translatable",
51 51
            "type": "ref",
52 52
            "description": "The name of the jacket artist for this chart."
53 53
          },
54 54
          "rankedVersions": {
55 55
            "type": "array",
56 56
            "items": {
57 57
              "type": "bytes",
58 -
              "maxLength": "16",
59 -
              "minLength": "16"
58 +
              "maxLength": 16,
59 +
              "minLength": 16
60 60
            },
61 61
            "description": "The md5 hashes of any versions of the chart that are up-to-date enough to be leaderboard-legal. Optional if you will not perform leaderboard resets upon any chart changes."
62 62
          }
63 63
        }
64 64
      },
65 65
      "description": "A chart included in a game hosting leaderboards via Tsunagite."
66 66
    }
67 67
  },
68 68
  "$type": "com.atproto.lexicon.schema",
69 69
  "lexicon": 1,
70 70
  "description": "Definitions related to charts included in games hosting leaderboards via Tsunagite."
71 71
}

Compare Other Versions

Lexicon Garden

@