Skip to content

Export support and limitations

Check which BDEngine features appear in Server API exports, the publication size limit, and the resources and runtime behavior your integration must provide.

Server API delivers data prepared by the editor’s server exporter. A feature being available in BDEngine does not mean its complete in-game behavior is included in this JSON. The following describes the current exporter.

What is included

Feature Data location Conditions
Blocks, items, and text as displays passengers Exportable visual parts of the scene
Visual transforms and properties SNBT in passengers Depend on the object and target Minecraft version
Display animation, including supported property changes datapack.anim_keyframes Export from Animator
Sound events datapack.sound_keyframes Full export with nonempty sound sequences
Initial hitboxes hitbox Full export containing hitboxes
Hitbox animation datapack.anim_keyframes Corresponding keyframes exist
Sequence durations and time steps meta.animations, meta.sounds Metadata for the corresponding frame sets
Minecraft version and export mode version, type Added by the exporter

type: "full" identifies a mode that can include additional data. It does not guarantee that the scene contains animations, sounds, or hitboxes.

Exclusions and publication size

Real structures. Server export does not support real structure blocks. If the project contains a structure to export, the editor suggests using a data pack.

Separate group origins. Exporting a model split into parts with separate origins is not supported by this method. Use a data pack for that mode.

Custom .mcfunction files. Custom function files and their registration in load/tick are not included in server JSON. However, a timeline command’s text may appear in frames. If it calls a custom function, the presence of the command does not mean the function body has also been provided.

Editor helper objects. Built-in bde:oak_boat and bde:player_model objects have no corresponding block_display representation and are rejected by the exporter. Minecraft resources referenced by displays must exist in the target environment.

Publication size. Before uploading, the editor compresses the JSON with gzip and encodes it as Base64. Publication checks a limit of 1,048,576 bytes (1 MiB) for that packed string. This is not a limit on the decoded GET response or the size of a .bdengine file. If the limit is exceeded, reduce the scene or event data and export again.

Before packing the data, the editor also checks transforms, keyframe times, head texture readiness, and the allowed processing workload. These failures occur in the editor before successful publication; they are not HTTP errors from retrieving an export.

Cameras, particles, and additional channels

Some features provide commands or resources without all the helper functions included in a data pack:

Feature What is provided What to consider
Camera animation Camera movement and parameter commands in frames Camera helper creation, player attachment, and ending camera mode are not provided as a complete mechanism
Timeline commands Command strings in the corresponding frames Your integration determines the executor, permissions, and external resources
Time of day time set commands when time animation is enabled This changes world state, not a property of an individual display
Timeline particle events particle commands in frames Initial static particle functions from the data pack are not included
Probabilistic particle group emission Commands referencing conditions and datapack.predicates.particle_chance Predicates are data; the API does not register them in Minecraft
Interaction areas and seats Creation logic and handlers are not included A hitbox does not replace these features

Use the actual response fields and account for command execution context. In the plugin method, fullProject: true switches to Animator before exporting. A value of false keeps the current mode, so an already open Animator can also produce type: "full". Check the result’s type field. This does not promise a complete data pack in JSON. Local JSON uses the same server exporter and shares these content limitations.

Choose the appropriate format

Use Server API or local JSON when you need export data for your own integration. If you need game function files and runtime behavior prepared by the editor, check the data pack features in Export compatibility and differences.

A .bdengine project is intended for continued editing. Minecraft Live Link connects the editor to a world while you work and is a separate interaction method.

Put it into practice

Retrieve project data and JSON exports from an editor plugin.