
MapEngine
MapEngine is a map library plugin for minecraft paper servers, used to display images and video/streaming on maps
9,6 тыс.72обновлён 10 мая 2026 г.
БиблиотекиУтилиты
Описание
MapEngine
Description
MapEngine is a map library plugin for paper servers. It provides a simple API to create maps with custom content. Using lightweight and asynchronous techniques, MapEngine has a very low impact on server performance.
Features
- Pipelined API for custom pipelines
- Asynchronous rendering
- Completely packet based
- Optional dithering (Floyd-Steinberg)
- Groups as z-layer interpretation for saving immense network traffic
- Per player buffering, only the changed pixels are sent to the player
- Optional packet bundling prevents tearing
- Drawing utilities (text, components, lines, triangles, rectangles, circles, ellipses, polygons)
Color Conversion Cache Performance Graph

Live streaming via RTMP on maps
This is an example of a live stream on a map. The stream is played on a 7x4 map array. The Stream source is 1920x1080@20 streamed with OBS.Floyd Sternberg dithering
This is an example of a map with Floyd-Steinberg dithering enabled. The stream is played on a 7x4 map array. The Stream source is 1920x1080@20 streamed with OBS.Javadoc
A hosted version of the javadoc can be found here.
Support
| Server Version | Supported |
|---|---|
| Paper 1.21.11 | ✔️ |
| Paper 1.21.10 | ✔️ |
| Paper 1.21.9 | ✔️ |
| Paper 1.21.8 | ✔️ |
| Paper 1.21.7 | ✔️ |
| Paper 1.21.6 | ✔️ |
| Paper 1.21.5 | ✔️ |
| Paper 1.21.4 | ✔️ |
| Paper 1.21.3 | ✔️ |
| Paper 1.21.2 | ✔️ |
| Paper 1.21.1 | ✔️ |
| Paper 1.21 | ✔️ |
| Paper 1.20.x | ✔️ |
| Paper 1.19.4 | ✔️ |
| Paper 1.19.3 | ✔️ |
Usage
MapEngine has to be added as a dependency to the plugin.yml regardless of the build system used.
Maven
<repositories>
<repository>
<id>minceraft</id>
<url>https://repo.minceraft.dev/releases/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>de.pianoman911</groupId>
<artifactId>mapengine-api</artifactId>
<version>1.8.11</version>
<scope>provided</scope>
</dependency>
</dependencies>
Gradle (groovy)
repositories {
maven {
url = 'https://repo.minceraft.dev/releases/'
name = 'minceraft'
}
}
dependencies {
compileOnly 'de.pianoman911:mapengine-api:1.8.11'
}
Gradle (kotlin)
repositories {
maven("https://repo.minceraft.dev/releases/") {
name = "minceraft"
}
}
dependencies {
compileOnly("de.pianoman911:mapengine-api:1.8.11")
}
Example
public class Bar {
// getting the api instance
private static final MapEngineApi MAP_ENGINE = Bukkit.getServicesManager().load(MapEngineApi.class);
public void foo(BufferedImage image, BlockVector cornerA, BlockVector cornerB, BlockFace facing, Player viewer) {
// create a map display instance
IMapDisplay display = MAP_ENGINE.displayProvider().createBasic(cornerA, cornerB, facing);
display.spawn(viewer); // spawn the map display for the player
// create an input pipeline element
// this object can also be used to draw simple shapes and text
IDrawingSpace input = MAP_ENGINE.pipeline().createDrawingSpace(display);
// draw the image to the input pipeline element
input.image(image,0,0);
// draw a triangle
input.triangle(0, 0, 10, 10, 20, 0, 0xff0000ff);
// add a player to the pipeline context,
// making the player receive the map
input.ctx().receivers().add(viewer);
// enable floyd-steinberg dithering
input.ctx().converter(Converter.FLOYD_STEINBERG);
// enable per player buffering
input.ctx().buffering(true);
// flush the pipeline
// the drawing space can be reused
input.flush();
}
}
More detailed examples can be found in the MinceraftMC/MapEngineExamples repository.
Building
- Clone the project (
git clone https://github.com/MinceraftMC/MapEngine.git) - Go to the cloned directory (
cd MapEngine) - Build the Jar (
./gradlew buildon Linux/MacOS,gradlew buildon Windows)
The plugin jar can be found in the build → libs directory
Галерея
Последние версии
Все версии →beta
MapEngine 1.8.12
1.8.1210 мая 2026 г.1 тыс.Minecraft: 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2paper, purpur
Что нового
- Added 26.1 support by @pianoman911 in [#24](https://github.com/MinceraftMC/MapEngine/pull/24)
- Drop 1.19.3, 1.19.4 support
**Full Changelog**: https://github.com/MinceraftMC/MapEngine/compare/v1.8.11...v1.8.12
beta
MapEngine 1.8.11
1.8.1111 дек. 2025 г.1 тыс.Minecraft: 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper, purpur
Что нового
- Implement 1.21.11 support by @booky10 in [#22](https://github.com/MinceraftMC/MapEngine/pull/22)
- Force-load map color cache synchronously before launching async tasks - @booky10
**Full Changelog**: https://github.com/MinceraftMC/MapEngine/compare/v1.8.10...v1.8.11
beta
MapEngine 1.8.10
1.8.102 окт. 2025 г.536Minecraft: 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10paper, purpur
Что нового
- Added 1.21.9 support ([#20](https://github.com/FroglightNET/MapEngine/pull/20)) - @booky10
- Some minor fixes ([#20](https://github.com/FroglightNET/MapEngine/pull/20)) - @booky10
**Full Changelog**: https://github.com/FroglightNET/MapEngine/compare/v1.8.9...v1.8.10
beta
MapEngine 1.8.9
1.8.928 июн. 2025 г.769Minecraft: 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8paper, purpur
Что нового
- 1.21.6/1.21.7 support by @booky10 in [#19](https://github.com/TheJoCraftNET/MapEngine/pull/19)
**Full Changelog**: https://github.com/TheJoCraftNET/MapEngine/compare/v1.8.8...v1.8.9
beta
MapEngine 1.8.8
1.8.827 мар. 2025 г.601Minecraft: 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5paper, purpur
Что нового
- Added 1.21.5 support by @booky10 in [#16](https://github.com/TheJoCraftNET/MapEngine/pull/16)
**Full Changelog**: https://github.com/TheJoCraftNET/MapEngine/compare/v1.8.7...v1.8.8
beta
MapEngine 1.8.7
1.8.730 дек. 2024 г.530Minecraft: 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4paper, purpur
Что нового
- Added utility methods for map ids
**Full Changelog**: https://github.com/TheJoCraftNET/MapEngine/compare/v1.8.6...v1.8.7
beta
MapEngine 1.8.6
1.8.610 дек. 2024 г.189Minecraft: 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4paper, purpur
Что нового
- Fix text anti aliasing cut bug ([#14](https://github.com/TheJoCraftNET/MapEngine/pull/14))
- Implement fix for alpha channel dithering ([#15](https://github.com/TheJoCraftNET/MapEngine/pull/15))
**Full Changelog**: https://github.com/TheJoCraftNET/MapEngine/compare/v1.8.5...v1.8.6
beta
MapEngine 1.8.5
1.8.54 дек. 2024 г.119Minecraft: 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4paper, purpur
Что нового
- Added 1.21.4 support
**Full Changelog**: https://github.com/TheJoCraftNET/MapEngine/compare/v1.8.4...v1.8.5
beta
MapEngine 1.8.4
1.8.41 дек. 2024 г.100Minecraft: 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3paper, purpur
Что нового
- Added api interface getter to pipeline context, closes [#13](https://github.com/TheJoCraftNET/MapEngine/issues/13)
- Added more utility methods to full spaced color buffer
**Full Changelog**: https://github.com/TheJoCraftNET/MapEngine/compare/v1.8.3...v1.8.4
beta
MapEngine 1.8.3
1.8.331 окт. 2024 г.213Minecraft: 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3paper, purpur
Что нового
- Added 1.21.2/1.21.3 Support
**Full Changelog**: https://github.com/TheJoCraftNET/MapEngine/compare/v1.8.2...v1.8.3


