Hi Gamepedia users and contributors! Please complete this survey to help us learn how to better meet your needs in the future. We have one for editors and readers. This should only take about 7 minutes!

Bedrock Edition schemas documentation

From Minecraft Wiki
Jump to: navigation, search
Information icon.svg
This feature is exclusive to Bedrock Edition.

This is the schemas documentation for Bedrock Edition 1.13.0.

Version: 1.13.0.34

Overview[edit]

These are the data format schemas for content creators to reference when editing or creating new content.

Schemas[edit]

actor_animation:1.8.0:{
	version "format_version"[1,4294967295]
	object "animations"[1,4294967295]
	{
		object "animation.<identifier>"[1,4294967295]
		{
			bool "loop"[1,4294967295] : opt // should this animation loop or stop playing when finished
			molang "anim_time_update"[1,4294967295] : opt // how does time pass when playing the animation.  Defaults to "query.anim_time + query.delta_time" which means advance in seconds.
			molang "blend_weight"[1,4294967295] : opt
			bool "override_previous_animation"[1,4294967295] : opt // reset bones in this animation to the default pose before applying this animation
			object "bones"[1,4294967295] : opt
			{
				object "<identifier>"[1,4294967295]
				{
					object "relative_to"[1,4294967295] : opt
					{
						string "rotation"[1,4294967295] : opt // if set, makes the bone rotation relative to the entity instead of the bone's parent
					}
					molang "position"[1,4294967295] : opt
					object "position"[1,4294967295] : opt
					{
						object "<any array element>(.<any array element>)?"[1,4294967295]
						{
							string "lerp_mode"[1,4294967295] : opt
							array "pre"[3] : opt
							{
								molang "<any array element>"[1,4294967295]
							}
							array "post"[3] : opt
							{
								molang "<any array element>"[1,4294967295]
							}
						}
						array "<any array element>(.<any array element>)?"[3]
						{
							molang "<any array element>"[1,4294967295]
						}
					}
					array "position"[3] : opt
					{
						molang "<any array element>"[1,4294967295]
					}
					molang "rotation"[1,4294967295] : opt
					array "rotation"[3] : opt
					{
						molang "<any array element>"[1,4294967295]
					}
					object "rotation"[1,4294967295] : opt
					{
						object "<any array element>(.<any array element>)?"[1,4294967295]
						{
							string "lerp_mode"[1,4294967295] : opt
							array "pre"[3] : opt
							{
								molang "<any array element>"[1,4294967295]
							}
							array "post"[3] : opt
							{
								molang "<any array element>"[1,4294967295]
							}
						}
						array "<any array element>(.<any array element>)?"[3]
						{
							molang "<any array element>"[1,4294967295]
						}
					}
					molang "scale"[1,4294967295] : opt
					object "scale"[1,4294967295] : opt
					{
						object "<any array element>(.<any array element>)?"[1,4294967295]
						{
							string "lerp_mode"[1,4294967295] : opt
							array "pre"[3] : opt
							{
								molang "<any array element>"[1,4294967295]
							}
							array "post"[3] : opt
							{
								molang "<any array element>"[1,4294967295]
							}
						}
						array "<any array element>(.<any array element>)?"[3]
						{
							molang "<any array element>"[1,4294967295]
						}
					}
					array "scale"[3] : opt
					{
						molang "<any array element>"[1,4294967295]
					}
				}
			}
			object "particle_effects"[1,4294967295] : opt
			{
				array "<any array element>(.<any array element>)?"[1,4294967295] : opt
				{
					object "<any array element>"[1,4294967295] : opt
					{
						string "effect"[1,4294967295]
						string "locator"[1,4294967295] : opt
						molang "pre_effect_script"[1,4294967295] : opt
					}
				}
				object "<any array element>(.<any array element>)?"[1,4294967295] : opt
				{
					string "effect"[1,4294967295]
					string "locator"[1,4294967295] : opt
					molang "pre_effect_script"[1,4294967295] : opt
				}
			}
			object "timeline"[1,4294967295] : opt
			{
				string "<any array element>(.<any array element>)?"[1,4294967295] : opt
				array "<any array element>(.<any array element>)?"[1,4294967295] : opt
				{
					string "<any array element>"[1,4294967295] : opt
				}
			}
			float "animation_length"[1,4294967295] : opt // override calculated value (set as the last keyframe time) and set animation length in seconds.
		}
	}
}

