Skip to main content

A project that seeks to recreate every old Minecraft version in Python using Pyglet and Cython.

Project description

Minecraft: Python Edition

Minecraft

Minecraft: Python Edition is a project that strives to recreate each and every old Minecraft version in Python using the Pyglet multimedia library and Cython for performance.

This project is currently recreating the Preclassic versions of Minecraft. The latest version is Preclassic rd-161348 as released on May 16, 2009.

Learn more about this version here.

General Usage

Pyglet and Cython are required dependencies and can easily be installed with pip. Use the versions specified in requirements.txt.

To easily install this version of Minecraft: Python Edition, just run python -m pip install minecraft-python==161348.

Alternatively, for a manual Cython build, run python setup.py build_ext --inplace.

Run python -m mc.net.minecraft.Minecraft to launch the game. Minecraft: Python Edition should be compatible with any modern platform that supports OpenGL and Cython.

Gameplay

Basic terrain, early block picking and placing, and human mobs are featured in this version. There are five different blocks you can place.

Press Esc to exit the game. Press Return to save, R to reset your position, G to spawn a mob, and numbers 1-4 (6 for saplings) to switch blocks.

Additional Notes

The resources directory contains all of the textures that this version uses. However, they are only there for convenience, as all of the texture buffers are already preloaded in the net.Resources module.

This would have been much more challenging to work on without the great tools provided by RetroMCP-Java.

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

minecraft-python-161348.tar.gz (199.7 kB view hashes)

Uploaded Source

Built Distributions

minecraft_python-161348-pp310-pypy310_pp73-win_amd64.whl (170.8 kB view hashes)

Uploaded PyPy Windows x86-64

minecraft_python-161348-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (215.0 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

minecraft_python-161348-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (226.3 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

minecraft_python-161348-pp310-pypy310_pp73-macosx_10_9_x86_64.whl (166.4 kB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

minecraft_python-161348-pp39-pypy39_pp73-win_amd64.whl (170.5 kB view hashes)

Uploaded PyPy Windows x86-64

minecraft_python-161348-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (214.5 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

minecraft_python-161348-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (225.7 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

minecraft_python-161348-pp39-pypy39_pp73-macosx_10_9_x86_64.whl (165.9 kB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

minecraft_python-161348-pp38-pypy38_pp73-win_amd64.whl (169.1 kB view hashes)

Uploaded PyPy Windows x86-64

minecraft_python-161348-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (211.1 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

minecraft_python-161348-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (208.9 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

minecraft_python-161348-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (161.8 kB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

minecraft_python-161348-pp37-pypy37_pp73-win_amd64.whl (169.1 kB view hashes)

Uploaded PyPy Windows x86-64

minecraft_python-161348-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (211.1 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

minecraft_python-161348-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (209.0 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

minecraft_python-161348-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (161.9 kB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

minecraft_python-161348-cp311-cp311-win_amd64.whl (190.5 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

minecraft_python-161348-cp311-cp311-win32.whl (173.3 kB view hashes)

Uploaded CPython 3.11 Windows x86

minecraft_python-161348-cp311-cp311-musllinux_1_1_x86_64.whl (1.2 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

minecraft_python-161348-cp311-cp311-musllinux_1_1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

minecraft_python-161348-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

minecraft_python-161348-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

minecraft_python-161348-cp311-cp311-macosx_10_9_x86_64.whl (211.0 kB view hashes)

Uploaded CPython 3.11 macOS 10.9+ x86-64

minecraft_python-161348-cp310-cp310-win_amd64.whl (196.0 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

minecraft_python-161348-cp310-cp310-win32.whl (176.8 kB view hashes)

Uploaded CPython 3.10 Windows x86

minecraft_python-161348-cp310-cp310-musllinux_1_1_x86_64.whl (1.2 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

minecraft_python-161348-cp310-cp310-musllinux_1_1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

minecraft_python-161348-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

minecraft_python-161348-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

minecraft_python-161348-cp310-cp310-macosx_10_9_x86_64.whl (218.1 kB view hashes)

Uploaded CPython 3.10 macOS 10.9+ x86-64

minecraft_python-161348-cp39-cp39-win_amd64.whl (207.1 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

minecraft_python-161348-cp39-cp39-win32.whl (186.3 kB view hashes)

Uploaded CPython 3.9 Windows x86

minecraft_python-161348-cp39-cp39-musllinux_1_1_x86_64.whl (1.2 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

minecraft_python-161348-cp39-cp39-musllinux_1_1_i686.whl (1.2 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

minecraft_python-161348-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

minecraft_python-161348-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

minecraft_python-161348-cp39-cp39-macosx_10_9_x86_64.whl (228.4 kB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

minecraft_python-161348-cp38-cp38-win_amd64.whl (206.4 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

minecraft_python-161348-cp38-cp38-win32.whl (186.4 kB view hashes)

Uploaded CPython 3.8 Windows x86

minecraft_python-161348-cp38-cp38-musllinux_1_1_x86_64.whl (1.3 MB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

minecraft_python-161348-cp38-cp38-musllinux_1_1_i686.whl (1.2 MB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

minecraft_python-161348-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

minecraft_python-161348-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (1.2 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

minecraft_python-161348-cp38-cp38-macosx_10_9_x86_64.whl (224.5 kB view hashes)

Uploaded CPython 3.8 macOS 10.9+ x86-64

minecraft_python-161348-cp37-cp37m-win_amd64.whl (203.9 kB view hashes)

Uploaded CPython 3.7m Windows x86-64

minecraft_python-161348-cp37-cp37m-win32.whl (183.9 kB view hashes)

Uploaded CPython 3.7m Windows x86

minecraft_python-161348-cp37-cp37m-musllinux_1_1_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.1+ x86-64

minecraft_python-161348-cp37-cp37m-musllinux_1_1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.1+ i686

minecraft_python-161348-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

minecraft_python-161348-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (1.0 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

minecraft_python-161348-cp37-cp37m-macosx_10_9_x86_64.whl (220.7 kB view hashes)

Uploaded CPython 3.7m macOS 10.9+ x86-64

minecraft_python-161348-cp36-cp36m-win_amd64.whl (230.4 kB view hashes)

Uploaded CPython 3.6m Windows x86-64

minecraft_python-161348-cp36-cp36m-win32.whl (200.4 kB view hashes)

Uploaded CPython 3.6m Windows x86

minecraft_python-161348-cp36-cp36m-musllinux_1_1_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.6m musllinux: musl 1.1+ x86-64

minecraft_python-161348-cp36-cp36m-musllinux_1_1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.6m musllinux: musl 1.1+ i686

minecraft_python-161348-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

minecraft_python-161348-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (1.0 MB view hashes)

Uploaded CPython 3.6m manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

minecraft_python-161348-cp36-cp36m-macosx_10_9_x86_64.whl (224.4 kB view hashes)

Uploaded CPython 3.6m macOS 10.9+ x86-64

Supported by

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