OVERWORLD · OCEAN
Shipwreck
Page updated
Wooden sailing ships lying at odd angles and in different states of damage, underwater or stranded on beaches. Their chests hold useful early resources, buried treasure maps, Coast armor trims, and nautilus armor.
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 · overworldReference capture · Naturally generated structure, photographed in Minecraft Java 26.3.Game data and source research
Where it generates in Java 26.3
The ocean variant allows the nine ocean biomes; the beached variant allows Beach and Snowy Beach. Stony Shore is not in the beached-shipwreck starting tag. [2][5]
Candidate positions and rarity
Java 26.3 selects one potential starting chunk per 24×24-chunk region (384 blocks on each side). Candidate selection happens before successful structure generation; this is not a measured density or an average travel distance. [3][4]
The start lookup uses the ocean-floor heightmap for ordinary wrecks and the world-surface heightmap for beached wrecks. Later piece placement adjusts the selected template, so the initial lookup is not a promise that all ship blocks are at one level. [1][3][4][5]
What the starting position means
Both variants share a 24×24-chunk candidate grid. The generator can retry the other entry after a failed start, so equal structure-entry weights do not give every ocean or beach a 50% chance of each variant. [1][4][5]
Orientation and missing halves change the search
Shipwreck templates include upright, sideways and upside-down hulls, with complete, front-half and back-half variants. Some also have degraded versions. A fragment can simply lack the part of the ship that would have held a particular chest. [6]
The saved upright full hull is 9 × 9 × 28 blocks, while its upright back half is 9 × 9 × 16. These are template bounds before rotation, not intact-interior measurements. Wood palettes and terrain placement vary the appearance. [6]
| Part | What to look for |
|---|---|
| Bow section | Search the surviving forward compartment; it may be separate from the stern rewards. [6] |
| Stern section | Cabins and lower spaces can be partly buried or turned on their side. [6] |
| Full hull | More of the ship survives, but blocks and access still depend on placement. [6] |
Search the actual hull, not a three-chest promise
The piece handles three marker roles: supply chest, map chest and treasure chest. Which markers exist depends on the selected template; three roles do not guarantee three chests in every wreck. [7]
No living entities or mob-spawner blocks are stored in the audited shipwreck templates. Underwater enemies, drowning and getting turned around inside a tilted hull are environmental hazards rather than a fixed ship crew. [6]
Loot and rewards in Java 26.3
Supply, map and treasure chests use three distinct tables. Treasure-table chests roll metals and valuables; supply-table chests roll food, materials and randomly enchanted leather armor. A surviving ship section determines which containers exist, so these probabilities are not per whole wreck. [8][11]
All three tables include a separate Coast trim pool with empty weight 5 and template weight 1. A successful trim draw supplies two templates. All three also use the Java 26.3 nautilus-armor pool: empty 148, copper 20, iron 10, golden 5 and diamond 2. [8]
The map table attempts one buried-treasure explorer map. Its exploration_map modifier searches the on_treasure_maps destination tag, uses zoom 1 and skip_existing_chunks=false. A following filtered modifier discards the item if it lacks map_id, so the one-entry pool does not prove a usable map always survives. [8]
Compared directly with Java 1.20.1, the Java 26.3 tables differ. The inspected shipwreck supply table gains Copper nautilus armor, Diamond nautilus armor, Golden nautilus armor, Iron nautilus armor. The inspected shipwreck map table gains Buried treasure map, Copper nautilus armor, Diamond nautilus armor, Golden nautilus armor, Iron nautilus armor. The inspected shipwreck treasure table gains Copper nautilus armor, Diamond nautilus armor, Golden nautilus armor, Iron nautilus armor. Use the current weights rather than carrying older chest percentages forward. The older minecraft:map entry with an exploration_map modifier is replaced by a dedicated minecraft:buried_treasure_map entry; treasure maps already existed in Java 1.20.1. [8][10]
| Item | Where the rule applies | What the data establishes |
|---|---|---|
| One assigned shipwreck chest table | 16.7% chance; two templates. The same trim pool is present in supply and map tables. [8][9] | |
| One treasure-table shipwreck chest | 14.1% chance of at least one selection; one diamond per selection. [8][9] | |
| One treasure-table shipwreck chest | 73.7% chance of at least one selection; 1-5 emeralds per selection. [8][9] | |
| One map-table explorer-map attempt | One entry is selected, but failed map creation is discarded; no unconditional usable-map percentage is asserted. [8] | |
| One assigned shipwreck chest table | 1.1% chance; weight 2/185 in a separate one-roll pool. [8][9] |
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. [12]
| Version | Released | What changed |
|---|---|---|
| Java 1.13 (18w11a) | March 13, 2018 | Introduced shipwrecks. [12][14] |
| Bedrock 1.4.0 | May 16, 2018 | Introduced shipwrecks. [12][15] |
| Bedrock 1.5.0 | July 10, 2018 | Made shipwrecks more frequent and expanded their trapdoor materials and map-chest loot. [12][16] |
| Java 1.14 | April 23, 2019 | Added bamboo and suspicious stew to supply chests. [12][17] |
| Java 1.16 | June 23, 2020 | Reduced shipwreck generation frequency. [12][18] |
| Java / Bedrock 1.17 / 1.17.0 | June 8, 2021 | Added moss blocks to supply chests. [12][19][20] |
| Java 1.19.4 (Update 1.20 experiment) | March 14, 2023 | Coast armor trims entered the Update 1.20 experiment; successful Java chest selections were changed to provide two templates. [12][21] |
| Java 1.21.11 | December 9, 2025 | Added copper, iron, golden, and diamond nautilus armor to shipwreck chest loot. [12][22] |
| Bedrock 1.21.130 | December 9, 2025 | Added copper, iron, golden, and diamond nautilus armor to shipwreck chest loot. [12][23] |
Checked in game by SeedLookout
Screenshots