actor_animation_controller:1.8.0:{
	version "format_version"[1,4294967295]
	object "animation_controllers"[1,4294967295]
	{
		object "controller.animation.<identifier>"[1,4294967295]
		{
			object "states"[1,4294967295]
			{
				object "<identifier>"[1,4294967295]
				{
					array "parameters"[1,4294967295] : opt
					{
						string "<any array element>"[1,4294967295]
					}
					array "animations"[1,4294967295] : opt
					{
						object "<any array element>"
						{
							array "<identifier>"[0,4294967295]
							{
								object "<any array element>"[1,4294967295] : opt
								{
									float "<any array element>(.<any array element>)?"[1,4294967295] : opt
								}
							}
						}
					}
					array "transitions"[1,4294967295] : opt
					{
						object "<any array element>" : opt
						{
							molang "<identifier>"[1,4294967295]
						}
					}
					array "particle_effects"[1,4294967295] : opt
					{
						object "<any array element>"[1,4294967295] : opt
						{
							string "effect"[1,4294967295]
							string "locator"[1,4294967295] : opt
							string "pre_effect_script"[1,4294967295] : opt
						}
					}
					array "on_entry"[1,4294967295] : opt
					{
						string "<any array element>"[1,4294967295] : opt
					}
					array "on_exit"[1,4294967295] : opt
					{
						string "<any array element>"[1,4294967295] : opt
					}
				}
			}
			string "initial_state"[1,4294967295] : opt
		}
	}
}

actor_animation_controller:1.10.0:{
	version "format_version"[1,4294967295]
	object "animation_controllers"[1,4294967295]
	{
		object "controller.animation.<identifier>"[1,4294967295]
		{
			object "states"[1,4294967295]
			{
				object "<identifier>"[1,4294967295]
				{
					object "variables"[1,4294967295] : opt
					{
						object "<identifier>"[1,4294967295]
						{
							molang "input"[1,4294967295]
							object "remap_curve"[1,4294967295]
							{
								float "<any array element>(.<any array element>)?"[1,4294967295]
							}
						}
					}
					array "animations"[1,4294967295] : opt
					{
						string "<any array element>"[1,4294967295]
						object "<any array element>"[1,4294967295]
						{
							molang "<identifier>"[1,4294967295]
						}
					}
					array "transitions"[1,4294967295] : opt
					{
						object "<any array element>" : opt
						{
							string "<identifier>"[1,4294967295]
						}
					}
					object "blend_transition"[1,4294967295] : opt // Specifies the cross-fade time in seconds when transitioning to another state
					{
						float "<identifier>"[1,4294967295] // Mapping of time since the animation was canceled, to the blend value at that time.  A default key of time=0 to a blend value of 1.0 is provided if any other key is set and a blend value at time=0 hasn't already been set.
					}
					float "blend_transition"[1,4294967295] : opt // A short-hand version of blend_out that simply sets the amount of time to fade out if the animation is interrupted
					array "particle_effects"[1,4294967295] : opt
					{
						object "<any array element>"[1,4294967295] : opt
						{
							string "effect"[1,4294967295]
							string "locator"[1,4294967295] : opt
							string "pre_effect_script"[1,4294967295] : opt
						}
					}
					array "on_entry"[1,4294967295] : opt
					{
						string "<any array element>"[1,4294967295] : opt
					}
					array "on_exit"[1,4294967295] : opt
					{
						string "<any array element>"[1,4294967295] : opt
					}
				}
			}
			string "initial_state"[1,4294967295] : opt
		}
	}
}

actor_resource_definition:1.8.0:{
	version "format_version"[1,4294967295]
	object "minecraft:(client_entity|attachable)"[1,4294967295]
	{
		object "description"[1,4294967295]
		{
			string "identifier"[1,4294967295]
			version "min_engine_version"[1,4294967295] : opt
			object "materials"[1,4294967295] : opt
			{
				string "<identifier>"[1,4294967295]
			}
			object "textures"[1,4294967295] : opt
			{
				string "<identifier>"[1,4294967295]
			}
			object "geometry"[1,4294967295]
			{
				string "<identifier>"[1,4294967295]
			}
			object "spawn_egg"[1,4294967295] : opt
			{
				string "texture"[1,4294967295] : opt
				string "base_color"[1,4294967295] : opt
				string "overlay_color"[1,4294967295] : opt
				int "texture_index"[1,4294967295] : opt
			}
			object "scripts"[1,4294967295] : opt
			{
				array "pre_animation"[1,4294967295] : opt
				{
					molang "<any array element>"[1,4294967295]
				}
				molang "scale"[1,4294967295] : opt
				molang "scale[xX]"[1,4294967295] : opt
				molang "scale[yY]"[1,4294967295] : opt
				molang "scale[zZ]"[1,4294967295] : opt
			}
			object "particle_effects"[1,4294967295] : opt
			{
				string "<identifier>"[1,4294967295] : opt
			}
			object "particle_emitters"[1,4294967295] : opt
			{
				string "<identifier>"[1,4294967295] : opt
			}
			object "animations"[1,4294967295] : opt
			{
				string "<identifier>"[1,4294967295] : opt
			}
			array "animation_controllers"[1,4294967295] : opt
			{
				object "<any array element>"[1,4294967295] : opt
				{
					string "<identifier>"[1,4294967295] : opt
				}
			}
			array "render_controllers"[1,4294967295] : opt
			{
				string "<any array element>"[1,4294967295] : opt
			}
			bool "enable_attachables"[1,4294967295] : opt
		}
	}
}

