actor.rpg.sprite
Schema Diff
+1 -1
Compatibility Analysis
Backward Compatible
No changes detected.
1
1
{
2
2
"id": "actor.rpg.sprite",
3
3
"defs": {
4
4
"main": {
5
5
"key": "literal:self",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"spriteSheet",
11
11
"engine",
12
12
"createdAt"
13
13
],
14
14
"properties": {
15
15
"name": {
16
16
"type": "string",
17
17
"maxLength": 100,
18
18
"description": "Display name for the character (optional, can differ from Bluesky display name)",
19
19
"maxGraphemes": 50
20
20
},
21
21
"rows": {
22
22
"type": "integer",
23
23
"maximum": 16,
24
24
"minimum": 1,
25
25
"description": "Number of rows in the sprite sheet (typically 4 for directional sprites: down, left, right, up)"
26
26
},
27
27
"width": {
28
28
"type": "integer",
29
29
"maximum": 4096,
30
30
"minimum": 1,
31
31
"description": "Total width of the sprite sheet in pixels"
32
32
},
33
33
"engine": {
34
34
"type": "string",
35
35
"maxLength": 50,
36
36
"description": "The game engine format this sprite is designed for. Determines animation interpretation.",
37
37
"knownValues": [
38
38
"rmmz",
39
39
"custom"
40
40
]
41
41
},
42
42
"frames": {
43
43
"type": "integer",
44
44
"maximum": 64,
45
45
"minimum": 1,
46
46
"description": "Total number of animation frames"
47
47
},
48
48
"height": {
49
49
"type": "integer",
50
50
"maximum": 4096,
51
51
"minimum": 1,
52
52
"description": "Total height of the sprite sheet in pixels"
53
53
},
54
54
"columns": {
55
55
"type": "integer",
56
56
"maximum": 16,
57
57
"minimum": 1,
58
58
"description": "Number of columns per animation cycle"
59
59
},
60
60
"createdAt": {
61
61
"type": "string",
62
62
"format": "datetime",
63
63
"description": "When this record was first created"
64
64
},
65
65
"updatedAt": {
66
66
"type": "string",
67
67
"format": "datetime",
68
68
"description": "When this record was last modified"
69
69
},
70
70
"frameWidth": {
71
71
"type": "integer",
72
72
"maximum": 512,
73
73
"minimum": 1,
74
74
"description": "Width of a single frame in pixels (if not auto-calculated from width/columns)"
75
75
},
76
76
"frameHeight": {
77
77
"type": "integer",
78
78
"maximum": 512,
79
79
"minimum": 1,
80
80
"description": "Height of a single frame in pixels (if not auto-calculated from height/rows)"
81
81
},
82
82
"spriteSheet": {
83
83
"type": "blob",
84
84
"accept": [
85
85
"image/png"
86
86
],
87
87
"maxSize": 10000000,
88
88
"description": "The sprite sheet image (PNG only). Max 10MB."
89
89
},
90
90
"animationSpeed": {
91
91
"type": "integer",
92
92
"default": 200,
93
93
"maximum": 2000,
94
94
"minimum": 50,
95
95
"description": "Milliseconds per frame for animation playback"
96
96
}
97
97
}
98
98
},
99
99
"description": "A user's RPG character sprite. One record per user (rkey: self)."
100
100
}
101
101
},
102
102
"$type": "com.atproto.lexicon.schema",
103
103
"lexicon": 1,
104
-
"description": "A sprite sheet for an RPG character avatar. Contains the image blob and metadata for animating the character in various game engines."
104
+
"description": "A sprite sheet for an RPG character avatar."
105
105
}