Skip to content

Latest commit

 

History

History
189 lines (159 loc) · 7.52 KB

README.md

File metadata and controls

189 lines (159 loc) · 7.52 KB

Note

Developers and translators are welcome to join the CubeGPT Team!

Introduction

Give GPT your idea, AI generates customized Minecraft structures.

BuilderGPT is an open source, free, AI-powered Minecraft structure generator. It was developed for minecraft map makers. It can generate structures in *.schem format and users can import them via worldedit, etc.

Showcase

Partner

Features

  • Generate structures
  • Preview rendered schematic in-program
  • Export generated structures to *.schem files
  • Export generated structures to *.mcfunction files
  • Advanced Mode (Use Stable Diffusion/DALL-E to generate the design image and let gpt-4-vision generate the struture base on it.)
  • Edit structures

Other projects of CubeGPT Team

  • Bukkit plugin generator. {*.jar} (BukkitGPT)
  • Structure generator. {*.schem} (BuilderGPT)
  • Serverpack generator. {*.zip} (ServerpackGPT or ServerGPT, or..?)
  • Have ideas or want to join our team? Send us an email!

How it works

After the user enters a requirement, the program uses gpt-4-preview to expand the details of the requirement and generate a specific solution. The program then uses the generated solution to generate a drawing tag using gpt-4-preview, and then calls Stable Diffusion WebUI or DALL-E to generate a design using the generated tag. The generated schematic is then given to gpt-4-vision-preview along with the optimized requirements to generate a json containing the content of the structure, for example:

{
    "structures": [
        {
            "block": "minecraft:oak_planks",
            "type": "fill",
            "x": 0,
            "y": 0,
            "z": 0,
            "toX": 4,
            "toY": 0,
            "toZ": 4
        },
        {
            "block": "minecraft:oak_log",
            "type": "fill",
            "x": 1,
            "y": 1,
            "z": 1,
            "toX": 3,
            "toY": 1,
            "toZ": 1
        },
        {
            "block": "minecraft:minecraft:oak_door[half=lower]",
            "type": "setblock",
            "x": 2,
            "y": 0,
            "z": 0
        },
        {
            "block": "minecraft:birch_sign",
            "type": "setblock",
            "x": 2,
            "y": 1,
            "z": 0
        },
        {
            "block": "minecraft:oak_fence",
            "type": "fill",
            "x": 0,
            "y": 1,
            "z": 2,
            "toX": 0,
            "toY": 1,
            "toZ": 4
        },
        {
            "block": "minecraft:oak_fence",
            "type": "fill",
            "x": 1,
            "y": 1,
            "z": 4,
            "toX": 5,
            "toY": 1,
            "toZ": 4
        },
        {
            "block": "minecraft:oak_fence",
            "type": "fill",
            "x": 5,
            "y": 1,
            "z": 3,
            "toX": 5,
            "toY": 1,
            "toZ": 1
        }
    ]
}

The program then parses this json response. Then it uploads the image (headless) to cubical.xyz and downloads the rendered image from the site using playwright.

Requirements

Plan A. Windows/Linux (executable edition)

Warning

The version of the executable is still in the testing process. Plan B is recommended if possible.

Nothing. Just download the executable file and run it.

Plan B. Python (Any operating systems; Recommend if possible)

You can use BukkitGPT on any device with Python 3+.

And you need to install the depencies with this command:

pip install -r requirements.txt

Quick Start

(Make sure you have the Python environment installed on your computer)

Moved to Wiki.

Contributing

If you like the project, you can give the project a star, or submit an issue or pull request to help make it better.

License

Copyright [2024] [CubeGPT Team]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.