The first snapshot for 1.14 “Village & Pillage” is here, and oh boy, it’s a big one! With new items, new blocks, new mobs, new blocks, new enchantments, new blocks, new mechanics, even more new blocks, new commands, and not to forget all the new blocks – we’re pretty confident there’s something for everyone in this snapshot!

Best of all, this is just the first one! We have so many things coming to future snapshots, most of which you guys don’t even know about yet! Hurray!

However, as always the first snapshot is always the riskiest. We’re rewriting big chunks of the game with hopes of focusing on performance soon, so stability might be a little wonky at first. Please backup before opening your favourite worlds!

We’ve got a huge changelog for this snapshot, which we’re really proud of. If you scroll all the way to the bottom you’ll find instructions on how to play (spoiler: start up your launcher and enable snapshots!)

Now, without further ado, we present to you… a changelog!

Improved stuttering in client & server
Improved performance! Still not quite where we want to be but this should help.
Stopped the mob-cap from growing infinitely
Added server tick-times to alt+f3 charts (in singleplayer)
Added min/avg/max tick-times to alt+f3 charts (helps find stutters!)
MC-137903 – /fill command doesn’t update light on client side
MC-137715 – /drop dropping minecraft:empty 1 time for player causes unexpected error
MC-137706 – Selecting obfuscated text in book crashes the game
MC-137697 – NBT list using “interpret” not comma delimited
MC-137602 – Block models do not render using Java 10 (ConcurrentModificationException)
MC-137580 – Shulker Boxes reset assortment of inventory when broken then placed down again.
MC-137571 – Cursor becomes misaligned after using ‘§’ in book & quill
MC-137537 – Walking into a different chunk causes lag
MC-137521 – Entities become invisible on low render distance
MC-137497 – Hundreds of mobs spawning
MC-137487 – Crash: Ticking memory connection – java.lang.ArrayIndexOutOfBoundsException: -1
We found a few memory leaks in the client and cleaned them up!
Some textures were outdated and have been replaced with the proper new ones
MC-137530 – Inserted text for %s in a translation string shows ‘null’
MC-137492 – Spruce trees drop leaves instead of saplings
MC-137457 – Crash upon opening the F3 menu
MC-137454 – Opening Loom GUI doesn’t darken surrounding background
MC-137443 – A few effect icons are swapped/missing
Added Bamboo Blocks into the game
Added Bamboo Jungles in the world
Rewrote the book & quill editing to be more intuitive
Added Crossbows!
Added lots of new decorative blocks!
Added new dyes and flowers!
Added some community suggestions
Updated the credits list
Added in-game buttons for reporting bugs or giving feedback
Added Illager Beast
Added Loom into the game
Special banner patterns can now be crafted into a new item, Banner Patterns
We’re now using the new textures!
Added pandas!
Added Pillagers
Added suspicious stew – hmmmm!
They call it exotic. Which is just people talk for awesome. Which it is, which is why we’re so happy that we added it to the game.

Can be found in Jungles and the two new biomes: Bamboo Jungle and Bamboo Jungle Hills
Can grow to a max height between 12 and 16 blocks
When bonemealed, bamboo will grow a 1-2 bamboo on the top
When struck with a sword, bamboo will instantly break
Two bamboo can be crafted into a single stick
Able to be used as fuel with 4 bamboo able to smelt a single item
Bamboo is able to be placed into Flower Pots
Bamboo can now be found in Shipwrecks and Jungle Temples
As it turns out, you guys have great suggestions!

Leaves now have a small chances to drop sticks.
Chorus Fruit Flowers now break when shot by an arrow.
Dead Bushes can now be used as Furnace fuel.
Rabbit Stew and Beetroot Soup has now been changed to a shapeless recipe.
Creepers will now drop records when killed by Stray in addition to Skeletons.
Dispensers with Shears in them will now shear sheep that have wool in front of them.
This is such a fun weapon that it makes us quiver!