actor_resource_definition:1.10.0:{
	version "format_version"[1,4294967295]
	object "minecraft:(client_entity|attachable)"[1,4294967295]
	{
		object "description"[1,4294967295]
		{
			string "identifier"[1,4294967295]
			version "min_engine_version"[1,4294967295] : opt
			object "materials"[1,4294967295] : opt
			{
				string "<identifier>"[1,4294967295]
			}
			object "textures"[1,4294967295] : opt
			{
				string "<identifier>"[1,4294967295]
			}
			object "geometry"[1,4294967295]
			{
				string "<identifier>"[1,4294967295]
			}
			object "spawn_egg"[1,4294967295] : opt
			{
				string "texture"[1,4294967295] : opt
				string "base_color"[1,4294967295] : opt
				string "overlay_color"[1,4294967295] : opt
				int "texture_index"[1,4294967295] : opt
			}
			object "scripts"[1,4294967295] : opt
			{
				array "pre_animation"[1,4294967295] : opt
				{
					molang "<any array element>"[1,4294967295]
				}
				molang "scale"[1,4294967295] : opt
				molang "scale[xX]"[1,4294967295] : opt
				molang "scale[yY]"[1,4294967295] : opt
				molang "scale[zZ]"[1,4294967295] : opt
				array "animate"[1,4294967295] : opt
				{
					string "<any array element>"[1,4294967295] : opt
					object "<any array element>"[1,4294967295] : opt
					{
						molang "<scope_identifier>"[1,4294967295] : opt
					}
				}
			}
			object "particle_effects"[1,4294967295] : opt
			{
				string "<identifier>"[1,4294967295] : opt
			}
			object "particle_emitters"[1,4294967295] : opt
			{
				string "<identifier>"[1,4294967295] : opt
			}
			object "animations"[1,4294967295] : opt
			{
				string "<identifier>"[1,4294967295] : opt
			}
			array "animation_controllers"[1,4294967295] : opt
			{
				object "<any array element>"[1,4294967295] : opt
				{
					string "<identifier>"[1,4294967295] : opt
				}
			}
			array "render_controllers"[1,4294967295] : opt
			{
				string "<any array element>"[1,4294967295] : opt
			}
			bool "enable_attachables"[1,4294967295] : opt
		}
	}
}

render_controller:1.8.0:{
	version "format_version"[1,4294967295]
	object "render_controllers"[1,4294967295]
	{
		object "controller.render.<scope_identifier>"[1,4294967295]
		{
			bool "rebuild_animation_matrices"[1,4294967295] : opt
			object "arrays"[1,4294967295] : opt
			{
				object "geometries"[1,4294967295] : opt
				{
					array "array.<scope_identifier>"[1,4294967295]
					{
						string "<any array element>"[1,4294967295]
					}
				}
				object "materials"[1,4294967295] : opt
				{
					array "array.<scope_identifier>"[1,4294967295]
					{
						string "<any array element>"[1,4294967295]
					}
				}
				object "textures"[1,4294967295] : opt
				{
					array "array.<scope_identifier>"[1,4294967295]
					{
						string "<any array element>"[1,4294967295]
					}
				}
			}
			string "geometry"[1,4294967295]
			array "part_visibility"[1,4294967295] : opt
			{
				object "<any array element>"[1,4294967295]
				{
					molang "[a-zA-Z0-9_.:*]+"[1,4294967295]
				}
			}
			array "materials"[1,4294967295] : opt
			{
				object "<any array element>"[1,4294967295]
				{
					molang "[a-zA-Z0-9_.:*]+"[1,4294967295]
				}
			}
			array "textures"[1,4294967295] : opt
			{
				string "<any array element>"[1,4294967295]
			}
			object "color"[1,4294967295] : opt
			{
				molang "r"[1,4294967295] : opt
				molang "g"[1,4294967295] : opt
				molang "b"[1,4294967295] : opt
				molang "a"[1,4294967295] : opt
			}
			object "overlay_color"[1,4294967295] : opt
			{
				molang "r"[1,4294967295] : opt
				molang "g"[1,4294967295] : opt
				molang "b"[1,4294967295] : opt
				molang "a"[1,4294967295] : opt
			}
			object "uv_anim"[1,4294967295] : opt
			{
				array "offset"[2]
				{
					molang "<any array element>"[1,4294967295]
				}
				array "scale"[2]
				{
					molang "<any array element>"[1,4294967295]
				}
			}
			molang "light_color_multiplier"[1,4294967295] : opt
			bool "ignore_lighting"[1,4294967295] : opt
		}
	}
}

