THE END · SMALLER FEATURES
Obsidian Platform
Page updated
The small obsidian platform where players and other entities arrive in the End. It regenerates again and again, which makes it a renewable obsidian source and a bad place to build.
This guide follows vanilla Java 26.3. Historical changes retain their own edition and version. Bedrock generation and loot can differ. Screenshots and verified seeds below retain their own game versions.

28462718234064871 · Java 26.3 · endReference capture · The vanilla arrival platform generated when entering the End.Game data and source research
Where it generates in Java 26.3
The End platform placed feature is included in The End biome and has the fixed origin (100, 49, 0). Its builder places the floor one block below that origin, at Y=48. [1][3][4]
Placement and frequency
The platform builder fills X=98–102 and Z=-2–2 with obsidian at Y=48, then clears the same footprint at Y=49–51. This is a fixed placement, not a per-chunk rarity roll. [1][2][4]
Conditions and limits
When an entity enters the End through an End portal, the portal transition rebuilds the platform using the block below the End spawn point (100, 50, 0). The rebuild can replace blocks in the floor and cleared area, so that area should not be treated as permanent storage or construction space. [1][2][4]
The End arrival floor
The platform construction routine creates a 5 × 5 obsidian floor and clears a three-block-high volume directly above it. This is a fixed arrival surface, with no walls, chest, resident or mob spawner. [5]
The floor can be separated from the main island by open space depending on the surrounding terrain. Inspect the approach to the island before stepping off; the platform itself is not a complete bridge or enclosed shelter. [5]
Keep the arrival volume clear
The End-portal arrival path calls the platform construction routine. When it runs, mismatching blocks in the floor and clearance volume are replaced. Storage and builds inside that volume should therefore not be treated as protected permanent fixtures. [5]
An existing bridge outside the cleared volume is a separate player construction. The platform routine creates its floor and headroom, not lighting, guardrails or a safe route across nearby void gaps. [5]
Resources rather than chest loot
The End arrival routine constructs a 5 by 5 obsidian floor and clears the blocks above it. It creates no reward container, resident or loot-table invocation. The obsidian is a placed building material, not a randomized chest reward. [6]
Collecting the floor follows ordinary obsidian-breaking rules. The arrival routine can reconstruct the floor and clearance volume, so a player-made storage container inside that volume is not part of the generated reward system. [6]
Version history and release dates
These milestones retain their edition and exact build labels. Snapshot, beta and preview dates belong to those development builds; full releases and staggered Pocket platform releases are dated separately. Historical introduction claims come from the cited Wiki history. [7]
| Version | Released | What changed |
|---|---|---|
| Java 1.0.0 | November 18, 2011 | The arrival platform was introduced during Beta 1.9 development. [7][9] |
| Java 1.9 | February 29, 2016 | Non-player entities stopped regenerating the platform. [7][10] |
| Pocket 1.0.0 | December 19, 2016 | Pocket Edition added the End arrival platform. [7][11] |
| Java 1.16 | June 23, 2020 | Non-player portal arrivals began regenerating the platform again. [7][12] |
| Java 1.16.2 | August 11, 2020 | Players began arriving at the center of the platform block. [7][13] |
| Java 1.20.5 | April 23, 2024 | Arrival keeps the platform's surroundings loaded for 15 seconds. [7][14] |
| Java 1.21 | June 13, 2024 | Regeneration began dropping cleared blocks and container contents, and initial world generation gained the platform feature. [7][15] |
SeedLookout in-game verification
Screenshots

