Rewrote backend
3 years ago when i initially wrote this plugin, I had no sense of what good code was whatsoever
This overhaul is to remedy that, here are some things that are new:
- no more data.yml Minecraft maps are stored via their 'id' (which is the number you see when you hover over the map item). Prior to this update, a data.yml file was created to store each id managed by the plugin and the file path to its corresponding image. This was just straight up bad... for one you couldn't move the server to another part on the computer without manually updating the file paths.. secondly, it's just dumb, you can easily store the id in the file name Thank you to SlyCedix for pointing this out to me
- optimized image storage Maps in Minecraft are always rendered at a resolution of 128x128, hence making it pointless to store any image of higher res to that. Hopefully this change can reduce the storage requirement by a good amount
Many things have changed on the backend and hopefully it should lead to a more optimized experience overall (at least a little bit)
Item frames, very cool
You can now specify in the command whether or not you want to receive Item Frames (or Glow Item Frames) along with your maps.
This can be disabled in the config (for specifically Item Frames or Glow Item Frames) and access can also be limited through permissions (also on a per Frame type basis.)
These are the useless things I do when I get too much time to myself..
Permission Nodes:
imagemaprenderer.map
description: allows player to run the /map command default: true
imagemaprenderer.itemFrames
description: allows player to receive Item Frames when they render map(s) default: true
imagemaprenderer.glowItemFrames
description: allows player to receive Glow Item Frames when they render map(s) default: true
Added support for perms cause I'm cool and people use my plugin
Cool new feature.. you no longer have to decompile, change the code, do it wrong, ask ChatGPT to do it for you, then recompile the plugin to edit who can perform the map command.
Using a permission manager plugin or smth (idfk how it works I'm not a good server host), you can change who has permission to the /map command.
ig this means at some point I need documentation but for right now, the node is right here:
imagemaprenderer.map
description: allows player to run the /map command default: true
"Minor bug fixes" -every developer ever when changing the entire underlying framework
jkjk, actual bug fixes
-You now do not break everything when running the "map" command from a console
-When rendering an image onto a grid of more than 1 map, it will only send the confirmation message once (instead of per every map rendered)
Of course if you find any bugs and/or want something added, let me know and I'll try