Appearance
Commands
All commands use the root /mosaikin command. Aliases /mk and /msk are also available.
/mosaikin <subcommand>
/mk <subcommand>
/msk <subcommand>Permissions
All permissions default to OP only. Grant them to other groups using a permissions plugin.
| Permission | Grants access to |
|---|---|
mosaikin.use | Read-only commands: list, identify, <name> info |
mosaikin.create | Create and configure walls: create, <name> image/density/fit/maxsize, <name> confirm/generate/retry/cancel/reset, <name> clone |
mosaikin.spawn | Place walls in the world: <name> spawn/despawn/move/rotate/scale |
mosaikin.destroy | Permanently delete wall data: <name> destroy |
mosaikin.playback | Control playback: <name> play/pause/speed/frame |
mosaikin.admin | API key and reload: apikey, reload. Also grants access to all debug commands. Implies all other permissions. |
General
help
/mosaikin helpDisplays in-game help with clickable command suggestions. No permission required.
list
/mosaikin listPermission: mosaikin.use
Lists all walls on the server with their current status, dimensions, and whether they are currently spawned.
identify
/mosaikin identifyPermission: mosaikin.use
Identifies which wall you are looking at. Stand near a wall and run this command; Mosaikin will find the wall entity your crosshair is closest to and tell you its name.
apikey
/mosaikin apikey <key>Permission: mosaikin.admin
Sets the MineSkin API key and saves it to config.yml. Follow this with /mosaikin reload for the new key to take effect.
reload
/mosaikin reloadPermission: mosaikin.admin
Reloads config.yml without restarting the server. Does not interrupt generation jobs that are already in progress.
Creating & Configuring Walls
create
/mosaikin create <name>Permission: mosaikin.create
Creates a new wall in DRAFT status. The name must be 1–32 characters, using only letters, numbers, underscores, and hyphens (A-Z a-z 0-9 _ -).
<name> image
/mosaikin <name> image <url>Permission: mosaikin.create
Sets the source image for the wall. Accepts:
- Public HTTP/HTTPS URLs to images or converter ZIP archives
- Local file paths using
file:///absolute/path/to/file
Supported formats: PNG, JPEG, GIF, WebP (static frame only via direct URL), BMP, TIFF, and Mosaikin converter ZIP archives.
For animated WebP, APNG, and video files, use the converter website to export a ZIP archive first.
<name> density
/mosaikin <name> density <1-256>Permission: mosaikin.create
Sets the pixel density of the wall — how many source pixels fit in one Minecraft block of wall width. Default: 16.
- Higher values produce a sharper, more detailed image but generate more player heads and produce a smaller physical wall size.
- Lower values produce a larger, blockier image with fewer heads and a larger physical wall size.
This setting cannot be changed after generation. Use /mosaikin <name> reset confirm to reset and regenerate with a new density.
<name> fit
/mosaikin <name> fit <crop|fit|stretch>Permission: mosaikin.create
Controls how the source image is resized to fill the wall grid when the aspect ratios don't match. Default: crop.
| Mode | Behavior |
|---|---|
crop | Preserves aspect ratio; center-crops any excess |
fit | Preserves aspect ratio; pads remaining area with transparency |
stretch | Ignores aspect ratio; stretches to fill exactly |
<name> maxsize
/mosaikin <name> maxsize <cells>Permission: mosaikin.create
Caps the longest wall axis in grid cells (1 cell = 8 source pixels). Source images larger than this cap are proportionally downscaled before processing.
Use 0 to apply the server's configured default (see limits.defaultMaxAxisCells in config.yml, default: 64 cells).
This setting cannot be changed after generation without resetting.
Wall Information
<name> info
/mosaikin <name> info [verbose]Permission: mosaikin.use
Shows a dashboard for the wall: current status, source URL, density, scale, fit mode, grid dimensions, head count, spawn location, and animation state.
Add verbose for additional technical detail.
Generation
Generation is split into two explicit steps so you can review the final grid dimensions and unique-head count before committing to the MineSkin upload — which is the slow part and can take a long time for larger walls:
confirmruns the local-only pipeline (download, resize, chunk, pack). The wall lands in PACKED status, usually within seconds.generatesubmits the packed heads to MineSkin. This is where generation time is spent — a few seconds per unique head, multiplied by however many the wall needs.
<name> confirm
/mosaikin <name> confirmPermission: mosaikin.create
Runs the local preparation pipeline. No MineSkin traffic. The wall moves to PACKED once it:
- Downloads and decodes the source image
- Resizes and chunks it into 8×8 pixel cells
- Packs cells into player head textures and deduplicates identical ones
- Assembles the 64×64 head skin PNGs into the local cache
The summary message includes the final pixel dimensions, grid dimensions, and unique-head count, along with a clickable [Generate] button. Review the numbers via /mosaikin <name> info, then run generate when you're satisfied.
<name> generate
/mosaikin <name> generatePermission: mosaikin.create
Submits the heads packed by confirm to MineSkin. The wall moves to GENERATING while uploads are in flight, then to READY when every head completes or ERRORED if any fail.
Only works on PACKED walls. If the wall is ERRORED with previously-completed heads, use retry instead so already-uploaded skins are preserved.
Generation time
Walls with many unique heads take significant time. More than 2,000 unique heads can take an hour or more depending on your MineSkin subscription.
<name> retry
/mosaikin <name> retryPermission: mosaikin.create
Resubmits only the failed or pending head textures to MineSkin. Skips the download and packing steps — useful when MineSkin fails individual submissions that need to be retried without starting over.
<name> cancel
/mosaikin <name> cancelPermission: mosaikin.create
Signals the generation pipeline to stop before it reaches MineSkin submission. MineSkin jobs that are already submitted cannot be cancelled and may still complete, but their results will be discarded.
<name> reset
/mosaikin <name> reset confirmPermission: mosaikin.create
Wipes the packed head data and despawns any entities, returning the wall to DRAFT status. Your settings (density, fit, maxsize, scale, source URL, placement) are preserved.
Use this when you want to change density, fit, or maxsize after the first generation.
The confirm keyword is required to prevent accidental resets.
World Placement
<name> spawn
/mosaikin <name> spawn [x y z [yaw [pitch]]]Permission: mosaikin.spawn
Spawns a READY wall in the world. With no coordinates, places it at your current location facing your current direction. Coordinates may use ~ for relative offsets.
Console usage requires explicit coordinates.
<name> despawn
/mosaikin <name> despawnPermission: mosaikin.spawn
Removes the wall's entities from the world. The wall data is preserved and can be respawned at any time.
<name> move
/mosaikin <name> move <x> <y> <z>Permission: mosaikin.spawn
Moves a spawned wall to new coordinates. Takes effect immediately. Supports ~ relative coordinates.
<name> rotate
/mosaikin <name> rotate <yaw> [pitch] [roll]Permission: mosaikin.spawn
Rotates the wall in degrees. Yaw is the horizontal rotation (0 = south, 90 = west, 180 = north, 270 = east). Pitch tilts the wall forward/back. Roll spins it around its depth axis.
Rotation is applied live.
<name> scale
/mosaikin <name> scale <factor>Permission: mosaikin.spawn
Sets the physical size multiplier for the wall in the world. Example: scale 2 makes the wall appear twice as large. Range: 0–64. Default: 1.
The scale update is applied live to spawned walls without regenerating — it adjusts the display-entity transform only and does not change the image pixel content. To change how many heads are generated, use the Output size control in the converter before exporting.
<name> destroy
/mosaikin <name> destroy confirmPermission: mosaikin.destroy
Permanently deletes the wall's local data and despawns its entities. MineSkin textures remain on Mojang's servers. This action cannot be undone.
The confirm keyword is required to prevent accidental deletion.
Playback (Animated Walls Only)
These commands only have effect on walls with more than one frame.
<name> play
/mosaikin <name> playPermission: mosaikin.playback
Resumes animation playback.
<name> pause
/mosaikin <name> pausePermission: mosaikin.playback
Pauses animation playback on the current frame.
<name> speed
/mosaikin <name> speed <factor>Permission: mosaikin.playback
Sets the playback speed multiplier. 1.0 is normal speed, 2.0 is double speed, 0.5 is half speed.
<name> frame
/mosaikin <name> frame <n>Permission: mosaikin.playback
Jumps to a specific frame (0-based index) and pauses playback.
Utilities
<name> clone
/mosaikin <name> clone <newname>Permission: mosaikin.create
Creates a deep copy of an existing wall under a new name. Copies all settings, frames, and head textures. The cloned wall starts unspawned regardless of the original's state. Cannot be used while the source wall is generating.