A declaration that an account plays turtle meat, and optionally that it is playing right now. Written by the player's own client and not verified by anyone: nothing here affects scoring, so there is nothing to gain by lying in it. Progress that does affect scoring lives in at.turtleme.player.state, which carries a signature.
literal:self
Fixed literal value
Properties
activity
string
Optional
What the player is doing. Absent means they are not declaring a live session, only that they play.
at.turtleme.player.status#afloat, at.turtleme.player.status#fishing, at.turtleme.player.status#cookingappearOffline
boolean
Optional
Whether the player asks to be shown as offline. A record that sets it carries no activity or durationMinutes, so no reader finds a window open; the flag is here so that the choice follows the player to other clients. Absent means the same as false.
createdAt
string
datetime
Required
When the declaration was written. Client-declared and unverified.
durationMinutes
integer
Optional
How long the declared activity should be believed for, counted from createdAt. Presence expires rather than being switched off, because a browser tab that closes badly never gets to write the record that would clear it. A reader treats the player as present only while createdAt plus this duration is still in the future.
minimum: 1maximum: 1440ranked
boolean
Optional
Whether the player wants to appear on the public leaderboard. This is a request rather than a setting: what actually puts someone on the board is having published at.turtleme.player.state, and deleting that record removes them regardless of what this says.
View raw schema
{
"description": "A declaration that an account plays turtle meat, and optionally that it is playing right now. Written by the player's own client and not verified by anyone: nothing here affects scoring, so there is nothing to gain by lying in it. Progress that does affect scoring lives in at.turtleme.player.state, which carries a signature.",
"key": "literal:self",
"record": {
"properties": {
"activity": {
"description": "What the player is doing. Absent means they are not declaring a live session, only that they play.",
"knownValues": [
"at.turtleme.player.status#afloat",
"at.turtleme.player.status#fishing",
"at.turtleme.player.status#cooking"
],
"type": "string"
},
"appearOffline": {
"description": "Whether the player asks to be shown as offline. A record that sets it carries no activity or durationMinutes, so no reader finds a window open; the flag is here so that the choice follows the player to other clients. Absent means the same as false.",
"type": "boolean"
},
"createdAt": {
"description": "When the declaration was written. Client-declared and unverified.",
"format": "datetime",
"type": "string"
},
"durationMinutes": {
"description": "How long the declared activity should be believed for, counted from createdAt. Presence expires rather than being switched off, because a browser tab that closes badly never gets to write the record that would clear it. A reader treats the player as present only while createdAt plus this duration is still in the future.",
"maximum": 1440,
"minimum": 1,
"type": "integer"
},
"ranked": {
"description": "Whether the player wants to appear on the public leaderboard. This is a request rather than a setting: what actually puts someone on the board is having published at.turtleme.player.state, and deleting that record removes them regardless of what this says.",
"type": "boolean"
}
},
"required": [
"createdAt"
],
"type": "object"
},
"type": "record"
}