Skip to content
ShadowMC

Free

ShadowImages

Pictures, GIFs, WebPs and clickable boards on your walls, imported safely and hung by looking at the wall.

Minecraft1.26.2 & 1.26.3 PlatformPaper 26.2 & 26.3 Versionnot released
Not available yet

Free In development Gameplay and content

A preview that follows your look

Look at a wall and the picture follows: sneak + scroll resizes it, one click hangs it. Walls, floors and ceilings; undo and redo.

Animations that do not lag

GIFs, APNGs and WebPs send only the rectangles that change, with bandwidth caps per player and per server, and pause when nobody watches.

Safe imports from links

https only, private and local addresses refused, size, pixel, frame and time limits checked before decoding.

Interactive boards

Scenes, buttons with hover, actions, clocks, countdowns, leaderboards with heads and QR codes, built with an in-world editor.

Banner designer

Live preview, shareable codes, loom steps in the client's language, and lettering made of banners.

Three importers

ImageOnMap (the maps already on walls keep working), Custom Images and Yamipa, with a dry run before anything is touched.

The roots and their aliases

CommandDescriptionAliasesPermission
/banner The banner designer, banner codes and banner lettering (alias /shadowbanner) /shadowbanner shadowimages.banner
/simg Pictures, GIFs and boards on walls: panel, import, placing, moderation (alias /shadowimages, /img, /images) /shadowimages /img /images shadowimages.import.url

/simg 53

