Minescript is a platform for controlling and interacting with Minecraft using scripts written in the Python programming language.
Before using Minescript, please review the Terms of Use.
Join the Minescript Discord Server for announcements and to engage with the Minescript community.
Check out Minescript documentation for details about commands and APIs.
Download Python scripts developed for use with Minescript.
Setup
-
Download and install the Minescript mod for either Fabric (requires Fabric API) or Forge.
-
Download and install Python 3 if you don't already have it: https://www.python.org/downloads/ (or from the Microsoft Store on Windows)
-
Run Minecraft with the Minescript mod installed. The first time the Minescript mod runs, it will automatically create a minescript folder inside the minecraft folder.
-
Create Python scripts in the minescript folder.
-
Run Python scripts from the Minecraft in-game chat by entering backslash ("\") followed by the script name without the ".py" extension.
Minescript expects Python to be installed at the following location:
- on Windows:
%userprofile%\AppData\Local\Microsoft\WindowsApps\python3.exe - on Mac, Linux, etc:
/usr/bin/python3
If Python is installed somewhere else on your system, you can point Minescript at it by changing the python variable in the file config.txt in the minescript folder.
Example
See this example script that demonstrates how to access the player's coordinates, read blocks at a given location, and create blocks like signs with custom text all from a Python script.
Compatibility Tested on the following platforms:
- Fabric, Forge, and NeoForge mod loaders
- Python 3.7 through 3.10
- macOS up to Sonoma
- Linux (Pop!_OS, NixOS, Bazzite, and SteamOS)
- Windows 10 and 11 (x86)
How to Install Minescript (Mod)
Minescript by maxuser is verified for Fabric, Forge, Neoforge across Minecraft versions 1.18.2, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.4 (latest release: 5.0-fabric-26.3, file size: 1.4 MB). Follow the steps below to install it safely from ModCraft.tv:
- Click the Download button above and select your Minecraft version (1.18.2, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.4) and platform (Fabric, Forge, Neoforge).
- Make sure you have the compatible loader or environment installed for Fabric, Forge, Neoforge.
- Move the downloaded Minescript file into your Minecraft
.minecraft/modsfolder and launch the game.
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 4mo ago | 1 | ||||
| 4mo ago | 1 | ||||
| 7mo ago | 1 | ||||
| 7mo ago | 1 | ||||
| 7mo ago | 1 | ||||
| 7mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 |
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts for Minecraft 1.21.x see
## Minescript 5.0
- Integrated Pyjinn interpreter: run
.pyjscripts written in Python syntax directly within
[393d74c](https://github.com/maxuser0/minescript/commit/393d74cb366fbc5cb8b149c19b60ae70a71e3f9a))
- Built-in Pyjinn-based REPL interpreter (
\interpreter) with tab-completion ([59a46aa](https://github.com/maxuser0/minescript/commit/59a46aadbb8e94c52782d5b7a9b4066b4a2cbfa5)) - Asynchronous Pyjinn scripting with
async/awaitandEventLoopclass
- Support packet interception and cancellation in Pyjinn scripts via
serverbound_packetand
clientbound_packet events ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))- Support Pyjinn script events for several render passes
[55aa5d8](https://github.com/maxuser0/minescript/commit/55aa5d8da0ca9d072926d7a335c2bc1b506bbb2a))
- Add scoreboard query function
get_scoreboard()
- Add current dimension to
world_info()([2211c43](https://github.com/maxuser0/minescript/commit/2211c43f4df184b9fbf113c448aa00f6bc4c1206)) - Add
get_block_region()to get blocks in a 3D volume ([8b69e2a](https://github.com/maxuser0/minescript/commit/8b69e2ab60a81e00cb05c5d8fb108e7bc155ef14)) - Add
install_mappingsscript for installing Mojang official mappings (mappings no longer needed for game versions 26.x and above) ([418afa3](https://github.com/maxuser0/minescript/commit/418afa353d4ceb2b32e01f9066ef35c12a61ca67)) - Support running embedded Pyjinn scripts within Python via built-in
java.py
[ab6bfb5](https://github.com/maxuser0/minescript/commit/ab6bfb548da7f7ea6817c03d8c34af567cbf8057),
[9bc3a71](https://github.com/maxuser0/minescript/commit/9bc3a71af452c2930393d81958d4d86964883cd0))
- Pyjinn support for JavaScript-style timers:
set_timeout(),set_interval(), and
remove_event_listener() ([8849da8](https://github.com/maxuser0/minescript/commit/8849da83386aaee59d82273849055dd7e01712c3))- Support
"world"event to keep persistent scripts running across connect/disconnect
- Support globs in
command_path
...
- For Pyjinn integration with Java and language compatibility with Python see
- To set up Fabric mappings for Python and Pyjinn scripts see
## Minescript 5.0b11
- Document EventLoop and packet events ([fa632c4](https://github.com/maxuser0/minescript/commit/fa632c48e4c3bc6d8c57a54b64c6ce202b40b350))
- Let scripted chats start with slash or backslash ([0f5ae28](https://github.com/maxuser0/minescript/commit/0f5ae28d72655322165c4c1365fd76f8e314eff6))
- Remove config for toggling Pyjinn compilation ([9ac864a](https://github.com/maxuser0/minescript/commit/9ac864a2fb9b36873a726e1b3175efdc735bcfd4))
- Support packet interception/cancellation in Pyjinn ([77412bb](https://github.com/maxuser0/minescript/commit/77412bb5723a31b4a244b47a9a8e5375efe6ea2f))
### Pyjinn 0.14
- Fix handling of local class definitions ([d6a9297](https://github.com/maxuser0/pyjinn/commit/d6a9297c2331ed0eda089525b24735fa81505898))
- Introduce CompiledClass to compile classes earlier ([8d7a5e1](https://github.com/maxuser0/pyjinn/commit/8d7a5e19c8ef70cd7454e0db3e294317ca273a29))
- Remove Expression.eval, Statement.exec, overrides ([637e0fe](https://github.com/maxuser0/pyjinn/commit/637e0fe3941750242beb9e01f804080120a5732b))
- Restore ability to add global vars outside scripts ([56428f8](https://github.com/maxuser0/pyjinn/commit/56428f826b27a7f527812ea734da15c181fd06a1))
- Merge Script.parse() into Script.compile() ([5a24b76](https://github.com/maxuser0/pyjinn/commit/5a24b760a58b5ae67ae005f3d54f5d195daf3902))
- Get/set local vars by int index, not string lookup ([742f762](https://github.com/maxuser0/pyjinn/commit/742f7626c80401775f39d6defeed3f3c165f2aec))
- Require compilation; global/nonlocal decls in Code ([fbd5998](https://github.com/maxuser0/pyjinn/commit/fbd5998230de998e66046e92c9815c6ff46d1603))
- Disallow function definitions/calls with bad args ([5acb01f](https://github.com/maxuser0/pyjinn/commit/5acb01fd2968b70e9f5a1061f4c6946772aa005a))
- Support keyword-only args (following
*arg) ([3854761](https://github.com/maxuser0/pyjinn/commit/3854761acdd80f3b04b3f65d0162c8925dfe8843)) - Convert byte/short to Byte/Short in arg type check ([dcdd1a3](https://github.com/maxuser0/pyjinn/commit/dcdd1a32a03e1371431bf9b6204511b04680bef1))