Skip to content

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.

PermissionGrants access to
mosaikin.useRead-only commands: list, identify, <name> info
mosaikin.createCreate and configure walls: create, <name> image/density/fit/maxsize, <name> confirm/generate/retry/cancel/reset, <name> clone
mosaikin.spawnPlace walls in the world: <name> spawn/despawn/move/rotate/scale
mosaikin.destroyPermanently delete wall data: <name> destroy
mosaikin.playbackControl playback: <name> play/pause/speed/frame
mosaikin.adminAPI key and reload: apikey, reload. Also grants access to all debug commands. Implies all other permissions.

General

help

/mosaikin help

Displays in-game help with clickable command suggestions. No permission required.


list

/mosaikin list

Permission: mosaikin.use

Lists all walls on the server with their current status, dimensions, and whether they are currently spawned.


identify

/mosaikin identify

Permission: 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 reload

Permission: 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.

ModeBehavior
cropPreserves aspect ratio; center-crops any excess
fitPreserves aspect ratio; pads remaining area with transparency
stretchIgnores 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:

  1. confirm runs the local-only pipeline (download, resize, chunk, pack). The wall lands in PACKED status, usually within seconds.
  2. generate submits 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> confirm

Permission: mosaikin.create

Runs the local preparation pipeline. No MineSkin traffic. The wall moves to PACKED once it:

  1. Downloads and decodes the source image
  2. Resizes and chunks it into 8×8 pixel cells
  3. Packs cells into player head textures and deduplicates identical ones
  4. 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> generate

Permission: 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> retry

Permission: 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> cancel

Permission: 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 confirm

Permission: 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> despawn

Permission: 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 confirm

Permission: 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> play

Permission: mosaikin.playback

Resumes animation playback.


<name> pause

/mosaikin <name> pause

Permission: 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.