GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - Petrdddf/minecraft-python: Minecraft: Python Edition. A recreation of each old Minecraft version in Python that focuses on total accuracy.

BranchesTags
Open more actions menu
 
 

Latest commit

 

History

41 Commits
41 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
mc
mc
 
 
.gitignore
.gitignore
 
 
LICENSE
LICENSE
 
 
MANIFEST.in
MANIFEST.in
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
map.png
map.png
 
 
pyproject.toml
pyproject.toml
 
 
requirements.txt
requirements.txt
 
 
screenshot.png
screenshot.png
 
 
setup.py
setup.py
 
 

Repository files navigation

Minecraft: Python Edition

Minecraft

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

The project has completed the Indev versions of Minecraft. This version of Indev, the final one, is Indev 20100223 as released on February 23, 2010.

This version adds paintings to the game and makes wood logs drop as logs instead of planks.

Features added in Indev include the wood spawn house, NBT level file saving, mobs and animals, farming, furnaces, durable tools, armor, day and night cycle, difficulty, torches, advanced liquid spread, TNT explosives, chests, the main menu, workbench crafting, porkchops, soup, and flint and steel.

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

You can learn more about this version on the Minecraft wiki.

Organization

This project's commits represent the Python versions of each Minecraft Java game version. You can view source code changes between game versions by checking the commit history or comparing branches. To play any version, specify it in the pip install command as demonstrated below.

General Usage

Pyglet, Cython, Pillow, PyOgg, NumPy, and nbtlib are required dependencies which can easily be installed with pip. Use the versions specified in requirements.txt. wxPython is an optional dependency for the level file picker, but if you don't have it then Tkinter is used instead.

For audio to work you will either need PyOgg which is recommended, or FFmpeg which has to be installed on your system. GStreamer is also supported on Linux through the gst-python library. PyOgg requires that your system have one of the Opus, FLAC, or Vorbis codecs. OpenAL is required and comes bundled with the source on Windows.

For a manual Cython source build, run python setup.py build_ext --inplace.

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

Run with the argument -fullscreen to open the window in fullscreen mode (or press F11 in-game). The argument -creative will force the game to be in creative mode.

Gameplay

All controls are as you would expect for the game and they can be configured in the options menu. Press I to open your inventory, F5 for third person view and F7 to take a cool isometric screenshot.

The Indev level generator is customizable and you can choose between the Inland, Island, Floating, and Flat level types. You can specify the world theme as Normal, Hell (lava and dirt instead of water and grass), Paradise (always daylight), or Woods. World size and world shape (Square, Long, Deep) may also be selected.

Levels can be saved to a single .mclevel NBT file in the pause menu. The level files are perfectly compatible with Java and vice versa.

Porkchops, mushroom bowl soup, and bread will restore health. Check the Wiki for crafting recipes added in this version.

Isometric screenshot

An isometric screenshot of a normal Woods map generated by the game.

Additional Notes

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

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

All credit for Minecraft goes towards its creator Notch and Mojang Specifications.

About

Minecraft: Python Edition. A recreation of each old Minecraft version in Python that focuses on total accuracy.

Resources

Readme
License
Activity

Stars

0 stars

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.