- Home
- Minecraft Datapack Generators
- RedScript
RedScript
What it is
RedScript is a typed programming language and toolchain for creating Minecraft datapacks that compile to .mcfunction files and run without mods. Builders can try it in an online playground, write code in a browser, and download a datapack. The language includes variables, functions, control flow, structs, enums, Option and Result, f-strings, and modules. Minecraft-specific tools cover load and tick handlers, selectors, and helpers for commands such as title, kill, and particle. Its toolchain includes compilation, type checking, optimization, formatting, linting, testing, and watch mode. An LSP and VS Code extension offer diagnostics, completion, hover details, navigation, snippets, and syntax highlighting. The standard library includes math, vectors, random generators, particles, inventory, scheduling, and ECS-style helpers. RedScript also supports typed resource declarations and JSON/NBT contributions from files, with collision checks and directory or ZIP output. Static command checks do not establish behavior on a live Paper server. Dimension and dimension_type resources require reopening the world; normal resources and structure NBT are described as reloadable. It is free, open source under the MIT License.
For and against
For
- Compiles typed code to vanilla datapacks without mods
- Online playground supports browser coding and downloads
- VS Code extension includes diagnostics and autocomplete
- Supports resource declarations and JSON/NBT contributions
Against
- Static diagnostics do not prove live Paper behavior
- Dimension resources require reopening the world
The verdict
RedScript combines a typed language with a broad toolchain for Minecraft datapack authoring. Its static checks and resource workflow have stated limits, so builders should account for those when validating a project.
Who it suits
RedScript suits people building Minecraft datapacks, particularly those working on larger projects. Its browser playground can help users try code without starting with a local setup.
On the record
- CLI installation
- The README gives `npm install -g redscript-mc` as the CLI installation command.github.com · read 3 Oct 2026
- Compiler tooling
- The toolchain includes a compiler, type checker, optimizers, datapack emitter, formatter, linter, test runner, and watch mode.github.com · read 2 Oct 2026
- Editor integration
- The VS Code extension provides syntax highlighting, real-time diagnostics, hover information, go-to-definition, autocomplete, lint warnings, and code snippets.marketplace.visualstudio.com · read 3 Oct 2026
- Editor support
- The project lists an LSP and VSCode extension with hover documentation, go-to-definition, completion, diagnostics, snippets, and syntax highlighting.github.com · read 2 Oct 2026
- Intended users
- The project describes its tooling as intended to help maintain larger datapacks.github.com · read 3 Oct 2026
- Language features
- The language includes variables, functions, control flow, structs, enums, Option and Result, f-strings, and modules.github.com · read 3 Oct 2026
- License
- The repository says RedScript is released under the MIT License.github.com · read 3 Oct 2026
- Minecraft features
- Minecraft integration includes load and tick handlers, selectors, and helpers for commands such as title, kill, and particle.github.com · read 2 Oct 2026
- Minecraft tooling
- The toolchain includes a compiler, optimizer, CLI, language server, formatter, linter, test runner, and Minecraft-aware validation.github.com · read 3 Oct 2026
- No-mod output
- The project says its datapacks run without mods.github.com · read 3 Oct 2026
- Online playground
- The browser playground lets users write code and download a datapack.github.com · read 3 Oct 2026
- Purpose
- RedScript is a typed language and toolchain for building vanilla Minecraft datapacks that compile to .mcfunction.github.com · read 3 Oct 2026
- Resource authoring
- RedScript supports typed resource declarations and from-file JSON/NBT contributions, with collision checks and deterministic directory or ZIP output.github.com · read 2 Oct 2026
- Resource limit
- The README says dimension and dimension_type resources require reopening the world, while normal resources and structure NBT are reloadable according to its Paper 1.21.4 lifecycle evidence.github.com · read 3 Oct 2026
- Standard library
- The standard library includes modules for math, vectors, random generation, particles, inventory, scheduling, and ECS-style helpers.github.com · read 3 Oct 2026
- Support
- The repository links to documentation, a playground, a VSCode extension, an npm package, and contributing instructions.github.com · read 2 Oct 2026
- Type safety
- The documentation says RedScript catches errors at compile time, before they occur in-game.redscript-docs.pages.dev · read 2 Oct 2026
- Validation
- The project describes static Minecraft command checks and optional Paper/TestHarness integration tests, and says static diagnostics do not prove live Paper behavior.github.com · read 2 Oct 2026