Documentation / Animating Block, Item & Text Displays
PROPOSED API
API specification — not a released addon. SkCine-specific syntax shown here is proposed and must be implemented and server-tested before use.

Animating Block, Item & Text Displays

API status — PROPOSED, NOT IMPLEMENTED. SkCine is currently a design specification in this conversation; no built SkCine.jar or syntax registry was supplied. All SkCine-specific examples are intended API contracts, not verified runnable .sk. Do not advertise these as tested until each example passes a real Skript reload and runtime test.

Minecraft display entities are designed for client-interpolated visual transforms. SkCine should expose their useful properties through readable Skript syntax rather than requiring raw matrices for every animation.

Display target types

  • block display: block material/data, transform, brightness, billboard where supported.
  • item display: item stack, transform, display context, rotation.
  • text display: Adventure component, opacity/background, alignment, line width where supported.

Intended Skript example

set {_item} to new cine display actor from {_display}
set cine scale of {_item} to vector(0.5, 0.5, 0.5)
animate cine scale of {_item} to vector(1.6, 1.6, 1.6) over 30 ticks using "ease-out-back"
animate cine rotation of {_item} by 360 degrees over 4 seconds

Scene-relative groups

set {_group} to new cine display group named "loot"
add {_itemA} to cine display group {_group}
add {_itemB} to cine display group {_group}
set cine pivot of {_group} to {_center}
animate cine group {_group} to {_target} over 2 seconds

Implementation contract: local and world transform spaces must be unambiguous. Scale should not change unintended translations; pivot rotation and child transforms must compose consistently.

Constraints

  • Display teleport interpolation 0–59 ticks on Paper 1.21.11; longer animations require intermediate updates or transformation interpolation. Paper Javadoc.
  • Changing native display properties from unrelated plugins can conflict; use an ownership policy.
  • Text fading and alpha need version/capability checks.
  • Minecraft clients do not support arbitrary server-injected postprocessing.

Performance

Use server-side animation scheduling with client-side interpolation where possible. Cache group membership and object transforms; avoid per-viewer physical display duplication unless the backend truly needs it.

© 2026 DHeaven · SkCine documentation design · All scene authoring happens in Skript (.sk).