๐Ÿ˜๏ธ

SmartPlots

The most advanced Plot Management System for Hytale. Build, protect, and manage player plots with ease.

๐Ÿ“ฆ v1.1.0 ๐ŸŽฎ Hytale ๐ŸŒ EN / DE ๐Ÿ’พ H2 / SQLite / MySQL
โœ… Creative Servers
โœ… Survival Towns
โœ… Minigame Lobbies
โœ… Roleplay Servers

๐Ÿ“ฅ Installation

Requirements

Setup

  1. Download SmartPlots.jar from your purchase
  2. Copy the JAR to Hytale/UserData/Mods/
  3. Install LuckPerms for permission management
  4. (Optional) Install an economy plugin for plot costs
  5. Start your Hytale server โ€” config is auto-generated
๐ŸŽ‰ Zero Configuration SmartPlots works out-of-the-box with sensible defaults. Players can start claiming plots immediately!

๐Ÿš€ Quick Start

For Players

  1. Join the server and enter the plot world
  2. Type /plot auto to find and claim a free plot
  3. Start building! Your first 4 plots are free
  4. Invite friends with /plot trust <name>
  5. Customize your plot border with /plot rand <block>

For Admins

  1. Edit config.json to customize plot sizes, costs, and features
  2. Set up LuckPerms groups for VIP tiers
  3. Configure economy provider (or use free mode)

โœจ Features

๐ŸŽฎ

Auto-Claim

Players find and claim free plots instantly with a single command.

๐Ÿ’ฐ

Economy Integration

5 economy providers supported. Fixed or progressive pricing.

๐Ÿ”

Permission System

LuckPerms integration with VIP tiers and granular control.

๐Ÿ›ก๏ธ

Full Protection

Block, interaction, PvP, bucket, crop, and capture crate protection.

๐Ÿ”—

Plot Merging

Combine adjacent plots for massive builds. Automatic border handling.

๐ŸŒ

Multi-Language

English & German built-in. Easily add custom translations.

๐Ÿ—„๏ธ

Database Options

H2 (default), SQLite, or MySQL. Auto-migration and backups.

๐ŸŽจ

Plot Customization

Custom walls, borders, aliases, home positions, and flags.

๐ŸŽฎ Commands

Plot Management

CommandDescriptionAliases
/plot autoFind and claim the nearest free plotโ€”
/plot claimClaim the plot you're standing onโ€”
/plot deleteDelete your plot (with confirmation)โ€”
/plot infoView plot informationโ€”
/plot listList all your plotsโ€”
/plot resetReset plot terrain to defaultโ€”

Navigation

CommandDescriptionAliases
/plot home <PlotID>Teleport to a specific plotโ€”
/plot home <Player>Visit another player's plotโ€”
/plot home <alias>Teleport using a plot aliasโ€”
/plot sethomeSet custom spawn point on your plot/plot sh, /plot setspawn
/plot setmainSet current plot as default for /plot home/plot main
/plot removemainRemove your main plot settingโ€”

Customization

CommandDescriptionAliases
/plot alias <name>Set a custom alias for your plotโ€”
/plot alias removeRemove plot aliasโ€”
/plot wall <block>Change wall blocks (below border)/plot wand, /plot side
/plot rand <block>Change border blocks (top layer)/plot border, /plot edge

Confirmation

CommandDescription
/plot confirmConfirm a pending action (purchase, transfer, delete)
/plot cancelCancel a pending action
/plot helpShow available commands (filtered by permissions)

๐Ÿค Trust System

Control who can interact with your plot using the trust system. There are three access levels:

๐Ÿ‘‘

Owner

Full control over the plot. Can manage trust, flags, and settings.

๐Ÿ› ๏ธ

Trusted

Can build and modify blocks on the plot.

๐Ÿšซ

Denied

Completely blocked from accessing the plot.

CommandDescription
/plot trust <Player>Give a player build access
/plot untrust <Player>Remove build access
/plot deny <Player>Ban a player from your plot
/plot undeny <Player>Unban a player from your plot
/plot setowner <Player>Transfer plot ownership

๐Ÿ”— Plot Merging

