seedlookout
English

THE END · SMALLER FEATURES

End Spike

Page updated

Ten obsidian pillars ring the central End island, topped with crystals that heal the ender dragon. Players destroy the crystals during the fight and can mine the pillars for obsidian.

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.

Java 26.3 · Released · Reviewed

An obsidian pillar topped by an End crystal on the main End island
End Spike at -41, 81, 0Seed 28462718234064871 · Java 26.3 · endReference capture · Naturally generated obsidian pillar and End crystal on the main island.

Game data and source research

Where it generates in Java 26.3

The End spike placed feature is included in The End biome. Its empty configured spike list tells the implementation to use the seed-derived default set, rather than placing random towers on a structure-spacing grid. [1][3][4]

Placement and frequency

The default algorithm assigns ten sites around radius 42. It shuffles size indices 0–9 using a seed-derived value; the resulting radius is 2 plus integer division of the size by 3, and the top-height parameter is 76 plus three times the size. The height parameters therefore run from 76 to 103. [1][2][4]

Conditions and limits

Size indices 1 and 2 receive iron-bar cages, giving two guarded spikes in the default set. The feature places an End crystal on each spike when entity creation succeeds. These are the default generated towers, not a count that remains true after a player changes the island. [1][2][4]

Ten pillars with shuffled sizes

The End-spike layout has ten obsidian pillars arranged around the central island. Their size ranks are shuffled among the fixed ring positions. Each pillar supports bedrock, fire and an End crystal, and two of the size ranks receive iron-bar cages. [5]

The size rank sets a radius from two to five blocks and a top elevation from Y76 to Y103 in three-block steps. Those are code parameters for the pillars, not template-room dimensions. A taller pillar is not a different loot tier. [5]

Dragon respawning rebuilds the pillars

The dragon-respawn sequence revisits the ten spikes, clears and explodes an area near each top, then regenerates the spike and its crystal. Treat construction near the pillar tops as vulnerable when another dragon fight is started. [5]

The crystals are entities placed by the feature, rather than a repeating mob spawner. The pillars contain no loot chests. Their main exploration challenges are reaching the top, dealing with cages and returning safely from height. [5]

Resources rather than chest loot

The End-spike feature builds obsidian, an optional iron-bar cage, bedrock under the top crystal and the crystal entity. Its placement path does not create a chest or select a structure loot table. The pillar material is a mining resource rather than a randomized container reward. [6]

