For many years, Minecraft fans have been asking for the addition of a simple feature that already exists in Bedrock Edition: fallen trees. These are decorative foliage found lying on the ground in forest biomes. For some reason, this feature was missing in Java Edition until Minecraft snapshot 25w09a.With Minecraft snapshot 25w09a, Mojang has brought fallen trees to Java Edition. Players can now find fallen trees made of oak, birch, jungle, and spruce wood blocks. These decorations will be generated in every biome where trees grow. A few exceptions are Meadows, Bamboo Jungles, and Rivers.Besides fallen trees, the Minecraft snapshot 25w09a has also introduced changes related to leaf litter and firefly bushes, along with many bug fixes and technical improvements.Update: Minecraft snapshot 25w09b is out with bug fixes for issues in snapshot 25w09a.Minecraft snapshot 25w09b patch notesFixed bugs in 25w09bMC-280302 - Text does not render in menus until entering a worldMC-280303 - Game crashes when trying to render a wardenMC-280305 - GUI elements incorrectly overlap on macOSMC-280308 - Crash from GL error when opening worldMC-280310 - The game crashes near a Trial ChamberMC-280322 - Game crashes when trying to render a breezeMC-280324 - Game crashes when entering the end from the netherMC-280329 - Game sometime crashes when saving worldMC-280334 - The Report Player screen is brokenMC-280346 - The loading screen initially appears black and only changes to red at the endMinecraft snapshot 25w09a patch notesNew FeaturesAdded fallen trees to be in parity with Bedrock EditionFallen TreesFallen trees are a new decorative variant of treesFallen trees come in four different wood type variants:OakBirchJungleSpruceBirch fallen trees can come in a shorter version or a longer versionSome fallen trees can be decorated with mushroom or vinesFallen trees can be found in all biomes where their standing tree variant grow, except the following:MeadowBamboo JungleRiverGroveFlower Forest has fallen birch trees but not fallen oak treesChangesLeaf LitterLeaf Litter is now replaceable by other blocksFirefly BushThe Firefly Bush can now generate near water in Mangrove Swamps and Badlands (very rarely), like other biomes with waterTechnical ChangesThe Data Pack version is now 69New command line argument --renderDebugLabels is available for the clientAdds debug labels to relevant OpenGL objects, making debugging rendering easier for developersData Pack Version 69Object notation used in commands for NBT, text components and inline predicates (a.k.a. SNBT) has been extendedCommands/data can now create and modify heterogeneous lists transparentlyEntity DataThe FallFlying field will no longer be preserved if removedThe Health and Air fields now default to their respective maximum value if not specifiedarea_effect_cloudThe Duration field now defaults to -1 if not specifiedIf the Duration field is -1, the Area Effect Cloud will never run outThis means that an Area Effect Cloud summoned with no duration specified will no longer immediately disappearcreeperThe Fuse field now defaults to 30 if not specifiedThe ExplosionRadius field now defaults to 3 if not specifieddolphinThe Moistness field now defaults to 2400 if not specifiedender_dragonThe DragonDeathTime field now defaults to 0 if not specifiedfalling_blockThe BlockState field can now be air (will despawn immediately) - if otherwise not specified or invalid, defaults to sandThe HurtEntities field now defaults to false if not specified (or true if BlockState is anvil)The FallHurtAmount field now defaults to 0 if not specifiedThe FallHurtMax field now defaults to 40 if not specifiedThe DropItem field now defaults to true if not specifiedThe TileEntityData field will no longer be preserved if removedfirework_rocketThe ShotAtAngle field now defaults to false if not specifiedfoxThe Trusted field now defaults to empty if not specified (and will no longer be merged with the previous state if modified by /data)ghastThe ExplosionPower field now defaults to 1 if not specifiedgoatThe HasLeftHorn and HasRightHorn fields now default to true if not specifiedinteractionThe width and height fields now default to 1 if not specifieditemThe Health field now defaults to 5 if not specifiedThe PickupDelay field now defaults to 0 if not specifiedThe Age field now defaults to 0 if not specifiedThe Owner and Thrower fields will no longer be preserved when removeditem_frame and glow_item_frameThe ItemDropChance field now defaults to 1.0 if not specifiedprimed_tntThe fuse field now defaults to 80 if not specifiedThe explosion_power field now defaults to 4 if not specifiedshulkerThe Color field now defaults to 16 (no color) if not specifiedskeletonThe StrayConversionTime field will no longer be preserved when removedspectral_arrowThe Duration field now defaults to 200 if not specifiedsnow_golemThe Pumpkin field now defaults to true if not specifiedtnt_minecartThe fuse field now defaults to 80 if not specifiedThe explosion_power field now defaults to 4 if not specifiedThe explosion_speed_factor field now defaults to 1 if not specifiedtrader_llamaThe DespawnDelay field now defaults to 47999villagerThe FoodLevel and Xp fields now default to 0 if not specifiedThe ConversionTime field will no longer be preserved when removedwandering_traderThe DespawnDelay field now defaults to 0 if not specifiedzombieThe DrownedConversionTime field will no longer be preserved when removedzombie_villagerThe Xp field now defaults to 0 if not specifiedThe ConversionTime field will no longer be preserved when removedarrow, spectral_arrow, tridentThe damage field now defaults to 2 if not specifieddragon_fireball, wind_charge, breeze_wind_charge, wither_skull, small_fireball, and large_fireballThe acceleration_power field now defaults to 0.1 if not specifiedsmall_fireball and large_fireballThe ExplosionPower field now defaults to 1 if not specifiedblock_display, item_display, and text_displayThe interpolation_duration, teleport_duration, and start_interpolation fields now default to 0 if not specifiedThe view_range field now defaults to 1 if not specifiedThe shadow_radius field now defaults to 0 if not specifiedThe shadow_strength field now defaults to 1 if not specifiedThe width and height fields now default to 0 if not specifiedBlock Entity DatacampfireThe CookingTimes and CookingTotalTimes fields will no longer be preserved when removedchiseled_bookshelfThe last_interacted_slot field now defaults to -1 if not specifiedhopperThe TransferCooldown field now default to -1 if not specifiedjigsawThe name, target, and pool fields now default to minecraft:empty if not specifiedThe final_state field now defaults to minecraft:air if not specifiedsculk_shriekerThe warning_level field now defaults to 0 if not specifiedstructure_blockThe ignoreEntities and showboundingbox fields now default to true if not specifiedThe posY field now defaults to 1 if not specifiedNBT ChangesAny interface with NBT data within the game (SNBT representation, /data) now supports heterogeneous lists, i.e. ones where elements are not of the same typeInserting or replacing into a list of a different type with /data will no longer give an errorInserting into an array type (e.g. [I;1,2,3]) is still type-restrictedThis means that the 'wrapper' objects previously used to represent heterogeneous lists will no longer be observable by in-game means/data can no longer traverse paths with an empty key (e.g. /data get ... foo.''.bar)The NBT file format is unchanged:Heterogeneous lists are transformed before storage to bypass NBT constraintsExample transform: ['a', {'b':3}] is stored as [{'':'a'},{'b':3}]Existing external tools will still be able to read NBT files as before, but heterogeneous lists will be displayed in the transformed formNo data produced by the game has changed: objects such as Text Components were already producing heterogeneous lists in this formNote: these wrapper objects may never be observed in-game, they are only relevant to developers working with the NBT file or network format directlySNBT ChangesThe text format for describing object-like data in commands (like NBT, text components, predicates, etc.) has been extendedNumber FormatEither whole or fraction parts of a float number can be omittedExamples: .1 and 1. are valid nowFloat numbers now use E notationExample: both 1.2e3 and 1.2E3, 1.2E+3, 12000e-1 are now a valid way to represent 1200.0Integer numbers can now be prefixed with 0x to represent hexadecimal numbers and 0b to represent binary numbersExample: 0xbad (equal to 2989), 0xCAFE (equal to 51966), 0b101 (equal to 5)Integer numbers now can't start with 0Normally it would mean number is in base-8, but we are restricting it to avoid accidental useNumbers can now contain _ character between sequences of digits (but not at the start or the end of sequence)Example: 0b10_01, 0xAB_CD, 1_2.3_4__5f, 1_2e3_4NaN, Inf or hexadecimal float representation are NOT supportedType suffixes have been extended:Integer type suffixes (b or B - byte, s or S - short, i or I - integer, l or L) can now be prefixed with s (signed) or u unsignedNew suffixes only affect valid range when parsing - values are still stored as signedExample: 240ub is equal to -16sb, while 240sb does not parseWhen a suffix is used without u or s, it defaults to signed for decimal numbers and unsigned for binary and hexadecimal numbersNote: since b is also a valid hexadecimal digit, byte sized hexadecimal values can only be written with a signed suffix, like 0x11ub or 0x11sbStringsQuoted strings can now use escape sequences beyond ', " and \:Unicode escapes:\x - two digit escape, like \x42\u - four digit escape, like \u2603\U - eight digit escape, like \U00002603\N{<name>} - named Unicode character, like \N{Snowman}Built-in escape sequences:\b - backspace, Unicode \x08\s - space, Unicode \x20\t - horizontal tab, Unicode \x09\n - linefeed, Unicode \u0a\f - form feed, Unicode \u0c\r - carriage return, Unicode \u0dUnquoted strings now can't start with 0-9, ., +, - to avoid accidental collision with numbersNumber ArraysValues in arrays ([B;], [I;], [L;]) without a suffix are now assumed to have suffix matching the type of the arrayExample: [B;1,2] is equivalent to [B; 1b, 2b]Arrays can now also accept types smaller than the array typeExample: [I;1b,2s,3] is valid and equivalent to [I;1i,2i,3i]ListsLists now accept trailing commasExample: [1,2,] is valid and equivalent to [1,2]Only one trailing comma is allowed, and it must come after a valid element - both [,] and [1,,] are invalidCompoundsCompounds (maps) now accept trailing commasExample: {a:b,}Only one trailing comma is allowed, and it must come after a valid key-value pair - both {,} and {a:b,,} are invalidFixed bugs in Minecraft snapshot 25w09aMC-168262 - Dead bushes cannot be placed on farmlandMC-236100 - End crystal beam appears to be blackMC-276861 - The player can sometimes teleport through blocked end portals when moving very fastMC-279229 - SNBT text components prevent \n and \t from workingMC-279236 - Flying into water with an elytra puts the player into an erroneous stateMC-279250 - SNBT text components prevent unicode escapes from workingMC-279252 - Changing a single line of a sign with /data is no longer possible in some situationsMC-279278 - Strafing twice in rapid succession while walking forward causes player to sprintMC-279928 - Beacon beam clips into beacon block when far enough awayMC-279932 - Beacon beam disappears and reappears when approaching itMC-279942 - Beacon beam can render over fog when outside render distanceMC-279947 - Snout of the new cow model is offset vertically by 0.1 pixelsMC-280022 - Players can be lit by lava while stepping onto solid blocks next to itMC-280033 - Beacon beams render beyond client render distanceMC-280121 - Leaf litter can be placed on walls and fencesMC-280123 - Short dry grass and tall dry grass aren't randomly offset, unlike similar blocksMC-280155 - Random ticks can cause entity build-up in lazy chunksMC-280170 - Goats can no longer ram armor stands unless the game rule mobGriefing is set to falseMC-280211 - End crystal beams cause OpenGL errors with glDebugVerbosity set to 3Minecraft snapshot 25w09a is available for download on the official launcher. Players can install the latest snapshot and create a new world to see how the new fallen trees appear in forests.