Setup Walkthrough
Day one to first eviction: every command in the order you actually run it, with links to the detail pages.
This page is the whole plugin in one read. It walks the mall from an empty build to a paying tenant, then through every way that tenant can leave. Each part is a summary with the exact commands, and a link to the page that covers it in depth.
New install? Do Installation first. This page starts from a running server with the plugin loaded.
The path at a glance
| Stage | You run | Result |
|---|---|---|
| 1. Mark out plots | /sm wand · /sm create | A protected region exists |
| 2. Save the reset state | /sm savepreset | The plot can be cleaned back to this |
| 3. Price it | /sm setrent / /sm setprice | Players can claim it |
| 4. Signpost it | /sm setwarp | Players can find it |
| 5. Player claims it | (they use /sm) | Rent starts ticking |
| 6. Rent runs itself | (automatic) | Paid, or overdue, or auto-evicted |
| 7. Remove someone | /sm forceevict · /sm viewrequests | Plot is cleared and re-listed |
Part 1: Mark out your first plot
A plot is a 3D box of your world. Everything else hangs off it.
Select the two corners
Left-click one corner block, right-click the opposite corner. The two clicks define the box, including its height, so pick a low corner and a high corner.
Create the plot
/sm create shop1shop1 is the plot ID. You will type it in most later commands, so keep IDs short and
predictable (shop1, shop2, food1).
Save its reset state
/sm savepreset shop1This snapshots the blocks as they are now. Whenever the plot is cleared (eviction, reset) it is restored to exactly this. Do it before anyone rents it, on an empty or shell build.
Check your work
/sm showplotsNearby plot boundaries are drawn with particles. Wrong size? Re-select with the wand and run
/sm redefine shop1.
Skipping /sm savepreset means an eviction has nothing to restore, so the plot keeps
whatever the last tenant left behind. Save a preset on every plot you create.
Protection is automatic from the moment the plot exists. Only the owner and members can build, open chests, or use doors inside it.
Read more: Plots covers redefining, deleting, members, PVP, and the WorldGuard coexistence layer.
Part 2: Put it on the market
A plot with no price cannot be claimed. Pick one of two ways to price it.
Type the number on each plot.
/sm setrent shop1 500 # rent, charged every cycle
/sm setprice shop1 25000 # one-time purchase
/sm delist shop1 # take both listings downA plot can carry both at once: players then choose rent or buy.
Occupied plot? The plain commands refuse it. Use /sm forcesetrent or /sm forcesetprice
to change a price under a live tenant.
Better for a big mall. Name a price once, apply it everywhere.
/sm tier create rent small 500
/sm tier create buy small 25000
/sm settier shop1 rent small
/sm settier shop1 buy smallPlots remember their tier. Change the tier price and every plot on it re-prices itself:
/sm tier set rent small 650Rent tiers and buy tiers are two separate lists, so the same name can mean both prices.
Read more: Price tiers for how tiers bind to plots and when a plot falls off a tier.
Part 3: Make the mall findable
Optional, but a shop nobody can reach earns nothing.
| What | Command | Notes |
|---|---|---|
| Mall warps | /sm setwarp entrance | Fixed teleport points you control. Players browse them with /sm warps. |
| Player shop warps | (tenant-side) | Tenants advertise their own shop, browsed with /sm pwarps. |
| Holograms | /sm hologram | Floating text above a plot. Needs DecentHolograms to render. |
| Ranks | (edit ranks.yml) | Paid tiers that raise a player's plot limit and hologram lines. |
Read more: Warps & Holograms and Player Ranks.
Part 4: A player claims the plot
Nothing here is on you, but it helps to know what they see.
They browse
/sm opens the main menu. Browse Plots lists everything currently listed.
They rent or buy
Renting starts a rent cycle. Buying hands them the plot outright, and they can then sub-let it to another player as a landlord.
They set up shop
/sm setentrance sets where visitors land, QuickShop chests sell the goods, and a player
warp puts the shop in the directory.
Read more: Running Your Shop is the same journey written for the tenant, and Leasing covers player-to-player sub-letting.
Part 5: Rent runs on its own
Once a plot is rented the plugin bills it on a timer, no admin action needed.
Key (under plots:) | Default | What it does |
|---|---|---|
default-rent-interval | 7 | Days between charges. |
overdue-grace-period | 3 | Days a tenant may be late before auto-eviction. 0 evicts on the first missed check. |
overdue-charge-type | PERCENTAGE | Late-fee model: PERCENTAGE or FLAT. |
overdue-charge-amount | 10.0 | Late-fee value. |
What the tenant does:
/sm pay [plot]pays the current cycle by hand, base rent only, no late fee./sm autorenew on|offtoggles automatic payment. It is on by default./sm renthistoryshows their last 10 payments.
What happens when they do not pay:
- The charge fails, the tenant gets an overdue warning and a late fee is queued.
- The grace period counts down.
- Grace runs out, the next check auto-evicts them, the plot resets to its preset and re-lists itself.
Read more: Rent & Eviction has the full billing story, including maintenance fees paid by sub-let landlords.
Part 6: Removing someone
Three different exits, depending on who is asking.
6a. Force eviction (admin, no request needed)
/sm forceevict <plot> [tenant|owner|all] [confirm]/sm forceevict shop1 opens a small menu with up to three buttons:
| Button | Effect |
|---|---|
| Evict tenant | Removes the tenant. On a sub-let plot the owner keeps it. |
| Evict owner | Removes the owner. A tenant stays on and now pays the server. |
| Evict everyone | Clears both, plot goes back to server-owned. |
Each button needs a shift-click, then a second click to confirm within 5 seconds, then a typed reason in chat. The reason lands in the audit log.
Two steps, text only:
/sm forceevict shop1 tenant # previews and arms it
/sm forceevict shop1 tenant confirm # runs it, within 10 secondsUse cancel instead of confirm to drop it. The console path takes no reason.
Force eviction clears the plot and its occupants immediately. Item recovery still runs, and the action is written to the audit log.
6b. Eviction requests (owner asks an admin)
A player who owns a plot and sub-lets it cannot evict their own tenant. They file a request and an admin decides. This keeps a human in the loop on player-to-player disputes.
The owner submits
From their plot menu they click Request Eviction and type a reason in chat. Requires
leasing.allow-owner-eviction-request (on by default), and a cooldown
(leasing.eviction-request-cooldown, default 10s) stops queue spam.
The owner can add reasons
Clicking the button again while a request is pending adds another reason to the same request instead of opening a second one.
The admin reviews
/sm viewrequestsEach entry shows the owner, the tenant, every reason given, and a button to teleport to the plot.
The admin approves or denies
Approve evicts the tenant at once and tells the owner. Deny asks the admin for a reason, then notifies both sides. The tenant is never removed until an admin approves.
6c. After anyone leaves
| Thing | How it works |
|---|---|
| Item recovery | The evicted player's chest loot and placed blocks are saved. They reclaim with /sm claim-evicted, kept for eviction.recovery-expiration-days (default 30). |
| Re-rent policy | eviction.rerent-policy decides if they can come back: ALLOW, SAME_PLOT_TIMED, SAME_PLOT_PERMANENT, SAME_OWNER_TIMED, SAME_OWNER_PERMANENT. |
| Pardon | An owner lifts a block early with /sm pardon <player>. |
| Re-listing | leasing.auto-relist-on-tenant-leave (default on) puts a sub-let plot straight back on the market. |
Read more: Item recovery, Re-rent rules, and Eviction requests.
Part 7: Running it day to day
Admin GUI
/sm admin manages any plot: prices, status, occupants, search by name or player.
Audit log
/sm audit shows who did what, including every eviction and price change.
Discord
Mirror audit events, new listings, and evictions to a webhook channel.
Menus
Every menu's title, size, slots, and items are editable YAML.
Messages
25 bundled languages, all editable, plus your own.
Storage
Start on YAML, move to SQLite or MySQL later with /sm migrate.
/sm reload applies config, message, menu, and tier changes live. No restart needed.
Setup checklist
Full command reference
Everything above, and the rest, lives in one table on the Commands page. Stuck on something specific? Try the FAQ or Support.