{"id":31267,"date":"2026-06-01T16:42:47","date_gmt":"2026-06-01T13:42:47","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/"},"modified":"2026-06-01T16:42:47","modified_gmt":"2026-06-01T13:42:47","slug":"biomemap","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/","title":{"rendered":"BiomeMap"},"content":{"rendered":"<div align=\"center\">\n<p># BiomeMap<\/p>\n<p>Generates a lightweight JSON file mapping each world region to its dominant biome. Ideal for creating stylized biome maps on external web apps.<\/p>\n<\/div>\n<p>## \ud83d\udccb Overview<\/p>\n<p>BiomeMap exports the dominant biome of a rectangular selection.<br \/>\nYou choose a world and 2 corners (`x\/z`), and the plugin builds a grid of cells over that area.<br \/>\nThen it samples biomes and writes:<br \/>\n&#8211; a JSON file<br \/>\n&#8211; optionally a PNG preview (`1 pixel = 1 cell`)<\/p>\n<p>## \u2728 Features<\/p>\n<p>&#8211; Rectangular selection defined by two coordinates (`\/biomemap world x1 z1 x2 z2 [cellSize] [preview]`)<br \/>\n&#8211; Cell size with chunk-friendly alignment (`8`, `16`, `32`, &#8230;)<br \/>\n&#8211; Chunk-based sampling to smooth biome transitions<br \/>\n&#8211; Asynchronous processing with frequent progress updates (no server freeze)<br \/>\n&#8211; One export at a time (global lock)<br \/>\n&#8211; Stop command to cancel running exports cleanly<br \/>\n&#8211; Structured JSON output with min\/max bounds per cell and namespaced biome IDs<br \/>\n&#8211; Optional PNG preview output (`1 pixel = 1 cell`) using a biome RGB palette<\/p>\n<p>## \ud83d\ude80 Installation<\/p>\n<p>1. Install PaperMC server with Java 21+<br \/>\n2. Download the latest `biomemap-x.x.x+mcx.x.x.jar` from the releases page<br \/>\n3. Drop the jar into your server\u2019s `plugins\/` folder<br \/>\n4. Restart the server or run `\/reload confirm`<\/p>\n<p>## \ud83d\udd79 Command Usage<\/p>\n<p>Only one export can run at a time.<\/p>\n<p>### Commands<\/p>\n<p>| Command | Description |<br \/>\n| &#8212; | &#8212; |<br \/>\n| `\/biomemap <world> <x1> <z1> <x2> <z2> [cellSize] [preview]` | Starts a biome export (JSON + optional PNG). |<br \/>\n| `\/biomemap status [map]` | Shows current progress, ETA, outputs. Add `map` for compact ASCII completion map. |<br \/>\n| `\/biomemap stop` | Stops the current export and removes files from that run in `exports\/`. |<\/p>\n<p>### Arguments<\/p>\n<p>| Argument | Required | Description |<br \/>\n| &#8212; | &#8212; | &#8212; |<br \/>\n| `<world>` | Yes | World name, for example `world` or `world_nether`. |<br \/>\n| `<x1> <z1>` | Yes | First corner of the area. |<br \/>\n| `<x2> <z2>` | Yes | Opposite corner of the area. |<br \/>\n| `[cellSize]` | No | Cell size in blocks. Default `16` (common values: `8`, `16`, `32`, `64`, &#8230;). |<br \/>\n| `[preview]` | No | Add `preview` to generate a PNG (`1 pixel = 1 cell`). |<\/p>\n<p>## \ud83d\udcc1 Output files<\/p>\n<p>All files are written to `plugins\/BiomeMap\/exports\/`.<\/p>\n<p>| File | Pattern | Created when |<br \/>\n| &#8212; | &#8212; | &#8212; |<br \/>\n| JSON | `<world>_<cellSize>_<index>.json` | Always |<br \/>\n| PNG | `<world>_<cellSize>_<index>.png` | Only if `preview` is used |<\/p>\n<p>Rules:<br \/>\n&#8211; `index` starts at `1` and increases if the filename already exists.<br \/>\n&#8211; If you run `\/biomemap stop`, files from the canceled export are removed.<\/p>\n<p>## \u2699\ufe0f Configuration<\/p>\n<p>[`config.yml`](src\/main\/resources\/config.yml) exposes performance throttles.<\/p>\n<p>| Key | Default | Description |<br \/>\n| &#8212; | &#8212; | &#8212; |<br \/>\n| `performance.chunks-per-tick` | `1` | How many new chunk jobs are started each tick. Lower = safer, slower. |<br \/>\n| `performance.max-in-flight` | `4` | Max number of BiomeMap jobs currently in pipeline (queued\/running). |<br \/>\n| `performance.max-concurrent-chunks` | `64` | Max real chunk loads at the same time (main server pressure knob). |<\/p>\n<p>Quick tuning guide:<br \/>\n&#8211; If players feel lag, lower `max-concurrent-chunks` first.<br \/>\n&#8211; If export feels too slow but server is stable, increase `chunks-per-tick` a bit.<br \/>\n&#8211; Keep `max-in-flight >= chunks-per-tick`.<\/p>\n<p>## \ud83d\uddfa JSON Format<\/p>\n<p>&#8220;`json<br \/>\n{<br \/>\n  &#8220;cellSize&#8221;: 16,<br \/>\n  &#8220;selectionMin&#8221;: { &#8220;x&#8221;: -200, &#8220;z&#8221;: -200 },<br \/>\n  &#8220;selectionMax&#8221;: { &#8220;x&#8221;: -50, &#8220;z&#8221;: -20 },<br \/>\n  &#8220;gridOrigin&#8221;: { &#8220;x&#8221;: -208, &#8220;z&#8221;: -208 },<br \/>\n  &#8220;width&#8221;: 10,<br \/>\n  &#8220;height&#8221;: 12,<br \/>\n  &#8220;cells&#8221;: [<br \/>\n    {<br \/>\n      &#8220;i&#8221;: 0,<br \/>\n      &#8220;j&#8221;: 0,<br \/>\n      &#8220;bounds&#8221;: {<br \/>\n        &#8220;min&#8221;: { &#8220;x&#8221;: -208, &#8220;z&#8221;: -208 },<br \/>\n        &#8220;max&#8221;: { &#8220;x&#8221;: -193, &#8220;z&#8221;: -193 }<br \/>\n      },<br \/>\n      &#8220;biome&#8221;: &#8220;minecraft:plains&#8221;<br \/>\n    },<br \/>\n    {<br \/>\n      &#8220;i&#8221;: 1,<br \/>\n      &#8220;j&#8221;: 0,<br \/>\n      &#8220;bounds&#8221;: {<br \/>\n        &#8220;min&#8221;: { &#8220;x&#8221;: -192, &#8220;z&#8221;: -208 },<br \/>\n        &#8220;max&#8221;: { &#8220;x&#8221;: -177, &#8220;z&#8221;: -193 }<br \/>\n      },<br \/>\n      &#8220;biome&#8221;: &#8220;minecraft:forest&#8221;<br \/>\n    }<br \/>\n  ]<br \/>\n}<br \/>\n&#8220;`<\/p>\n<p>| Field | Type | Description |<br \/>\n| &#8212; | &#8212; | &#8212; |<br \/>\n| `cellSize` | `number` | Cell size in blocks (minimum 8; values above that are aligned to the chunk grid). |<br \/>\n| `selectionMin\/Max` | `object` | Raw coordinates provided in the command. |<br \/>\n| `gridOrigin` | `object` | North-west corner of the grid (min X, min Z). |<br \/>\n| `width`, `height` | `number` | Number of cells on the X and Z axes. |<br \/>\n| `cells[].bounds.min\/max` | `object` | Inclusive bounds delimiting the cell. |<br \/>\n| `cells[].biome` | `string` | Namespaced biome ID (e.g. `minecraft:savanna`). |<\/p>\n<p>&#8212;<\/p>\n<div align=\"center\">\nCrafted by<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/starlightskins.lunareclipse.studio\/render\/head\/_Suki_\/full?borderHighlight=true&#038;borderHighlightRadius=7&#038;dropShadow=true\" width=\"20\" height=\"20\" style=\"vertical-align:-3px;\"><br \/>\nSukikui\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Lightweight PaperMC plugin exporting dominant biomes from a selected area to JSON<\/p>\n","protected":false},"featured_media":31268,"template":"","meta":{"_minecraft_slug":"biomemap","_minecraft_project_id":"H8uMb3vr","_minecraft_author":"Sukikui","_minecraft_license":"MIT","_minecraft_downloads":70,"_minecraft_follows":0,"_minecraft_client_side":"unsupported","_minecraft_server_side":"required","_minecraft_storage_type":"zip","_minecraft_archive_name":"biomemap.zip","_minecraft_size_bytes":958100,"_minecraft_version_count":3,"_minecraft_updated_at":"2026-05-15T20:27:34.906965Z","_minecraft_date_created":"2025-11-13T00:34:13.457313Z","_minecraft_date_modified":"2026-03-01T13:10:32.119750Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/biomemap","_minecraft_icon_attachment_id":31268,"_minecraft_imported_at":"2026-06-01T13:42:48+00:00","_minecraft_import_hash":"49938d4884ce3965673bd62edf68d37c","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[127,128,129,92,159],"mod_loader":[132,133,134],"minecraft_version":[41],"class_list":["post-31267","mod","type-mod","status-publish","has-post-thumbnail","hentry","mod_category-paper","mod_category-purpur","mod_category-spigot","mod_category-utility","mod_category-worldgen","mod_loader-paper","mod_loader-purpur","mod_loader-spigot","minecraft_version-1-21-11"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>BiomeMap - Minecraft<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"BiomeMap - Minecraft\" \/>\n<meta property=\"og:description\" content=\"Lightweight PaperMC plugin exporting dominant biomes from a selected area to JSON\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/\" \/>\n<meta property=\"og:site_name\" content=\"Minecraft\" \/>\n<meta property=\"og:image\" content=\"https:\/\/starlightskins.lunareclipse.studio\/render\/head\/_Suki_\/full?borderHighlight=true&borderHighlightRadius=7&dropShadow=true\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/biomemap\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/biomemap\\\/\",\"name\":\"BiomeMap - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/biomemap\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/biomemap\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/biomemap-icon-d8e82e39ab62da441e1dc05faa63ebc83fe3da7d_96.webp\",\"datePublished\":\"2026-06-01T13:42:47+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/biomemap\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/biomemap\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/biomemap\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/biomemap-icon-d8e82e39ab62da441e1dc05faa63ebc83fe3da7d_96.webp\",\"contentUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/biomemap-icon-d8e82e39ab62da441e1dc05faa63ebc83fe3da7d_96.webp\",\"width\":96,\"height\":94},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/biomemap\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mods\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"BiomeMap\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\",\"name\":\"Minecraft\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"BiomeMap - Minecraft","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/","og_locale":"en_US","og_type":"article","og_title":"BiomeMap - Minecraft","og_description":"Lightweight PaperMC plugin exporting dominant biomes from a selected area to JSON","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/","og_site_name":"Minecraft","og_image":[{"url":"https:\/\/starlightskins.lunareclipse.studio\/render\/head\/_Suki_\/full?borderHighlight=true&borderHighlightRadius=7&dropShadow=true","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/","name":"BiomeMap - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/#primaryimage"},"image":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/#primaryimage"},"thumbnailUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/biomemap-icon-d8e82e39ab62da441e1dc05faa63ebc83fe3da7d_96.webp","datePublished":"2026-06-01T13:42:47+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/#primaryimage","url":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/biomemap-icon-d8e82e39ab62da441e1dc05faa63ebc83fe3da7d_96.webp","contentUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/biomemap-icon-d8e82e39ab62da441e1dc05faa63ebc83fe3da7d_96.webp","width":96,"height":94},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/biomemap\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vpesports.com\/minecraft\/"},{"@type":"ListItem","position":2,"name":"Mods","item":"https:\/\/vpesports.com\/minecraft\/mods\/"},{"@type":"ListItem","position":3,"name":"BiomeMap"}]},{"@type":"WebSite","@id":"https:\/\/vpesports.com\/minecraft\/#website","url":"https:\/\/vpesports.com\/minecraft\/","name":"Minecraft","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vpesports.com\/minecraft\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod\/31267","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod"}],"about":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/types\/mod"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media\/31268"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=31267"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=31267"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=31267"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=31267"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}