This crate lets you read minetest worlds in a low-level way.
As this crate returns async-std based futures, you have to specify that along the dependencies:
toml
[dependencies]
minetestworld = "0.3"
async-std = "1"
Here is an example that reads all nodes of a specific map block: ```rs use minetestworld::{World, Position}; use async_std::task;
fn main() { let blockpos = Position { x: -13, y: -8, z: 2, }; task::blockon(async { let world = World::new("TestWorld"); let mapdata = world.getmap().await.unwrap(); for (pos, node) in mapdata.itermapblocknodes(blockpos).await.unwrap() { println!("{pos:?}, {node:?}"); } }); } ```
See https://github.com/UgnilJoZ/minetest-worldmapper for a real-world example.