Combine adjacent plots to create massive building areas. You must own both plots to merge them.

CommandDescription
/plot merge northMerge with the plot to the north
/plot merge southMerge with the plot to the south
/plot merge eastMerge with the plot to the east
/plot merge westMerge with the plot to the west
/plot unmergeSeparate merged plots (admin)
๐Ÿ’ก How Merging Works When plots are merged, the road between them is removed and borders are updated automatically. Custom border blocks are preserved. Merged plots share a single home position set via the primary plot.

๐Ÿณ๏ธ Plot Flags

Customize individual plot behavior with flags.

CommandDescription
/plot flag set pvp trueEnable PvP on your plot
/plot flag set pvp falseDisable PvP on your plot
/plot flag set pve falseDisable mob damage on your plot
/plot flag use <blocktype>Allow all players to interact with a block type
/plot flag remove <flag>Remove a flag
/plot flag listShow all active flags
/plot flag infoShow flag information

๐ŸŽจ Plot Customization

Wall & Border Blocks

Players can personalize their plots by changing wall and border blocks:

# Examples
/plot wall stone
/plot wall plank_tropical
/plot rand rock_gold_brick_half
/plot rand glass
๐Ÿ”‘ Block Permissions Block usage can be restricted via LuckPerms: plot.wallblock.<blockname> and plot.borderblock.<blockname>. Use wildcards (plot.wallblock.*) to allow all blocks.

Plot Aliases

Give your plot a memorable name instead of coordinates:

/plot alias my-castle       # Set alias
/plot home my-castle        # Navigate by alias
/plot alias remove           # Remove alias

Aliases are max 25 characters, alphanumeric + underscore/dash. A blacklist prevents inappropriate names.

๐Ÿ’ฐ Economy System

How It Works

Players receive a configurable number of free plots (default: 4). After that, each additional plot costs money.

# Example flow: Player claims their 5th plot
Player: /plot claim
System: "This will cost: 1000$"
System: "Use /plot confirm to proceed or /plot cancel to abort"

Player: /plot confirm
System: "Successfully claimed plot 5;3! Cost: 1000$"

Pricing Modes

ModeDescriptionExample
FixedEvery plot costs the same$1000, $1000, $1000โ€ฆ
ProgressivePrices increase per plot$1000, $2000, $3000โ€ฆ
FreeSet cost to 0All plots free

๐Ÿฆ Economy Providers

SmartPlots supports 5 economy providers. Set your preference in config.json:

"preferredEconomyProvider": "auto"
// Options: "auto", "economysystem", "vaultunlocked", "ecotale", "hyvault", "none"
ProviderStatusNotes
EconomySystemโœ… Fully testedOriginal implementation
VaultUnlockedโœ… Fully testedCross-platform Vault-style API (2.18.0+)
Ecotaleโš ๏ธ UntestedAuto rate-limit handling (50 burst, 10 ops/sec)
HyVaultโš ๏ธ UntestedUniversal economy bridge
Noneโœ… WorksFree mode โ€” all features free

With "auto", SmartPlots detects providers in this order: EconomySystem โ†’ VaultUnlocked โ†’ HyVault โ†’ Ecotale โ†’ None

๐ŸŽ Free Plot Tiers

Reward players and VIP ranks with different amounts of free plots:

PermissionFree PlotsRecommended For
plot.claim.free.unlimitedโˆžAdmins & Staff
plot.claim.free.2525Premium VIP
plot.claim.free.1010VIP Members
plot.claim.free.55Supporters
plot.claim.free.NNAny custom amount
(no permission)4Regular Players
# LuckPerms setup examples
/lp group vip permission set plot.claim.free.10 true
/lp group premium permission set plot.claim.free.25 true
/lp group admin permission set plot.claim.free.unlimited true
๐Ÿ’ก Monetization Tip Perfect for server shops! Sell VIP ranks with more free plots. Progressive pricing encourages players to upgrade.

๐Ÿ” Permissions

Player Permissions

