A dynamic prefab-based land management system. Define grids, load complex structures, and protect your world with intelligent masking
A dynamic prefab-based land management system. Define grids, load complex structures, and protect your world with intelligent masking.
A simple yet powerful way to manage creative spaces, allowing you to focus on what truly matters: building.
.jar file in your mods folder..prefab.json files to mods/Hytale_Plots/prefabs/.Plots is not just a static grid. It adapts to your specific design.
Here is an example of what you can achieve utilizing a custom prefab for the plot within our dynamic system. These floating islands were generated automatically using the grid system and protected with our granular masking logic.
A custom island plot structure generated from a prefab and perfectly integrated into the grid.
Top-down view showing how the plot prefab is distributed across the world.
The config.json allows total control over your world. Below is a breakdown of the main settings:
en_us).midday, night).0 for a gapless grid.Empty or Air to create a technical "Void World" perfect for floating islands..prefab.json extension (e.g., use my_island for my_island.prefab.json)./plot claim - Take ownership of the plot you are standing on./plot home - Takes you back to your construction./plot trust <player> - Give a friend permission to build with you./plot rename <name> - Give your project a unique name.| Command | Description |
|---|---|
| <code>/plot claim</code> | Claims the current plot |
| <code>/plot delete</code> | Delete the current plot |
| <code>/plot auto</code> | Finds and claims the nearest free plot |
| <code>/plot home</code> | Teleports to your primary plot |
| <code>/plot trust &lt;player&gt;</code> | Grants build permission to another player |
| <code>/plot untrust &lt;player&gt;</code> | Revokes build permission from a player |
| <code>/plot info</code> | Shows details about the plot you are in |
| <code>/plot list</code> | Lists all your owned plots |
| <code>/plot spawn</code> | Teleports to the plot world spawn |
| undefined | |
| Command | Description |
|---|---|
| <code>/plot delete &lt;gridX&gt; &lt;gridY&gt;<br></code> | Removes a plot record (admins only) |
We created an advanced protection logic for creative servers:
Plots uses a granular permission system. You can assign these nodes to players or groups:
| Permission | Description |
|---|---|
| <code>plots.*</code> | Full administrative access (unlimited plots, bypass protection) |
| <code>plots.claim</code> | Allows claiming plots with <code>/plot claim</code> or <code>/plot auto</code> |
| <code>plots.delete</code> | Allows deleting owned plots with <code>/plot delete</code> |
| <code>plots.delete.*</code> | Allows deleting <strong>any</strong> plot (Administrator) |
| <code>plots.spawn</code> | Allows visiting the dedicated plot world with <code>/plot spawn</code> |
| <code>plots.list</code> | Allows listing owned plots with <code>/plot list</code> |
| <code>plots.info</code> | Allows viewing plot information with <code>/plot info</code> |
| <code>plots.rename</code> | Allows renaming plots with <code>/plot rename</code> |
| <code>plots.trust</code> | Allows managing trusted members with <code>/plot trust</code> |
| | |
| Permission | Description |
|---|---|
| <code>plots.limit.X</code> | Sets the maximum number of plots a player can own (e.g., <code>plots.limit.5</code>) |
| undefined | |
We are committed to supporting as many languages as possible.
lang/ directory within the plugin folder.Plots provides a comprehensive public API for external plugins to interact with the plot system programmatically.
import com.overworldlabs.plots.api.PlotsAPI;
// Get API instance
PlotsAPI api = PlotsAPI.getInstance();#### PlotAPI
Query and manage plots:
// Get plot at location Optional plot = api.plot().getPlotAt(world, x, z);
// Check ownership boolean isOwner = api.plot().isOwner(plot, playerUuid);
// Get trusted players List trusted = api.plot().getTrustedPlayers(plot);
#### PlotEventAPI
Listen to plot events:api.events().onClaim(event -> { Plot plot = event.getPlot(); UUID owner = event.getOwner(); // Handle claim event });
api.events().onRename(event -> { String oldName = event.getOldName(); String newName = event.getNewName(); // Handle rename event });Available events:
ClaimEvent - Fired when a plot is claimedUnclaimEvent - Fired when a plot is unclaimedTrustEvent - Fired when a player is trustedUntrustEvent - Fired when a player is untrustedRenameEvent - Fired when a plot is renamedA more comprehensive and organized documentation site is currently under development. Stay tuned for advanced tutorials, API references, and design tips!
Everything is saved in simple, lightweight formats: \\\`
Enhance your server with dynamic Hylograms that automatically display plot information at the corner of each claimed plot.
config.json.To enable this feature, simply include the hylograms.jar library in your server's libs or mods folder.
0 Comments