A chart included in a game hosting leaderboards via Tsunagite.
any
Any valid record key
Properties
createdAt
string
datetime
Optional
An RFC 3339 formatted timestamp.
difficulty
union
Required
The difficulty slot this chart is placed in. Can be an inline definition or a reference to a standard-defined difficulty slot.
game
string
at-uri
Required
The game this chart is included in. URI must point to a record of type `dev.tsunagite.game`.
jacket
blob
Optional
The jacket or banner art of this chart, for display in UI. Will fall back to the song jacket if not present
maxSize: 8.0 MBjacketArtist
ref
dev.tsunagite.translatable
Optional
The name of the jacket artist for this chart.
rankedVersions
array
of
bytes
Optional
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.
rating
string
Required
The numeric difficulty rating displayed to players, formatted as a string to support decimal or + difficulties.
song
string
at-uri
Required
The song this chart is for. URI must point to a record of type `dev.tsunagite.song`.
updatedAt
string
datetime
Optional
An RFC 3339 formatted timestamp.
View raw schema
{
"key": "any",
"type": "record",
"record": {
"type": "object",
"required": [
"game",
"song",
"difficulty",
"rating"
],
"properties": {
"game": {
"type": "string",
"format": "at-uri",
"description": "The game this chart is included in. URI must point to a record of type `dev.tsunagite.game`."
},
"song": {
"type": "string",
"format": "at-uri",
"description": "The song this chart is for. URI must point to a record of type `dev.tsunagite.song`."
},
"jacket": {
"type": "blob",
"accept": [
"image/png",
"image/jpeg",
"image/jxl",
"image/webp"
],
"maxSize": 8000000,
"description": "The jacket or banner art of this chart, for display in UI. Will fall back to the song jacket if not present"
},
"rating": {
"type": "string",
"description": "The numeric difficulty rating displayed to players, formatted as a string to support decimal or + difficulties."
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"updatedAt": {
"type": "string",
"format": "datetime"
},
"difficulty": {
"refs": [
"dev.tsunagite.difficulty",
"dev.tsunagite.defs#typedRef"
],
"type": "union",
"description": "The difficulty slot this chart is placed in. Can be an inline definition or a reference to a standard-defined difficulty slot."
},
"jacketArtist": {
"ref": "dev.tsunagite.translatable",
"type": "ref",
"description": "The name of the jacket artist for this chart."
},
"rankedVersions": {
"type": "array",
"items": {
"type": "bytes",
"maxLength": 16,
"minLength": 16
},
"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."
}
}
},
"description": "A chart included in a game hosting leaderboards via Tsunagite."
}