Giter Site home page Giter Site logo

mc2mt's Introduction

mc2mt

Convert maps from Minecraft to Minetest This is a fork of Listia's excelent work.

Bug fixes

  • fixed sign rotation issue when wallmounted.
  • replaced grass with tall grass instead of grass_path
  • replaced kelp with water ( as it made a mess under water )
  • added ability to migrate sign text
  • added ability to migrate chest content
  • adjusted m2mt.py to work with python3 ( on ubuntu 20 )
  • added missing blocks for MC 1.16.5

Known issues

  • button and lever rotation isn't always correct, just place them again.
  • floor lever/buttons don't exist in minetest.
  • furnaces don;t show a UI, break them and place them back to fix it
  • some glass panes are not rotated properly, just place them back.
  • Water elevators have no bubbles, I added televator mod to replace water elevator
  • if you hear constant sound ticking in a loop it's likely a block of sand on a door nearby find it and replace it.

Dependencies

Anvil-Parser library is used to decode nbt format

pip install anvil-parser

https://github.com/matcool/anvil-parser

Usage

usage: mc2mt.py [OPTIONS] input output

Convert maps from Minecraft to Minetest.

positional arguments:
  input                 Minecraft input world folder
  output                Output folder for the generated world.

optional arguments:
  -h, --help            show this help message and exit
  -m MOD                Load mod from json file
  -c                    Count blocks only
  -d                    Disable all mods
  -e                    Enable all mods
  -u                    Unknown blocks will be converted to air
  -q                    Do not report unknown blocks
  --disable_MOD         Disable mod MOD
  --enable_MOD          Enable mod MOD

This script uses "anvil-parser" library from "matcool" to parse world folders. More details at https://github.com/matcool/anvil-parser

Custom Blocks Definition

You can provide a JSON to implement your custom definition.

You can also call function defined in mc2mtlib/block_functions.py.

Example are provided in mc2mtlib/mods.

{
    "table" : {
        "full_block_id" : ["minetest:itemstring",0,0],
        "beginning_of_id?": ["minetest:itemstring",0,0],
        "?end_of_id" : ["minetest:itemstring",0,0],
    }
}

mc2mt's People

Contributors

jonajames avatar ghobson2013 avatar geehwan avatar sbrl avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.