RedScript is a typed language and toolchain for creating vanilla Minecraft datapacks, compiling source code into .mcfunction output. The project says the resulting datapacks run without mods, and provides an online playground for writing code in a browser and downloading a datapack. Language constructs include variables, functions, control flow, structs, enums, Option and Result, f-strings and modules. Minecraft-specific support includes load and tick handlers, selectors, and command helpers. The toolchain includes compilation, type checking, optimization, datapack emission, formatting, linting, testing and watch mode. Its language server and VS Code extension offer diagnostics, completion, hover details, navigation, snippets and syntax highlighting. Resource declarations can be typed, and JSON or NBT contributions from files have collision checks and deterministic directory or ZIP output. Static checks can flag Minecraft command issues, but the project cautions that they do not verify live Paper behavior. Dimension and dimension_type resources require reopening the world. RedScript is MIT-licensed.
Who it is for
RedScript suits people building Minecraft datapacks, particularly those working on larger projects who want a typed language and supporting development tools. It can also suit users who prefer to try code in a browser playground.
What is good
- Compiles typed code into vanilla .mcfunction datapacks.
- Online playground supports browser-based authoring and download.
- VS Code extension includes diagnostics and autocomplete.
- Toolchain includes a formatter, linter and test runner.
- Outputs can be deterministic directories or ZIP files.
What to know first
- Static diagnostics do not prove live Paper behavior.
- Dimension and dimension_type resources require reopening the world.
- CLI installation uses npm.
Verdict
RedScript offers a broad coding toolchain for vanilla datapack development, with editor integration and resource authoring alongside compilation. Its static checks have a stated limit, and some resource changes require reopening the world.
Compared on Minecraft datapack generators
- Function generation
- Yes
- Recipe generation
- Yes
- Loot table generation
- Yes
- Advancement generation
- Yes
- Predicate generation
- Yes
- Export format
- both
- Datapack validation
- Yes


