Skip to main content

Registering a Parcel

Registration means claiming a piece of the world map as your on-chain parcel. You draw a polygon on the merca.earth map, the app validates its geometry and computes a price, and you confirm a Sui transaction that mints the parcel on-chain. Once registered, the parcel appears on the map for everyone and becomes yours to name, expand, or trade.

Overview

The registration process has three major stages: drawing geometry on the map, validating it client-side and decomposing it into convex parts, and submitting an on-chain transaction.

Step 1 — Enter Drawing Mode

Open the sidebar and navigate to the Register panel. Click Start Drawing. The cursor changes to a crosshair, and the app enters the drawing_patch phase. You do not need a connected wallet yet — draw first and connect when ready to submit.

In drawing mode, map clicks place vertices instead of selecting parcels. The sidebar shows live stats: Points count and running Area estimate (once you have at least three vertices).

Tip: Zoom to street level before drawing. Finer zoom gives more precision for placing vertices.

Step 2 — Drawing Your Polygon

Click on the map to place vertices one by one:

  • After two points, a line segment appears.
  • After three or more, the shape closes automatically and shows a shaded fill.

Adjusting Vertices

Hover over any placed vertex — the cursor changes to a grab hand. Drag to reposition. The outline and area update in real time.

Snapping to Existing Parcels

When you draw near an already-registered parcel, the app offers snap assistance:

  • Vertex snap — within 22 pixels of an existing vertex, your click locks to that exact on-chain coordinate.
  • Edge snap — within 16 pixels of an existing edge, your click locks to the nearest valid grid point along that edge.

Snapping matters because on-chain geometry uses a fixed-point integer grid. Shared boundaries must be identical down to the last digit. The snap system guarantees this. Snapped shared edges are also required for future expand and rebalance operations.

Tip: When drawing next to existing parcels, always snap to their boundary vertices. Freehand points nearby cause tiny overlaps or gaps that fail validation.

Step 3 — Validation Rules

The app validates your polygon continuously. If a rule is violated, a warning appears in the sidebar with a fix suggestion. Hover over highlighted vertices or orange edges for contextual tooltips.

A valid polygon must satisfy:

  • No self-intersections. Edges must not cross. The app highlights offending edges.
  • Minimum area. Must meet the level's minimum (shown in the sidebar, e.g., "10 km^2 — 500 km^2").
  • Maximum area. Must not exceed the level's maximum.
  • Minimum edge length. Every edge must be at least 1 meter on-chain.
  • Compactness. Extremely thin or elongated shapes are rejected.
  • No overlap. Must not overlap any existing parcel at the same hierarchy level. The app shows conflicting parcel IDs if a collision is found.
  • Convex decomposition. The protocol stores polygons as a union of convex parts (up to 10). The app decomposes your shape automatically. If decomposition fails (shape too complex), simplify the outline — fewer vertices, less concavity.

The following diagram shows the full validation pipeline that runs continuously while you draw:

While any rule is violated, the Complete button stays disabled.

Step 4 — Complete and Preview

When validation passes, press Complete in the bottom map bar. The app shows a registration card:

FieldDescription
LevelHierarchy level (e.g., District, Region) based on the parcel's area.
Total AreaArea in square meters or square kilometers.
PerimeterTotal boundary length.
Convex partsNumber of convex sub-polygons (visible on hover).
Total PriceSUI cost to register.
Hierarchy PoolPortion distributed to owners of parent-level parcels covering this area.

The price is P=A×RP = A \times R, where AA is the parcel area and RR is the level's price per km². Fresh registrations carry no premium markup — the multiplier starts at 1x and escalates only after buyouts.

Tip: If the price or area looks wrong, press X to return to drawing mode and adjust.

Step 5 — Confirm the Transaction

Click REGISTER on the preview card. If your wallet is not connected, the app prompts you to sign in first.

What happens during submission:

  1. Transaction construction. The app builds a Sui Move call to the Market V2 contract, encoding your polygon's convex parts (integer X/Y coordinate arrays), the index ID, and a payment coin split from your balance.
  2. Wallet approval. Your wallet shows a confirmation dialog with transaction details and gas estimate. Review and approve.
  3. On-chain execution. The Sui network validates geometry on-chain (SAT collision detection, area enforcement, multipart topology) and mints the parcel. Gas fees are typically a fraction of a SUI.
  4. Confirmation. A success toast appears, and the drawing state resets.

If the transaction fails (e.g., someone registered an overlapping parcel between your preview and submit), the app shows the error and returns you to the preview to adjust or retry.

The sidebar displays a step indicator during submission: preparing the transaction, waiting for signature, waiting for confirmation. Keep the tab open until complete.

After Registration

Once confirmed:

  • Your parcel appears on the map with a thicker border indicating ownership.
  • The parcel is listed in your polygon list in the sidebar.
  • Metadata is available. Name your parcel, add a description, and attach a sketch overlay. See Metadata and Naming.
  • The parcel enters the market. It can be expanded, rebalanced, or bought by another user. See Buying a Parcel and Managing Your Land.

Tips for Drawing Good Polygons

  • Use fewer vertices. Simpler shapes decompose into fewer convex parts and cost less on-chain. Four to eight vertices cover most practical shapes.
  • Avoid narrow spikes. Thin protrusions fail the compactness check and are hard to decompose.
  • Snap shared boundaries. If your parcel borders an existing one, snap every shared vertex. Required for future expand and rebalance operations.
  • Stay within the level's area range. Check the sidebar tag before you finalize.
  • Zoom in for precision. At wide zoom, a single pixel covers hundreds of meters. Zoom to street level for accurate placement.