ImageMaps
ImageMaps
ImageMaps is a plugin for Bukkit Minecraft servers that enables you to place custom images in your world by rendering them onto maps and placing them in item frames.
This can be used to create info graphics, custom paintings and even the appearance of custom textures.
Installation
You will need a Server that implements Bukkit 1.13 or newer. Some features are only available in newer releases. Make sure to use the latest release of your server software before reporting issues.
Put the plugin into your servers plugins
folder and start it up. A folder for the plugin will be created automatically. You can place your images in the images
folder inside it.
Upgrading from versions < 1.0.0
The plugin should convert your maps.yml automatically. It will attempt to create a backup before doing so, but it is recommended to do one manually as well.
Usage
In order for you use place images they must be present in the images
folder. You can either put them there via FTP or just copying it, or by using the plugin's download command, allowing you to access images from the Internet.
To place images just run the /imagemap place
command and right click the block that should be the upper left corner of the image (based on your perspective).
Images will by default split into 128x128 pixel sub-images to fit on a map. The image may be scaled via command parameters, however it is recommended to prepare correctly scaled images.
The color palette of Minecraft maps is very limited, requiring the plugin/Bukkit to convert the input image. This will result in your images looking different ingame than the source. The available color table can be found here: https://minecraft.gamepedia.com/Map_item_format#Color_table
The invisible and fixed item frame properties are only available in 1.16+. You can modify them for any item frame by using a configurable (default a wooden hoe) items. Right click to toggle visibility and Shift+Right click to toggle the fixed state.
Commands
- /imagemap place <filename> [frameInvisible] [frameFixed] [size]
- Starts the placement process
- frameVisible and frameFixed are only available on 1.16+
- /imagemap download <filename> <sourceURL>
- downloads an image from the given URL into the
images
folder
- downloads an image from the given URL into the
- /imagemap info <filename>
- prints info, such as resolution and expected size
- /imagemap reload <filename>
- reloads an image, to be used when the image file changed
- /imagemap list [page]
- lists all images in the
images
folder
- lists all images in the
- /imagemap help [command]
- prints help for commands
Permissions
imagemaps.*
- grants access to all permissions
imagemaps.place
- grants access to /imagemap place command
imagemaps.download
- grants access to /download place command
imagemaps.info
- grants access to /imagemap info command
imagemaps.list
- grants access to /imagemap list command
imagemaps.reload
- grants access to /imagemap reload command
imagemaps.help
- grants access to /imagemap help command
imagemaps.toggleFixed
- allows to toggle the "fixed" state of frames with a wooden hoe
imagemaps.toggleVisible
- allows to toggle the "visible" state of frames with a wooden hoe
All permissions are default true for OPs.
Maven
You will need to configure your environment to access GitHub repositories.
<repository>
<id>github</id>
<name>ImageMaps repository</name>
<url>https://maven.pkg.github.com/SydMontague/ImageMaps</url>
</repository>
<dependency>
<groupId>net.craftcitizen</groupId>
<artifactId>imagemaps</artifactId>
<version>1.0.1</version>
</dependency>
This plugin has been developed for the CraftCitizen survival Minecraft server.
I download plugin and upload my image in .png...

And the version is 1.7.10 (plugin version too).
And i have a problem:
I don't know why because the image.png is :