geometry:1.1.0:{
	version "format_version"[1,4294967295]
	object "geometry.<scope_identifier>"[0,4294967295]
	{
		float "visible_bounds_width"[1,4294967295] : opt
		float "visible_bounds_height"[1,4294967295] : opt
		array "visible_bounds_offset"[3] : opt
		{
			float "<any array element>"[1,4294967295]
		}
		int "texturewidth"[1,4294967295] : opt
		int "textureheight"[1,4294967295] : opt
		array "bones"[1,4294967295] : opt
		{
			object "<any array element>"[1,4294967295]
			{
				string "name"[1,4294967295]
				bool "reset"[1,4294967295] : opt
				bool "neverRender"[1,4294967295] : opt
				string "parent"[1,4294967295] : opt
				array "pivot"[3] : opt
				{
					float "<any array element>"[1,4294967295]
				}
				array "rotation"[3] : opt
				{
					float "<any array element>"[1,4294967295]
				}
				array "bind_pose_rotation"[3] : opt
				{
					float "<any array element>"[1,4294967295] : opt
				}
				bool "mirror"[1,4294967295] : opt
				float "inflate"[1,4294967295] : opt
				bool "debug"[1,4294967295] : opt
				array "cubes"[0,4294967295] : opt
				{
					object "<any array element>"[1,4294967295] : opt
					{
						array "origin"[3] : opt
						{
							float "<any array element>"[1,4294967295]
						}
						array "size"[3] : opt
						{
							float "<any array element>"[1,4294967295]
						}
						array "uv"[2] : opt
						{
							float "<any array element>"[1,4294967295]
						}
						float "inflate"[1,4294967295] : opt
						bool "mirror"[1,4294967295] : opt
					}
				}
				object "locators"[1,4294967295] : opt
				{
					array "<identifier>"[1,4294967295] : opt
					{
						float "<any array element>"[1,4294967295] : opt
					}
				}
				object "poly_mesh"[1,4294967295] : opt // ***EXPERIMENTAL*** A triangle or quad mesh object.  Can be used in conjunction with cubes and texture geometry.
				{
					array "normalized_uvs"[1,4294967295] : opt // If true, UVs are assumed to be [0-1].  If false, UVs are assumed to be [0-texture_width] and [0-texture_height] respectively.
					array "positions"[1,4294967295] : opt
					{
						array "<any array element>"[3] : opt
						{
							float "<any array element>"[1,4294967295] // Vertex positions for the mesh.  Can be either indexed via the "polys" section, or be a quad-list if mapped 1-to-1 to the normals and UVs sections.
						}
					}
					array "normals"[1,4294967295] : opt
					{
						array "<any array element>"[3] : opt
						{
							float "<any array element>"[1,4294967295] // Vertex normals.  Can be either indexed via the "polys" section, or be a quad-list if mapped 1-to-1 to the positions and UVs sections.
						}
					}
					array "uvs"[1,4294967295] : opt
					{
						array "<any array element>"[2] : opt
						{
							float "<any array element>"[1,4294967295] // Vertex UVs.  Can be either indexed via the "polys" section, or be a quad-list if mapped 1-to-1 to the positions and normals sections.
						}
					}
					array "polys"[1,4294967295]
					{
						array "<any array element>"[3,4] : opt
						{
							array "<any array element>"[3]
							{
								float "<any array element>"[1,4294967295] // Poly element indices, as an array of polygons, each an array of either three or four vertices, each an array of indices into positions, normals, and UVs (in that order).
							}
						}
					}
					string "polys"[1,4294967295] // If not specifying vertex indices, arrays of data must be a list of tris or quads, set by making this property either "tri_list" or "quad_list"
				}
				array "texture_meshes"[1,4294967295] : opt // ***EXPERIMENTAL*** Adds a mesh to the bone's geometry by converting texels in a texture into boxes
				{
					object "<any array element>"[1,4294967295]
					{
						string "texture"[1,4294967295] // The friendly-named texture to use.
						array "offset"[3] : opt
						{
							float "<any array element>"[1,4294967295] // The offset (in entity space not bone space) of the texture geometry
						}
						array "rotation"[3] : opt
						{
							float "<any array element>"[1,4294967295] // The rotation (in degrees) of the texture geometry relative to the offset
						}
					}
				}
			}
		}
	}
}

See also[edit]