28462718234064871 · Java 26.3 · overworldReference capture · Naturally generated structure, photographed in Minecraft Java 26.3.
-5222399596891977076 · Java 26.3
6161254073401392 · Java 26.3
-8399213305045884852 · Java 1.20.1
1106187978445829 · Java 26.3Our 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 shipwreck
We found each shipwreck at these coordinates in the seed's Java version. Other versions and Bedrock may generate a different world.
- Shipwreck 39
- Beached shipwreck 12
Show 39 more seedsShow fewer seeds12 of 51
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: structure configuration ↗
Inner archive META-INF/versions/26.3/server-26.3.jar: data/minecraft/worldgen/structure/shipwreck.json; data/minecraft/worldgen/structure/shipwreck_beached.json
Evidence details
Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c. SHA-256 by archive member: data/minecraft/worldgen/structure/shipwreck.json = 2bdd115d7b33195efa86564c8c60570552c922c14dff68d972146c5a26fc8f0a; data/minecraft/worldgen/structure/shipwreck_beached.json = 1c038a8319b0c53f9b8db49eb7e9ab825728acc82ad69757081388cd2f6d11e4
- Mojang Java 26.3: resolved starting-biome tags ↗
Inner archive META-INF/versions/26.3/server-26.3.jar: data/minecraft/tags/worldgen/biome/has_structure/shipwreck.json; data/minecraft/tags/worldgen/biome/has_structure/shipwreck_beached.json; data/minecraft/tags/worldgen/biome/is_beach.json; data/minecraft/tags/worldgen/biome/is_deep_ocean.json; data/minecraft/tags/worldgen/biome/is_ocean.json
Evidence details
Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c. SHA-256 by archive member: data/minecraft/tags/worldgen/biome/has_structure/shipwreck.json = 90c1397d9c54faf76cfb6d148aa497e8ffcb88523a9c5ec6baf4bc33661efd57; data/minecraft/tags/worldgen/biome/has_structure/shipwreck_beached.json = 3cba22095cd0a3fb808bd2aebf2cc941ffe0829d968b1b53a3bce1241e311b36; data/minecraft/tags/worldgen/biome/is_beach.json = ce247502128c04e5999203db4139eaa317fe3586e62c671a0bd22ed3f792aea1; data/minecraft/tags/worldgen/biome/is_deep_ocean.json = 5c8de7b8025f2a7f93887aeeca0a5af1bf67f58004031742e082a16302c7a783; data/minecraft/tags/worldgen/biome/is_ocean.json = e86dbd183dbfc27044b1e9bfd9892f1098284cbf45e28d3218c9e45fcbd1a895
- Mojang Java 26.3: candidate placement settings ↗
Inner archive META-INF/versions/26.3/server-26.3.jar: data/minecraft/worldgen/structure_set/shipwrecks.json
Evidence details
Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c. SHA-256 by archive member: data/minecraft/worldgen/structure_set/shipwrecks.json = fee13a445bcf1f7c37966428690bb345dba699b76497d6a564c120bf19d662b0
- Mojang Java 26.3: candidate filtering and weighted retries ↗
Inner archive META-INF/versions/26.3/server-26.3.jar: net/minecraft/world/level/chunk/ChunkGenerator.class; net/minecraft/world/level/levelgen/structure/placement/AbstractSpreadingStructurePlacement$ExclusionZone.class; net/minecraft/world/level/levelgen/structure/placement/AbstractSpreadingStructurePlacement$FrequencyReducer.class; net/minecraft/world/level/levelgen/structure/placement/AbstractSpreadingStructurePlacement$FrequencyReductionMethod.class; net/minecraft/world/level/levelgen/structure/placement/AbstractSpreadingStructurePlacement.class; net/minecraft/world/level/levelgen/structure/placement/RandomSpreadStructurePlacement.class. Methods: RandomSpreadStructurePlacement.getPotentialStructureChunk; AbstractSpreadingStructurePlacement.isStructureChunk; ChunkGenerator.createStructures / tryGenerateStructure
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/chunk/ChunkGenerator.class = 7e5145ec6e36cbc7af979e869d4947c85e4715b8d13105f1369f0a385c40851d; net/minecraft/world/level/levelgen/structure/placement/AbstractSpreadingStructurePlacement$ExclusionZone.class = eb0d49eb1ffb0714fbdb04abde954fbdbd50cfeafd411f593de8159a06488300; net/minecraft/world/level/levelgen/structure/placement/AbstractSpreadingStructurePlacement$FrequencyReducer.class = e2887ebf5f8937ca3b038d6e1c40bc1c77f983a97b5b7ed9bdcd78b59d103e82; net/minecraft/world/level/levelgen/structure/placement/AbstractSpreadingStructurePlacement$FrequencyReductionMethod.class = 3664480026b9e91c8235bdbf6d98fdbbb78586f8d0decee70f9ea788d3291a71; net/minecraft/world/level/levelgen/structure/placement/AbstractSpreadingStructurePlacement.class = 0775a5cd47242fafd7f9977a9cfb821a6fffe5d1defcbc3bf8cded7e2427a4a8; net/minecraft/world/level/levelgen/structure/placement/RandomSpreadStructurePlacement.class = 8fbeed7711f96285b9b39b2e8363ffaa6ea80dd03baea4c1e6fa98e90b7f8eb9
- Mojang Java 26.3: generation entry points ↗
Inner archive META-INF/versions/26.3/server-26.3.jar: net/minecraft/world/level/levelgen/structure/Structure$GenerationContext.class; net/minecraft/world/level/levelgen/structure/Structure$GenerationStub.class; net/minecraft/world/level/levelgen/structure/Structure$StructureSettings$Builder.class; net/minecraft/world/level/levelgen/structure/Structure$StructureSettings.class; net/minecraft/world/level/levelgen/structure/Structure.class; net/minecraft/world/level/levelgen/structure/structures/ShipwreckStructure.class. Methods: ShipwreckStructure.findGenerationPoint; Structure.findValidGenerationPoint; Structure.GenerationContext.isValidBiome
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/structure/Structure$GenerationContext.class = 0c4335baa022b0482299b5cc0a3d0492fd3160542640b2538a5b8934822cc12b; net/minecraft/world/level/levelgen/structure/Structure$GenerationStub.class = e7a25f7418cfbfafaa6ecc1558a4bacde160ab247be6997df4aef3288da76a52; net/minecraft/world/level/levelgen/structure/Structure$StructureSettings$Builder.class = e9b9a37f14f156749ceb686ab31f34954c3b65c0e9f1ff43cdebb508a72b1261; net/minecraft/world/level/levelgen/structure/Structure$StructureSettings.class = 5796d330ef7ea491ee64b34ccdfe6c08a62b71886441bd87cd327a2fc6188f80; net/minecraft/world/level/levelgen/structure/Structure.class = fa023ce735376b7042242948275a0869a7e22d30e5e4c5c6502b521578577188; net/minecraft/world/level/levelgen/structure/structures/ShipwreckStructure.class = bc4b3c3b6ac8d885bad1ee588c94b97685a2644f8fcdb54a1325db904bac91a0
- Mojang Java 26.3: shipwreck templates and data ↗
data/minecraft/worldgen/structure/shipwreck.json; data/minecraft/worldgen/structure/shipwreck_beached.json; data/minecraft/structure/shipwreck/**/*.nbt
Evidence details
Official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c; inner META-INF/versions/26.3/server-26.3.jar SHA-256 a362163eec5d1612d520772bc16e5b39c09e3b234fdc045f56bf544284ee8ae6. NBT dimensions are unrotated saved template bounds (X × Y × Z), including air and connectors, not usable interior dimensions.
- Mojang Java 26.3: shipwreck layout and encounter implementation ↗
net.minecraft.world.level.levelgen.structure.structures.ShipwreckPieces; shipwreck/rightsideup_full.nbt, rightsideup_backhalf.nbt and related variants; ShipwreckPieces.ShipwreckPiece.handleDataMarker / postProcess.
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: shipwreck loot data ↗
Inner META-INF/versions/26.3/server-26.3.jar: data/minecraft/loot_table/chests/shipwreck_supply.json; data/minecraft/loot_table/chests/shipwreck_map.json; data/minecraft/loot_table/chests/shipwreck_treasure.json
Evidence details
Verified official server SHA-1 33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c. File SHA-256s: shipwreck_supply.json: 4904c49ccd4088e2e2654bfdf4d1d1b215f31ddc49a7ba72dce1c2fe6ba69b82; shipwreck_map.json: 4a22f6bf76321b923feda3fcca94cc2fc3ee84014336e5fc486b913776c94550; shipwreck_treasure.json: c9eb7bb0691e0273a28f92b16b746ed6733f267ffab032e992a9209694b32750. Table identity and conditional item rules are distinct from any particular generated container.
- Java 26.3 shipwreck: calculated selection odds ↗
Relevant /pools indices in the data reference; LootPool.addRandomItem/addRandomItems; UniformContainerBase.uniformFields; UniformGenerator.getIntUnsafe.
Evidence details
For direct unconditional weighted pools, chance of at least one selection is 1 minus the average of (1−weight/totalWeight)^n over inclusive uniform integer rolls. Values are theoretical table-invocation probabilities, not seed frequencies. Exact inputs: [{"itemId":"minecraft:coast_armor_trim_smithing_template","table":"data/minecraft/loot_table/chests/shipwreck_treasure.json","pool":2,"fraction":"1/6","chance":0.16666666666666666,"weight":1,"total":6,"rolls":[1]},{"itemId":"minecraft:diamond","table":"data/minecraft/loot_table/chests/shipwreck_treasure.json","pool":0,"fraction":"410786309/2916000000","chance":0.14087321982167353,"weight":5,"total":150,"rolls":[3,4,5,6]},{"itemId":"minecraft:emerald","table":"data/minecraft/loot_table/chests/shipwreck_treasure.json","pool":0,"fraction":"8397206/11390625","chance":0.7372032702331962,"weight":40,"total":150,"rolls":[3,4,5,6]},{"itemId":"minecraft:diamond_nautilus_armor","table":"data/minecraft/loot_table/chests/shipwreck_treasure.json","pool":3,"fraction":"2/185","chance":0.010810810810810811,"weight":2,"total":185,"rolls":[1]}]
- Mojang Java 1.20.1: inspected historical shipwreck loot ↗
data/minecraft/loot_tables/chests/shipwreck_supply.json; data/minecraft/loot_tables/chests/shipwreck_map.json; data/minecraft/loot_tables/chests/shipwreck_treasure.json
Evidence details
Limited comparison of the listed data files; no claim that all intermediate releases share either table. SHA-256s: shipwreck_supply.json: 58a16ea508faac3e6dc77ee1b82f30bc1e4ccbd79a0db6c372fea6eadf482f25; shipwreck_map.json: 69546cb00de9385bd89b517152130478b0be4d16ee7a52777288d050863cd8b6; shipwreck_treasure.json: 1861a8f752c80834afa9067a26530175e4cab0df83a89c4107fb47bb30f4a769
- Mojang Java 26.3: shipwreck layout and encounter implementation ↗
net.minecraft.world.level.levelgen.structure.structures.ShipwreckPieces; shipwreck/rightsideup_full.nbt, rightsideup_backhalf.nbt and related variants; ShipwreckPieces.ShipwreckPiece.handleDataMarker / postProcess.
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: Shipwreck — pinned history ↗
History section, retaining edition, release grouping, development-version and experimental-toggle qualifiers.
Evidence details
Pinned article revision 3787533 from 2026-09-21T15:07:43Z. Historical claims only; not an audited game build or release-date source.
- Minecraft Wiki: Shipwreck description ↗
Opening description and History
Evidence details
Pinned article revision 3787533; retrieved October 1, 2026. Article history supports historical introductions; current generation and loot are audited separately from game data.
- Java 1.13 (18w11a): release date ↗
/id; /releaseTime
Evidence details
Date belongs to the exact 18w11a build. Snapshot and prerelease dates are separate from the later full release; metadata does not prove the feature introduction.
- Bedrock 1.4.0: release date ↗
Version infobox release date
Evidence details
Platform releases were staggered: May 16, 2018<ref name=OutNow>{{Mcnet|update-aquatic-phase-one-out-now|Update Aquatic Phase One is out now!|May 16, 2018|Tom Stone}}</ref>. These dates describe full Pocket releases, separately from earlier betas.
- Bedrock 1.5.0: release date ↗
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.
- Java 1.14: release date ↗
/id; /releaseTime
Evidence details
Release metadata establishes its date, not feature introduction. Original Wiki history must support introduction separately.
- 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.17: release date ↗
/id; /releaseTime
Evidence details
Release metadata establishes its date, not feature introduction. Original Wiki history must support introduction separately.
- Bedrock 1.17.0: release date ↗
Version infobox release date
Evidence details
Platform releases were staggered: June 8, 2021<ref name="c&cp1-release">{{cite|url=https://feedback.minecraft.net/hc/en-us/articles/4402427632013|title=Minecraft - Caves & Cliffs: Part I - 1.17.0 (Bedrock)|date=June 8, 2021}}</ref>. These dates describe full Pocket releases, separately from earlier betas.
- Java 1.19.4 (Update 1.20 experiment): release date ↗
/id; /releaseTime
Evidence details
Full 1.19.4 release date; Update 1.20 experimental features required their separate toggle. Feature introduction is independently sourced to the structure history.
- Java 1.21.11: release date ↗
/id; /releaseTime
Evidence details
Date belongs to the exact 1.21.11 build. Snapshot and prerelease dates are separate from the later full release; metadata does not prove the feature introduction.
- Bedrock 1.21.130: release date ↗
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.
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.