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
images
folder
- downloads an image from the given URL into the
- /imagemap delete <filename>
- deletes an image from the
images
folder
- 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
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.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.
how do i download it i've tryed a lots of links and didn't work
Hello, while trying to use the plugin i keep getting these error in the console and in chat the plugin says Map couldn't be placed there is another entity in the way and only places one item frame with nothing shown.
[08:25:50 ERROR]: Could not pass event PlayerInteractEvent to ImageMaps v1.0.3
java.lang.IllegalArgumentException: Unknown image type 0
at java.awt.image.BufferedImage.<init>(BufferedImage.java:501) ~[?:?]
at net.craftcitizen.imagemaps.ImageMapRenderer.recalculateInput(ImageMapRenderer.java:40) ~[?:?]
at net.craftcitizen.imagemaps.ImageMapRenderer.<init>(ImageMapRenderer.java:24) ~[?:?]
at net.craftcitizen.imagemaps.ImageMaps.getMapItem(ImageMaps.java:397) ~[?:?]
at net.craftcitizen.imagemaps.ImageMaps.placeImage(ImageMaps.java:353) ~[?:?]
at net.craftcitizen.imagemaps.ImageMaps.onInteract(ImageMaps.java:283) ~[?:?]
at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor2.execute(Unknown Source) ~[?:?]
at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[patched_1.16.4.jar:git-Paper-416]
at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[patched_1.16.4.jar:git-Paper-416]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.16.4.jar:git-Paper-416]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:607) ~[patched_1.16.4.jar:git-Paper-416]
at org.bukkit.craftbukkit.v1_16_R3.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:510) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.PlayerInteractManager.a(PlayerInteractManager.java:464) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.PlayerConnection.a(PlayerConnection.java:1549) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.PacketPlayInUseItem.a(PacketPlayInUseItem.java:27) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.PacketPlayInUseItem.a(PacketPlayInUseItem.java:5) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.PlayerConnectionUtils.lambda$ensureMainThread$1(PlayerConnectionUtils.java:23) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.TickTask.run(SourceFile:18) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.MinecraftServer.bb(MinecraftServer.java:1132) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.MinecraftServer.executeNext(MinecraftServer.java:1125) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.MinecraftServer.sleepForTick(MinecraftServer.java:1086) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:1000) ~[patched_1.16.4.jar:git-Paper-416]
at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:173) ~[patched_1.16.4.jar:git-Paper-416]
at java.lang.Thread.run(Thread.java:832) [?:?]
>
In reply to marks73345:
The error would indicate there is something wrong with the input image. What version of the JRE/JDK are you running?
Also, try scaling the image in an image manipulation program to the desired resolution, it should work around the problem.
In reply to SydMontague:
I got same problem. I tried to scaled image but still got same problem
In reply to tsanur:
Try the latest release, it might solve this problem.
I got an error after setting up about 30+ pictures in my world when i restarted and half of all the pictures were gone, only the frames remained. Error said something about
"Error occured while enabling ImageMaps v.1.0.3 (is it up to date?)
java.awt.image.RasterFormatException: negative or zero height "
Did i do something wrong ? is there some kind of fix around it.
In reply to jerryxzx:
Can you post the full error message?
In reply to SydMontague:
Certainly, all i remember was putting pictures in my world in the nether and i maybe uploaded about 50 of them and placed about 30 of them and then i set a region perimeter for that location then i restarted the server later and got this error:
[12:07:44] [Server thread/INFO]: [ImageMaps] Enabling ImageMaps v1.0.3[12:07:44] [Server thread/INFO]: [ImageMaps] Enabling ImageMaps v1.0.3[12:07:48] [Server thread/ERROR]: Error occurred while enabling ImageMaps v1.0.3 (Is it up to date?)java.awt.image.RasterFormatException: negative or zero height at java.awt.image.Raster.<init>(Raster.java:1105) ~[?:1.8.0_265] at java.awt.image.WritableRaster.<init>(WritableRaster.java:129) ~[?:1.8.0_265] at sun.awt.image.SunWritableRaster.<init>(SunWritableRaster.java:129) ~[?:1.8.0_265] at sun.awt.image.ByteComponentRaster.<init>(ByteComponentRaster.java:154) ~[?:1.8.0_265] at sun.awt.image.ByteInterleavedRaster.<init>(ByteInterleavedRaster.java:191) ~[?:1.8.0_265] at sun.awt.image.ByteInterleavedRaster.createWritableChild(ByteInterleavedRaster.java:1261) ~[?:1.8.0_265] at java.awt.image.BufferedImage.getSubimage(BufferedImage.java:1202) ~[?:1.8.0_265] at net.craftcitizen.imagemaps.ImageMapRenderer.recalculateInput(ImageMapRenderer.java:37) ~[?:?] at net.craftcitizen.imagemaps.ImageMapRenderer.<init>(ImageMapRenderer.java:24) ~[?:?] at net.craftcitizen.imagemaps.ImageMaps.lambda$loadMaps$3(ImageMaps.java:198) ~[?:?] at java.util.LinkedHashMap.forEach(LinkedHashMap.java:684) ~[?:1.8.0_265] at net.craftcitizen.imagemaps.ImageMaps.loadMaps(ImageMaps.java:180) ~[?:?] at net.craftcitizen.imagemaps.ImageMaps.onEnable(ImageMaps.java:93) ~[?:?] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[spigot-1.16.5.jar:git-Spigot-138d451-085fe67] at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:351) ~[spigot-1.16.5.jar:git-Spigot-138d451-085fe67] at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:480) ~[spigot-1.16.5.jar:git-Spigot-138d451-085fe67] at org.bukkit.craftbukkit.v1_16_R3.CraftServer.enablePlugin(CraftServer.java:493) ~[spigot-1.16.5.jar:git-Spigot-138d451-085fe67] at org.bukkit.craftbukkit.v1_16_R3.CraftServer.enablePlugins(CraftServer.java:407) ~[spigot-1.16.5.jar:git-Spigot-138d451-085fe67] at net.minecraft.server.v1_16_R3.MinecraftServer.loadWorld(MinecraftServer.java:435) ~[spigot-1.16.5.jar:git-Spigot-138d451-085fe67] at net.minecraft.server.v1_16_R3.DedicatedServer.init(DedicatedServer.java:218) ~[spigot-1.16.5.jar:git-Spigot-138d451-085fe67] at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:809) ~[spigot-1.16.5.jar:git-Spigot-138d451-085fe67] at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$0(MinecraftServer.java:164) ~[spigot-1.16.5.jar:git-Spigot-138d451-085fe67] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_265]
In reply to jerryxzx:
This sounds like a very weird edge case. I've pushed a 1.0.4 release that should fix the issue.
The toggleFixed thing doesnt work so now im just stuck with a few images which i cant remove how can i fix it so the toggleFixed thing works because they are in annoying spots
In reply to Dottie33YT:
Use a wooden hoe and shift+right click the item frames with it.
Follow up. I op'ed a default user, then de-op'ed him. Now everything works for him. I don't want to have to do this with every player of course. Again, any suggestions?
In reply to mishihari:
Made sure the have the right permissions in your permission plugin and also for the region they try to build in?
Also, is there any error message in the console?
I got this plugin working perfectly for ops. Very cool.
Granted all permissions to default players. The "you can't do this" message went away, and they can list etc. When trying to paste, it says to right click the corner of the desired location, but when I do right click, the image does not appear.
Any suggestions?
It keeps saying error code can someone help.
?
EDIT: it was error code 301
In reply to vomiting_shulker:
HTTP code 301 says that the resource you tried to access has been moved permanently. So your link is outdated.
i dont see the file appear in the 'plugins' folder when I put the .jar file in
In reply to Dubs2theA:
Is there anything in your server log?
In reply to SydMontague:
yes, "failed to run ImageMaps" I think. I have the latest version by the way
In reply to Dubs2theA:
Without the actual error I'm unable to help you.