CommandWhat it doesPermission
/simg The panel (player) or the help (console) shadowimages.gui
/simg help [page] The list of commands —
/simg about Version, active transport, images, placements, boards, integrations —
/simg import <name> <url|file:path> [--size WxH] [--fit ...] [--dither ...] [--anchor ...] [--crop ...] [--adjust l,c,s,g] [--allow-duplicate] Imports and converts, on a separate thread, with the progress in the action bar. file: reads from plugins/ShadowImages/images/ shadowimages.import.url
/simg library [filter] The library (a screen; in the console, the list) shadowimages.gui
/simg info <image|#id> Who imported it, from where, size, frames, state, where it hangs shadowimages.gui
/simg rename <image> <new> Renames (the placements follow) shadowimages.manage
/simg delete <image> [--yes] Lists where it hangs and asks for confirmation with the buttons; then removes everything. --yes skips the question (scripts, testing) shadowimages.manage
/simg refresh <image> [new-link] Downloads and converts again; the walls update by themselves shadowimages.manage
/simg edit <image> The image card: size, fit, dithering, crop, adjustments, with the preview in front of you shadowimages.manage
/simg preview <image> [WxH] The image in front of you for a few seconds (only you see it) shadowimages.gui
/simg place <image> [WxH] [options] The preview follows your look: right click or [ CONFIRM ] to hang it; sneak + scroll changes the size; a bar with [-] [+] [FIT] [ROTATE] [ANCHOR] shadowimages.place
/simg place <image> [WxH] --at <world> <x> <y> <z> <face> [rotation] Hangs it without a preview (console, scripts, testing). x y z is the block for the top-left frame, the face is where the image looks; ~ means your position (and in place of the world, your world). --timeline restarts an animation from the beginning for each viewer shadowimages.place
/simg wand The wand: left and right click on two corners of a wall shadowimages.place
/simg fit <image> Hangs the image exactly over the wand's area (or over a flat ShadowEdit selection) shadowimages.place
/simg give <image> [player] [WxH] A "picture" item: right click on a wall to hang it shadowimages.give
/simg remove Arms the tool: the next click on an image removes it, after the confirmation shadowimages.remove.own
/simg remove near <radius> [--yes] All the ones within the radius that you can remove, with the list and a confirmation (--yes skips it) shadowimages.remove.own
/simg remove #id [--yes] That exact one (for the console and the near buttons) shadowimages.remove.own
/simg move Arms the tool: the clicked image goes back to preview and stays where it is until you confirm the new spot shadowimages.remove.own
/simg undo Undoes the last placement, removal or banner lettering shadowimages.place
/simg redo Redoes what you undid shadowimages.place
/simg near [radius] The placements around you, clickable: [INFO] [TP] [REMOVE] shadowimages.gui
/simg tp <#id> In front of a placement shadowimages.tp
/simg anim <pause|resume|restart> <#id> Pauses, resumes or restarts an animation shadowimages.manage
/simg slideshow create <id> <WxH> [--at ...] A new slideshow (a board with the slides element), then you pick its wall shadowimages.board.create
/simg slideshow add <id> <image> [seconds] Adds a slide shadowimages.board.create
/simg slideshow remove <id> <n> Removes slide number n shadowimages.board.create
/simg slideshow list <id> The slides shadowimages.board.create
/simg board create <id> <WxH> [--at ...] A new board from a template, in boards/<id>.yml; then the preview to hang it shadowimages.board.create
/simg board place <id> [--at ...] Hangs a board that already exists in the files (for example the sample one) shadowimages.board.create
/simg board edit <id> The in-world editor: a private draft, the board wand, screens shadowimages.board.edit
/simg board publish [id] [--force] Publishes the draft (everybody sees it) and rewrites the file keeping the comments; if the file changed on disk it asks with the buttons shadowimages.board.edit
/simg board discard [id] Throws the draft away shadowimages.board.edit
/simg board list The boards with the scene showing now, with [ EDIT ] and [ PLACE ] shadowimages.board.edit
/simg board scene <id> <scene> [player] Changes the scene (for everyone, or for that player on per-player boards) shadowimages.board.edit
/simg board reload <id> Reloads the file and reports the problems shadowimages.board.edit
/simg board delete <id> [--yes] Takes the board off the wall and moves the file to backup/boards/, with a confirmation (--yes skips it) shadowimages.board.delete
/simg pending The images waiting for approval (a screen; in the console, the list) shadowimages.moderate
/simg approve <image> Approves; whoever imported it is told shadowimages.moderate
/simg reject <image> [reason] Rejects with the reason; its placements go away shadowimages.moderate
/simg audit [player] The audit log: imports, placements, removals, approvals, with who and when shadowimages.moderate
/simg limits [player] Maps on walls and the limit (another player's needs .moderate) shadowimages.gui
/simg migrate <imageonmap|images|yamipa> [--dry-run] Imports from ImageOnMap (adopting the IDs of the maps already hanging), Custom Images and Yamipa. --dry-run writes migrate-report-<plugin>.txt without touching anything shadowimages.migrate
/simg pack build The optional HD layer: reads plugins/ShadowImages/hd/ (each file carries the name of a library picture), writes pack/ShadowImages-hd.zip and delivers it (inside ShadowCustomizerModels, from hd.resource-pack-url, or just the file). Needs hd.enabled: true shadowimages.pack
/simg pack status Layer on or off, delivery, file and SHA-1, pictures in the pack (current or stale), players who loaded it shadowimages.pack
/simg pack add <image> Copies the source of a library picture into hd/, ready for the next pack build shadowimages.pack
/simg pack remove <image> Removes the picture's file from hd/ (it leaves the pack at the next pack build) shadowimages.pack
/simg cache <stats|clear> How much the renders take in memory and on disk; clear removes the ones nobody uses (with a confirmation) shadowimages.admin
/simg debug look In the action bar: the board, the pixel and the zone under the crosshair (again to switch off) shadowimages.debug
/simg debug click <board> <x> <y> [player] [left|right|shift-left|shift-right] A simulated click on a pixel, going through the whole path of a real click (permissions, cooldowns, events, actions) shadowimages.debug
/simg debug stats [player] Transport, maps sent, bandwidth, renders, animations, IDs, the player's queue shadowimages.debug
/simg reload Reloads config, styles, banners, boards, languages and screens shadowimages.reload

/banner 6

CommandWhat it doesPermission
/banner The designer: live preview, colours, registry patterns (datapack ones too), layers, save, take, code shadowimages.banner
/banner code The code of the banner in your hand (b1:red|stripe_top:white), with [ COPY ] and the loom steps in the client's language shadowimages.banner
/banner give <code|saved design> [player] [shield] A ready banner (or shield) shadowimages.banner.give
/banner text <text> [colour] [background] Banner lettering on the wall you are looking at: first a preview only you see, then the confirmation; /simg undo removes it shadowimages.banner.text
/banner wall <WxH> <code> [code...] A wall of banners from codes, with a preview and a confirmation shadowimages.banner.text
/banner help The help shadowimages.banner
NodeWhat it grantsBy default
shadowimages.admin · 27 children Everything in ShadowImages Operators
shadowimages.gui The panel, the library, previews, nearby placements and limits Operators
shadowimages.place Place images: preview, wand, fit, undo and redo Operators
shadowimages.remove.own Remove and move your own images Operators
shadowimages.import.file Import images from the plugin's images folder Operators
shadowimages.import.url Import images from a link Operators
shadowimages.manage Rename, delete, refresh and edit any image; animations Operators
shadowimages.give Give picture items Operators
shadowimages.tp Teleport to a placement Operators
shadowimages.remove.any Remove and move anybody's images Operators
shadowimages.board.create Create and place boards and slideshows Operators
shadowimages.board.edit Edit boards, publish, change scenes, reload Operators
shadowimages.board.edit.console Write board actions that run as the console in the editor Operators
shadowimages.board.delete Delete boards Operators
shadowimages.interact Click boards Everyone
shadowimages.banner The banner designer and banner codes Everyone
shadowimages.banner.text Banner lettering and banner walls Operators
shadowimages.banner.give Give ready banners, and take them from the designer without materials Operators
shadowimages.moderate Approve and reject images, read the audit log, see other players' limits Operators
shadowimages.notify.pending Be told when an image waits for approval Operators
shadowimages.migrate Import from ImageOnMap, Custom Images and Yamipa Operators
shadowimages.pack Build and check the HD layer's resource pack (/simg pack) Operators
shadowimages.debug The debug commands Operators
shadowimages.reload Reload configuration, styles, boards and languages Operators
shadowimages.bypass.approval Imports skip the approval queue Operators
shadowimages.bypass.regions Place images and banners where you could not build Operators
shadowimages.bypass.limits No map limits, bigger images Operators
shadowimages.bypass.hosts Import from any public site Operators

Screenshots

No screenshots

There are no screenshots yet. When there are they show up here, and in the meantime saying so beats filling the space.

What it is ShadowImages

Map art done right: a preview that follows your look and resizes with the scroll wheel, GIFs and WebPs that pause when nobody watches and only send what changes, boards with buttons, scenes and live widgets built in game, a banner designer, and an optional HD layer for players with the resource pack. Free, no mods, no resource pack required.

Instead of

ShadowImages covers what you do today with Custom Images, ImageOnMap, ImageFrame, InteractiveBoard, Yamipa, BannerMaker — in one jar, with no dependencies to install first.

How to install it

  1. Copy the jar into the plugins folder of your Paper server.
  2. Restart. The plugin writes its own configuration.

Supported plugins

15 declared in the descriptor
SH ShadowRegions Optional
SH ShadowCommand Optional
SH ShadowGUIEditor Optional
SH ShadowEdit Optional
SH ShadowCreator Optional
SH ShadowEconomy Optional
SH ShadowOptimizer Optional
SH ShadowPermissions Optional
SH ShadowLogin Optional
SH ShadowAnnouncement Optional
SH ShadowControl Optional
SH ShadowEssentials Optional
PL PlaceholderAPI Optional
FL floodgate Optional
GE Geyser-Spigot Optional

None of these has to be installed, except the ones marked required: when it is there, ShadowImages uses it; when it is missing, it works all the same.

Available on

SpigotMCNon ancora pubblicato
ModrinthNon ancora pubblicato
ShadowMCCustomer area

Community