Skip to content

Visual Events

Sleys edited this page Sep 14, 2026 · 1 revision

Visual Events control camera behavior and advanced visual effects during an animation.

Unlike particle events, these effects are generally tied to the player, the animated entity, or the camera and may require additional client-side rendering logic.

Like every animation event, each entry uses the generic event wrapper (type, side, start/process, params). This page focuses only on the events available in this category and the parameters contained in params.

๐Ÿ’ก All events on this page are client-side unless otherwise specified.

Available Events

Event Description Required Side
camera_transition Performs a scripted camera transition. client
white_afterimage Creates a white afterimage trail behind the entity. client
entity_afterimage Creates a translucent copy of the entity as an afterimage. client
fracture_ground Creates a ground-fracturing visual effect based on an animation joint. client

Camera Transition โ€” camera_transition

Starts a scripted camera transition during the animation.

The transition consists of an entry phase, a hold phase, and an exit phase. It is entirely client-side and does not directly affect gameplay or the entity's position.

Required side: client


Parameters

Field Type Description
id String Unique identifier for the camera transition.
offset Vec3 Camera position offset.
start_yaw Float Initial camera yaw.
target_yaw Float Target camera yaw.
in_interpolation Camera Interpolation Interpolation used while entering the transition.
in_transition_time Long Duration of the entry transition.
hold_time Long Time the camera remains in the held state.
out_interpolation Camera Interpolation Interpolation used while leaving the transition.
out_transition_time Long Duration of the exit transition.
is_absolute Boolean Forces execution if another camera provider is currently active.

๐Ÿ“„ Example

"in_time_events": [
  {
    "type": "camera_transition",
    "side": "client",
    "start": 0.0,
    "params": {
      "id": "lightning_spear",
      "offset": [0.8, 1.0, -1.5],
      "start_yaw": -2.5, "target_yaw": -10.0,
      "in_interpolation": "ease_in_out", "in_transition_time": 500,
      "hold_time": 1000,
      "out_interpolation": "ease_out", "out_transition_time": 350,
      "is_absolute": true
    }
  }
]

Camera Transition โ€” camera_transition

Starts a scripted camera transition during the animation.

The transition consists of an entry phase, a hold phase, and an exit phase. It is entirely client-side and does not directly affect gameplay or the entity's position.

Required side: client


Parameters

Field Type Description
id String Unique identifier for the camera transition.
offset Vec3 Camera position offset.
start_yaw Float Initial camera yaw.
target_yaw Float Target camera yaw.
in_interpolation Camera Interpolation Interpolation used while entering the transition.
in_transition_time Long Duration of the entry transition.
hold_time Long Time the camera remains in the held state.
out_interpolation Camera Interpolation Interpolation used while leaving the transition.
out_transition_time Long Duration of the exit transition.
is_absolute Boolean Forces execution if another camera provider is currently active.

๐Ÿ“„ Example

"in_time_events": [
  {
    "type": "camera_transition",
    "side": "client",
    "start": 0.0,
    "params": {
      "id": "lightning_spear",
      "offset": [0.8, 1.0, -1.5],
      "start_yaw": -2.5,
      "target_yaw": -10.0,
      "in_interpolation": "ease_in_out",
      "in_transition_time": 500,
      "hold_time": 1000,
      "out_interpolation": "ease_out",
      "out_transition_time": 350,
      "is_absolute": true
    }
  }
]

White Afterimage โ€” white_afterimage

Creates a white silhouette afterimage of the animated entity.

The event produces two visual traces:

  • a perfectly aligned afterimage of the entity
  • a secondary randomized afterimage that adds additional motion-blur-like movement

The effect is purely visual and runs on the client.

Required side: client


Parameters

This event has no parameters.


๐Ÿ“„ Example

"in_time_events": [
  {
    "type": "white_afterimage",
    "side": "client",
    "start": 0.15
  }
]

Entity Afterimage โ€” entity_afterimage

โš ๏ธ Only available on Minecraft 1.21.1.

Creates an afterimage using the entity's normal appearance instead of a white silhouette.

The effect follows the same general rendering behavior as white_afterimage, but preserves the entity's original texture, colors, and appearance.

Required side: client


Parameters

This event has no parameters.


๐Ÿ“„ Example

"in_time_events": [
  {
    "type": "entity_afterimage",
    "side": "client",
    "start": 0.15
  }
]

Fracture Ground โ€” fracture_ground

Creates a ground-fracturing visual effect around a specified animation joint.

The effect uses the selected joint's position and the animation pose at a specified time to determine where the fracture effect appears. This makes it useful for impacts, landings, slams, and other attacks where the animation itself determines the position of the effect.

Required side: client


Parameters

Field Type Description
edge Vec3 Positional offset used for the fracture effect.
joint String Animation joint used as the origin of the effect.
radius Float Radius of the fractured ground effect.
pose_time Float Animation time used to sample the joint pose.

๐Ÿ“„ Example

"in_time_events": [
  {
    "type": "fracture_ground",
    "side": "client",
    "start": 1.25,
    "params": {
      "edge": [0.0, -0.2, -2.0],
      "joint": "Root",
      "radius": 2.0,
      "pose_time": 1.2
    }
  }
]

โš ๏ธ Notes

  • These events are visual effects and do not directly modify gameplay state.
  • camera_transition operates on the player's camera and can temporarily override or interact with other camera providers.
  • white_afterimage and entity_afterimage are rendering effects generated from the animated entity.
  • entity_afterimage is currently 1.21.1-only.
  • fracture_ground uses an animation joint rather than the entity's fixed position, allowing the effect to follow the animation's pose.
  • The event's side must match the required side. Declaring these events on the server will not cause their client-side visual effects to execute.

EF: Extended Datapacks

๐Ÿ“ฆ Data

๐Ÿงฐ Core

๐Ÿ‘๏ธ Visuals

โš”๏ธ Combat

๐Ÿ—๏ธ Skill Builder

๐Ÿ› ๏ธ Innate Builder

๐Ÿ—ก๏ธ Animation Operations

โš™๏ธ Third-Party

Clone this wiki locally