Iris - Dimension Engine

MC Plugin Iris - Dimension Engine 4.0.0-26.1.2-26.2
A Beautiful, Incredibly fast, fully customizable world generator. Create your own dimensions!

Before you update
You will need to delete your plugins/Iris folder to allow the files to regenerate along side any Packs, Structures, etc. Please note that the latest Iris only supports the current 26.x+ versions. You will need to generate a fresh world if you are currently using Iris on an older version/world, this will NOT convert your current world.

This update adds support for 26.x+ on Java 25 for Paper, Purpur, Leaf, Folia, Canvas and Spigot.

Before you update
  • Every PlaceholderAPI key was renamed, with no aliases. Old keys now render literally instead of silently.
  • The config file is now plugins/Iris/iris.json on servers. The empty concurrency block is gone; it had no writable keys and discarded anything you typed into it.
  • /iris download accepts only pack=overworld, pack=underworld or link=<zip-url>, and requires a restart afterwards.
  • /iris create lost main, overwrite and force. Use /iris replace to point an existing world at Iris.
  • World keys are namespaced as iris:<name>, stored under dimensions/iris/<name>. Existing custom-world identities are not migrated automatically.
  • performance.tectonicPlateSize was removed. Mantle retention is driven by real heap pressure now.
  • Stronghold rings moved. Existing stronghold blocks stay put, but locate and Eye of Ender routing use the new rings.
  • Spigot cannot use /iris replace - it has no pre-registry bootstrap. Managed /iris create worlds work fine.
Added
  • Image-driven generation Image maps are a first-class pack resource. Bind a PNG to a dimension and drive height, masks or categorical placement from its pixels. Grayscale keeps 8 or 16-bit precision, RGB height uses a fixed 24-bit formula, and colour matching is exact by default with optional tolerance.
  • Image Map Studio Preview source pixels and metadata before compilation, configure roles, legends and ordered mask stacks, see clipped and unknown counts with ambiguous errors naming their exact source coordinates, then export atomically and hotload the live engine.
  • Jigsaw Studio An in-game structure editor for villages and strongholds: workcells, pools, pieces and connectors, a paged menu, particle outlines, debounced autosave and five-step undo. Plugin only.
  • Vanilla in, datapack out Convert a registered vanilla jigsaw structure into your own editable pieces, rebuild it, and export the result back as a vanilla datapack.
  • /iris replace cold-replaces an existing world's generator on the next restart, including exactly overworld, the_nether and the_end. The seed is preserved unless you pass a new one, and the previous dimension is kept as a backup until the replacement proves itself.
  • Any registered structure, natively Placements can select any structure in the live registry - vanilla, datapack or modded - and let its own implementation assemble it, while Iris supplies distribution, height band, terrain fitting and foundations.
  • Structure frequency overrides Dimensions can scale natural structure-set density per key while preserving weights, biome filters, salts, exclusion zones, loot and native locate behaviour.
  • Overbore cavern shapes Structure carving gained a per-placement overboreShape: BOX for a straight excavation, ROUNDED for a smooth falloff, and ERODED for configurable coherent boundaries, built from the assembled structure's real footprint instead of hollowing every piece's bounding box.
  • Survival tree feller on Paper, Purpur and Folia. Off by default, permission-gated, and limited to Iris's own marker-owned trees so player-built log structures are safe.
  • World boundary Dimensions can declare a typed worldBoundary applied on initialization and reload. Omitting it leaves the world's current border alone.
  • Five pale-oak biomes in the default Overworld, including a Pallid Necropolis with cracked calcite terrain, bone strata, tombstones and ossuary spires.
  • React telemetry One immutable snapshot per second per world: 69 server-wide and 41 per-world metrics covering engine lifecycle, generation rates, Mantle pressure, cache occupancy and pregeneration health.
