Skip to main content

A python framework for procedural generation in Minecraft with the GDMC HTTP Interface mod.

Project description

GDPC

GDPC (Generative Design Python Client) is a Python framework for the GDMC HTTP Interface mod for Minecraft Java edition.

The GDMC HTTP mod implements a HTTP interface that allows you to edit a Minecraft world live, while you're playing in it, making it possible to rapidly iterate on generative algorithms. GDPC provides Python bindings for the GDMC-HTTP interface, along with many high-level tools that make development much easier.

GDPC is primarily designed for the Generative Design in Minecraft Competition (GDMC), a yearly competition for procedural generation in Minecraft where the challenge is to write an algorithm that creates a settlement that adapts to the pre-existing terrain. Feel free to join us on Discord!

Quick example

from gdpc import Editor, Block, geometry

editor = Editor(buffering=True)

# Get a block
block = editor.getBlock((0,48,0))

# Place a block
editor.placeBlock((0,80,0), Block("stone"))

# Build a cube
geometry.placeCuboid(editor, (0,80,2), (2,82,4), Block("oak_planks"))

Documentation

You can find installation instructions, guides and an API reference in our documentation on Read the Docs!

Contributing

See CONTRIBUTING.md for information about how to contribute.

Acknowledgements

GDPC was progressively developed with the help of various members of the GDMC community. Of special note are Niki Gawlik, who started both GDMC-HTTP and GDPC, and Blinkenlights, who previously maintained the project.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gdpc-8.1.0.tar.gz (72.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gdpc-8.1.0-py3-none-any.whl (75.8 kB view details)

Uploaded Python 3

File details

Details for the file gdpc-8.1.0.tar.gz.

File metadata

  • Download URL: gdpc-8.1.0.tar.gz
  • Upload date:
  • Size: 72.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for gdpc-8.1.0.tar.gz
Algorithm Hash digest
SHA256 47234092d511e1b5f37becb825f3da79f9a787bd3c9979a49bb41599d3b7f7b3
MD5 78b16defd997146851504f7312d7bfb4
BLAKE2b-256 dd38777d7f334c9de3250adb6bfefa2c3812f55b9d1a4a60ffb322b1e46cb41a

See more details on using hashes here.

File details

Details for the file gdpc-8.1.0-py3-none-any.whl.

File metadata

  • Download URL: gdpc-8.1.0-py3-none-any.whl
  • Upload date:
  • Size: 75.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for gdpc-8.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 45cb9633183c551e155308969aa8c307c700159f0b52c97571e50752c8d6b860
MD5 622c7ec605181fe5637ca1f4fbf27156
BLAKE2b-256 aa7b2bcc954c1cf435d88b9f1d2df90a28c385e8e8c067aff7a19cda4f10295f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page