Mission System
The mission system is the primary engagement mechanism — users participate in gamified tasks, challenges, and tournaments to earn SUDIGITAL tokens and XP.
Mission Types
| Type | Description | Difficulty |
|---|---|---|
| Task | Complete specific actions | Easy-Hard |
| Challenge | Skill-based competitions | Easy-Hard |
| Quiz | Knowledge tests | Easy-Hard |
| Tournament | Multi-round competitions | Easy-Hard |
| Prediction | Outcome forecasting | Easy-Hard |
| Social | Community engagement | Easy-Hard |
Fair Reward Distribution
80% Winners / 15% NFT Holders / 5% Ecosystem
Mission Pool: $1,000 (example)
├─ Winners (80%): $800 split among participants
├─ NFT Holders (15%): $150 distributed to NFT share holders
└─ Ecosystem (5%): $50 burned + development fund| Pool | Basis Points | Percentage |
|---|---|---|
| Winners | 8,000 | 80% |
| NFT ID Holders | 1,500 | 15% |
| Ecosystem Fund | 500 | 5% |
This distribution is enforced on-chain — not configurable per mission.
Mission Parameters
EVM Constraints
| Parameter | Value |
|---|---|
| Min Entry Fee | 0.001 ETH |
| Max Entry Fee | 1,000 ETH |
| Min Participants | 2 |
| Max Participants | 10,000 |
| Min Winners | 1 |
| Max Winners | 100 |
| Min Duration | 5 minutes |
| Max Duration | 30 days |
| Auto-Start Threshold | 50% of max participants |
| Max Reward Pool | 1,000 ETH |
Solana Constraints
| Parameter | Value |
|---|---|
| Max Rank | 100 |
| Proof Validity | 300 seconds (defined but not enforced in code) |
| Max Batch Size | 10 (for batch operations) |
Note: Solana mission escrow uses native SOL (lamports), not SPL tokens. EVM supports both ETH and ERC-20.
Architecture
Missions use a hybrid on-chain/off-chain architecture:
- On-chain: Escrow deposits, winner recording, reward claims, holder reward distribution
- Off-chain: Mission creation, participant tracking, leaderboards, complex game logic
Backend creates mission (PostgreSQL)
↓
Creator deposits escrow (on-chain)
↓
Users participate (off-chain tracking)
↓
Backend determines winners (game logic)
↓
Backend signs winner proofs (ECDSA/Ed25519)
↓
Winners recorded on-chain (proof verification)
↓
Winners claim rewards (on-chain, self-service)
↓
NFT holders claim their 15% share (on-chain)On-Chain Functions
| EVM (MissionModule) | Solana (sudigital-mission) |
|---|---|
depositEscrow(missionId, paymentToken, amount, expiresAt) | deposit_escrow(mission_id, total_amount) |
recordWinner(proof) | record_winner(mission_id, winner, rank, reward_amount, proof) |
claimReward(missionId) | claim_reward(mission_id) |
refundEscrow(missionId) | refund_escrow(mission_id) |
setHolderShares(missionId, holders[], shares[]) | set_holder_share(mission_id, holder, shares) |
claimHolderReward(missionId) | claim_holder_reward(mission_id) |
batchRecordWinners(proofs[]) (max 100) | batch_set_holder_shares(mission_id, holders) |
EVM supports both ETH and ERC-20 payments — pass address(0) as paymentToken for native ETH, or any ERC-20 address.
XP Rewards from Missions
Missions award XP that contributes to the leveling system:
| Action | Base XP |
|---|---|
| Create a Mission | 100 XP |
| Participate in a Mission | 75 XP |
| Win a Mission | 500 XP |
XP determines your level (0-10) and multiplier (1.0x-2.0x), which amplifies future mission rewards.
Security
- Rate Limiting — 10 deposits/hour, 50/day; 20 claims/hour, 100/day
- Circuit Breaker — auto-triggers after 5 consecutive failures, 1-hour cooldown
- Anti-Replay — monotonically increasing nonces per user per mission
- Pull-Payment — failed ETH transfers stored for later withdrawal (EVM)
- Backend-Signed Proofs — only the trusted backend authority can authorize winner recording
Related
- NFT Ecosystem — how NFT holders earn from missions
- Staking & Rewards — how rewards compound with staking
- Blockchain Security — detailed security architecture