actor.rpg.sprite

rpg.actor

Documentation

A user's RPG character sprite. One record per user (rkey: self).

main record
1 example

A user's RPG character sprite. One record per user (rkey: self).

Record Key literal:self Fixed literal value

Properties

animationSpeed integer Optional

Milliseconds per frame for animation playback

minimum: 50maximum: 2000
Default: 200
columns integer Optional

Number of columns per animation cycle

minimum: 1maximum: 16
createdAt string datetime Required

When this record was first created

engine string Required

The game engine format this sprite is designed for. Determines animation interpretation.

maxLength: 50 bytes
Known values: rmmz, custom
frameHeight integer Optional

Height of a single frame in pixels (if not auto-calculated from height/rows)

minimum: 1maximum: 512
frameWidth integer Optional

Width of a single frame in pixels (if not auto-calculated from width/columns)

minimum: 1maximum: 512
frames integer Optional

Total number of animation frames

minimum: 1maximum: 64
height integer Optional

Total height of the sprite sheet in pixels

minimum: 1maximum: 4096
name string Optional

Display name for the character (optional, can differ from Bluesky display name)

maxLength: 100 bytesmaxGraphemes: 50 graphemes
rows integer Optional

Number of rows in the sprite sheet (typically 4 for directional sprites: down, left, right, up)

minimum: 1maximum: 16
spriteSheet blob Required

The sprite sheet image (PNG only). Max 10MB.

maxSize: 10.0 MB
updatedAt string datetime Optional

When this record was last modified

width integer Optional

Total width of the sprite sheet in pixels

minimum: 1maximum: 4096
View raw schema
{
  "key": "literal:self",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "spriteSheet",
      "engine",
      "createdAt"
    ],
    "properties": {
      "name": {
        "type": "string",
        "maxLength": 100,
        "description": "Display name for the character (optional, can differ from Bluesky display name)",
        "maxGraphemes": 50
      },
      "rows": {
        "type": "integer",
        "maximum": 16,
        "minimum": 1,
        "description": "Number of rows in the sprite sheet (typically 4 for directional sprites: down, left, right, up)"
      },
      "width": {
        "type": "integer",
        "maximum": 4096,
        "minimum": 1,
        "description": "Total width of the sprite sheet in pixels"
      },
      "engine": {
        "type": "string",
        "maxLength": 50,
        "description": "The game engine format this sprite is designed for. Determines animation interpretation.",
        "knownValues": [
          "rmmz",
          "custom"
        ]
      },
      "frames": {
        "type": "integer",
        "maximum": 64,
        "minimum": 1,
        "description": "Total number of animation frames"
      },
      "height": {
        "type": "integer",
        "maximum": 4096,
        "minimum": 1,
        "description": "Total height of the sprite sheet in pixels"
      },
      "columns": {
        "type": "integer",
        "maximum": 16,
        "minimum": 1,
        "description": "Number of columns per animation cycle"
      },
      "createdAt": {
        "type": "string",
        "format": "datetime",
        "description": "When this record was first created"
      },
      "updatedAt": {
        "type": "string",
        "format": "datetime",
        "description": "When this record was last modified"
      },
      "frameWidth": {
        "type": "integer",
        "maximum": 512,
        "minimum": 1,
        "description": "Width of a single frame in pixels (if not auto-calculated from width/columns)"
      },
      "frameHeight": {
        "type": "integer",
        "maximum": 512,
        "minimum": 1,
        "description": "Height of a single frame in pixels (if not auto-calculated from height/rows)"
      },
      "spriteSheet": {
        "type": "blob",
        "accept": [
          "image/png"
        ],
        "maxSize": 10000000,
        "description": "The sprite sheet image (PNG only). Max 10MB."
      },
      "animationSpeed": {
        "type": "integer",
        "default": 200,
        "maximum": 2000,
        "minimum": 50,
        "description": "Milliseconds per frame for animation playback"
      }
    }
  },
  "description": "A user's RPG character sprite. One record per user (rkey: self)."
}

Lexicon Garden

@