
Minecraft Tutorials : Adding Symbols to Maps Remotely – NEBINION nebinion.com
Minecraft Tutorials : Adding Symbols to Maps Remotely – NEBINION Minecraft Tutorials
This tutorial is completely manual since I don’t have the expertise to create more efficient tools for this process.
Let me start with some background information.
As you’re probably aware, Minecraft maps use an ID system. Every map with the same ID, like map #35, will display identical content, including banner markers and item frames that hold the map, because all of that information is tied to the map’s ID.
Treasure and explorer maps also use icons to mark points of interest, in a similar fashion. These icons will appear across all maps that share the same ID. The key difference is that treasure maps store their icon information entirely in their NBT data. Other maps, however, have not fundamentally changed in this regard. Maps are still rendered based on their ID, including any decorations. The same method that causes banners to show up on a map is used to display the NBT decorations. This means that the process relies on associating the NBT data with the map ID temporarily. Temporarily, as in, until the server restarts.
This NBT data will affect any map with the same ID, regardless of the world — including survival worlds, as long as you meet these requirements:
A. You know the X/Z coordinates where the map is centered.
B. You have the map’s ID.
C. You have access to a creative world on the server to import items with custom NBT.
The biggest challenge is A, as I’m not aware of any tools that can pinpoint the exact location where a map is centered.
Once you have the necessary information, you can add decorations to any map — whether it’s a custom map billboard, map art, or a map inside someone’s base. As long as you can load the maps into a creative world, the symbols will be applied to maps of the same ID in any other world. Just keep in mind that the decorations will only remain active until the server restarts. To maximize the load time, it’s a good idea to place these maps in high-traffic areas.
The decorations are stored in a compound list within the map’s NBT. In the new NBT format introduced in version 1.20.5, it would look something like this:
minecraft:map_decorations={decoration_1:{rotation:0.0f ,x:0.0d, z:0.0d, type:”minecraft:red_x”}, decoration_2:{rotation:90.0f, x:350.0d, z:350.0d, type:”minecraft:banner_red”}}
This one has two decorations, a red X at (0,0), and a red banner at (350,350) rotated 90 degrees
Pulling out one unit here we have this:
decoration_1:{rotation: 0.0f,x: 0.0d,z: 0.0d,type:”minecraft:red_x”}
“decoration_1”: This is the name assigned to the decoration, used to prevent duplicates. It’s important to ensure that your decoration names are unique, as naming conflicts can occur. Treasure maps use “+” as the default decoration name, but if you create a “+” decoration on a map first, it won’t render — making treasure maps ineffective. Decoration names are applied based on the order they are loaded by the server, so if you have two decorations named “decoration_1,” only the first one loaded will be applied to that map ID.
“rotation”: This value is in degrees and controls the clockwise rotation of the symbol. A value of 180 makes it upright, while 0 places it upside down. The “f” suffix indicates that the tag type is a “float.”
“x” and “z”: These represent the coordinates of the symbol. If the coordinates are not on the map, the symbol will still be loaded but won’t be rendered. The “d” suffix designates the tag type as a ‘double.’ This is why knowing the map’s location is important.
“type”: A namespaced ID for the symbol that defines its appearance. Examples include “banner_red” (or any color), “red_x,” “target_x,” “target_point,” “mansion,” “monument,” “desert_village,” “plains_village,” “savanna_village,” “taiga_village,” “jungle_pyramid,” “swamp_hut,” and “frame.”
Certain symbols are only visible when the map is in your hand, which may be useful in some situations. These symbols include “player,” “red_marker,” “blue_marker,” “player_off_map,” and “player_off_limits.”
You can probably use some sort of nbt editor mod to make these but for simplicity I’ll stick to vanilla methods.
In a singleplayer world, this would be the command format to create a decorated map, where map_id is the id # of the map you wish to apply symbols to, and the map_decorations list would have however many decorations you’d like for that map ID. If there was a map with ID 35 at 0,0 that you wanted to make a x_x face at, you might use a command like this:
/give @p minecraft:filled_map[
minecraft:map_decorations={
eye_1:{rotation: 0.0f,x: 25.0d,z: -25.0d,type:”minecraft:red_x”},
eye_2:{rotation: 0.0f,x: -25.0d,z: -25.0d,type:”minecraft:red_x”},
nose:{rotation: 90.0f,x: 0.0d,z: 0.0d,type:”minecraft:target_point”},
mouth1:{rotation: 270.0f,x: -20.0d,z: 25.0d,type:”minecraft:banner_red”},
mouth2:{rotation: 270.0f,x: -16.0d,z: 25.0d,type:”minecraft:banner_red”},
mouth3:{rotation: 270.0f,x: -12.0d,z: 25.0d,type:”minecraft:banner_red”},
mouth4:{rotation: 270.0f,x: -8.0d,z: 25.0d,type:”minecraft:banner_red”},
mouth5:{rotation: 270.0f,x: -4.0d,z: 25.0d,type:”minecraft:banner_red”},
mouth0:{rotation: 270.0f,x: 0.0d,z: 25.0d,type:”minecraft:banner_red”},
mouth6:{rotation: 270.0f,x: 4.0d,z: 25.0d,type:”minecraft:banner_red”},
mouth7:{rotation: 270.0f,x: 8.0d,z: 25.0d,type:”minecraft:banner_red”},
mouth8:{rotation: 270.0f,x: 12.0d,z: 25.0d,type:”minecraft:banner_red”},
mouth9:{rotation: 270.0f,x: 16.0d,z: 25.0d,type:”minecraft:banner_red”},
mouth10:{rotation: 270.0f,x: 20.0d,z: 25.0d,type:”minecraft:banner_red”},
},
minecraft:map_id=35]
You'll get something that looks like this:
If you're particularly enterprising, you could also turn maps into computer melting walls of symbols:
Or a stealthier pillar of thousands of the same decoration in the same spot:
To bring maps into a server’s creative world, save them to your hotbar by holding C and pressing any number between 1-9, then place the map down. Even if the map is destroyed, the symbols will remain on all maps with the same ID until the server restarts. From my limited testing, it seems that these custom maps can bypass custom NBT restrictions on certain servers.
I haven’t found a definitive limit to this yet, but it works with at least thousands of maps. While there is a limit to the size of commands a command block can accept, this doesn’t stop you from splitting the payload into multiple copies of the map.
Minecraft Nebinion Tutorials
Report Story
Leave Your Comment