promotional bannermobile promotional banner

SchemPrint

high-speed printing

SchemPrint — Instant Print

Author: mornfrost Platform: NeoForge 1.21.1 / Java 21

Print Litematica schematics (.litematic), Create blueprints (.nbt), and vanilla structure NBT directly into the current save or server. While writing, per-block updates are suppressed; lighting and client sync are refreshed per chunk, achieving near "instant printing."

Core Features

  • Unified parsing for three formats: litematic / Create blueprint / structure NBT — all format differences are encapsulated in the parsing layer.
  • Streaming placement: No pre-reading of block lists; resident memory is independent of build volume, supporting 30 million to 3 billion blocks.
  • Paged projection: For large files, BlockStates are mapped to disk; 3 billion blocks require only about 3 GB of disk instead of 120 GB of RAM.
  • Preview: Only a region near the player is sent, rendered with real block models, with a bounding box and frame budget — no client lag.
  • UI: F9 or /schemprint ui — select schematic, rotate, XYZ offset, preview, place, undo.
  • Anchor selection: Look-at selection / coordinate selection; no longer forced to anchor at the player's center.
  • Undo: Old blocks are recorded to a disk log during writing; /schemprint undo rolls back the entire area (default cap: 100 million blocks).
  • Printing in unloaded chunks: Per-chunk temporary tickets plus disk persistence guarantee — areas with no viewers, not loaded, or even not yet generated can still be printed.
  • Version compatibility: Direct parsing → mapping table → conspicuous placeholder blocks; never silently leaves holes.
  • Modded blocks: setPlacedBy / neighbor updates are only applied to non-minecraft blocks; vanilla builds incur zero overhead.
  • Fallback mode: When the target server does not have this mod installed, blocks can be sent to specified players as client-side-only updates.

Common Commands

  • /schemprint load <file> [format] — Load a schematic (place it in config/schemprint/schematics/)
  • /schemprint anchor — Look-at anchor selection; anchor <x> <y> <z> / anchor clear
  • /schemprint preview <name> [angle] — Preview
  • /schemprint place <name> [angle] — Place at the anchor; place <name> <x> <y> <z> to specify coordinates
  • /schemprint status — Progress and remaining time
  • /schemprint inspect — Post-placement self-check: compare the world against the schematic
  • /schemprint undo [confirm|discard] — Roll back the most recent print
  • /schemprint cancel — Cancel the task (saves to disk first)

Expected Scale

By default, 200,000 blocks are written per tick, with a single-tick cap of 8 ms: 30 million blocks in about 10 seconds, 300 million in about 1.5 minutes, 3 billion in about 15 minutes (world generation not included).

SchemPrint Team

profile avatar
  • 16
    Projects
  • 484
    Downloads

More from mornfireView all