28462718234064871 · Java 26.3 · endReference capture · The vanilla arrival platform generated when entering the End.Our screenshots of naturally generated structures in Minecraft. Each caption gives the seed, coordinates and version. Select one to open it at full size.
Seeds with this obsidian platform
None of our verified seeds includes this structure yet. The guide cites game data, code analysis and other references; it does not verify a seed.
Sources
References identify the edition, version and evidence behind the guide. Game code and data describe generation rules; the seed table records locations checked in game. Research reviewed 2026-10-02.
- Mojang Java 26.3: feature configuration ↗
Inner archive META-INF/versions/26.3/server-26.3.jar: data/minecraft/worldgen/feature/end_platform.json
Evidence details
Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c. SHA-256 by archive member: data/minecraft/worldgen/feature/end_platform.json = dd151e340d620b72defb610838670d11c95798c660b2ae3f688cbc4f7a09ae5c
- Mojang Java 26.3: feature placement inputs ↗
Inner archive META-INF/versions/26.3/server-26.3.jar: data/minecraft/worldgen/placed_feature/end_platform.json
Evidence details
Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c. SHA-256 by archive member: data/minecraft/worldgen/placed_feature/end_platform.json = 0f39f85461ba648c6f625c72d7d14d878508ec5d6a59965849a181eaf9553d8a
- Mojang Java 26.3: biome feature lists ↗
Inner archive META-INF/versions/26.3/server-26.3.jar: data/minecraft/worldgen/biome/the_end.json
Evidence details
Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c. SHA-256 by archive member: data/minecraft/worldgen/biome/the_end.json = eb2380236537a17c091212991672c025c037c36cc9b07ab9db8599bb40db1174
- Mojang Java 26.3: feature execution and rejection checks ↗
Inner archive META-INF/versions/26.3/server-26.3.jar: net/minecraft/server/level/ServerLevel$1.class; net/minecraft/server/level/ServerLevel$EntityCallbacks.class; net/minecraft/server/level/ServerLevel.class; net/minecraft/world/level/block/EndPortalBlock.class; net/minecraft/world/level/levelgen/VerticalAnchor$AboveBottom.class; net/minecraft/world/level/levelgen/VerticalAnchor$Absolute.class; net/minecraft/world/level/levelgen/VerticalAnchor$BelowTop.class; net/minecraft/world/level/levelgen/VerticalAnchor$RelativeToSeaLevel.class; net/minecraft/world/level/levelgen/VerticalAnchor.class; net/minecraft/world/level/levelgen/feature/EndPlatformFeature.class; net/minecraft/world/level/levelgen/heightproviders/UniformHeight.class; net/minecraft/world/level/levelgen/placement/BiomeFilter.class; net/minecraft/world/level/levelgen/placement/CountPlacement.class; net/minecraft/world/level/levelgen/placement/FeaturePlacer.class; net/minecraft/world/level/levelgen/placement/RarityFilter.class. Methods: EndPlatformFeature.place / createEndPlatform; EndPortalBlock.getPortalDestination; ServerLevel.END_SPAWN_POINT; FeaturePlacer.place; RarityFilter.shouldPlace; BiomeFilter.shouldPlace; UniformHeight.sample; VerticalAnchor.resolveY; CountPlacement.count
Evidence details
Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c. Implementation inspected using CFR 0.152; reconstructed Java is not an original Mojang source publication. SHA-256 by archive member: net/minecraft/server/level/ServerLevel$1.class = a6f91e404f511817e0c83a15cf442b956a0ee0473e5269c193e226427f11a9ed; net/minecraft/server/level/ServerLevel$EntityCallbacks.class = 9000a0d6673a048396a17adbb7d1e0b860ce560817f04e63d61ee34f21d7d718; net/minecraft/server/level/ServerLevel.class = bd703a5b7085fd0caad8f4ed23603197c2f2d8010176ad971d7572064397d5f8; net/minecraft/world/level/block/EndPortalBlock.class = 6956a233f67f37dfdc752fd22aad688bc290173e99f19fc9fb92b15a8825419d; net/minecraft/world/level/levelgen/VerticalAnchor$AboveBottom.class = 65e8d275fecd2bc76618395521925e51defa7db48cb4fa2c006118ff4a8471b3; net/minecraft/world/level/levelgen/VerticalAnchor$Absolute.class = ae4092473cdf6800c40e38d887fa79d3c555212ab875cae87e66f323891fb733; net/minecraft/world/level/levelgen/VerticalAnchor$BelowTop.class = 028e41d89c42f9d1b15aea47b6125dc6019e996b97d4dd9e31b399e5bba9907d; net/minecraft/world/level/levelgen/VerticalAnchor$RelativeToSeaLevel.class = dac20a9a8a5d24b1b6f0fc273bd619df71982745ea6dab06723f170afa6f63eb; net/minecraft/world/level/levelgen/VerticalAnchor.class = bd6f44d0714b54bfe084c570d169084e7794a66f8f8283f7f3abbc3d1ff44011; net/minecraft/world/level/levelgen/feature/EndPlatformFeature.class = 70567e165817987daaea838215e5365d4bbfe74f8ae83df5b1432d488eed9ead; net/minecraft/world/level/levelgen/heightproviders/UniformHeight.class = 8f157810ef32e632ddf06276eb4874714079c9d8aec7bac11515321a4272570b; net/minecraft/world/level/levelgen/placement/BiomeFilter.class = 9af5f023e371c8541e5a6086e5c01693735e39d10ee918adfea4761fc231e38a; net/minecraft/world/level/levelgen/placement/CountPlacement.class = e2fa737411edc1547e7e9f29d108298fb87b6b03709a6b56fcfa9df1cd30d987; net/minecraft/world/level/levelgen/placement/FeaturePlacer.class = 1d3e9c087bf63463503ba2fb55893053a3e0da6cd38fd3d6302afb02d9be437f; net/minecraft/world/level/levelgen/placement/RarityFilter.class = 816b014fad3a867c2fe487ccb417dc2e347dc8bcba773b4413fc843985dbecc6
- Mojang Java 26.3: obsidian platform layout and encounter implementation ↗
net.minecraft.world.level.levelgen.feature.EndPlatformFeature; net.minecraft.world.level.block.EndPortalBlock; EndPlatformFeature.createEndPlatform: dx/dz -2..2, dy -1..2, obsidian at -1 and air above; EndPortalBlock.getPortalDestination / platform arrival call.
Evidence details
Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c; inner META-INF/versions/26.3/server-26.3.jar SHA-256 a362163eec5d1612d520772bc16e5b39c09e3b234fdc045f56bf544284ee8ae6. Official bytecode inspected through CFR 0.152; reconstructed implementation, not an original source checkout.
- Mojang Java 26.3: obsidian platform layout and encounter implementation ↗
net.minecraft.world.level.levelgen.feature.EndPlatformFeature; net.minecraft.world.level.block.EndPortalBlock; EndPlatformFeature.createEndPlatform: dx/dz -2..2, dy -1..2, obsidian at -1 and air above; EndPortalBlock.getPortalDestination / platform arrival call.
Evidence details
Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c; inner META-INF/versions/26.3/server-26.3.jar SHA-256 a362163eec5d1612d520772bc16e5b39c09e3b234fdc045f56bf544284ee8ae6. Official bytecode inspected through CFR 0.152; reconstructed implementation, not an original source checkout.
- Minecraft Wiki: End Platform — pinned history ↗
History section, retaining edition, release grouping, development-version and experimental-toggle qualifiers.
Evidence details
Pinned article revision 3757701 from 2026-09-03T23:37:34Z. Historical claims only; not an audited game build or release-date source.
- Minecraft Wiki: Obsidian Platform description ↗
Opening description and History
Evidence details
Pinned article revision 3757701; retrieved October 1, 2026. Article history supports historical introductions; current generation and loot are audited separately from game data.
- Java 1.0.0: release date ↗
2011: Minecraft 1.0 Released – and the First Port Arrives; November 18, 2011
Evidence details
Official Xbox retrospective establishes the public launch date. Mojang legacy metadata retains releaseTime 2011-11-17T22:00:00+00:00; its UTC calendar day is not the public launch date.
- Java 1.9: release date ↗
/id; /releaseTime
Evidence details
Release metadata establishes its date, not feature introduction. Original Wiki history must support introduction separately.
- Pocket 1.0.0: release date ↗
Version infobox release date
Evidence details
Platform releases were staggered: December 19, 2016<ref name="MCSiteArticle">{{Mcnet|ender-update-finally-here|The Ender Update is finally here|December 19, 2016}}</ref>. These dates describe full Pocket releases, separately from earlier betas.
- Java 1.16: release date ↗
/id; /releaseTime
Evidence details
Release metadata establishes its date, not feature introduction. Original Wiki history must support introduction separately.
- Java 1.16.2: release date ↗
/id; /releaseTime
Evidence details
Date belongs to the exact 1.16.2 build. Snapshot and prerelease dates are separate from the later full release; metadata does not prove the feature introduction.
- Java 1.20.5: release date ↗
/id; /releaseTime
Evidence details
Date belongs to the exact 1.20.5 build. Snapshot and prerelease dates are separate from the later full release; metadata does not prove the feature introduction.
- Java 1.21: release date ↗
/id; /releaseTime
Evidence details
Release metadata establishes its date, not feature introduction. Original Wiki history must support introduction separately.
Item art uses vanilla Java 26.3 assets from the official client release. Icons retain their game version alongside the guide.
Descriptions adapted from the Minecraft Wiki retain its attribution under CC BY-NC-SA 3.0. Calculations and code analysis are SeedLookout research. Screenshot captions identify each capture. The seed table contains our published verified seeds; checking a location does not establish particular room contents or chest loot.