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 and the Spigot-API. 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] [frameGlowing] [size]
- Starts the placement process
- frameVisible and frameFixed are only available on 1.16+
- frameGlowing is only available on 1.17+
- /imagemap download <filename> <sourceURL>
- downloads an image from the given URL into the
imagesfolder
- downloads an image from the given URL into the
- /imagemap delete <filename>
- deletes an image from the
imagesfolder
- deletes an image from 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
imagesfolder
- 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.delete - grants access to /imagemap delete 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.


-
View User Profile
-
Send Message
Posted Sep 18, 2020I 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
-
View User Profile
-
Send Message
Posted Sep 18, 2020In reply to Forge_User_69524661:
You're using CraftBukkit but you must use Spigot, since it contains some necessary API additions.
-
View User Profile
-
Send Message
Posted Sep 19, 2020In reply to SydMontague:
ohh! Ok. now i use the beta version of imagesmaps and it goes very well.
-
View User Profile
-
Send Message
Posted Sep 19, 2020In 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.
-
View User Profile
-
Send Message
Posted Sep 20, 2020In 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!
-
View User Profile
-
Send Message
Posted Aug 27, 2020Very awesome. Thank you very much for the update. The plugin works perfectly with 1.16.2
-
View User Profile
-
Send Message
Posted Aug 25, 2020Hello! 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?
-
View User Profile
-
Send Message
Posted Aug 25, 2020In 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. :)
-
View User Profile
-
Send Message
Posted Aug 26, 2020In reply to SydMontague:
Thank you!
-
View User Profile
-
Send Message
Posted Aug 21, 2020I have tried that and its still not working
its not popping up when I do /pl
-
View User Profile
-
Send Message
Posted Aug 21, 2020In reply to conversescum:
Is there anything in the logs? Is your server software up to date?
-
View User Profile
-
Send Message
Posted Aug 15, 2020Hello, 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
-
View User Profile
-
Send Message
Posted Aug 15, 2020In 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.
-
View User Profile
-
Send Message
Posted Jul 31, 2020Hello,
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 ?
-
View User Profile
-
Send Message
Posted Jul 31, 2020In 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 :)
-
View User Profile
-
Send Message
Posted Jul 28, 2020help it says there is entities in the way of it and only places a bit of the image
-
View User Profile
-
Send Message
Posted Jul 29, 2020In reply to snowyyyboy:
Is there an error in the console? Can you provide a screenshot of the situation?
The plugin really shouldn't place an image if any space is blocked. oO
-
View User Profile
-
Send Message
Posted Jul 26, 2020How does the resizing in the place command work? For example /imagemap place [name] false false 3 3 does not work.
Still one of the best plugins!
-
View User Profile
-
Send Message
Posted Jul 26, 2020In reply to Forge_User_35858341:
Add an x between the size.
-> /imagemap place [name] false false 3x3
However, it is strongly recommended to resize images using proper image software instead. It should lead to better results.
-
View User Profile
-
Send Message
Posted Jul 26, 2020In reply to SydMontague:
Thanks!