A generated end crystal belongs to the dragon-fight encounter. The placement of that entity is not a loot-table promise of an end-crystal item, and dragon rewards should not be attributed to a chest roll for each pillar. [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 history and release dates
VersionReleasedWhat changed
Java Beta 1.9 Prerelease 4October 13, 2011Obsidian spikes appeared with the End during Java 1.0.0 development. [7][9]
Java Beta 1.9 Prerelease 6November 11, 2011Crystals were added to the tops of spikes. [7][10]
Java 15w31aJuly 29, 2015Java 1.9 development arranged exactly ten pillars around the exit portal. [7][11]
Java 15w33cAugust 14, 2015Resummoning the dragon began rebuilding pillars. [7][12]
Java 1.9-pre1February 17, 2016Iron-bar cages returned on some shorter pillars after being temporarily removed. [7][13]
Pocket 1.0.0December 19, 2016Pocket Edition added End spikes. [7][14]
Java 21w37aSeptember 15, 2021Initial pillar generation was restored after a regression in the 1.18 experimental builds. [7][15]

SeedLookout in-game verification

Screenshots

Obsidian End pillars topped by caged and uncaged crystals
End Spike at -41, 81, 0Seed 28462718234064871 · Java 26.3 · endReference capture · Naturally generated obsidian pillar and End crystal on the main island.
End crystal inside an iron-bar cage above an obsidian pillar
End Spike at -41, 81, 0Seed 28462718234064871 · Java 26.3 · endReference capture · Naturally generated obsidian pillar and End crystal on the main island.

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 end spike

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.

  1. Mojang Java 26.3: feature configuration ↗Official game data · Java 26.3

    Inner archive META-INF/versions/26.3/server-26.3.jar: data/minecraft/worldgen/feature/end_spike.json

    Evidence details

    Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c. SHA-256 by archive member: data/minecraft/worldgen/feature/end_spike.json = 830c4a4b74664350898ed4f1490452346a5200c4ac56f1927d6dc98641d9afa5

  2. Mojang Java 26.3: feature placement inputs ↗Official game data · Java 26.3

    Inner archive META-INF/versions/26.3/server-26.3.jar: data/minecraft/worldgen/placed_feature/end_spike.json

    Evidence details

    Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c. SHA-256 by archive member: data/minecraft/worldgen/placed_feature/end_spike.json = d167c6e98faf06bcb35cf2ba2507c2b6d30c75807b8ff09c6a4c6b1e974bfdad

  3. Mojang Java 26.3: biome feature lists ↗Official game data · Java 26.3

    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

  4. Mojang Java 26.3: feature execution and rejection checks ↗Decompiled game implementation · Java 26.3

    Inner archive META-INF/versions/26.3/server-26.3.jar: 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/EndSpikeFeature$EndSpike.class; net/minecraft/world/level/levelgen/feature/EndSpikeFeature$SpikeCacheLoader.class; net/minecraft/world/level/levelgen/feature/EndSpikeFeature.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: EndSpikeFeature.place / placeSpike / getSpikesForLevel; EndSpikeFeature.SpikeCacheLoader.load; 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/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/EndSpikeFeature$EndSpike.class = c45c82e31bf1be63d3645c2739d47e5597a48b6a36a75d75c69c34cff1f0b830; net/minecraft/world/level/levelgen/feature/EndSpikeFeature$SpikeCacheLoader.class = de8622a5607d74843d936e40e1bb34696f1af639db79740debfafa0935bf3074; net/minecraft/world/level/levelgen/feature/EndSpikeFeature.class = 2c8683ba332ca5478515e41f6b73c97e5f267e4b1e964b327fdbfe8c93963958; 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

  5. Mojang Java 26.3: end spike layout and encounter implementation ↗Decompiled game implementation · Java 26.3

    net.minecraft.world.level.levelgen.feature.EndSpikeFeature; net.minecraft.world.level.dimension.end.DragonRespawnStage; EndSpikeFeature.getSpikesForLevel, SpikeCacheLoader.load, placeSpike; DragonRespawnStage.SUMMONING_PILLARS.tick.

    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.

  6. Mojang Java 26.3: end spike layout and encounter implementation ↗Decompiled game implementation · Java 26.3

    net.minecraft.world.level.levelgen.feature.EndSpikeFeature; net.minecraft.world.level.dimension.end.DragonRespawnStage; EndSpikeFeature.getSpikesForLevel, SpikeCacheLoader.load, placeSpike; DragonRespawnStage.SUMMONING_PILLARS.tick.

    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.

  7. Minecraft Wiki: End Spike — pinned history ↗Minecraft Wiki · Java and Bedrock Revision 3798745

    History section, retaining edition, release grouping, development-version and experimental-toggle qualifiers.

    Evidence details

    Pinned article revision 3798745 from 2026-09-27T15:37:28Z. Historical claims only; not an audited game build or release-date source.

  8. Minecraft Wiki: End Spike description ↗Minecraft Wiki · Java and Bedrock revision 3798745

    Opening description and History

    Evidence details

    Pinned article revision 3798745; retrieved October 1, 2026. Article history supports historical introductions; current generation and loot are audited separately from game data.

  9. Java Beta 1.9 Prerelease 4: release date ↗Minecraft Wiki · Java Beta 1.9 Prerelease 4

    Version infobox release date

    Evidence details

    Pinned community version article date; snapshots, betas and previews have their own release dates, separately from the full version.

  10. Java Beta 1.9 Prerelease 6: release date ↗Minecraft Wiki · Java Beta 1.9 Prerelease 6

    Version infobox release date

    Evidence details

    Pinned community version article date; snapshots, betas and previews have their own release dates, separately from the full version.

  11. Java 15w31a: release date ↗Official game data · Java 15w31a

    /id; /releaseTime

    Evidence details

    Date belongs to the exact 15w31a build. Snapshot and prerelease dates are separate from the later full release; metadata does not prove the feature introduction.

  12. Java 15w33c: release date ↗Official game data · Java 15w33c

    /id; /releaseTime

    Evidence details

    Date belongs to the exact 15w33c build. Snapshot and prerelease dates are separate from the later full release; metadata does not prove the feature introduction.

  13. Java 1.9-pre1: release date ↗Official game data · Java 1.9-pre1

    /id; /releaseTime

    Evidence details

    Date belongs to the exact 1.9-pre1 build. Snapshot and prerelease dates are separate from the later full release; metadata does not prove the feature introduction.

  14. Pocket 1.0.0: release date ↗Minecraft Wiki · Bedrock 1.0.0

    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.

  15. Java 21w37a: release date ↗Official game data · Java 21w37a

    /id; /releaseTime

    Evidence details

    Date belongs to the exact 21w37a build. Snapshot and prerelease dates are separate from the later full release; metadata does not prove the feature introduction.

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.