Actor Slots

Actor slots display characters in VN-style scenes with positioning, animations, and transitions.


How It Works

StepWhat happens
1Define slot templates in Characters > Actor Slots
2Use {actor} action to place characters in slots
3Characters render with enter animations
4Idle animations loop while displayed
5Exit animations play on removal

Features

Actor slots support:

FeatureDescription
PositioningPlace anywhere using x/y percentages, layer with z-index
TransformsScale, rotate, flip (mirror), adjust opacity and blur
Enter transitionsAnimated appearance (fade, slide, zoom, bounce, etc.)
Exit transitionsAnimated removal with same transition options
Idle animationsLooping animations while displayed (float, sway, pulse, etc.)
Filter effectsBrightness, contrast, saturation, sepia, hue rotation
AnchorsControl rotation pivot point

Adding/Removing Actors

Using Actions

ActionDescription
{actor: "my_character->my_slot"}Add character to slot
{actor: "my_character->my_slot(x=30, scale=1.2)"}Add with property overrides
{actor: "alice->left, bob->right"}Add multiple actors
{actor: "!my_character"}Remove character (with exit animation)
{actor: "!my_character(exit=fade)"}Remove with custom exit
{actor: "my_character(alpha=0.5)"}Update existing actor properties
{actor: false}Clear all actors

Example - Two characters talking:

{actor: "alice->left(enter=fadeSlideRight), bob->right(enter=fadeSlideLeft)"}

Example - Character leaves:

{actor: "!alice"}

Example - Move character to different slot:

{actor: "alice->center"}

If a character is already in the scene, using my_character->other_slot moves them smoothly to the new position.


Slot Templates

Create reusable slot positions in Characters > Actor Slots.

Common slot setup:

Slot IDxyDescription
left2050Left side of screen
center5050Center
right8050Right side of screen

Templates define default values. Inline properties override template values.


Transitions

Enter Transitions

CategoryOptions
Fadefade, dissolve, blurIn
SlideslideUp, slideDown, slideLeft, slideRight
Move InmoveInTop, moveInBottom, moveInLeft, moveInRight
Fade SlidefadeSlideUp, fadeSlideDown, fadeSlideLeft, fadeSlideRight
ZoomzoomIn, zoomOut, grow, shrink
Rotaterotate, rotateIn, rotateOut
Flipflip, flipVertical
Bouncebounce, elastic, pop

Exit Transitions

Same types available with directional variants (e.g., slideOutLeft, fadeSlideDown).

Easing Options

linear, power1, power2, power3, power4, back, elastic, bounce, circ, expo, sine


Idle Animations

Continuous looping animations while the character is displayed.

CategoryOptions
Movementfloat, bounce, hop, pan, shake, shimmy
Rotationsway, rock, rotate, nod, lean, wiggle
Scalepulse, breathe
Visualblink, glow, jitter, glitch
Combinedwave

Example - Floating character:

{actor: "ghost->center(idle=float, idle_intensity=0.8)"}

Events

Actors use the same character visual template as Character Sheet and Character Face. The character_render event applies to all contexts where a character is displayed.

EventWhen it firesParameters
character_renderBefore character layers are built(character)

Use character_render to dynamically modify character.renderedLayers before display.


Quick Reference

I want to...Do this
Add character to slot{actor: "my_character->my_slot"}
Add with animation{actor: "my_character->my_slot(enter=fade)"}
Remove character{actor: "!my_character"}
Move to new slot{actor: "my_character->other_slot"}
Update properties{actor: "my_character(alpha=0.5)"}
Flip horizontallySet mirror: true on slot
Add looping animationSet idle: "float" on slot
Clear all actors{actor: false}

Next Steps

  • Overview - Character system basics
  • Assets - Background assets for scenes