Shoots arrows with base power slightly higher than the bow, but less durability
Three unique enchantments!
Fun, challenging advancements!
New loading mechanics!
Unique load animation!
Choose between the following three enchantments for your crossbow:
Ever wanted to shoot more than one arrow at once? Look no further! With Multishot, your crossbow splits your arrow into 3, shooting the usual arrow straight ahead and two more at angles off to the sides!
Cannot be combined with Piercing
With this pointy enchantment, arrows shot from your crossbow can travel through mobs, hitting more than one per shot
The number of mobs that can be damaged by a single arrow is equal to the level of this enchantment + 1
Cannot be combined with Multishot
Each level of quick charge decreases the amount of time it takes to fully charge your crossbow by .25 seconds
To charge the crossbow, hold down the “Use” button
Once the crossbow string has been pulled all the way back, let go
Boom! Your crossbow is now loaded and ready to shoot with a single click of the “Use” button
Oh my, a bunch of new blocks!

Changed all existing Stone Slabs to Smooth Stone Slabs (same look, new name!)
Changed all existing signs to Oak Signs (same look, new name!)
Made Smooth Stone Slabs craftable from Smooth Stone
Added spruce, birch, jungle, acacia and dark oak signs
Added Stone stairs and slabs
Added Granite stairs, slabs and walls
Added Polished Granite stairs and slabs
Added Diorite stairs, slabs and walls
Added Polished Diorite stairs and slabs
Added Andesite stairs, slabs and walls
Added Polished Andesite stairs and slabs
Added Sandstone walls
Added Smooth Red Sandstone stairs and slabs
Added Smooth Quartz stairs and slabs
Added Brick walls
Added Stone Brick walls
Added Mossy Stone Brick stairs, slabs and walls
Added Nether Brick walls
Added End Stone Brick stairs, slabs and walls
Added Prismarine walls
Added Red Sandstone walls
Added Red Nether Brick stairs, slabs and walls
Added Smooth Sandstone stairs and slabs
Added Mossy Cobblestone stairs and slabs
Made Smooth Stone obtainable by smelting Stone
Made Smooth Sandstone obtainable by smelting Sandstone
Made Smooth Red Sandstone obtainable by smelting Red Sandstone
Made Smooth Quartz obtainable by smelting Quartz Block
Changed the recipe of Nether Brick Fence to 4 brick blocks and 2 brick items
Changed the recipe of signs to require all of the same wood type, not any wood type
Dye all the things!

Separated Bone Meal, Ink Sac, Cocoa Beans, and Lapis Lazuli into their own dyes
Unified all dye names (Red, Yellow, and Green dyes no longer have special names)
Added new recipes to obtain coloured stained glass and coloured carpet
Get your green fingers!

To celebrate our new dyes, we added… flowers!
Be careful of the Wither Rose… don’t let its subdued beauty lull you into a false sense of security!
Ravager? Behemoth? Got a name suggestion? Let us know!

Fearsome new foe who packs quite a wallop, grab your sword and shield and prepare to get knocked around!
Bröther, may I have some lööm?

New and easier way of being able to apply patterns to banners, can still only apply 6 max patterns to a banner
Generic patterns now only require 1 dye in order to create patterns instead of 1 – 8 (depending on the pattern)
Special banner patterns (Oxeye Daisy, Creeper Skull, Wither Skeleton Skull, Enchanted Golden Apple) can now be crafted. These patterns don’t consume the pattern item when used in the Loom
Old recipes for banners in the crafting table have been removed
The extraordinary Minecraft Texture Update has been available on for quite a while and now it’s finally available by default in the game

We’re renovating the old textures of Minecraft and polishing them up for a new beginning.
We’re still interested in feedback
Playing on Bedrock ? Don’t worry! These textures will come to the Marketplace in a near future for you to try out!
We heed the call!

Pandas come in different variants and personalities! There is a rumour about a brown panda…
Pandas love bamboo… they kinda like cake as well
Pandas can be bred, and the variants are inherited by a special panda inheritance system
Pandas spawn natuarlly in the new bamboo forest biome
Pandas drop bamboo when killed
Most importantly: pandas are cute and terribly silly!
The babies are, in general, even more silly than their parents.
Pillagers are new type of mob added to the game. For now, it can only be spawned with a spawn egg or commands, but they’ll do more things in a later snapshot.

A new type of illager that, well, pillages!
Pillagers wield a new weapon, the crossbow!
The pen is mightier than the sword! Unless you’re fighting a Pillager…

Movable cursor for free text editing
Selection support
Copy & Paste
Keyboard and Mouse handling
Improved page filling and line wrapping
Increased book length (100 pages)

