Skip to main content

anvil-parser2

Documentation Status Tests PyPI - Downloads

A parser for the Minecraft anvil file format. This package was forked from matcool's anvil-parser in order to additionally support minecraft versions 1.18 and above.

Installation

pip install anvil-parser2

Usage

Reading

import anvil

region = anvil.Region.from_file('r.0.0.mca')

# You can also provide the region file name instead of the object
chunk = anvil.Chunk.from_region(region, 0, 0)

# If `section` is not provided, will get it from the y coords
# and assume it's global
block = chunk.get_block(0, 0, 0)

print(block) # <Block(minecraft:air)>
print(block.id) # air
print(block.properties) # {}

Making own regions

import anvil
from random import choice

# Create a new region with the `EmptyRegion` class at 0, 0 (in region coords)
region = anvil.EmptyRegion(0, 0)

# Create `Block` objects that are used to set blocks
stone = anvil.Block('minecraft', 'stone')
dirt = anvil.Block('minecraft', 'dirt')

# Make a 16x16x16 cube of either stone or dirt blocks
for y in range(16):
    for z in range(16):
        for x in range(16):
            region.set_block(choice((stone, dirt)), x, y, z)

# Save to a file
region.save('r.0.0.mca')

Todo

things to do before 1.0.0

  • Proper documentation
  • Biomes
  • CI
  • More tests
    • Tests for 20w17a+ BlockStates format

Note

Testing done in 1.14.4 - 1.19, should work fine for other versions. Writing chunks and regions is broken from 1.16 onwards

Metadata

Release files for anvil-parser2 0.10.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for anvil-parser2 0.10.6
File Size Uploaded
anvil-parser2-0.10.6.tar.gz 29.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for anvil-parser2 0.10.6
File Interpreter ABI Platform
anvil_parser2-0.10.6-py3-none-any.whl Python 3 none any Details

Total release size: 60.9 kB

Release files / anvil-parser2-0.10.6.tar.gz

Download URL anvil-parser2-0.10.6.tar.gz
Size 29.0 kB
Tags Source
SHA-256 checksum
How to use checksums
cbbc228d1a932251ee979ddcd1f77ab99eb2683fa57493eb37d309e10224d615
BLAKE2b-256 checksum
How to use checksums
14201ee0d7015488e24c8919818efe89908ae14fd787c355779ba9cd71aa7bea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.10.12

Release files / anvil_parser2-0.10.6-py3-none-any.whl

Download URL anvil_parser2-0.10.6-py3-none-any.whl
Size 31.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
72fc98c0b1f177fef4e60d3f42862c9c155d4609aa5a653d80335537dac99f4e
BLAKE2b-256 checksum
How to use checksums
801523d22159c5699f5394ec1847adbf98c54aa9331ab2ce83748787d20ac5ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.10.12

Release history Release notifications | RSS feed

This release

0.10.6 This release

2 release files

0.10.5

2 release files

0.10.4

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page