Changed
  • Ores were rebuilt on real 26.2 distributions with height anchors, biome exceptions and host rules, normalised into the pack's taller world instead of squashed into one band. Magnetics floating islands get a full seven-ore suite, and exposed coal was thinned without changing buried frequency.
  • Procedural formations replaced the fixed ice libraries Icebergs, fissures, spirals, overhangs and three-dimensional arches now cover 18 frozen biomes; 29 Overworld spike objects and 47 Underworld replacements were retired.
  • Native structure handling was consolidated One shared policy, template preflight, vertical shifting, vegetation clearing and foundation path for every consumer, so villages fit terrain instead of sitting on dirt pillars and underground structures bury properly.
  • No pack is downloaded at startup Bukkit provisions its runtime libraries into a cache instead.
  • Mantle retention follows real heap pressure Rather than dividing one fixed plate budget across worlds, with immediate parallel reclamation when the heap gets tight.
  • The PlaceholderAPI expansion was rebuilt On the shared Volmit layer with the %iris_<group>.<metric>% grammar.
  • Vision and Noise Explorer were rebuilt Vision renders one final-quality atlas instead of blurry preview LODs, with cursor-anchored zoom and world-aligned pages that survive pan, resize and return visits. Noise Explorer loads only the selected definition and refines to one sample per pixel.
  • 17 languages with complete server bundles and matching client assets, plus optional JSON overrides that apply atomically only after their keys, shapes and placeholders validate.
  • Deposits gained real controls Uniform or triangular height providers, vanilla ellipsoid or scattered shapes, host lists, air-exposure discard, biome filters and placement scopes - while keeping legacy defaults for existing packs.
  • Bukkit world identity follows 26.2's canonical layout, with dimensions stored under dimensions/iris/<key> and Paper-family servers keeping level-wide data in the level root.
  • Studio is production-accurate The synthetic landing lobby, entry precompute, blank chunks and every simplified generation branch were removed, so Studio generates exactly what a normal world generates.
  • Settings and locale files hotload through one coordinator that detects silent, atomic and FTP saves without hashing on every idle pass.
  • Logging goes through branded severity-aware front doors instead of raw platform loggers and stack printing. Routine diagnostics need debug mode; startup, lifecycle and actionable failures stay visible with their full causes.
  • Progress reporting was reworked Foreground jobs use an arbitrated title plus a labelled action-bar meter that coexists with other plugins, instead of fighting over boss bars.
  • Underworld ambient spawning was added across every lower surface biome using only Nether mobs, and the retired roof dimension was removed.
Fixed
  • Plain Spigot works again across the whole lifecycle. Iris was linking Paper-only APIs that threw NoSuchMethodError from the datapack installer at enable and from Studio at shutdown.
  • Pregeneration finishes on a default server Minecraft 26.2 ships pause-when-empty-seconds=60, and a paused server stops completing chunk futures, so console-started pregen timed out on every chunk. Iris now suspends that pause for the length of the job.
  • Chunk-system detection checks whether C2ME or Moonrise threading is actually enabled rather than merely installed, so a disabled C2ME no longer routes terrain onto the main thread.
  • Large packs no longer pre-allocate empty caches The shipping pack created 26,588 mostly empty maps and retained over a gigabyte in bookkeeping before anything used them.
  • Studio opens far faster The shipping Overworld's cold frontier went from 27-33 seconds to 9-10, with no failed chunks.
  • Periodic saves no longer stall the server thread waiting on a generation worker, removing the five-second hitch and the Cannot save Tectonic Plate failure.
  • Native structures stay inside the writable region during the FEATURES step on Paper-family and modded servers, so mineshaft supports and similar placements no longer escalate into unrecoverable chunk-system failures.
  • Villages fit terrain properly Foundations extend only to real terrain, corrections are capped and blended through a fixed skirt, and vegetation cleanup no longer deletes trunks and canopy beside paths.
  • Objects no longer generate across cave mouths Each object caches its real support footprint and rejects placement when it intersects carving at the surface.
  • Vanilla mob spawning is additive again Minecraft's native creature pass runs against each Iris biome's vanilla derivative, restoring passive populations on new terrain.
  • Object saves fail loudly Objects over 32,767 distinct block states or beyond ±32,767 coordinates silently corrupted the .iob and could truncate the previous file. Both write paths now refuse before touching the file.
  • /iris find is fast Searches derive candidates from the seed and pack data instead of spiralling through every chunk, and an impossible target reports not found immediately instead of scanning until timeout.
  • Headless servers stay quiet Pregeneration no longer logs a GUI error on every start, and desktop windows dispose cleanly without taking the server JVM with them.
  • Pack validation catches real problems Duplicate generator files that silently produced zero-height bands, empty {} density styles resolving to a default that hollowed the vertical range, and height contracts that previously only failed at world creation.
  • Loot is deterministic and additive on every platform, double chests fill once, and the Overworld's ambient tables were rebalanced to remove duplicate high-value structure rewards.
  • Iris-spawned mobs no longer get stuck invulnerable, frozen and non-collidable when their chunk unloads during the spawn effect on Folia. Existing affected mobs are repaired on reload.
  • Tree felling honors its pacing on Paper Every block deferred a full server tick outside Folia, so a large tree took ten-plus seconds of held sneak and usually died partway through. Runs also report why they ended instead of aborting in silence.
Click Me for the Full Changelog
Top Bottom