{"id":23155666,"url":"https://github.com/pythonengineer/minecraft-python","last_synced_at":"2025-08-17T23:32:11.018Z","repository":{"id":185764012,"uuid":"532836060","full_name":"pythonengineer/minecraft-python","owner":"pythonengineer","description":"Minecraft: Python Edition. A recreation of each old Minecraft version in Python that focuses on total accuracy.","archived":false,"fork":false,"pushed_at":"2024-09-09T03:53:02.000Z","size":102638,"stargazers_count":24,"open_issues_count":0,"forks_count":5,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-07-29T06:11:48.272Z","etag":null,"topics":["classic-game","cython","game","indie","minecraft","nostalgia","opengl","pyglet","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pythonengineer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-09-05T09:43:24.000Z","updated_at":"2025-07-10T01:05:30.000Z","dependencies_parsed_at":"2023-08-20T14:48:07.218Z","dependency_job_id":"d54890f3-ca89-48b1-adc2-54351497426e","html_url":"https://github.com/pythonengineer/minecraft-python","commit_stats":null,"previous_names":["pythonengineer/minecraft-python"],"tags_count":34,"template":false,"template_full_name":null,"purl":"pkg:github/pythonengineer/minecraft-python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pythonengineer%2Fminecraft-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pythonengineer%2Fminecraft-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pythonengineer%2Fminecraft-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pythonengineer%2Fminecraft-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pythonengineer","download_url":"https://codeload.github.com/pythonengineer/minecraft-python/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pythonengineer%2Fminecraft-python/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270922509,"owners_count":24668567,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-17T02:00:09.016Z","response_time":129,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["classic-game","cython","game","indie","minecraft","nostalgia","opengl","pyglet","python"],"created_at":"2024-12-17T21:10:58.779Z","updated_at":"2025-08-17T23:32:09.486Z","avatar_url":"https://github.com/pythonengineer.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Minecraft: Python Edition\n\n![Minecraft](/screenshot.png?raw=true)\n\n_**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.\n\nThe project is currently working on the Indev versions of Minecraft.\nThe latest version is **Indev 0.31 20100131** as released on _**January 31, 2010**_.\n\nThis version adds the main menu, passive human mobs, and item durability to the game.\n\nFeatures from previous Indev versions include the Indev mossy cobblestone spawn house, NBT level file saving,\ntools, torches, advanced liquid spread, TNT explosives, chests, workbench crafting, and soup.\n\nTo easily install this version of *Minecraft: Python Edition*, just run `python -m pip install minecraft-python==0.31.20100131`.\n\nYou can learn more about this version [on the Minecraft wiki.](https://minecraft.wiki/w/Java_Edition_Indev_0.31_20100131)\n\n### Organization\n\nThis project's commits represent the Python versions of each Minecraft Java game version.\nYou can view source code changes between game versions by checking the commit history or comparing branches.\nTo play any version, specify it in the `pip install` command as demonstrated below.\n\n### General Usage\n\n*Pyglet*, *Cython*, *Pillow*, *PyOgg*, *NumPy*, and *nbtlib* are required dependencies which can easily be installed with *pip*. Use the versions specified in `requirements.txt`.\n*wxPython* is an optional dependency for the level file picker, but if you don't have it then *Tkinter* is used instead.\n\nFor audio to work you will either need *PyOgg* which is recommended, or *FFmpeg* which has to be installed on your system.\n*GStreamer* is also supported on Linux through the *gst-python* library.\nPyOgg requires that your system have one of the Opus, FLAC, or Vorbis codecs.\n*OpenAL* is required and comes bundled with the source on Windows.\n\nFor a manual Cython source build, run `python setup.py build_ext --inplace`.\n\nRun `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.\n\nRun with the argument `-fullscreen` to open the window in fullscreen mode (or press F11 in-game).\nThe argument `-creative` will force the game to be in creative mode.\n\n### Gameplay\n\nAll controls are as you would expect for the game and they can be configured in the options menu.\nPress I to open your inventory, F5 to toggle rain and F7 to take a cool isometric screenshot.\n\nSmelting is unique in early Indev: to get iron or gold ingots, light the dropped ores on fire or throw them in lava.\n\nThe Indev level generator is customizable and you can choose between the *Inland*, *Island*, *Floating*, and *Flat* level types.\nYou can specify the world theme as *Normal* or *Hell* (lava and dirt instead of water and grass), world size, and world shape (*Square*, *Long*, *Deep*).\n\nLevels can be saved to a single *.mclevel* NBT file in the pause menu. The level files are perfectly compatible with Java and vice versa.\n\nHumans may drop string on death, gunpowder, or feathers upon death.\n\nCrafted mushroom bowl soup will restore health. Check the Wiki for crafting recipes added in this version.\n\n![Isometric screenshot](/map.png?raw=true)\n\n*An isometric screenshot of a normal Island map generated by the game, with several spawn houses from map loading.*\n\n### Additional Notes\n\nThe `mc.resources` directory contains all of the textures and sounds that this version uses. However,\nthe textures are only there for convenience, as all of the texture buffers are already preloaded\nin the `mc.Resources` module.\n\nThis would have been much more challenging to work on without the great tools provided by [RetroMCP-Java](https://github.com/MCPHackers/RetroMCP-Java).\n\nAll credit for Minecraft goes towards its creator Notch and Mojang Specifications.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpythonengineer%2Fminecraft-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpythonengineer%2Fminecraft-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpythonengineer%2Fminecraft-python/lists"}