In reply to TenUx:
What version of the plugin were you using? Is there any error message somewhere in chat or the server log?
No matter what command I use I just get "[ImageMaps] You cant run this command"
my server is 1.16.4 and uses the most recent version of spigot
the server was made using Aternos
How do I make it so that I stop getting this message?
In reply to krazz0801:
It means you didn't give yourself the permissions or OP necessary for the plugin.
I am in 1.16.3 I keep being told I have a malformatted url. I am trying to get pictures from rogue company. Do I put images into the folder on the server side or do I download the picture from client side, or do I just get the link from online? Because when I do anything it says it is not formatted correctly.
Edit: I think I figured out how to fix it.
I have an error. Is there anybody who can help me?
I use Bukkit 1.16.1 but I also testet it with 1.16.2
[15:09:09 ERROR]: Could not load 'plugins\ImageMaps.jar' in folder 'plugins'[15:09:09 ERROR]: Could not load 'plugins\ImageMaps.jar' in folder 'plugins'org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: net/md_5/bungee/api/chat/BaseComponent at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:137) ~[craftbukkit.jar:git-Bukkit-43c7ff9] at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:393) ~[craftbukkit.jar:git-Bukkit-43c7ff9] at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:301) ~[craftbukkit.jar:git-Bukkit-43c7ff9] at org.bukkit.craftbukkit.v1_16_R2.CraftServer.loadPlugins(CraftServer.java:379) ~[craftbukkit.jar:git-Bukkit-43c7ff9] at net.minecraft.server.v1_16_R2.DedicatedServer.init(DedicatedServer.java:180) ~[craftbukkit.jar:git-Bukkit-43c7ff9] at net.minecraft.server.v1_16_R2.MinecraftServer.w(MinecraftServer.java:786) ~[craftbukkit.jar:git-Bukkit-43c7ff9] at net.minecraft.server.v1_16_R2.MinecraftServer.lambda$0(MinecraftServer.java:155) ~[craftbukkit.jar:git-Bukkit-43c7ff9] at java.lang.Thread.run(Unknown Source) [?:1.8.0_201]Caused by: java.lang.NoClassDefFoundError: net/md_5/bungee/api/chat/BaseComponent at java.lang.Class.forName0(Native Method) ~[?:1.8.0_201] at java.lang.Class.forName(Unknown Source) ~[?:1.8.0_201] at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:64) ~[craftbukkit.jar:git-Bukkit-43c7ff9] at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:133) ~[craftbukkit.jar:git-Bukkit-43c7ff9] ... 7 moreCaused by: java.lang.ClassNotFoundException: net.md_5.bungee.api.chat.BaseComponent at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.8.0_201] at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:167) ~[craftbukkit.jar:git-Bukkit-43c7ff9] at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:96) ~[craftbukkit.jar:git-Bukkit-43c7ff9] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_201] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_201] at java.lang.Class.forName0(Native Method) ~[?:1.8.0_201] at java.lang.Class.forName(Unknown Source) ~[?:1.8.0_201] at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:64) ~[craftbukkit.jar:git-Bukkit-43c7ff9] at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:133) ~[craftbukkit.jar:git-Bukkit-43c7ff9] ... 7 more
In reply to Forge_User_69524661:
You're using CraftBukkit but you must use Spigot, since it contains some necessary API additions.
In reply to SydMontague:
ohh! Ok. now i use the beta version of imagesmaps and it goes very well.
In reply to Forge_User_69524661:
The beta version is heavily outdated and wont be supported anymore, it's not recommended for anything buy legacy versions of Minecraft (<1.13).
I strongly recommend using Spigot instead, since it's the primary Bukkit implementation nowadays, with BuildTools not even exposing CraftBukkit to the user anymore.
In reply to SydMontague:
yes, i tested it with spigot too, but these features are superfluous for my purposes.
I am very happy with the beta!
thanks for your support! I thank you very much!
Very awesome. Thank you very much for the update. The plugin works perfectly with 1.16.2
Hello! Thanks for all the updates! I was hoping for a way to change the wooden hoe to another item -- we use that model in a custom RP with the magic plugin and can no longer place these in item frames. We also tried negating the imagemaps.toggleFixed and imagemaps.toggleVisible permissions but that removed the ability to interact with the itemframe entirely -- that might otherwise be a viable alternative if the tool is not able to be customized, if negating those permissions reverts to vanilla behavior rather than canceling the interact event altogether?
In reply to mercurialmusic:
I pushed an update to make the toggle item configurable and fixing that people without the permission can use the toggle item to interact normally with item frames—cancelling the interaction altogether was not intended in the first place.
Thanks for the report. :)
In reply to SydMontague:
Thank you!
I have tried that and its still not working
its not popping up when I do /pl
In reply to conversescum:
Is there anything in the logs? Is your server software up to date?
Hello, im trying to instal this onto my server. I put it on to my plugins folder and I reload, but when I did /pl it did not show up. im running the latest version of spigot. any help.
ps. I don't speak much English so excuse my grammar
In reply to conversescum:
Try a full restart of the server. Doing /reload is strongly advised against.
Also, check your server log for any potential errors.
Hello,
I tried this plugin and everything worked fine at the beginning.
But now I have a problem, every time I place a map, I can't see the picture and there is just an empty map shown.
I have this message :
[20:26:59 ERROR]: Could not render map using renderer net.craftcitizen.imagemaps.ImageMapRenderer
java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment
at java.lang.Class.forName0(Native Method) ~[?:1.8.0_261]
at java.lang.Class.forName(Class.java:264) ~[?:1.8.0_261]
at java.awt.GraphicsEnvironment.createGE(GraphicsEnvironment.java:103) ~[?:1.8.0_261]
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:82) ~[?:1.8.0_261]
at java.awt.image.BufferedImage.createGraphics(BufferedImage.java:1181) ~[?:1.8.0_261]
at org.bukkit.map.MapPalette.imageToBytes(MapPalette.java:197) ~[patched_1.16.1.jar:git-Paper-112]
at org.bukkit.craftbukkit.v1_16_R1.map.CraftMapCanvas.drawImage(CraftMapCanvas.java:72) ~[patched_1.16.1.jar:git-Paper-112]
at net.craftcitizen.imagemaps.ImageMapRenderer.render(ImageMapRenderer.java:53) ~[?:?]
at org.bukkit.craftbukkit.v1_16_R1.map.CraftMapView.render(CraftMapView.java:158) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.WorldMap$WorldMapHumanTracker.a(WorldMap.java:470) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.WorldMap.a(WorldMap.java:347) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.ItemWorldMap.a(ItemWorldMap.java:339) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.EntityTrackerEntry.a(EntityTrackerEntry.java:97) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.EntityTrackerEntry.tick(EntityTrackerEntry.java:75) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.PlayerChunkMap.processTrackQueue(PlayerChunkMap.java:2039) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.PlayerChunkMap.g(PlayerChunkMap.java:2050) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.ChunkProviderServer.tickChunks(ChunkProviderServer.java:864) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.ChunkProviderServer.tick(ChunkProviderServer.java:742) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.WorldServer.doTick(WorldServer.java:455) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.MinecraftServer.b(MinecraftServer.java:1353) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.DedicatedServer.b(DedicatedServer.java:377) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.MinecraftServer.a(MinecraftServer.java:1212) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.MinecraftServer.v(MinecraftServer.java:1000) ~[patched_1.16.1.jar:git-Paper-112]
at net.minecraft.server.v1_16_R1.MinecraftServer.lambda$a$0(MinecraftServer.java:177) ~[patched_1.16.1.jar:git-Paper-112]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_261]
I use a paper server in 1.16.1.
Is there a way to solve it ?
In reply to Forge_User_80968405:
I finally found the problem myself.
To render the map, you DON'T have to launch the server with a ssh xserver running (we have to remove options -XY when connecting to computer with SSH).
I hope it can help :)