I'm a tad confused about how the treasure maps work.
I hoarded a bunch of maps from sunken ships and found that a lot of the time, the treasure maps would be duplicates of one another.
So my question is:
How does the game determine where the treasure is that corresponds to the buried treasure map?
Does it generate a chest somewhere when you pick up the map from the chest? The first time you open the chest, maybe? Or perhaps when you look at the map for the first time?
I'd appreciate if someone could shed some light on this.
For the time being, I'll just not hoard maps to prevent confusion. Just loot a ship and don't bother looting any more ships (so as not to risk duplicates or being sent on wild goose-chases) until I've located the treasure and destroyed the chest and map.
I have no idea how the map and treasure chest are connected or which is generated first but I can tell you from experience that destroying the map and chest before looting another ship or underwater ruin doesn't do any good.
Maps from ships and ruins near each other are very likely to point to the same buried treasure chest even if you do.
The only way to be relatively certain of getting a map that points to a new treasure chest seems to be to travel to a new area to explore for shipwrecks and ruins.
--
What I do now is loot any shipwrecks and ruins I come across and just throw away duplicate maps, since the chests sometimes contain other useful stuff even if the maps are duplicates.
After digging up about 15 buried treasure chests I can now usually recognize the duplicates without having to waste my time following them.
To save on wasted time I mark any ruins, shipwrecks and buried treasures I've looted with jack-o-lanterns so I don't bother checking them again.
The Meaning of Life, the Universe, and Everything.
Join Date:
4/13/2018
Posts:
60
Member Details
The treasure will either already have been generated there, or be known to become generated there (due to the world's seed). The map has nothing to do with the generation of the treasure. As for the map knowing where the treasure should be, I don't know for certain, but I assume that it scans for the nearest buried treasure chest when you open the chest containing the map. So as long as you make sure to mine away a buried treasure chest when you find it, you (hopefully) shouldn't have a new map in a new chest point towards that location again.
In other words, what you should do is the following: Search for maps in chests, find a map, stop searching in chests, find the treasure, destroy/mine away the buried treasure chest, search for maps in chests, and repeat that over and over.
Given that treasure maps appear to be a subtype of explorer map (the others being for ocean monumnets and woodland mansions), my expextation is that the map picks a 'nearby' (not necessarily the closest) instance of a treasure chest when it activates.
The activating event for other two types is when the cartographer unlocks the trade; while I've found no explicit statement, the analogous event ought to be opening the containing chest.
On that basis, loot chests near each other should be likely to generate maps pointing to the same buried treasure.
I would be interested to hear if anyone has done the experimentation to confirm what effect breaking the treasure chest has on nearby map generation…
Rollback Post to RevisionRollBack
WARNING: I have an extemely "grindy" playstyle; YMMV — if this doesn't seem fun to you, mine what you can from it & bin the rest.
I would be interested to hear if anyone has done the experimentation to confirm what effect breaking the treasure chest has on nearby map generation…
Yes, as I indicated in my previous post in this thread it seems to have no effect.
After discovering that chests from neighboring ruins/shipwrecks tended to have the same maps I changed my strategy and only looted as many chests as it took to find a map, sailed off to dig up and destroy the treasure chest and returned to the ruin field to loot the rest and found those maps tended to be the same as the first. I also created two worlds with the same seed and found the same maps in the same places even when first approaching the area from different directions in an attempt to load different chunks.
Yes, as I indicated in my previous post in this thread it seems to have no effect.
After discovering that chests from neighboring ruins/shipwrecks tended to have the same maps I changed my strategy and only looted as many chests as it took to find a map, sailed off to dig up and destroy the treasure chest and returned to the ruin field to loot the rest and found those maps tended to be the same as the first. I also created two worlds with the same seed and found the same maps in the same places even when first approaching the area from different directions in an attempt to load different chunks.
THX, that was much of the data for which I was looking…
Have you attempted using Copy1 of the world to locate and destroy a treasure chest in Copy2, then opening the Copy2 instance of the ruin chest?
If so, what was the result?
If you destroy the treasure chest in Copy3 before loading the chunk with the ruin chest, does that change the map generated?
Rollback Post to RevisionRollBack
WARNING: I have an extemely "grindy" playstyle; YMMV — if this doesn't seem fun to you, mine what you can from it & bin the rest.
I'm pretty sure that like most world generation the world seed is used to determine where the chests are located, thus the game can easily check for chests in nearby chunks when generating maps. By "check" I don't mean by physically scanning the chunks (which won't work anyway to locate a specific type of chest unless they added some sort of NBT tag) but by running the algorithm that determines where chests are generated, which is a simple function of the chunk coordinates and the world seed; for example, I use the following code to determine if a chunk has a stronghold:
public boolean validStrongholdLocation(int chunkX, int chunkZ, int distance)
{
// Generates an infinite number of strongholds starting 40 chunks (640 blocks) from the origin,
// the same minimum distance used by vanilla; strongholds generate to a 128 chunk grid in
// alternating 64x64 chunk regions with a relative offset of 0-31 chunks, for one stronghold
// every 8192 chunks. The same algorithm is used for colossal and regional caves with different
// offsets so they can never collide.
chunkX += this.strongholdOffsetX;
chunkZ += this.strongholdOffsetZ;
if ((chunkX & 64) != (chunkZ & 64)) return false;
this.spawnRNG.setChunkSeed(chunkX >> 6, chunkZ >> 6);
return (chunkX & 63) == this.spawnRNG.nextInt2(32) && (chunkZ & 63) == this.spawnRNG.nextInt2(32) && distance >= 1600;
}
Besides being called when actually generating strongholds, I also call this method to determine if a stronghold is present nearby when throwing Eyes of Ender and when generating mineshafts and caves so they don't generate too close to strongholds (strongholds always overwrite them in TMCW (the walls do not overwrite air in vanilla), so this is more so caves/mineshafts don't get messed up by them):
public ChunkPosition getNearestInstance(World par1World, int posX, int posY, int posZ)
{
int chunkX = posX >> 4;
int chunkZ = posZ >> 4;
int strongholdX = 0;
int strongholdZ = 0;
int minDistance = Integer.MAX_VALUE;
// Only calculates distance if center is within 256 chunks of the origin to prevent overflow at
// extreme distances
boolean nearOrigin = (Math.abs(chunkX) < 256 && Math.abs(chunkZ) < 256);
// Searches a +/- 128 chunk area from the player to ensure that at least one stronghold is found
for (int z = -128; z <= 128; ++z)
{
int cz = chunkZ + z;
int cz2 = cz * cz;
for (int x = -128; x <= 128; ++x)
{
int cx = chunkX + x;
if (this.validStrongholdLocation(cx, cz, nearOrigin ? cx * cx + cz2 : 65536))
{
// Calculates distance relative to the center/player and records the closest stronghold
int distance = x * x + z * z;
if (distance < minDistance)
{
minDistance = distance;
strongholdX = cx;
strongholdZ = cz;
}
}
}
}
// Returns nearest stronghold if one is found (should not ever fail). Location is center of
// starting staircase
if (strongholdX != 0 || strongholdZ != 0)
{
return new ChunkPosition(strongholdX * 16 + 4, 32, strongholdZ * 16 + 4);
}
else
{
return null;
}
}
This code will find any strongholds located within a 128 chunk radius around the current chunk and the same method can be used to locate any treasure chests (probably with a much smaller radius; even with the radius I use here it only takes about a millisecond to find a stronghold so this is not an issue for something that is occasionally run once), returning the chunk coordinates of the closest one if more than one is found (plus any offset within the chunk if they are not always at the same relative offset; e.g. the center of the starting spiral staircase in a stronghold is always offset by 4,4 relative to the NW corner of the chunk it starts in). The only variable should then be the elevation, which can vary depending on terrain, but maps don't need to show that.
Cartographer maps and the /locate command undoubtedly work the same way, probably with a much larger search radius given that mansions can easily be 10,000+ blocks (625+ chunks) away (there is a way to check outwards from the center in a spiral so the time taken to find a structure is based on the distance to the closest one, not the size of the area searched).
I'm a tad confused about how the treasure maps work.
I hoarded a bunch of maps from sunken ships and found that a lot of the time, the treasure maps would be duplicates of one another.
So my question is:
How does the game determine where the treasure is that corresponds to the buried treasure map?
Does it generate a chest somewhere when you pick up the map from the chest? The first time you open the chest, maybe? Or perhaps when you look at the map for the first time?
I'd appreciate if someone could shed some light on this.
For the time being, I'll just not hoard maps to prevent confusion. Just loot a ship and don't bother looting any more ships (so as not to risk duplicates or being sent on wild goose-chases) until I've located the treasure and destroyed the chest and map.
I have no idea how the map and treasure chest are connected or which is generated first but I can tell you from experience that destroying the map and chest before looting another ship or underwater ruin doesn't do any good.
Maps from ships and ruins near each other are very likely to point to the same buried treasure chest even if you do.
The only way to be relatively certain of getting a map that points to a new treasure chest seems to be to travel to a new area to explore for shipwrecks and ruins.
--
What I do now is loot any shipwrecks and ruins I come across and just throw away duplicate maps, since the chests sometimes contain other useful stuff even if the maps are duplicates.
After digging up about 15 buried treasure chests I can now usually recognize the duplicates without having to waste my time following them.
To save on wasted time I mark any ruins, shipwrecks and buried treasures I've looted with jack-o-lanterns so I don't bother checking them again.
Just testing.
The treasure will either already have been generated there, or be known to become generated there (due to the world's seed). The map has nothing to do with the generation of the treasure. As for the map knowing where the treasure should be, I don't know for certain, but I assume that it scans for the nearest buried treasure chest when you open the chest containing the map. So as long as you make sure to mine away a buried treasure chest when you find it, you (hopefully) shouldn't have a new map in a new chest point towards that location again.
In other words, what you should do is the following: Search for maps in chests, find a map, stop searching in chests, find the treasure, destroy/mine away the buried treasure chest, search for maps in chests, and repeat that over and over.
ugg your all wrong it is cuz one thing:
Given that treasure maps appear to be a subtype of explorer map (the others being for ocean monumnets and woodland mansions), my expextation is that the map picks a 'nearby' (not necessarily the closest) instance of a treasure chest when it activates.
The activating event for other two types is when the cartographer unlocks the trade; while I've found no explicit statement, the analogous event ought to be opening the containing chest.
On that basis, loot chests near each other should be likely to generate maps pointing to the same buried treasure.
I would be interested to hear if anyone has done the experimentation to confirm what effect breaking the treasure chest has on nearby map generation…
WARNING: I have an extemely "grindy" playstyle; YMMV — if this doesn't seem fun to you, mine what you can from it & bin the rest.
Yes, as I indicated in my previous post in this thread it seems to have no effect.
After discovering that chests from neighboring ruins/shipwrecks tended to have the same maps I changed my strategy and only looted as many chests as it took to find a map, sailed off to dig up and destroy the treasure chest and returned to the ruin field to loot the rest and found those maps tended to be the same as the first. I also created two worlds with the same seed and found the same maps in the same places even when first approaching the area from different directions in an attempt to load different chunks.
Just testing.
Well The Way To Do It Is To Dig Around The Area Of The X:lol:
LUISG2YT
Join new maps that I create!
LIST:
-Free Build
-Disaster Survival
-Survival
THX, that was much of the data for which I was looking…
Have you attempted using Copy1 of the world to locate and destroy a treasure chest in Copy2, then opening the Copy2 instance of the ruin chest?
If so, what was the result?
If you destroy the treasure chest in Copy3 before loading the chunk with the ruin chest, does that change the map generated?
WARNING: I have an extemely "grindy" playstyle; YMMV — if this doesn't seem fun to you, mine what you can from it & bin the rest.
I'm pretty sure that like most world generation the world seed is used to determine where the chests are located, thus the game can easily check for chests in nearby chunks when generating maps. By "check" I don't mean by physically scanning the chunks (which won't work anyway to locate a specific type of chest unless they added some sort of NBT tag) but by running the algorithm that determines where chests are generated, which is a simple function of the chunk coordinates and the world seed; for example, I use the following code to determine if a chunk has a stronghold:
Besides being called when actually generating strongholds, I also call this method to determine if a stronghold is present nearby when throwing Eyes of Ender and when generating mineshafts and caves so they don't generate too close to strongholds (strongholds always overwrite them in TMCW (the walls do not overwrite air in vanilla), so this is more so caves/mineshafts don't get messed up by them):
This code will find any strongholds located within a 128 chunk radius around the current chunk and the same method can be used to locate any treasure chests (probably with a much smaller radius; even with the radius I use here it only takes about a millisecond to find a stronghold so this is not an issue for something that is occasionally run once), returning the chunk coordinates of the closest one if more than one is found (plus any offset within the chunk if they are not always at the same relative offset; e.g. the center of the starting spiral staircase in a stronghold is always offset by 4,4 relative to the NW corner of the chunk it starts in). The only variable should then be the elevation, which can vary depending on terrain, but maps don't need to show that.
Cartographer maps and the /locate command undoubtedly work the same way, probably with a much larger search radius given that mansions can easily be 10,000+ blocks (625+ chunks) away (there is a way to check outwards from the center in a spiral so the time taken to find a structure is based on the distance to the closest one, not the size of the area searched).
TheMasterCaver's First World - possibly the most caved-out world in Minecraft history - includes world download.
TheMasterCaver's World - my own version of Minecraft largely based on my views of how the game should have evolved since 1.6.4.
Why do I still play in 1.6.4?