Script REPL (read-eval-print loop) Add-On is a debugging tool for Minecraft Scripting, that allows user to run JavaScript code in Minecraft: Bedrock Edition. This powerful add-on is great to use for debugging, prototyping, and learning JavaScript and Minecraft's scripting API.
Currenly JavaScript is the only programming language that allow developers to use Script APIs from within their code.
This add-on allows developers to debug JavaScript code and reports an error condition immediately in Minecraft in-game using this interpreter. This reduces the amount of script errors happened in your code development and time, and allows developers to experiment with the new features available in Script API modules in Minecraft.
You are advised to learn JavaScript free from online courses available online before learning how to use Minecraft's Scripting API, such as the following:
There are somewhat decent amount of resources available online related to script API. Important links have a ⭐.
⭐ Official Script API Documentation - Microsoft's official documentation of high-level introduction of experimental Script API
Jayly's Script API Documentation - Jayly's Script API documentation with guides and easy to use and understand API references for programming beginners.
Script API Examples - JavaScript code snippets that uses Script API modules only
Click here for a list of links related to resources for Minecraft Script API.
Here are some examples executing JavaScript in-game:
Get it? Cause Aether dimension does not exist in Minecraft.
JavaScript REPL [Use]
item through the following methods:/scriptevent interpreter:js
!javascript
Important
This feature is only available behind beta versions of interpreter only.
JavaScript REPL [Use]
to open the interpreterIn case you want to disable your code, you have to run /reload
command which requires operator permission to execute the command.
Note
This feature is not available to Script REPL v1.21.0 without Beta APIs experiment.
The Script Block can store and execute JavaScript code in a Minecraft world. It cannot be obtained or used in Survival mode without cheats.
The script blocks can either be obtained by using various commands, such as /give @s interpreter:script_block
or /setblock ~ ~ ~ interpreter:script_block
, or by pressing the pick block control on an existing script block.
Script blocks are not flammable, and have the same blast resistance as bedrock. They cannot cannot be mined in Survival mode, however they can be pushed with pistons and sticky pistons and the data inside the block persists.
A script block can execute JavaScript code when activated by pressure plates and buttons currently. Script output is displayed when player activates the script block.
To enter command or modify the script block, players must interact with the script block. The scripts can be entered in the text input within the modal form. The text limit for scripts in a script block is 32,767 characters, you can scroll through lines of code just like the NPC text prompt UI.
Scripts in a script block do not need to be prefixed with imports (e.g. import { world } from "@minecraft/server"
) as they do in the actual JavaScript files.
When finished inputing JavaScript code, save the code into the script block by pressing 'Save' button. Upon pressing the button it will not immediately execute scripts unlike the Script REPL item.
The add-on also provides chat commands that is locked behind Script REPL beta versions.
!help
: Help Command!interpreter
: Opens Interpreter
This command requires operator permission.
!javascript
: Opens a javascript REPL
This command requires operator permission.
!version
: Displays the version of the interpreter
This command requires operator permission.
This is a very old showcase video of the add-on, fun fact the video includes the ability to run TypeScript code because this add-on used to be able to run TypeScript code.
First you go to the download section and click "Download Script REPL" (with or without experimentals), then the add-on will be downloaded to your device.
Import the add-on to Minecraft.
Important
Enable Beta APIs experiments in world settings. These experiments are needed to run Script REPL with Beta API features.
Enable Experiments in New Create World Screen
No experimental toggles needed to be enabled.
Each invidiual version of Script REPL supports various fields of the APIs. Each version of script REPL have the latest version of script modules as the dependency on their channels:
@minecraft/server
: 1.16.0-beta
@minecraft/server-ui
: 1.4.0-beta
@minecraft/server-gametest
: 1.0.0-beta
@minecraft/debug-utilities
: 1.0.0-beta
@minecraft/server
: 1.15.0
@minecraft/server-ui
: 1.3.0
@minecraft/server
: 1.17.0-beta
@minecraft/server-ui
: 1.4.0-beta
@minecraft/server-gametest
: 1.0.0-beta
@minecraft/debug-utilities
: 1.0.0-beta
@minecraft/server
: 1.16.0
@minecraft/server-ui
: 1.3.0
@minecraft/server
: 1.17.0-beta
@minecraft/server-ui
: 1.4.0-beta
@minecraft/server-gametest
: 1.0.0-beta
@minecraft/debug-utilities
: 1.0.0-beta
@minecraft/server-net
: 1.0.0-beta
@minecraft/server-admin
: 1.0.0-beta
Note
All versions of Script REPL also loads external npm packages such as @minecraft/vanilla-data
and @minecraft/math
(using v1.4.0) when executing JavaScript code.
Caution
The Script REPL Add-On support for using Bedrock Dedicated Server exclusive APIs are currently experimental.
Important
This version of the Script REPL add-on do not function within the Minecraft game client or within Minecraft Realms.
The Bedrock Dedicated Server version of the Script REPL Add-On allows players to access higher levels of Script APIs, specifically the @minecraft/server-net
module and the @minecraft/server-admin
module. These modules are exclusive to Bedrock Dedicated Servers.
The @minecraft/server-net
module can send HTTP requests from the Bedrock server, and inspect Bedrock server packets.
The @minecraft/server-admin
module can administe a Bedrock Dedicated Server, including transfer players to another Bedrock server.
To use this add-on, you would have to enable some modules in the Bedrock Dedicated Server folder. This allows this version of the add-on to be used.
Install Bedrock Dedicated Server
bedrock-server
│ allowlist.json
│ bedrock_server.exe
│ bedrock_server_how_to.html
│ permissions.json
│ release-notes.txt
│ server.properties
│
├─behavior_packs
├─config
│ └─default
│ permissions.json
│
├─definitions
└─resource_packs
config/<pack_id>/permissions.json
or config/default/permissions.json
, enable @minecraft/server-net
module, the @minecraft/server-admin
module and the @minecraft/debug-utilities
module by adding the following in the allowed_modules key. These module is not enabled by default in the server.{
"allowed_modules": [
"@minecraft/server-gametest",
"@minecraft/server",
"@minecraft/server-ui",
"@minecraft/server-admin",
+ "@minecraft/server-net",
+ "@minecraft/debug-utilities",
"@minecraft/server-editor"
]
}
Full file (config/default/permissions.json
):
{
"allowed_modules": [
"@minecraft/server-gametest",
"@minecraft/server",
"@minecraft/server-ui",
"@minecraft/server-admin",
"@minecraft/server-net",
"@minecraft/debug-utilities",
"@minecraft/server-editor"
]
}
Important
Modifying the files in the default config folder allows every add-on with the server-net module to have access to the @minecraft/server-net module.
It is recommended to assign individual permissions for each script behavior pack.
Enable Beta APIs experiments in world settings. This is needed to run Script REPL with Beta API features.
These download links do not go through Boostellar, so there shouldn't be any malicious links.
Important
To use this add-on in Minecraft: Education Edition, experiments may be required to activate the add-on. The resource pack below allows experiments to be enabled in Education Edition.
Click the link below and choose a version of Script REPL add-on that is compatible with your Minecraft version to download.