Realms & Worlds
Draft. The two realm types in Akkadia and how they differ.
Overview
Akkadia has two types of realms where players can build and interact:
| Type | Contract | Ownership | Purpose |
|---|---|---|---|
| Primary Realm | chunk | NFT per chunk | Official curated spaces |
| Community Realm | personal_world | Individual player | Player-created private spaces |
Primary Realms
Primary Realms are official Akkadia spaces managed by the team, designed to help players learn and explore together.
Key characteristics:
- Curated, official worlds created by admin
- Land divided into chunks (discrete areas)
- Each chunk is a GRC721 NFT
- Chunks minted by admin to players
- Permanent shared multiplayer environments
Permissions:
- Chunk owner has all permissions for their chunk
- Admin has all permissions everywhere
- World masters have all permissions across all chunks in a realm
- Editor role can install/uninstall blocks (unlimited assignments by default)
- Custom roles can be created by admin
Economics:
- Chunk ownership via NFT (admin mints)
- No direct purchase mechanism (controlled distribution)
See Chunk for details.
Community Realms
Community Realms are player-created worlds where you have full control over your own space.
Key characteristics:
- Created by any player
- First realm with default biome is free
- Owner has full control over the entire realm
- Can be expanded by paying fees
- Visibility toggle for public/private listing
Permissions:
- Owner has all permissions
- Editor role can install/uninstall blocks (max 5 per realm by default)
- Custom roles can be created by admin
Economics:
- Creation/expansion fees split: Fee Collector (5%) + Protocol (95%)
See Personal World for details.
Comparison
| Aspect | Primary Realm | Community Realm |
|---|---|---|
| Creation | Admin only | Anyone |
| Ownership | Per-chunk NFT | Whole realm |
| Cost | Admin-controlled | Biome-based fees |
| Expansion | Fixed chunks | Pay to expand |
| Master role | Yes (realm-level) | No |
| Editor limit | Unlimited by default | Max 5 by default |
| Visibility | Always visible | Configurable |
Permission System
Both realm types share a similar three-layer permission architecture:
- Permissions - Atomic actions (e.g.,
block:install,block:uninstall) - Roles - Collections of permissions (e.g., “editor” role)
- Role Assignments - Per-realm or per-chunk grants to users
The key difference is the permission check hierarchy:
Community Realm:
- Owner → all permissions
- Role holders → role-specific permissions
Note: Admin is NOT in the Community Realm permission check. Admin can grant/revoke roles and delete worlds, but cannot directly build without a role.
Primary Realm (per chunk):
- Chunk owner → all permissions
- Admin → all permissions
- Realm master → all permissions for realm
- Role holders → role-specific permissions
What’s On-Chain
| Data | Primary Realm | Community Realm |
|---|---|---|
| Realm/chunk definitions | Yes | Yes |
| Ownership | NFT (GRC721) | Owner address |
| Permissions & roles | Yes | Yes |
| Role assignments | Per-chunk | Per-realm |
| Realm masters | Yes | No |
| Biome/size config | Yes | Yes |
Building in Realms
Both realm types use the Block contract for building:
- Player must have
block:installpermission - Player must have block in inventory (or use system block)
- One block per position
- Installation burns inventory token and records installer
See Block for building mechanics and economics.
Related
- Chunk - Primary Realm contract details
- Personal World - Community Realm contract details
- Block - Building content
- Architecture - Contract dependencies