This project provides a framework for collecting navigation trajectories in the Minecraft environment using Mineflayer. It supports controllable agents, path planning via A*Mineflayer-pathfinder, and image rendering Prismarine-viewer.
Certain code is modified from above projects to support features. Modified version is in LoopNav-mineflayer, LoopNav-pathfinder, LoopNav-prismarine-viewer.
See CHANGES.md for details.
- Loop-based navigation (
A → B → A) or (A → B → C → A) - Recording observation, action, position, Goal.
- only one action is allowed on one timestep
- avoid stuck by edge of blocks
git clone https://github.com/Kevin-lkw/LoopNav
cd LoopNav
npm installfor example, in liunx server
java -Xmx2G -Xms2G -jar server.jar noguipython run.py --name Bot --target village --output_path ./output--name: the name of the bot --target: the target to collect data, can be 'village', 'biome' or 'structure' --output_path: the path to save the collected data
there might be some illegal data(e.g. the agent is died in lava or loss connection with the server) we provide a script to process the data this script will delete the illegal data and count the number of trajectories for each target
python process.py --output_path ./output --target village- tp command failed: give the Bot OP permission to use tp command