PermissionCommandDescription
plot.player.info/plot infoView plot information
plot.player.claim/plot claimClaim a plot
plot.player.auto/plot autoAuto-claim nearest free plot
plot.player.delete/plot deleteDelete your plot
plot.player.reset/plot resetReset plot terrain
plot.player.list/plot listList your plots
plot.player.home/plot homeTeleport to a plot
plot.player.sethome/plot sethomeSet plot spawn point
plot.player.setmain/plot setmainSet/remove main plot
plot.player.alias/plot aliasSet/remove plot alias
plot.player.merge/plot mergeMerge plots together
plot.player.trust/plot trustManage trust system
plot.player.flag/plot flagManage plot flags
plot.player.setowner/plot setownerTransfer ownership
plot.player.wall/plot wallChange wall blocks
plot.player.rand/plot randChange border blocks

Admin Bypass Permissions

PermissionDescription
plot.admin.bypass.buildBypass build protection on any plot
plot.admin.bypass.trustManage trust on any plot
plot.admin.bypass.mergeMerge/unmerge any plots
plot.admin.bypass.resetReset any plot
plot.admin.bypass.deleteDelete any plot
plot.admin.bypass.transferInstant transfers without confirmation
plot.admin.bypass.wallChange walls on any plot
plot.admin.bypass.randChange borders on any plot
smartplots.adminGlobal admin bypass for all protections

Wildcards

PermissionDescription
plot.*All plot permissions
plot.player.*All player permissions
plot.admin.*All admin permissions
plot.admin.bypass.*All bypass permissions
plot.wallblock.*All wall block types
plot.borderblock.*All border block types

Example LuckPerms Setup

# Default players โ€” all basic commands
/lp group default permission set plot.player.* true

# VIP โ€” 10 free plots, all blocks
/lp group vip permission set plot.player.* true
/lp group vip permission set plot.claim.free.10 true
/lp group vip permission set plot.wallblock.* true
/lp group vip permission set plot.borderblock.* true

# Moderator โ€” bypass for other plots
/lp group mod permission set plot.admin.bypass.* true
/lp group mod permission set smartplots.admin true

# Administrator โ€” everything
/lp group admin permission set plot.* true
/lp group admin permission set smartplots.admin true

โš™๏ธ Configuration

The config.json is auto-generated on first start. Here are the key settings:

Economy Settings

OptionDefaultDescription
economyPlotCost1000.0Cost per plot after free plots
economyProgressiveCostsfalseEnable progressive cost increase
economyDefaultFreePlots4Free plots per player (no permission needed)
economyMergeCost10000.0Cost for merging two plots
preferredEconomyProvider"auto"Economy provider preference

Plot Settings

OptionDefaultDescription
plotSize32Size of each plot in blocks
roadWidth3Width of roads between plots
borderWidth1Width of plot borders
floorY64Y-coordinate of plot floor

Teleport Settings

OptionDefaultDescription
teleportWarmupSeconds3Warmup time before teleport
cancelTeleportOnDamagetrueCancel teleport when taking damage

Other Settings

OptionDefaultDescription
language"de"Server language (en or de)
storageType"H2"Database type (H2, SQLite, MySQL)

Full Example

{
  "plotSize": 32,
  "roadWidth": 3,
  "borderWidth": 1,
  "floorY": 64,
  "economyPlotCost": 1000.0,
  "economyProgressiveCosts": false,
  "economyDefaultFreePlots": 4,
  "economyMergeCost": 10000.0,
  "preferredEconomyProvider": "auto",
  "teleportWarmupSeconds": 3,
  "cancelTeleportOnDamage": true,
  "language": "en",
  "storageType": "H2"
}

๐Ÿ’พ Database

Storage Options

๐Ÿ“ฆ

H2 (Default)

Embedded database. Zero configuration. Perfect for small to medium servers.

๐Ÿชถ

SQLite

Lightweight file-based database. Good alternative to H2.

๐Ÿฌ

MySQL

External database. Recommended for large servers and networks.

MySQL Configuration

{
  "storageType": "MySQL",
  "mysqlHost": "localhost",
  "mysqlPort": 3306,
  "mysqlDatabase": "plots",
  "mysqlUsername": "root",
  "mysqlPassword": "password"
}

Database Migration

Migrate between storage backends with the admin command:

