minecraft Package¶
Contents
minecraft Package¶
Minecraft-related NBTParse modules.
The modules in this package all relate to high-level files and data
structures. For instance, nbtparse.minecraft.level contains the
LevelFile class, which can read and write the level.dat
file in a standard Minecraft save.
block_ids Module¶
Module for looking up blocks, items, entities, etc. by name or number.
Lookups should be performed by whatever Namespace object is
appropriate. The vanilla namespace lives in VANILLA, but some mods add
their own custom blocks.
-
class
nbtparse.minecraft.block_ids.BlockID(*, name: str=None, block_number: int=None, light: int=0, transparent: bool=False, opacity: int=None, physics: bool=False)[source]¶ Bases:
objectInformation about a block ID.
-
block_number¶ The number used internally when storing this block in terrain.
-
light¶ The amount of light this block emits.
-
name¶ The name of this ID, or None if no name was specified.
Named objects are renamed when placed into a namespace.
-
opacity¶ The amount of light this block impedes.
None if
transparentis False.
-
physics¶ True if this block falls by itself.
-
transparent¶ Whether this block is transparent.
-
-
class
nbtparse.minecraft.block_ids.Namespace(contents: {<class 'str'>: <class 'nbtparse.minecraft.block_ids.BlockID'>}, numericals: {<class 'int'>: <class 'str'>})[source]¶ Bases:
collections.abc.MappingA Minecraft namespace.
Namespaces associate block names and numbers with each other, and store additional information about blocks, items, and entities.
A namespace maps names and numbers to instances of the various FooID classes defined in the ids module. Iterating over a namespace will only produce the names, since every numbered block also has a name.
-
nbtparse.minecraft.block_ids.VANILLA= <Namespace (block_ids): 174 names>¶ The namespace containing all vanilla blocks.
May be None if the config file cannot be loaded.
-
nbtparse.minecraft.block_ids.read_config(infile: io.TextIOBase) → nbtparse.minecraft.block_ids.Namespace[source]¶ Read a configuration file and produce a namespace dictionary.
Return a suitable argument to
register_namespace().Config file format is simple JSON, encoded in UTF-8:
{ "stone": { "id": 1, "item_identifier": { "id": 1, "item_identifier": null, "max_stack": 64, "type": "item" } "light": 0, "opacity": null, "transparent": false, "type": "block" } }Null values may be omitted, except that id and type are mandatory and must not be null.
If the above format is not followed or the file is invalid JSON, a
ParserErroris raised.
-
nbtparse.minecraft.block_ids.write_config(outfile: io.TextIOBase, namespace: nbtparse.minecraft.block_ids.Namespace, *, pprint=False)[source]¶ Write a configuration file.
Use a format suitable for
read_config(). Nulls are omitted.
entity Module¶
Classes for Minecraft entities.
-
class
nbtparse.minecraft.entity.CoordinateField(nbt_name: str, has_y: bool, fractional: bool)[source]¶ Bases:
nbtparse.semantics.fields.TupleListFieldField for a
TAG_Listof coordinates.Pythonic equivalent is a tuple with two or three elements depending on whether or not Y is included. Elements may be ints or floats depending on the underlying datatype.
-
class
nbtparse.minecraft.entity.Entity(*args, **kwargs)[source]¶ Bases:
nbtparse.semantics.nbtobject.NBTObjectA Minecraft entity.
Subclasses of
Entitymay be declared with an extra parameter like this:class Foo(Entity, id='Foo'): pass
Such subclasses have an ID field attached to them automatically, with an appropriate default value.
Entities are hashable and compare equal if they have the same UUID (and the same
type()).-
air_ticks= ShortField('Air', default=0)¶
-
dimension= IntField('Dimension', default=0)¶
-
fall_distance= FloatField('FallDistance', default=0.0)¶
-
fire_ticks= ShortField('Fire', default=0)¶
-
id= UnicodeField('id', default='')¶
-
invulnerable= BooleanField('Invulnerable', default=False)¶
-
motion= CoordinateField('Motion', True, True)¶
-
mount= NBTObjectField('Riding', Entity, default=None)¶
-
on_ground= BooleanField('OnGround', default=False)¶
-
portal_cooldown= IntField('PortalCooldown', default=0)¶
-
pos= CoordinateField('Pos', True, True)¶
-
rotation= CoordinateField('Rotation', False, True)¶
-
uuid= UUIDField('UUIDMost', 'UUIDLeast', default=nbtparse.semantics.fields.NEW_UUID)¶
-
-
class
nbtparse.minecraft.entity.EntityMeta(name, bases, dct, *args, id=None, namespace='', **kwargs)[source]¶ Bases:
nbtparse.semantics.nbtobject.NBTMetaMetaclass for entities.
The ID of the entity should be passed as a class keyword argument called id, as follows:
class FooEntity(Entity, id='namespace:foo'): pass
This will create a top-level field with the given string as its default value, for the entity’s ID. If the class is declared at the top level of its module, this will also register it via
entity_ids, in theEntityNamespacecalled'namespace'. If no namespace is specified, the empty string is assumed.Note
The empty string namespace is reserved for use by application code. Third-party libraries should always specify a namespace. The namespace
'minecraft'is reserved for entities which exist in vanilla Minecraft.
entityfactory Module¶
Module for producing entity.Entity instances.
-
nbtparse.minecraft.entityfactory.from_nbt(nbt: nbtparse.syntax.tags.CompoundTag, *, default_class: nbtparse.semantics.nbtobject.NBTMeta=<class 'nbtparse.minecraft.entity.Entity'>, namespace: nbtparse.minecraft.entity_ids.Namespace=<Namespace (entity_ids): 58 entries>) → nbtparse.semantics.nbtobject.NBTObject[source]¶ Factory function for making entities and tile entities from raw NBT.
Uses appropriate subclasses (usually of
EntityandTileEntity) where necessary. The choice of subclass is made via theentity_idsmodule, and may be altered by registering classes and modules with it.Tries to defend against invalid input. If there is no ID or the ID is unrecognized, a warning will be logged on the module’s logger, and a plain instance of default_class is returned instead.
entity_ids Module¶
-
class
nbtparse.minecraft.entity_ids.Namespace(*args, **kwargs)[source]¶ Bases:
collections.abc.MappingImmutable namespace of entities.
Maps identifier strings to classes. Temporary classes are kept alive by being in the mapping.
-
nbtparse.minecraft.entity_ids.VANILLA= <Namespace (entity_ids): 58 entries>¶ The
Namespacecontaining all vanilla entities.
-
nbtparse.minecraft.entity_ids.make_namespace(*modules: module) → nbtparse.minecraft.entity_ids.Namespace[source]¶ Return a
Namespacecreated from the given modules.All classes which have been declared at the top level or decorated with
register_class()are included in the namespace.
item Module¶
Classes for items and XP orbs.
-
class
nbtparse.minecraft.item.DroppedItem(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.item.ItemEntityAn item dropped on the ground.
-
id= UnicodeField('id', default='Item')¶
-
item= NBTObjectField('Item', Item, default=None)¶
-
-
class
nbtparse.minecraft.item.Item(*args, **kwargs)[source]¶ Bases:
nbtparse.semantics.nbtobject.NBTObjectAn inventory item.
Not an entity; only stores item-related information.
-
count= ByteField('Count', default=0)¶
-
damage= ShortField('Damage', default=0)¶
-
id= UnicodeField('id', default='')¶
-
slot= ByteField('Slot', default=0)¶
-
-
class
nbtparse.minecraft.item.ItemEntity(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.entity.EntitySuperclass of dropped item and XP orbs.
-
age= ShortField('Age', default=0)¶
-
health= ShortField('Health', default=0)¶
-
-
class
nbtparse.minecraft.item.XPOrb(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.item.ItemEntityAn experience orb.
-
id= UnicodeField('id', default='XPOrb')¶
-
value= ShortField('Value', default=0)¶
-
level Module¶
-
class
nbtparse.minecraft.level.LevelFile(*args, **kwargs)[source]¶ Bases:
nbtparse.semantics.filetype.GzippedNBTFileRepresents a
level.datfile.-
cheats= BooleanField('allowCommands', default=False)¶
-
features= BooleanField('MapFeatures', default=False)¶
-
game_type= IntField('GameType', default=0)¶
-
generator= UnicodeField('generatorName', default='')¶
-
generator_options= UnicodeField('generatorOptions', default='')¶
-
generator_version= IntField('generatorVersion', default=0)¶
-
hardcore= BooleanField('hardcore', default=False)¶
-
initialized= BooleanField('initialized', default=False)¶
-
last_played= UTCField('LastPlayed', default=datetime.datetime(1970, 1, 1, 0, 0, tzinfo=datetime.timezone.utc))¶
-
name= UnicodeField('LevelName', default='')¶
-
player= NBTObjectField('Player', Player, default=None)¶
-
static
prepare_load(nbt: nbtparse.syntax.tags.CompoundTag) → nbtparse.syntax.tags.CompoundTag[source]¶ Unwrap the argument.
-
static
prepare_save(nbt: nbtparse.syntax.tags.CompoundTag) → nbtparse.syntax.tags.CompoundTag[source]¶ Wrap the argument in a singleton CompoundTag.
-
rain_time= IntField('rainTime', default=0)¶
-
raining= BooleanField('raining', default=False)¶
-
rules= <SingleField: nbt_name='GameRules', default=None>¶
-
seed= LongField('RandomSeed', default=0)¶
-
size= LongField('SizeOnDisk', default=0)¶
-
spawn= <TupleMultiField: nbt_names=('SpawnX', 'SpawnY', 'SpawnZ'), default=(0, 0, 0)>¶
-
thunder_time= IntField('thunderTime', default=0)¶
-
thundering= BooleanField('thundering', default=False)¶
-
ticks= LongField('Time', default=0)¶
-
time_of_day= LongField('DayTime', default=0)¶
-
version= IntField('version', default=0)¶
-
mobs Module¶
All the mobs in vanilla minecraft.
-
class
nbtparse.minecraft.mobs.Abilities(*args, **kwargs)[source]¶ Bases:
nbtparse.semantics.nbtobject.NBTObjectA set of abilities for a player.
-
fly_speed= FloatField('flySpeed', default=0.0)¶
-
flying= BooleanField('flying', default=False)¶
-
instabuild= BooleanField('instabuild', default=False)¶
-
invulnerable= BooleanField('invulnerable', default=False)¶
-
may_build= BooleanField('mayBuild', default=False)¶
-
may_fly= BooleanField('mayfly', default=False)¶
-
walk_speed= FloatField('walkSpeed', default=0.0)¶
-
-
class
nbtparse.minecraft.mobs.Attribute(*args, **kwargs)[source]¶ Bases:
nbtparse.semantics.nbtobject.NBTObjectAn attribute, usually attached to a mob.
-
base= DoubleField('Base', default=0.0)¶
-
modifiers= ObjectListField('Modifiers', Modifier, default=())¶
-
name= UnicodeField('Name', default='')¶
-
-
class
nbtparse.minecraft.mobs.Bat(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA bat.
A small flying mob. Drops nothing.
-
hanging= BooleanField('BatFlags', default=False)¶
-
id= UnicodeField('id', default='Bat')¶
-
-
class
nbtparse.minecraft.mobs.Blaze(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA blaze.
Flying ranged mob that shoots fire.
-
id= UnicodeField('id', default='Blaze')¶
-
-
class
nbtparse.minecraft.mobs.Breedable(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA mob which can be bred.
-
age= IntField('Age', default=0)¶
-
in_love= IntField('InLove', default=0)¶
-
-
class
nbtparse.minecraft.mobs.CaveSpider(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA cave spider.
A small poisonous spider.
-
id= UnicodeField('id', default='CaveSpider')¶
-
-
class
nbtparse.minecraft.mobs.Chicken(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.BreedableA chicken.
Small mob. Lays eggs and drops feathers.
-
id= UnicodeField('id', default='Chicken')¶
-
-
class
nbtparse.minecraft.mobs.Cow(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.BreedableA cow.
Large mob. Produces milk. Drops leather and beef.
-
id= UnicodeField('id', default='Cow')¶
-
-
class
nbtparse.minecraft.mobs.Creeper(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobThe infamous creeper.
A 2-block tall hostile mob with an explosive attack that destroys blocks.
-
explosion_radius= ByteField('ExplosionRadius', default=0)¶
-
fuse= ShortField('Fuse', default=0)¶
-
id= UnicodeField('id', default='Creeper')¶
-
powered= BooleanField('powered', default=False)¶
-
-
class
nbtparse.minecraft.mobs.EnderDragon(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobThe Ender Dragon.
The final boss.
-
id= UnicodeField('id', default='EnderDragon')¶
-
-
class
nbtparse.minecraft.mobs.Enderman(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobAn enderman.
Endermen are 3-block tall neutral mobs that can carry blocks around.
-
carried= ShortField('carried', default=0)¶
-
carried_data= ShortField('carriedData', default=0)¶
-
id= UnicodeField('id', default='Enderman')¶
-
-
class
nbtparse.minecraft.mobs.Ghast(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA ghast.
A large floating mob that shoots fireballs and breaks blocks.
-
id= UnicodeField('id', default='Ghast')¶
-
-
class
nbtparse.minecraft.mobs.Giant(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA giant.
A very large zombie.
Doesn’t spawn naturally.
-
id= UnicodeField('id', default='Giant')¶
-
-
class
nbtparse.minecraft.mobs.HealthField(short_name: str, float_name: str, default: numbers.Real=0)[source]¶ Bases:
nbtparse.semantics.fields.MultiFieldA field for a mob’s health.
-
class
nbtparse.minecraft.mobs.Horse(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.BreedableA horse.
A tall rideable mob.
-
armor= NBTObjectField('ArmorItem', Item, default=None)¶
-
bred= BooleanField('Bred', default=False)¶
-
chested= BooleanField('ChestedHorse', default=False)¶
-
eating= BooleanField('EatingHaystack', default=False)¶
-
has_reproduced= BooleanField('HasReproduced', default=False)¶
-
id= UnicodeField('id', default='EntityHorse')¶
-
items= ObjectListField('Items', Item, default=())¶
-
owner_name= UnicodeField('OwnerName', default='')¶
-
saddle= NBTObjectField('SaddleItem', Item, default=None)¶
-
tame= BooleanField('Tame', default=False)¶
-
temper= IntField('Temper', default=0)¶
-
type= EnumField('Type', <enum 'HorseType'>, tag_type=<class 'nbtparse.syntax.tags.IntTag'>, default=<HorseType.horse: 0>)¶
-
variant= IntField('Variant', default=0)¶
-
-
class
nbtparse.minecraft.mobs.HorseType[source]¶ Bases:
enum.EnumThe valid values for
Horse.type.-
donkey= <HorseType.donkey: 1>¶ Indicates a donkey.
-
horse= <HorseType.horse: 0>¶ Indicates a regular horse.
-
mule= <HorseType.mule: 2>¶ Indicates a mule.
-
skeleton= <HorseType.skeleton: 4>¶ Indicates a skeleton horse; not naturally spawned.
-
zombie= <HorseType.zombie: 3>¶ Indicates a zombie horse; not naturally spawned.
-
-
class
nbtparse.minecraft.mobs.IronGolem(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobAn iron golem.
A large defensive mob that also spawns naturally to protect villages.
-
id= UnicodeField('id', default='VillagerGolem')¶
-
player_created= BooleanField('PlayerCreated', default=False)¶
-
-
class
nbtparse.minecraft.mobs.Leash(*args, **kwargs)[source]¶ Bases:
nbtparse.semantics.nbtobject.NBTObjectA leash for a mob.
Only represents one “end” of the leash
Exactly one of uuid and coords should exist.
-
coords= <TupleMultiField: nbt_names=('X', 'Y', 'Z'), default=(0, 0, 0)>¶
-
uuid= UUIDField('UUIDMost', 'UUIDLeast', default=None)¶
-
-
class
nbtparse.minecraft.mobs.MagmaCube(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.SlimeA magma cube.
A slime from The Nether.
-
id= UnicodeField('id', default='LavaSlime')¶
-
-
class
nbtparse.minecraft.mobs.Mob(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.entity.EntityA mob, in minecraft terms.
Do not instantiate directly, instead use a subclass.
-
absorption= FloatField('AbsorptionAmount', default=0.0)¶
-
active_effects= ObjectListField('ActiveEffects', PotionEffect, default=())¶
-
attack_ticks= ShortField('AttackTime', default=0)¶
-
attributes= ObjectListField('Attributes', Attribute, default=())¶
-
can_pickup_loot= BooleanField('CanPickUpLoot', default=False)¶
-
death_ticks= ShortField('DeathTime', default=0)¶
-
drop_chances= TupleListField('DropChances', <class 'float'>, <class 'nbtparse.syntax.tags.FloatTag'>, <ids.TAG_Float: 5>, default=(0.0, 0.0, 0.0, 0.0, 0.0))¶
-
equipment= ObjectTupleField('Equipment', <class 'nbtparse.minecraft.item.Item'>, default=())¶
-
health= HealthField('Health', 'HealthF', default=0)¶
-
hurt_ticks= ShortField('HurtTime', default=0)¶
-
leash= NBTObjectField('Leash', Leash, default=None)¶
-
leashed= BooleanField('Leashed', default=False)¶
-
name= UnicodeField('CustomName', default='')¶
-
name_visible= BooleanField('CustomNameVisible', default=False)¶
-
persistent= BooleanField('PersistenceRequired', default=False)¶
-
-
class
nbtparse.minecraft.mobs.Modifier(*args, **kwargs)[source]¶ Bases:
nbtparse.semantics.nbtobject.NBTObjectAn attribute modifier.
-
amount= DoubleField('Amount', default=0.0)¶
-
name= UnicodeField('Name', default='')¶
-
operation= IntField('Operation', default=0)¶
-
uuid= UUIDField('UUIDMost', 'UUIDLeast', default=None)¶
-
-
class
nbtparse.minecraft.mobs.Mooshroom(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.BreedableA Mooshroom (mushroom-cow)
Like the cow, but produces mushroom stew instead of milk. Can be shorn into a regular cow, dropping mushrooms.
-
id= UnicodeField('id', default='MushroomCow')¶
-
-
class
nbtparse.minecraft.mobs.Ocelot(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.Tameable,nbtparse.minecraft.mobs.BreedableAn ocelot.
A tameable mob.
-
cat_type= IntField('CatType', default=0)¶
-
id= UnicodeField('id', default='Ozelot')¶
-
-
class
nbtparse.minecraft.mobs.Offer(*args, **kwargs)[source]¶ Bases:
nbtparse.semantics.nbtobject.NBTObjectAn individual villager offer.
-
buy= NBTObjectField('buy', Item, default=None)¶
-
buy_secondary= NBTObjectField('buyB', Item, default=None)¶
-
max_uses= IntField('maxUses', default=0)¶
-
sell= NBTObjectField('sell', Item, default=None)¶
-
uses= IntField('uses', default=0)¶
-
-
class
nbtparse.minecraft.mobs.OfferList(*args, **kwargs)[source]¶ Bases:
nbtparse.semantics.nbtobject.NBTObject,collections.abc.MutableSequenceList of offers a villager has.
For convenience, sequence-related functionality is redirected to self.recipes.
-
recipes= ObjectListField('Recipes', Offer, default=())¶
-
-
class
nbtparse.minecraft.mobs.OfferListMeta[source]¶ Bases:
abc.ABCMeta,nbtparse.semantics.nbtobject.NBTMetaMetaclass for
OfferList.
-
class
nbtparse.minecraft.mobs.Pig(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.BreedableA pig.
A short mob that drops porkchops.
-
id= UnicodeField('id', default='Pig')¶
-
saddle= BooleanField('Saddle', default=False)¶
-
-
class
nbtparse.minecraft.mobs.Player(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.Mob,nbtparse.semantics.filetype.GzippedNBTFileA player, and the accompanying player.dat file.
-
abilities= NBTObjectField('abilities', Abilities, default=None)¶
-
dimension= IntField('Dimension', default=0)¶
-
ender_items= ObjectListField('EnderItems', Item, default=())¶
-
food_exhaustion= IntField('foodExhaustionLevel', default=0)¶
-
food_level= IntField('foodLevel', default=0)¶
-
food_saturation= IntField('foodSaturationLevel', default=0)¶
-
food_timer= IntField('foodTickTimer', default=0)¶
-
inventory= ObjectListField('Inventory', Item, default=())¶
-
mode= IntField('playerGameType', default=0)¶
-
score= IntField('Score', default=0)¶
-
selected_item_slot= IntField('SelectedItemSlot', default=0)¶
-
sleep_timer= ShortField('SleepTimer', default=0)¶
-
sleeping= BooleanField('Sleeping', default=False)¶
-
spawn= <TupleMultiField: nbt_names=('SpawnX', 'SpawnY', 'SpawnZ'), default=(0, 0, 0)>¶
-
spawn_forced= BooleanField('SpawnForced', default=False)¶
-
xp_level= IntField('XpLevel', default=0)¶
-
xp_progress= IntField('XpP', default=0)¶
-
xp_total= IntField('XpTotal', default=0)¶
-
-
class
nbtparse.minecraft.mobs.PotionEffect(*args, **kwargs)[source]¶ Bases:
nbtparse.semantics.nbtobject.NBTObjectA potion effect, usually attached to a mob.
-
ambient= BooleanField('Ambient', default=False)¶
-
amplifier= ByteField('Amplifier', default=0)¶
-
duration= IntField('Duration', default=0)¶
-
id= ByteField('id', default=0)¶
-
-
class
nbtparse.minecraft.mobs.Sheep(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.BreedableA sheep.
A mob that can be shorn for wool.
-
color= ByteField('Color', default=0)¶
-
id= UnicodeField('id', default='Sheep')¶
-
sheared= BooleanField('Sheared', default=False)¶
-
-
class
nbtparse.minecraft.mobs.Silverfish(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA silverfish.
Small swarming mob that hides in tile entities.
-
id= UnicodeField('id', default='Silverfish')¶
-
-
class
nbtparse.minecraft.mobs.Skeleton(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA skeleton.
A ranged mob with a bow and arrows.
-
id= UnicodeField('id', default='Skeleton')¶
-
wither= BooleanField('SkeletonType', default=False)¶
-
-
class
nbtparse.minecraft.mobs.Slime(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA slime.
A variable-sized mob which divides on death.
-
id= UnicodeField('id', default='Slime')¶
-
size= IntField('Size', default=0)¶
-
-
class
nbtparse.minecraft.mobs.SnowGolem(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA snow golem (snowman).
A mob that throws snowballs at hostile mobs.
-
id= UnicodeField('id', default='SnowMan')¶
-
-
class
nbtparse.minecraft.mobs.Spider(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA spider.
A large short mob that can climb walls.
-
id= UnicodeField('id', default='Spider')¶
-
-
class
nbtparse.minecraft.mobs.Squid(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA squid.
An underwater mob that drops ink sacs.
-
id= UnicodeField('id', default='Squid')¶
-
-
class
nbtparse.minecraft.mobs.Tameable(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA mob which can be tamed.
Horses are not tamed conventionally and are not Tameable.
-
owner= UnicodeField('Owner', default='')¶
-
sitting= BooleanField('Sitting', default=False)¶
-
-
class
nbtparse.minecraft.mobs.Villager(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.BreedableA villager.
A passive mob that players can trade with.
-
id= UnicodeField('id', default='Villager')¶
-
offers= NBTObjectField('Offers', OfferList, default=None)¶
-
profession= EnumField('Profession', <enum 'VillagerProfession'>, tag_type=<class 'nbtparse.syntax.tags.IntTag'>, default=None)¶
-
riches= IntField('Riches', default=0)¶
-
-
class
nbtparse.minecraft.mobs.VillagerProfession[source]¶ Bases:
enum.EnumThe valid values for
Villager.profession.-
butcher= <VillagerProfession.butcher: 4>¶ A butcher, with a white apron.
-
farmer= <VillagerProfession.farmer: 0>¶ A farmer, with a brown robe.
-
generic= <VillagerProfession.generic: 5>¶ A “generic” villager, with a green robe. Not spawned naturally.
-
librarian= <VillagerProfession.librarian: 1>¶ A librarian, with a white robe.
-
priest= <VillagerProfession.priest: 2>¶ A priest, with a purple robe.
-
smith= <VillagerProfession.smith: 3>¶ A blacksmith, with a black apron.
-
-
class
nbtparse.minecraft.mobs.Witch(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA witch.
A ranged mob that throws potions.
-
id= UnicodeField('id', default='Witch')¶
-
-
class
nbtparse.minecraft.mobs.Wither(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA wither.
A boss mob the player has to construct from wither skeletons.
-
id= UnicodeField('id', default='WitherBoss')¶
-
invulnerable= IntField('Invul', default=0)¶
-
-
class
nbtparse.minecraft.mobs.Wolf(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.Breedable,nbtparse.minecraft.mobs.Tameable-
angry= BooleanField('Angry', default=False)¶
-
collar_color= ByteField('CollarColor', default=0)¶
-
id= UnicodeField('id', default='Wolf')¶
-
-
class
nbtparse.minecraft.mobs.Zombie(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.MobA zombie.
A mob that can convert villagers into more zombies.
-
conversion_time= IntField('ConversionTime', default=0)¶
-
id= UnicodeField('id', default='Zombie')¶
-
is_baby= BooleanField('IsBaby', default=False)¶
-
is_villager= BooleanField('IsVillager', default=False)¶
-
-
class
nbtparse.minecraft.mobs.ZombiePigman(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.mobs.Zombie-
anger= ShortField('Anger', default=0)¶
-
id= UnicodeField('id', default='PigZombie')¶
-
projectile Module¶
Classes for projectiles, such as snowballs and arrows.
-
class
nbtparse.minecraft.projectile.AbstractFireball(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.projectile.ProjectileAny fireball-like thing.
-
direction= TupleListField('direction', <class 'float'>, <class 'nbtparse.syntax.tags.DoubleTag'>, <ids.TAG_Double: 6>, default=(0.0, 0.0, 0.0))¶
-
-
class
nbtparse.minecraft.projectile.Arrow(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.projectile.ProjectileAn arrow.
Fired by a player or a skeleton.
-
damage= DoubleField('damage', default=0.0)¶
-
id= UnicodeField('id', default='Arrow')¶
-
in_data= ByteField('inData', default=0)¶
-
pickup= IntField('pickup', default=0)¶
-
player= BooleanField('player', default=False)¶
-
-
class
nbtparse.minecraft.projectile.Egg(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.projectile.ProjectileA thrown egg.
-
id= UnicodeField('id', default='Egg')¶
-
-
class
nbtparse.minecraft.projectile.Fireball(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.projectile.AbstractFireballA regular fireball.
-
id= UnicodeField('id', default='Fireball')¶
-
-
class
nbtparse.minecraft.projectile.Projectile(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.entity.EntityA projectile.
A fast-moving entity like an arrow or snowball.
-
coords= <TupleMultiField: nbt_names=('xTile', 'yTile', 'zTile'), default=(0, 0, 0)>¶
-
in_ground= BooleanField('inGround', default=False)¶
-
in_tile= ByteField('inTile', default=0)¶
-
shake= ByteField('shake', default=0)¶
-
-
class
nbtparse.minecraft.projectile.SmallFireball(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.projectile.AbstractFireballA small fireball.
-
id= UnicodeField('id', default='SmallFireball')¶
-
-
class
nbtparse.minecraft.projectile.Thrown(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.projectile.ProjectileAnything thrown by players (and only players).
-
owner_name= UnicodeField('ownerName', default='')¶
-
-
class
nbtparse.minecraft.projectile.ThrownEnderpearl(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.projectile.ThrownA thrown enderpearl.
Teleports the player on landing.
-
id= UnicodeField('id', default='ThrownEnderpearl')¶
-
-
class
nbtparse.minecraft.projectile.ThrownExpBottle(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.projectile.ThrownA thrown Bottle o’ Enchanting.
-
id= UnicodeField('id', default='ThrownExpBottle')¶
-
-
class
nbtparse.minecraft.projectile.ThrownPotion(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.projectile.ThrownA thrown splash potion.
-
id= UnicodeField('id', default='ThrownPotion')¶
-
potion= NBTObjectField('Potion', Item, default=None)¶
-
potion_value= IntField('potionValue', default=0)¶
-
-
class
nbtparse.minecraft.projectile.ThrownSnowball(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.projectile.ThrownA thrown snowball.
-
id= UnicodeField('id', default='Snowball')¶
-
-
class
nbtparse.minecraft.projectile.WitherSkull(*args, **kwargs)[source]¶ Bases:
nbtparse.minecraft.projectile.AbstractFireballA wither skull.
-
id= UnicodeField('id', default='WitherSkull')¶
-