Links
Tags
Creators
Details
1.1.0
Compatibility
Changes
I noticed the plugin has been getting some love in certain circles, so I put together an update where I reworked image generation so it runs faster and doesn't freeze. I also added a few handy quality-of-life features:
- ~2x faster generation without freezing — completely rewrote image uploading to MineSkin using their queue system. Requests no longer drop due to timeouts, and repeating image tiles are detected immediately so they aren't re-uploaded if they've already been generated before.
- BossBar progress indicator — during generation, a progress bar appears at the top of your screen showing the percentage and current stage. It's now easy to see how much is left and be confident that the plugin hasn't hung.
- One-click placeholder copying — once an image finishes processing, a clickable "Copy" button appears in chat so you can quickly copy the placeholder straight to your clipboard.
- Separated error types & no more console spam — previously, the console was constantly spammed with false "rate limit" warnings during normal generation. This has now been cleaned up and replaced with proper status reporting.
- Resilience to temporary connection drops — added retry handling for transient network issues, meaning generation will no longer crash over a single momentary disconnect.
- Added generation cancellation (/imagedisplay cancel) — if you accidentally started generating a huge image or simply changed your mind, you can now stop it on the fly. Safe server shutdown: reloading the plugin (/imagedisplay reload) or stopping the server now gracefully aborts active background jobs without leaving hanging connections.
- Multiple MineSkin API Keys: Added support for up to 10 API key slots in
config.yml. - API Key Selection: Added the
--apikey <slot>flag to/imagedisplay generate <image> [--apikey <slot>]to manually select which key to use. - Automatic Load Balancing: If
--apikeyis omitted, the plugin automatically picks the single configured key or selects a random one from available slots to distribute the load across keys.
⚠️ Note: Don't forget to delete your
plugins/ImageDisplay/messages/folder andconfig.ymlbefore starting the server so the new translations and config can generate properly!
I also saw messages stating that some people couldn’t find the right image format. You need an image with a height of 8 pixels, because the height of the mc symbol is exactly 8 pixels. If the image is taller, the symbol will consist of several lines.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:clKgXa3n:ROWSZjez"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:clKgXa3n:ROWSZjez"
}

