This project consists of a Python client for talking with a Minetest server, and a Minetest Mod that creates a chat-controlled robot. Those two parts are independent, but play well with each other.
The Python client (
client.py) speaks the Minetest protocol and logs in as a
regular user. It's not feature complete, but the basics are stable and it's
easy to implement the missing commands. You can use it as a library and import
MinetestClient, or run as
python3 client.py *hostname* *username* *password*,
where each message typed in the console is sent as a chat message to the
The Minetest mod (
bot/) allows users to create and controls robots by speaking
commands in the chat. These robots can move through the map, placing and
removing blocks. To install it just copy the entire
bot/ folder to
.minetest/mods and activate in the world configuration.
Because the robots answer to regular chat commands, the Python client is able to login and say commands to the robot, giving a remote interface to control it.
controller.py is used as the glue between Scratch and the Minetest bot, creating an HTTP server and forwarding commands.