Here you can compile a schematics definition written in Schemacode, a schema definition language, into a text representation to be pasted into Mindustry using the Import schematics... button. If your schematics contain processors, you can specify code for the processor using either Mindustry Logic or Mindcode. You can also decompile an existing schematics using the Decompiler and modify the resulting code.

Here are some examples to give you an idea how to use Schemacode:

632 lines of code

Bug reports, suggestions and questions are welcome at the project page.

  • Compiling embedded code
  • Number of reported ambiguities: 77
  • 312 instructions before optimizations.
  • 41 instructions eliminated by Temp Variables Elimination.
  • 2 instructions eliminated by Case Expression Optimization.
  • 36 instructions eliminated by Dead Code Elimination (5 iterations).
  • 1 instructions eliminated by Jump Normalization (4 iterations).
  • 14 instructions eliminated by Jump Optimization (4 iterations).
  • 10 instructions eliminated by Single Step Elimination (2 passes, 6 iterations).
  • 3 instructions modified by Expression Optimization (2 passes, 3 iterations).
  • 20 instructions eliminated by Data Flow Optimization (3 passes, 13 iterations).
  • 7 instructions modified by Loop Optimization (3 iterations).
  • 7 loops improved by Loop Optimization.
  • 743 instructions added by Loop Unrolling (6 iterations).
  • 1 loops unrolled by Loop Unrolling.
  • 9 instructions added by Function Inlining (6 iterations).
  • 2 function calls inlined by Function Inlining.
  • 70 instructions eliminated by Jump Straightening (2 passes, 4 iterations).
  • 5 instructions updated by JumpThreading.
  • 5 instructions eliminated by Unreachable Code Elimination.
  • 865 instructions after optimizations.
  • Performance: parsed in 1,326 ms, compiled in 10 ms, optimized in 1,362 ms.
  • Compiling embedded code
  • Number of reported ambiguities: 95
  • 919 instructions before optimizations.
  • 113 instructions eliminated by Temp Variables Elimination.
  • 94 instructions eliminated by Dead Code Elimination (7 iterations).
  • 7 instructions eliminated by Jump Normalization (2 passes, 4 iterations).
  • 34 instructions eliminated by Jump Optimization (4 iterations).
  • 46 instructions eliminated by Single Step Elimination (2 passes, 6 iterations).
  • 474 instructions eliminated by Data Flow Optimization (3 passes, 18 iterations).
  • 3 instructions eliminated by Loop Optimization (3 iterations).
  • 6 loops improved by Loop Optimization.
  • 612 instructions added by Loop Unrolling (5 iterations).
  • 2 loops unrolled by Loop Unrolling.
  • 1 instructions eliminated by Jump Straightening (4 iterations).
  • 8 instructions updated by JumpThreading.
  • 43 instructions eliminated by Unreachable Code Elimination.
  • 32 instructions eliminated by Print Merging.
  • 684 instructions after optimizations.
  • Performance: parsed in 637 ms, compiled in 12 ms, optimized in 619 ms.
  • Created schematic 'Mandelbrot Generator' with dimensions (20, 16).