Metadata-Version: 2.1
Name: gdpc
Version: 7.4.0
Summary: GDPC (Generative Design Python Client) is a Python framework for use in conjunction with the GDMC-HTTP mod for Minecraft Java edition. It is designed for the Generative Design in Minecraft Competition (GDMC).
Home-page: https://github.com/avdstaaij/gdpc
Author: Arthur van der Staaij, Blinkenlights, Nils Gawlik
Author-email: arthurvanderstaaij@gmail.com, blinkenlights@pm.me, nilsgawlik@gmx.de
Maintainer: Arthur van der Staaij
Maintainer-email: arthurvanderstaaij@gmail.com
License: MIT
Project-URL: Documentation, https://gdpc.readthedocs.io
Project-URL: Bug Reports, https://github.com/avdstaaij/gdpc/issues
Project-URL: Changelog, https://github.com/avdstaaij/gdpc/blob/master/CHANGELOG.md
Project-URL: Official Competition wiki, https://gendesignmc.wikidot.com/start
Project-URL: Chat about it on Discord, https://discord.gg/YwpPCRQWND
Project-URL: Source, https://github.com/avdstaaij/gdpc
Keywords: GDMC,generative design,Minecraft,HTTP,development
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Games/Entertainment :: Simulation
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Software Development :: Version Control :: Git
Requires-Python: >=3.7, <4
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: Deprecated
Requires-Dist: matplotlib
Requires-Dist: more-itertools
Requires-Dist: NBT
Requires-Dist: numpy
Requires-Dist: opencv-python
Requires-Dist: PyGLM>=2.7.0
Requires-Dist: pyglm-typing
Requires-Dist: requests
Requires-Dist: scikit-image>=0.19.0
Requires-Dist: scipy
Requires-Dist: termcolor
Requires-Dist: typing-extensions

# GDPC

GDPC (Generative Design Python Client) is a Python framework for the [GDMC HTTP
Interface mod](https://github.com/Niels-NTG/gdmc_http_interface) 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)](https://gendesignmc.wikidot.com/), 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](https://discord.gg/YwpPCRQWND)!


## Quick example

```python
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](https://gdpc.readthedocs.io)!


## Contributing

See [CONTRIBUTING.md](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](https://github.com/nikigawlik), who started both GDMC-HTTP and GDPC, and [Blinkenlights](https://github.com/flashing-blinkenlights), who previously maintained the project.