Found in buried ship treasure chests
Also craftable!
Whoever eats this stew will be imbued with an unknown effect for several seconds!
Whoever crafts the stew will know what effect they gave it
Creative menu search box now accepts tags (starting with #)
Tooltip in creative search menu now lists item’s tags
New item model property custom_model_data, backed directly by CustomModelData integer NBT field
Extended NBT path syntax
New sub-commands for NBT manipulation and querying
New chat component for displaying values from NBT
Added entity type tags. They work exactly the same as other ones (blocks, items and fluids, etc). Stored in tags\entity_types\
Added a feature registry
Added a registry for decorators
Added a registry for carvers
Added a registry for surface builders
Item lore tag now uses chat component syntax
New Light engine!
drop command – drops items in various contexts
Block drops are now controlled by loot tables
Performance Improvements
Added schedule command for delaying execution of functions
Time arguments in time set, time add and schedule function can now have units (t – ticks, s – seconds, d – days). Fractions are allowed as long as result is integer (for example 0.5d)
Entity type predicates now accept tags (#baz)
Damage source predicate now has option: is_lightning.

Entity predicate now accepts flags field. Available tests: is_on_fire, is_sneaking, is_sprinting, is_swimming, is_baby.

Block variant {“nbt”: , “block”:{“x”: “y”:, “z”:}}
Entity variant {“nbt”: , “entity”:}
Additionaly, if field interpret is present and set to true, contents of selected tags will be interpreted as chat components
type field in @ selectors now accepts entity type tags (type=#foo and type=!#bar)
Item frame contents can now be modified with /replaceitem
data modify Apply operation to selected fields
Basic operation: set – replaces value
List operations: insert before index |insert after index|prepend|append
Object operations: merge
from – copies value from existing tag
value – uses NBT literal
General syntax: drop Sources
– `award` – uses advancement award context
– `fish` – uses fishing context
– `loot` – uses loot chest context
– `kill` – simulates entity drops
– `mine` – simulates block drops
– `world` – drops in world
– `player` – puts in player inventory (as if picked)
– `entity` – sets entity slots (same as `replaceitem`)
– `block` – puts (`distribute`, as if shift-clicked) or replaces/merges (`insert`) items in container
execute if data (and execute unless)
when used as command, return count of matched elements
when used as part of command, continues on non-zero(if) or zero(unless) count
Schedules function or tag to run in

Can now return multiple values. When used as target, modification will be applied to every element
When setting location and no elements are found, new matching element will be created:
For example writing to Items[{Slot:10b}] will either found element in Items for slot 10 or create new one
Add [{k1=v1,k2=v2}] to match objects in list that have matching fields
Add {k1=v1,k2=v2} to match objects (selects 0 or 1 elements, mostly as safeguard against mismatched entries)
Allow negative indices in [index] to select element from end (i.e. [-1] is last element, [-2] second to last, etc)
Add [] to select all elements from list
We are de-lighted to have a new light engine!

Moved light storage from chunks to a separate structure
Moved light calculation from all over the code to a self-contained place
Moved light computation off the main thread (on the server)
Block drops are now controlled by loot tables (stored in loot_tables/blocks/)
Tables and pools accept functions
Added new loot table entry types: dynamic, tag, alternatives, sequence, group
Added new loot table functions: apply_bonus, explosion_decay, copy_name, limit_count, set_contents, set_loot_table
Added new loot table conditions: entity_present, survives_explosion, block_state_property, table_bonus, match_tool, tool_enchantment and two special modifiers: inverted and alternative
Integer values can now specify random number generator (available types: constant, uniform, binomial). If omitted, defaults to uniform
Loot tables have optional type, used to validate function usage (available types: empty, chest, fishing, entity, advancement_reward, block). Using function that references data not available in given context (for example, block state in fishing table) will cause warning
New entity parameter in predicates: direct_killer_entity – allows access to projectiles etc.
Now uses same predicate syntax as advancements (like player_killed_entity). Parameters are now described in predicate field.

Joins conditions from parameter terms with “or” (“disjunction”).

Check properties of block state.

block – id of block. Test will fail, if broken block does not match
properties – map of property:value pairs
Checks damage source. Same syntax as entity_properties, but uses damage source predicate (see player_hurt_entity advancement trigger).

Returns true if entity is set (see entity_properties for list of entities).

Inverts condition from parameter term

Applies advancement location predicate.

predicate – predicate applied to location. Uses same structure as advancements.
Checks tool (available for block breaking and fishing).

predicate – predicate applied to item. Uses same structure as advancements.
Return true with 1/explosion radius probability.

Passes with probability picked from table, indexed by enchantment level.

enchantment – id of enchantment
chances – list of probabilities for enchantment level, indexed from 0
No surprise here.

raining – optional boolean
thundering – optional boolean
Tests conditions of child entries and executes first that can run. Has no weight or quality, but may have conditions.

Gets block specific drops. Currently implemented:

minecraft:contents – block entity contents
minecraft:self – for banners and player skulls
Executes child entries when own conditions pass. Has no weight or quality.

Executes child entries until first one that can’t run due to conditions. Has no weight or quality, but may have conditions.

Adds contents of item tag. Fields:

name – id of tag
expand – if false, entry will return all contents of tag, otherwise entry will behave as multiple item entries (all with same weight and quality)
Applies one of predefined bonus formulas.

Common fields
enchantment – id for enchantment level used for calculation
formula – type of used bonus formula
parameters – values required for formula (depend on type)
Formulas (based on existing fortune bonuses):
parameters: extraRounds : int, probability : float
adds random value using binomial distribution with n < - level + extraRounds and p <- probabilty uniform_bonus_count parameters: bonusMultiplier adds random value using uniform distribution from 0 to bonusMultiplier * level ore_drops no parameters applies formula count * (max(0, random(0..1) - 1) + 1) COPY_NAME Copies display name from block entity to item (see enchanting table behaviour) EXPLOSION_DECAY Applies flat chance (equal to 1/explosion radius) for every item to be destroyed (items in stack are processed separately) LIMIT_COUNT Limits count of every item stack to range. Parameters limit: min - optional max - optional SET_CONTENTS Populates BlockEntityTag.Items (works for shulker boxes, chests, etc.) with items from entries. Parameters entries - list of entries (same as in pool) SET_LOOT_TABLE Sets BlockEntityTag.LootTable and BlockEntityTag.LootPoolSeed tags. Parameters name - id of loot table seed - seed (if omitted or 0, LootPoolSeed will not be set) PERFORMANCE IMPROVEMENTS Improved performance of Redstone Wire when depowering. Improved performance of Fish. Mobs that would spawn and then despawn from being too far away from the player the next tick no longer spawn. WORLDGEN Most of the biome related features now have a registry and their configuration can be serialized. I wonder what this is going to be used for... Added "Bamboo Jungle" and "Bamboo Jungle Hills" biomes which behave like a normal jungle, but have bamboo! FIXED BUGS IN 18W43A MC-1578 - Cannot move backwards in Books/Signs while writing / Cannot copy anything from the book MC-1692 - Excessive lag on lamp de/activation across chunk borders MC-3329 - Naturally generated light sources (fire, glowstone, torches etc.) sometimes do not emit light MC-3961 - Water, Cobwebs, Magma, Leaves and other blocks save sunlight MC-4686 - Client movement when teleported MC-9188 - Fires can leave ghost lighting behind MC-11571 - Huge lighting updates lag the game. MC-76278 - Lighting not updating until walked up or block update MC-80966 - Lightcalculation of ChunkSelection faulty implemented resulting in client bugs (empty chunks don’t show light/render dark) MC-88097 - Snow blocks receive (useless) random updates and can get destroyed when there is a light glitch MC-91136 - Lighting update is delayed at chunk borders MC-102162 - Some light-emitting blocks (magma, lit furnace, lit redstone ore) 'save' block light MC-119932 - Light-emitting solid blocks (lit furnaces, magma blocks, glowstone, lit redstone ore) let light (sunlight, block light) through MC-124395 - Beacon block entity contains code for custom names, despite not storing it to NBT and the beacon GUI not having one MC-135453 - Crash while rendering block entity MC-136526 - Crash when generating near top of world MC-136759 - Spawn eggs do not make sure that the entity is valid for the egg, allowing for arbitrary command execution in certain cases MC-137229 - Book corruption when 1.8 world is loaded in 1.13 MC-137300 - ConcurrentModificationException thrown when upgrading world GET THE SNAPSHOT To install the snapshot, open up the Minecraft Launcher and enable snapshots in the "Launch Options" tab. Snapshots can corrupt your world, please backup and/or run them in a different folder from your main worlds. Cross-platform server jar: Minecraft server jar Report bugs here: Minecraft issue tracker!