PixelPrinter 1.0.47

Creates images and pixel-art using in-game blocks

  1. zombie_striker
    Tested Minecraft Versions:
    • 1.7
    • 1.8
    • 1.9
    • 1.10
    • 1.11
    • 1.12
    • 1.13
    • 1.14
    • 1.15
    Source Code:
    https://github.com/ZombieStriker/PixelPrinter
    PixelPrinter
    [​IMG]

    What is PixelPrinter

    PixelPrinter is a demonstration of what you can do using THIS resource. Using this plugin, you can load images or gifs to your server, either by using blocks or maps. This plugin can download images or gifs, resize them, and allow you to easily create Sky-Boxes, Movies, and pixel art all over your server.

    Features
    • Create images, movies, or pixel art using in game blocks
    • Create skin statues.
    • Supports JPegs, PNGs, and Gifs!
    • Custom resourcepack support.
    • Works on All Versions
    Videos



    Images
    [​IMG][​IMG]

    [​IMG]
    [​IMG]
    [​IMG]

    Custom resourcepack support:
    As of the 1.0.14 patch, Pixelprinter allows for server-wide resourcepack support. Using this feature will allow for better quality and accuracy of images when using custom resourcepacks. To add custom resourcepack support, do the following:

    1. Go into the <Server>/plugins/PixelPrinter/custom_textures/ directory.
    2. In a new window, open the resourcepack zip file and navigate to the Minecraft>textures>blocks folder.
    3. In there, drag all textures into the custom_textures directory.
    And that's it. Pixelprinter will handle the rest.

    Commands
    (You can either access all PixelPrinter commands using /pixelprinter or /pp)

    /pp
    lists all commands and their usages
    • /pp d <filename> <url> Downloads the location of an image to a txt file. Good for minimizing memory.
    • /pp di <filename> <url> Downloads the image to a png, jpg, or gif file.
    • /pp create <direction> <File name> <Height> Creates a in-game block version of the image, moving the the direction <direction> and will have a height of <Height>. The width will be scaled to the image height.
    • /pp cf <direction> <File name> <Height> Creates a in-game item-frame version of the image, moving the the direction <direction> and will have a height of <Height>. The width will be scaled to the image height.
    • /pp createskin <direction> <player's name or UUID> Create a 16x48x16 player character with the specified players skin. Note: In order to use the player's name, the player must have joined the server once.
    • /pp delete <filename> Deletes the file wit h the filename <file name>
    • /pp stopGif <id> Stops the gif with the id <Id>
    • /pp stopAllGifs stops all gifs on the server.
    • /pp listGifs lists all the gifs active on the server. Use this if you do not know the ID of a gif
    • /pp preview Creates a preview of the image you are going to make. This only displays the boarder of the image, and should be used to tell if this image will "clip" through any existing blocks
    • /pp specs Shows the specifications of an image.
    • /pp list Displays all the images that have been downloaded to the server
    • /pp help Displays commands and their uses

    Permissions
    • pixelprinter.* Gives all permissions
    • pixelprinter.stop Gives the player permission to stop gifs
    • pixelprinter.delete Gives the player permission to delete image files
    • pixelprinter.create Gives the player permission to create an image in-game
    • pixelprinter.download Gives the player permission to download an image from a URL

    OLDER UPDATES AND COMPATIBILITIES:
    As much as I will try add compatibility with older updates, this may not be possible with certain features or systems. Also, due to the major changes in 1.13, existing features may not work properly in order to support the current, recommended update. Although I will still try to help as much as I can, if a certain bug is specific to an older update or fixing the bug will create other problems for new updates, I may have to let a bug exist.


    Donations.
    If you want to support me in maintaining this plugin, you can do so through Ko-fi:
    [​IMG]



    How to Install
    Drop this plugin into you plugins folder and restart your server.

    Images

    1. upload_2017-6-11_18-20-36.gif
    dada513 and TheDevelon like this.