/plot port sqlite    # Migrate to SQLite
๐Ÿ”’ Automatic Backups SmartPlots creates automatic backups before any migration. Last 5 backups are kept in server/mods/de.smartcodelabs_SmartPlots/backups/

๐Ÿ› ๏ธ Admin Commands

CommandPermissionDescription
/plot setowner <player>plot.admin.bypass.transferSet plot owner (instant, no confirmation)
/plot resetplot.admin.bypass.resetReset any plot's terrain
/plot deleteplot.admin.bypass.deleteDelete any plot
/plot unmergeplot.admin.unmergeSeparate merged plots
/plot fixmergeplot.superadmin.fixmergeFix broken merge data
/plot port sqliteplot.admin.portDBMigrate database

๐Ÿ›ก๏ธ Protection System

SmartPlots provides comprehensive protection for all plots:

๐Ÿงฑ

Block Protection

Only owners and trusted players can place or break blocks.

๐ŸŒŠ

Fluid Protection

Water buckets and fluids blocked on foreign plots.

๐ŸŒพ

Crop Protection

Harvesting plants, flowers, and crops blocked on foreign plots.

๐Ÿ”‘

Interaction Protection

F-Key interactions (pickup flowers, mushrooms, pebbles) blocked.

โš”๏ธ

PvP Control

Per-plot PvP toggle via flags.

๐Ÿชค

Capture Crate Protection

No capturing or releasing NPCs on foreign plots.

๐Ÿ’ก Use-Flag Override Plot owners can selectively allow interactions with /plot flag use <blocktype>. Example: /plot flag use chest allows everyone to open chests.

๐Ÿ“‹ Changelog

v1.1.0 โ€” 2026-02-15

๐Ÿš€ Major Update โ€” Economy Multi-Provider & World Fix

  • Economy Multi-Provider โ€” Support for EconomySystem, VaultUnlocked, Ecotale, HyVault, None
  • Sky/Environment Fix โ€” Plot worlds now display proper sky and lighting
  • Enhanced Protection โ€” F-Key, water bucket, crop, capture crate, field protection
  • New Commands โ€” /plot sethome, setmain, removemain, alias, wall, rand, flag use
  • SQLite Support โ€” New storage backend with automatic backups and migrations
  • Player Profiles โ€” UUID-to-Name mapping with name history
  • Many bug fixes: translations, LuckPerms, merge operations, entity cleanup
v1.0.5 โ€” 2026-02-04
  • /plot wall โ€” Change wall blocks below the border
  • /plot rand โ€” Change border blocks (top layer)
  • /plot sethome โ€” Set custom spawn point
  • Wall and border are now separate customizable elements
  • Translations fixed, SLF4J conflicts resolved, merge stability improved
v1.0.2 โ€” 2026-01-30
  • Economy settings now configurable via config.json
  • Language setting added to config
v1.0.1 โ€” Initial Release
  • Core plot functionality: claiming, merging, management
  • LuckPerms & TheEconomy integration
  • Translation system (EN/DE)
  • Database support (H2/MySQL)

โ“ FAQ & Troubleshooting

"No free plots found in search radius!"

The /plot auto search area is limited. Move to a different area or use /plot claim manually on an unclaimed plot.

"This plot is already claimed!"

Someone owns this plot. Use /plot info to see the owner, or find another plot.

"Insufficient funds!"

You've used all your free plots and don't have enough money. Earn more or ask an admin about VIP ranks with more free plots.

"You are denied access to this plot!"

The plot owner has denied you. Contact them to be removed from the deny list.

Teleport gets cancelled

Stand still for the warmup period (default 3 seconds). Don't move or take damage.

Black sky in plot world

Update to v1.1.0+. The PlotEnvironmentFixer automatically sets the correct environment for proper sky rendering.

๐Ÿ“ž Support

๐Ÿ’ฌ

Discord

Community support via Discord: Blacky888

๐Ÿ“š

Documentation

This documentation covers all features and settings.

๐Ÿ›

Bug Reports

Bug fix guarantee. Report issues via Discord.

๐Ÿ”„

Updates

Regular updates with new features and improvements.