ImgMap
ImgMap: Render any image on an in-game map!
By Evangon, Maximvdw, and JohnnyBlu
Originally coming from a picture of a troll face by md_5, this plugin allows a user with a map in hand (obviously with the proper permissions) to essentially put an image onto the map. The image could be anything: Instructions, rules, messages, warnings, a very nice picture of a cat, whatever you want! All images are resized to the proper dimension of 128x128. The image is then sent over to a rendering process (Devs: Check the source on how it's done if you want), which then the map renders the image for that map. Anyone with a map with the same ID (Typically, it says when you hover over it, e.g "Map #0") to see the same image too! The only downside to all of this is that due to the nature of Minecraft maps, they do not support full color. This is due to a limitation on the clients themselves.
Installation
Just drop it into the /plugins/ folder! No special configuration needed!
How to use
- Give yourself a map with a specific ID. This ID can be anything, but remember, once you draw an image on it, it will pertain only to that specific ID!
- Get the URL of the desired image! This is where some people mess up. In order for the plugin to successfully render it, it has to be a direct link to the image. Simply right click on the image and hit "Copy Image Location".
- Hold the map with the super specific ID and type in "/drawimage" and paste it! For most users, to paste, you do "CTRL+V".
- Wait a bit; rendering can take a bit. You'll notice several segments appear on the map; this it indicating that it's loading. If nothing happens, you're either met with a message that says something along the lines of "Server Internal Error" or you're staring a blank map. If you get kicked with the message with "Server Internal Error", simply type, in console, "fixmap <your super specific id>". This basically fixes the map with the old over world rendering. Try again; if it doesn't work, report it in the comments! However, if you are getting nothing, be sure the image is accessible directly from your browser (clear your cache before you do so!) Sometimes, what happens is that the owner of the website has set privileges denying anyone from accessing the image directly. A bit bothersome, but you can probably save the image and upload it somewhere else. However, when doing so, please follow the copyright usage on said images!
- Viola! Your map now has that pretty picture of a kitty or something!
Commands
- /drawimage <image url> Draws the specified image to the map you're holding. If you want to "save" the picture to the map, you add "-s" to the end of the command. The reason why "save" is written in quotations is because it doesn't actually save the map's picture; it simply saves the URL and it's corresponding ID to a flatfile and is loaded on start up.
- /drawanimatedimage <gif url> Attempts to draw an animated gif image. A little buggy here and there, but it works for the most part! Please be warned that this takes up a lot of bandwith (You're sending anywhere between 0 to 16kilobytes nearly every second!) and that it also is resource intensive!
- /drawytvideo <yt-ID> Experimental. Downloads a video and converts it to a GIF format. See /drawanimatedimage for more information as the same process is used.
- /emulategb <rom name> Highly experimental. Emulates a GameBoy (only GameBoy, not GameBoy Advanced or GameBoy Color) game on a map. Fully integrated, no client mods needed! Click on the chat messages given in chat to control the emulator.
- /emuaction <save|load|a|b|left|right|up|down|holdinput> Simulates input for emulated GameBoy games on a map. Used by the gamepad, you can also use it as a command if you wish. Note that "save" and "load" do not work as of current. Any input button just simulates input. "holdinput" makes the emulator act as if the person is holding down a directional button and directional only.
- /clearmap With a map in hand, this command wipes the image off of it and puts the old Minecraft map rendering back.
- /fixmap <id> A debug command, Caused an issue with a map that psudo-bans them? No worries! Simply get the ID of the problematic map, and type this command in, replacing <id> with the map's id. It's like /clearmap, only this time, you can target maps!
- /getmap <id> More of a debug command, but can be helpful for some, it allows you to get a map by almost any ID. The reason why this is "almost" is because if you try to get a map that is above the number that exists, it merely just goes over and gets the next ID, rather than the one you want. This is something that's within Minecraft that I cannot fix.
Permissions
- imgmap.*: Grants almost all rights to ImgMap. This does not include debug commands.
- imgmap.debug: Grants debugging rights to ImgMap. Does not include drawing or restoring capabilities.
- imgmap.drawimage: Allows you to draw an image to a map.
- imgmap.drawanimatedimage: Allows you to draw an animated image to a map.
- imgmap.clearmap: Allows you to clear a map and restores the overworld rendering.
- imgmap.debug.fixmap: Debug command. Allows you to remove all renderers on a given map ID.
- imgmap.debug.getmap: Debug command. Allows you to get a map by any ID.
Source for Developers/Contributors
Found a bug that you want to squash yourself? Go ahead and fork me! (Please don't actually stab me with a fork!) https://github.com/CirnoTheGenius/ImgMap-LosingPixels
Examples
@RoeeLieber
I belive this is a result of cauldron overwriting all your blocks, have not tried on real 1.8 yet :P
Great idea for a plugin!
Alas, cant make it work. probably my fault...
i am using 1.7.10 modded server with cauldron.
When i paste the url to a map - it renders the new picture, and right after it it renders it back to the original map.
bug? feature? does not support cauldron? does not support 1.7.10? Does not like me ?
Love this Plugin I just hope I can Make it work :D
@FrauKoujiro
Thanks you,thanks for your plugins.Its a great job. I will donate you soon.
PD:how can i use youtuve videos on the map? all the time the console say me error,when i put true in the config.Pls help me
Sorry about the delay; I've been distracted with school work. I am working to fix a majority of the bugs mentioned. For some reason, TinyURL has a tendency to break image links; try to use something else like goog.le or waa.ai. and you don't need to pay me; I enjoy maintaining this plugin because though no one ever said it, I felt like everyone had doubted me/believed this was impossible.
@DifferentCraft
When on latest version of spigot and using this plugin none of the commands work at all! Can you please update this plugin! Im even willing to pay you!
Also fix the image things so they dont go byebye when you reload server
Hi
Im running spigot (latest build) and when i try to use this plugin i just get a error "A Internal error occurred while attempting to perform this command" It also spammed a error in my console. http://pastebin.com/MdGRT5Rx
I also heard the images dont save after a server reload. i would like that fixed two.
Thats all please fix asap
Hey I've got a problem, It's fine rendering images but When I stop the server and restart, all the maps became normal maps.
Can you please fix this. I need this plugin for my server :( Please fix this
@skygate2012
This is a similar issue to what I've already reported:
@RA3Unleashed
Also, any update one when the revised version will be out? We really love (and miss) this plugin on our server.
Hey I've got a problem, It's fine rendering images but When I stop the server and restart, all the maps became normal maps. Your plugin verison is ImgMap v1.4.2a for CB 1.7.2-R0.3 bukkit version is craftbukkit-1.7.2-R0.4-20140316.221310-4
Time to post some updates: The newest rewrite is essentially working. I just need to save images, fix up some code so it doesn't repeat across 3 different classes, and replace this behemoth ASM monster with something cleaner.
edit: and yes, I am pressing forward regardless of the recent DMCA.
@z65703071
You can try using the current file-based image by downloading the image into the localImgs directory and doing "/drawimage image.ext -l" where "image.ext" is the file.
@gopro2027
same thing but i think the author already know and is working also on it
Is it possible direct to link the map with a image URL so that can be save the server bandwidth?
how do i load a game? i downloaded a game for gamboy that was a rom (it was something.gb and i renamed it to A.gb) and it crashes the server when i did /emulategb A.gb :( and whne i try to relog it says internal server error
@FrauKoujiro
That's great news. We use this plugin on our server and I would recommend it to everyone.
Currently working on an overhaul that fixes a majority of the issues reported and also supports multiple versions of CraftBukkit; aiming to support versions from 1.6.4 to 1.7.10.
We've just updated to 1.7.10 and the latest version 1.5.1 doesn't work. On using the /drawimage command you get:
No working...
If you use the /drawimage command more than once on a map it messes up the flatfile (adding it all to the same line) - one server restart it then seems to wipe the file and you lose all sved data.