GlymeraPlotWorld-14.0.0.jar
What's new
GlymeraPlotWorld — Changelog
v14.0.0 — changes since v12.0.0
Changed — Claiming and merging now use separate tokens
- The single claim/merge token has been split into two items. Claiming a plot consumes a Plot Deed (the existing item — every deed players already own stays valid for claiming). Merging plots now consumes a new item, the Merge Permit. Both recipes are identical (4x Greater Essence of Life at the Alchemy bench), so nothing gets cheaper or more expensive by default — but a server can now control the two independently.
- Four config switches replace the old two (
claimRequiresToken,mergeRequiresToken,claimRecipeEnabled,mergeRecipeEnabled). A server can e.g. make merging free while claiming still costs a deed, or disable one recipe and sell that token via/plot give. An old config with the previousrequireToken/recipeEnabledkeys keeps working: its value is applied to both new switches automatically, so behaviour is unchanged until you choose otherwise. /plot give <player> [claim|merge]— the OP hand-out command now takes an optional token type (defaultclaim).- Both tokens got proper custom 3D models and icons. The Plot Deed is now a parchment land deed with a rolled edge and a crimson wax seal (it previously reused Hytale's map scroll); the Merge Permit shows two joined parchments under a teal seal - same visual family, instantly distinguishable.
Fixed — Multi-block furniture in road designs (the "doubled benches")
- Furniture larger than one block (benches, and any other multi-cell piece) no longer duplicates on roads. Saving a road design used to record such a piece once per cell its model covers — a village bench (two wide, two high) was stored as four separate benches, and applying the design then placed four real ones: stacked and shifted copies on every road, in new and existing chunks alike. A save now records only the piece's origin block; the engine builds the rest of the model from there, exactly as when you place it by hand.
- The protection no longer dismantles legitimate furniture. The structure guard and the road cleaner now recognise the engine-made model cells of a placed piece (a bench's backrest and second seat) and leave them alone instead of treating them as foreign blocks.
- After updating, re-save and re-apply your design once (
/plotworld roads save <name>, then/plotworld roads apply <name>). That rewrites the stored design without the duplicated cells, and the guard then removes the existing duplicates from your roads by itself.
Fixed — Switching to a lower road design left the old one's tall parts standing
- Applying a new design only cleaned old decoration up to the new design's height — switching from a tall design (say, lamps or fountains ten blocks up) to a low one (two-high benches) left everything above that height standing forever. The cleanup now always covers the full designer ceiling (16 blocks), so a design switch removes every leftover of the previous design.
Changed — Liquid containment rewritten (the "Task took NNms" console spam)
- The road liquid cleaner no longer produces watchdog warnings on a quiet server. It used to re-scan every claimed plot's whole perimeter every two seconds — even with nobody online — so its cost grew with the number of claims, and on well-filled servers the console filled with "Task took …ms" warnings around the clock. It now looks at loaded chunks with a constant-time "any fluid here at all?" check and does real work only where fluid actually exists. A world with no loose fluid costs practically nothing, no matter how many plots are claimed or who is online.
- Coverage got wider at the same time: all roads are cleaned now, not only those bordering claimed plots — and up to the full design height, so decoration that emits fluid from high up can no longer leave standing fluid columns behind on roads.
- Road decoration healing is water-aware. Decoration that requires support (branches, for example) can be knocked off by fluid activity as a dropped item; the guard used to re-place it immediately while the spot was still wet, which could repeat. It now waits until the spot is dry, then restores the design once.
Removed — the autoMerge config key
- The generated config advertised an
autoMergeoption ("a freshly claimed plot auto-merges..."), but no code ever implemented it — setting it to true silently did nothing (this is what prompted the CurseForge report "auto merge dont work"). The dead key is gone; merging remains an explicit action via/plot mergeor the menu.
v12.0.0 — changes since v9.0.0
New: cross-plugin plot-border API (for block-moving plugins)
- Added a public integration point that other plugins can call to respect plot borders, so automation can never reach across a plot boundary. It answers — merge-aware — whether a block may be moved/placed/affected from one spot to another within the same plot (or merged group), treating the wall ring and the road as immovable structure everywhere.
- This is what now lets GlymeraBluestone (pistons & Applicator), GlymeraSpawner (mob spawners) and GlymeraTNT (explosions) keep their effects inside the plot they belong to — the road, the plot border and neighbouring plots are protected from all of them.
- No change for players: plots, claiming, protection, merging and everything else work exactly as before. This release only adds the integration point other plugins use; plugins that don't use it are unaffected.
v6.0.0 — changes since v5.0.0
Fixed — The generated config now lists every option
- The
config.jsoncreated on a fresh install now contains every setting the plugin actually supports. Six options that were already adjustable —keepPlotAnimals,confineMode,environment,workshopWorldKey,workshopFloorBlockandtemplateMaxHeight— were missing from the generated file, so they ran silently at their defaults and never appeared for you to change. They are now all present, each with its explanatory comment. - No behaviour changes. Every default stays exactly as it was; this release only makes the previously-hidden options visible and editable.
- The version number stored inside the plugin had lagged behind the release name; it now matches (6.0.0).
Note
- An existing
config.jsonkeeps working unchanged after the update — any option you never set is still filled with its default automatically, so updating is safe and requires no action.
v5.0.0 — changes since v4.0.0
Added — Plot animals: kept, counted, cleared
- A plot's animals no longer vanish over time. Hytale despawns idle creatures by default (like Minecraft mobs leaving), which quietly dissolved players' farms. Animals standing on a claimed plot now keep their place permanently, so a farm survives. (Config:
keepPlotAnimals, default on — set it false to let the engine despawn run.) /plot clearnow also removes the plot's animals, not just the build — and tells you how many it cleared. Ridden mounts and your own pets are kept, players are never touched, and on a merged plot it covers the whole group. The GUI "Clear this plot" button does the same.- The plot menu now shows a live animal count ("Animals: N / cap") for the plot, merge-summed and excluding mounts/pets — so you can see at a glance how full a plot is.
Changed — Creature confinement rewritten: far lighter on the server, same invisible wall
- The plot-edge wall for animals now costs the server almost nothing. Confinement used to run as a scheduled pass that, dozens of times a second, scanned every creature and teleported strays back — on a busy world this was by far the single heaviest thing the plugin did. It is now a native per-tick system that does real work only for the few creatures actually near a plot's edge — the ones grazing safely in the middle are skipped with cheap arithmetic — and corrects a boundary crosser with a normal move (not a teleport). Measured on a test world under deliberate stress (herding animals into the borders), it uses about 90× less CPU than before — and produces none of the "task took too long" warnings the old pass generated.
- Nothing changes that you can see. The wall holds exactly as before: animals stop cleanly at the edge with no snap, players and ridden mounts pass through freely, and it stays fully merge-aware (animals roam the whole merged footprint, including the opened seams). It simply no longer weighs on the server.
- New config
confineMode(defaultactive) selects the new engine. Set it tooffto fall back to the previous scheduled pass.
Changed — Structure guard no longer spikes when a lot of terrain loads at once
- The road/boundary protection is gentler during world load. The guard re-asserts the entire column beneath roads and walls (so nobody can tunnel under them); that deep pass used to process a large batch of chunks in one go, causing a brief load spike. It is now spread across more passes. Visible protection is unchanged — roads and boundary stones are still re-asserted every pass; only rare under-road griefing restores a touch slower while a lot of terrain is streaming in at once.
Fixed — Liquids on roads and plot edges
- Water no longer reaches your road decoration. Fluid is now caught and removed already at a plot's boundary stones, so it never spreads onto the road — and onto your road-design lamps, hedges and planters — in the first place.
- Water sitting directly in a decoration block's cell is cleared too. The cleaner used to skip those cells entirely and leave the fluid behind; it now removes the fluid while keeping the decoration itself.
- No more stone forming on the plot edge. Water and lava meeting on the boundary stones could fuse into stone where you normally can't build; the boundary ring is now kept fluid-free, and any such stone is removed.
v4.0.0 — changes since v3.0.0
Added — Custom Road Designs (the Road Designer)
- Design your own roads — lamps, hedges, fences, planters, arches — and every road in the whole plot world gets your design. Run
/plotworld setup(OP) and pick Create with custom roads: you are teleported into the Road Workshop, a tiny separate design world that contains exactly ONE road piece (a strip + its crossing) on a dark stage. Whatever you build on that road piece — up to 16 blocks high, you may even swap the road surface itself — becomes your design. - Save with
/plotworld roads save <name>. During first-time setup the design is applied automatically; on an existing world you apply it deliberately with/plotworld roads apply <name>. Multiple named designs can be saved and switched any time (/plotworld roads list). - Applies to the WHOLE world, not just new chunks. Newly generated chunks are born with the design; already-generated chunks convert within seconds as they are loaded. Switching designs also cleans up the previous design's decoration automatically.
- Your road decoration is protected like the road itself. The structure guard keeps it indestructible against players, TNT, third-party plugins — anyone. Block orientation (fences, stairs) is captured and reproduced faithfully.
- Merge-aware: merging plots removes the decoration above the opened seam (precisely — player builds are never touched); unmerging restores road and decoration.
- New commands:
/plotworld setup(creation GUI),/plotworld roads edit | save <name> | apply <name> | list | help(all OP-only). New config:workshopWorldKey,templateMaxHeight(default 16, max 64). - Existing worlds are completely unaffected until you explicitly apply a design — without one, roads behave exactly as in v3.
Changed — Data directory moved to the standard location
- Config and plot data now live in
mods/de.glymera_GlymeraPlotWorld/(the official per-plugin data directory) instead ofplugins/GlymeraPlotWorld/. Existing installations migrate automatically on first start: yourconfig.jsonandplots.jsonare adopted unchanged, and the old folder is renamed toGlymeraPlotWorld_migratedso nothing edits a dead config by accident. No data is lost. (Thanks to SonDereceTR for the report!) - The plot world is now created explicitly via
/plotworld setupinstead of silently at boot. Servers that already have a plot world are not affected — it keeps loading as always.
Fixed
- "Trembling world": the structure guard no longer fights the engine's natural grass decay. Grass under boundary stones naturally turns to dirt; the guard used to restore it forever, causing a constant stream of block updates (a subtle world-wide shimmer). It now accepts naturally decayed soil under walls.
- Road decoration no longer flickers around claimed plots. The liquid-containment pass treated ANY block above a road as foreign and removed it — correct before road designs existed, wrong afterwards. It now leaves the design's blocks alone (and still removes real liquids and foreign blocks).
v3.0.0 — changes since v2.0.0
Changed — Creature confinement is now a real wall
- Animals walk into an invisible wall at the plot edge instead of straying onto the road. Confinement used to react a few times a second and then teleport a strayed animal back, which let it wander a good way onto the road first and snap back with a visible jump. It now runs as a fast pass that holds the animal at its plot's edge, so it simply can't step out — like the fence on a Minecraft/PlotSquared plot. No more jarring teleport.
- Merge-aware — the wall sits at the outer edge of a merged group; animals roam the whole merged area freely, including the opened seams between merged plots.
Added — Roads are kept clear of stray creatures
- Any creature that ends up standing on a road is removed. Because the wall keeps a plot's own animals inside, a creature found on a road must have spawned there — for example a mob spawner placed near a plot border whose spawn radius spilled over onto the road. Those are cleared automatically, so roads stay clean.
- Player companions and mounts are never touched. A creature being ridden (any mount, detected via the engine itself) and our own companion pets / pet-shop NPC are always exempt — they may cross roads with their owner freely. You can add other NPC roles to the exemption list in the config.
Configuration
deleteCreaturesOnRoads(defaulttrue) — remove creatures that end up on a road.confineIntervalMs(default33) — how often the wall + road-clear pass runs (lower = tighter wall).exemptRoles(default the pet + pet-shop roles) — NPC roles that are never confined or removed. Ridden mounts are always exempt regardless of this list.
Performance
- The wall/road pass is pure arithmetic on the world thread (no block or world reads), iterates only actual creatures, and is skipped entirely when the plot world has no players online — so it stays cheap even with many plots and creatures. The heavier population-cap pass continues to run on its own slower schedule.
Fixed
- The plot menu now recognises you're on your own plot when standing on an opened merge seam. Previously, standing on a former-road strip inside a merged plot,
/plotshowed "You're on a road" and hid the Manage / Merge / Unmerge buttons — it treated the opened seam as a road. It now correctly identifies the merged plot (and the same fix applies to every command that acts on "the plot under your feet").
v2.0.0 — changes since v1.0.0
Added — Structure Guard (anti-grief)
- Roads and boundary stones are now truly indestructible — against any source. The roads between plots, the boundary stones that frame every plot, and the whole column of ground beneath them are continuously kept at their correct grid block. If anything alters them, it is restored within about a second.
- Works no matter what caused the change — explosions (including TNT), area-of-effect tools, third-party plugins, the engine itself, even an operator. The guard never asks who changed a block (which can't be known for a foreign explosion); it only checks whether the structural block is still correct, so it cannot be bypassed.
- Merge-aware — the opened seams inside a merge stay buildable for the owner, while the merged group's outer frame and the surrounding roads stay protected.
- Plot interiors are never touched — owners build and dig freely inside their own plots.
- Designed to stay light: the visible surface + boundary check runs everywhere every cycle, while the deeper "under the road" check is spread across cycles, so server cost stays low no matter how much of the world is loaded. At rest it only reads — it writes only the rare block that was actually changed.
Fixed
- Merging no longer wipes builds on previously-opened seams. Re-merging — for example completing a square by adding a fourth plot — used to clear whatever you had built on the road areas that an earlier merge had already opened. Merging now only opens the seams and frames the boundary; it never resets the buildable space, so all your builds (and anything you dug underneath) are preserved. The look of a first-time merge is unchanged.
Configuration
- New option
protectStructure(defaulttrue) — set it tofalseto turn the structure guard off entirely.
Note
This protects the grid skeleton (roads + boundary stones + the ground under them) against everything. Protecting the interior of another player's plot against an unknown third-party plugin is not possible without an engine-level hook Hytale does not provide.
v1.0.0 — Initial release
- PlotSquared-style plot world: a dedicated flat world split into a grid of square plots separated by roads, generated by a custom world generator. Restart-safe (the world stays loaded for instant teleports).
- Claim & protect plots; full block/interaction protection.
- Point-and-click
/plotmenu (every action also has a command). - Merge adjacent plots into any shape (flood-fill, footprint-exact); un-merge.
- Per-plot weather and frozen time of day.
- Trust / visitor permissions and group-wide bans; plot transfer.
- Creature confinement and per-plot population cap; water/lava containment (anti-grief).
- Craftable Plot Deed required to claim/merge (configurable); plot limit (default 9, operators exempt).
All Relations
- All Relations
- Embedded Library
- Optional Dependency
- Required Dependency
- Tool
- Incompatible
- Include
This mod has no related projects