Skip to Content
ContractsArchitecture

Architecture

Draft. How contracts are organized and how we think about responsibility boundaries.

Modular Layout

contracts/ is a set of domain modules, not a single monolith:

ModuleDomainToken Standard
adminRoles & access control-
acrCommunity tokenGRC20
userIdentity & profiles-
chunkSystem worlds & landGRC721
personal_worldPrivate Realms-
blockBuilding contentGRC1155

Contract Dependencies

admin ← (all contracts depend on admin for roles) ├── acr (minting permissions) ├── user (admin property setting) ├── chunk (world creation, chunk minting, verifiers) ├── personal_world (fee distribution, world deletion) └── block (system block creation, config) chunk ← block (install/uninstall permission checks) personal_world ← block (install/uninstall permission checks)

Design Intent

  • Keep fast-changing logic (balance/UX) off-chain where possible.
  • Keep core verifiable rules (permissions/ownership/settlement) on-chain.

What’s On-Chain

  • Ownership and transfers (NFTs, tokens)
  • Permission checks (who can build where)
  • Fee distribution (transparent revenue splits)
  • State verification (chunk verifiers)

What’s Off-Chain

  • Game rendering and physics
  • Activity tracking and analytics
  • Mint request generation
  • User interface and experience

Upgrades

  • Contract upgrades are tightly coupled with security.
  • See Security for:
    • Who can upgrade
    • What the process is
    • How emergencies are handled
Last updated on
Docsv1.0.10