Recent Reviews

  1. SLaDOS
    SLaDOS
    5/5,
    Version: 1.0.46
    its an amazing plugin but i cant create a gif


    [11:30:48] [Server thread/WARN]: java.lang.ClassCastException: class org.bukkit.inventory.ItemStack cannot be cast to class org.bukkit.inventory.meta.MapMeta (org.bukkit.inventory.ItemStack and org.bukkit.inventory.meta.MapMeta are in unnamed module of loader 'app')
    [11:30:48] [Server thread/WARN]: at me.zombie_striker.pixelprinter.util.MapWallUtil.getMaps(MapWallUtil.java:106)
    [11:30:48] [Server thread/WARN]: at me.zombie_striker.pixelprinter.PixelPrinter.createMapAnim(PixelPrinter.java:872)
    [11:30:48] [Server thread/WARN]: at me.zombie_striker.pixelprinter.PixelPrinter.onCommand(PixelPrinter.java:686)
    [11:30:48] [Server thread/WARN]: at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45)
    [11:30:48] [Server thread/WARN]: at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149)
    [11:30:48] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_15_R1.CraftServer.dispatchCommand(CraftServer.java:723)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.PlayerConnection.handleCommand(PlayerConnection.java:1658)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.PlayerConnection.a(PlayerConnection.java:1498)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.PacketPlayInChat.a(PacketPlayInChat.java:47)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.PacketPlayInChat.a(PacketPlayInChat.java:1)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:19)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.TickTask.run(SourceFile:18)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeTask(SourceFile:144)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeNext(SourceFile:118)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.MinecraftServer.ba(MinecraftServer.java:918)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.MinecraftServer.executeNext(MinecraftServer.java:911)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeAll(SourceFile:103)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.MinecraftServer.sleepForTick(MinecraftServer.java:894)
    [11:30:48] [Server thread/WARN]: at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:828)
    [11:30:48] [Server thread/WARN]: at java.base/java.lang.Thread.run(Thread.java:834)


    or create a skin


    [11:49:46] [Server thread/INFO]: hayden_bat_man issued server command: /pp createSkin East hayden_bat_man
    [11:49:47] [Server thread/INFO]: {"name":"hayden_bat_man","id":"3f8a71059b8b4091859892779a8e83ee"}
    [11:49:47] [Server thread/ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'pp' in plugin PixelPrinter v1.0.46
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149) ~[spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at org.bukkit.craftbukkit.v1_15_R1.CraftServer.dispatchCommand(CraftServer.java:723) ~[spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.PlayerConnection.handleCommand(PlayerConnection.java:1658) ~[spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.PlayerConnection.a(PlayerConnection.java:1498) ~[spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.PacketPlayInChat.a(PacketPlayInChat.java:47) ~[spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.PacketPlayInChat.a(PacketPlayInChat.java:1) ~[spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:19) ~[spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.TickTask.run(SourceFile:18) [spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeTask(SourceFile:144) [spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) [spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeNext(SourceFile:118) [spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.MinecraftServer.ba(MinecraftServer.java:918) [spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.MinecraftServer.executeNext(MinecraftServer.java:911) [spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeAll(SourceFile:103) [spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.MinecraftServer.sleepForTick(MinecraftServer.java:894) [spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:828) [spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    at java.lang.Thread.run(Thread.java:834) [?:?]
    Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
    at me.zombie_striker.pixelprinter.util.MojangAPI.getUUIDFromName(MojangAPI.java:28) ~[?:?]
    at me.zombie_striker.pixelprinter.PixelPrinter.onCommand(PixelPrinter.java:747) ~[?:?]
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[spigot-1.15.2.jar:git-Spigot-2f5d615-d07a78b]
    ... 17 more
  2. Pygmy
    Pygmy
    5/5,
    Version: 1.0.46
    Plugin is incredible and works really well aside from an issue with the /pp undo command.
  3. thebbduf33
    thebbduf33
    2/5,
    Version: 1.0.46
    Plugin not working in 1.15+ (1.15.2).

    Does not detect Imgur, Image.BB or any imagine uploading website links.
    1. zombie_striker
      Author's Response
      Are you providing the *Exact* link to the image (I.e the link ends with .jpg or .png)? If so, can you post the link you used?
  4. xuanzhou
    xuanzhou
    5/5,
    Version: 1.0.46
    Good!It's a good way for Ferrin Gallery.Can I repost it to mcbbs.net?I'll mark the original download link(no CN Link)and let them know your more plugins
    1. zombie_striker
      Author's Response
      Ok. You can do that
  5. BlockIZI
    BlockIZI
    3/5,
    Version: 1.0.46
    It's very difficult to create a frame image with a map, because it doesn't load .
  6. clementinise
    clementinise
    1/5,
    Version: 1.0.45
    Unfortunately I can't seem to make it work in 1.14.4, maybe it's an issue on my side (Being too dumb can be the issue here xd)

    I get this console logs when I try to /pp create :

    [17:36:13] [Server thread/INFO]: Clementinise issued server command: /pp create South logo.png 40

    [17:36:13] [Server thread/ERROR]: null

    org.bukkit.command.CommandException: Unhandled exception executing command 'pp' in plugin PixelPrinter v1.0.45

    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[spigot.jar:git-Spigot-56f8471-56118c6]

    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149) ~[spigot.jar:git-Spigot-56f8471-56118c6]

    at org.bukkit.craftbukkit.v1_14_R1.CraftServer.dispatchCommand(CraftServer.java:710) ~[spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.PlayerConnection.handleCommand(PlayerConnection.java:1641) ~[spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:1481) ~[spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.PacketPlayInChat.a(PacketPlayInChat.java:47) ~[spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.PacketPlayInChat.a(PacketPlayInChat.java:1) ~[spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:19) ~[spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18) [spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(SourceFile:144) [spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) [spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(SourceFile:118) [spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.MinecraftServer.aX(MinecraftServer.java:909) [spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:902) [spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(SourceFile:127) [spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftServer.java:886) [spigot.jar:git-Spigot-56f8471-56118c6]

    at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:819) [spigot.jar:git-Spigot-56f8471-56118c6]

    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_231]

    Caused by: java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment

    at java.lang.Class.forName0(Native Method) ~[?:1.8.0_231]

    at java.lang.Class.forName(Class.java:264) ~[?:1.8.0_231]

    at java.awt.GraphicsEnvironment.createGE(GraphicsEnvironment.java:103) ~[?:1.8.0_231]

    at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:82) ~[?:1.8.0_231]

    at java.awt.image.BufferedImage.createGraphics(BufferedImage.java:1181) ~[?:1.8.0_231]

    at me.zombie_striker.pixelprinter.util.RGBBlockColor.resize(RGBBlockColor.java:1436) ~[?:?]

    at me.zombie_striker.pixelprinter.PixelPrinter.createImage(PixelPrinter.java:946) ~[?:?]

    at me.zombie_striker.pixelprinter.PixelPrinter.onCommand(PixelPrinter.java:901) ~[?:?]

    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[spigot.jar:git-Spigot-56f8471-56118c6]

    ... 17 more

    If you have any idea why it's not working I will be gratefull to delete this such negative review for a plugin that seems lovely but don't want to work with me TwT
  7. LonlyGamerX
    LonlyGamerX
    5/5,
    Version: 1.0.45
    Amazing and works excellent on my 1.14.4 server, just 1Q how do i undo the work other than destroying the entire thing bit by bit like is there a command i can do if not plzzz add it in
    1. zombie_striker
      Author's Response
      /PP undo <image name> should allow you to undo a specific image.
  8. phanop
    phanop
    5/5,
    Version: 1.0.45
    Works great on 1.14.4 !!!
    Save me a tons of time creating such art.
    Blocks used on the creation was fine too,for a very high def picture i 'd say it less than 2% that i have to hand fix.
    Thanks bro.
  9. Deadlyrock
    Deadlyrock
    2/5,
    Version: 1.0.45
    Works. But my server constantly crashes right after I paste the image. Not sure why it does that lol.
    1. zombie_striker
      Author's Response
      Do you mean it crashes after downloading the image (/pp di) or after loading the image (/pp create)? If it crashes after downloading, it may be an issue with the memory/storage space. However, if it crashes after using /pp create, it could be an issue with the CPU/ server's performance.

      Could you post the command you used, and the image url if you got it online?
  10. WWDerek
    WWDerek
    1/5,
    Version: 1.0.44
    she's broken in 1.14.2 boyzshe's broken in 1.14.2 boyzshe's broken in 1.14.2 boyzshe's broken in 1.14.2 boyzshe's broken in 1.14.2 boyzshe's broken in 1.14.2 boyzshe's broken in 1.14.2 boyzshe's broken in 1.14.2 boyzshe's broken in 1.14.2 boyzshe's broken in 1.14.2 boyzshe's broken in 1.14.2 boyzshe's broken in 1.14.2 boyz
    1. zombie_striker
      Author's Response
      Seems there was an error for new installs for 1.14. This should be fixed in the new update.