Overview
This guide explains how to create custom achievements tailored to your application’s needs. Custom achievements enable you to reward users for specific behaviors, milestones, or accomplishments unique to your platform.
Custom achievements should align with your platform’s goals and provide meaningful recognition for user accomplishments.
Achievement Design
Planning Your Achievement
Before creating an achievement, consider:
- Purpose: What behavior are you rewarding?
- Requirements: What must users do to earn it?
- Rarity: How difficult should it be?
- Rewards: What points/boost should it grant?
- Verification: How will you verify completion?
Achievement Categories
Choose the most appropriate category:
- DeFi: Financial protocol interactions
- NFT: NFT-related activities
- Social: Community engagement
- Trading: Trading performance
- Governance: DAO participation
- Gaming: Gaming achievements
- Identity: Identity verification
- Trust: Trust-building activities
Rarity Guidelines
Requirement Types
1. Score Threshold
Require users to reach a minimum score.
2. Category Score
Require minimum score in a specific category.
3. Activity Count
Require a certain number of activities.
4. Time-Based
Require users to be active for a certain duration.
5. Composite
Combine multiple requirements.
6. Proof-Based
Require zero-knowledge proof verification.
Complete Creation Example
DeFi Protocol Achievement
Image Guidelines
- Format: PNG with transparency
- Size: 512x512 pixels minimum
- Style: Consistent with your brand
- Quality: High resolution for badges
- Storage: IPFS or decentralized storage
Creating Badge Images
Description Guidelines
- Length: 50-150 characters
- Clarity: Clear requirements
- Tone: Encouraging and positive
- Action: Describe what to do
- Benefit: Mention rewards
Verification Setup
Manual Verification
For achievements requiring manual review:
Automatic Verification
For automated achievements:
Testing Custom Achievements
Testing on Testnet
Batch Achievement Creation
Creating Multiple Achievements
Best Practices
Achievement Design
- Progressive Difficulty: Create series with increasing difficulty
- Clear Requirements: Make requirements obvious
- Balanced Rewards: Match rewards to difficulty
- Category Alignment: Ensure category matches activity
- Unique Names: Use descriptive, unique names
Implementation
- Test Thoroughly: Test on testnet first
- Monitor Events: Track creation and claim events
- Update Documentation: Document custom achievements
- User Communication: Announce new achievements
- Gather Feedback: Iterate based on user feedback
Verification
- Secure Verification: Protect verification endpoints
- Prevent Gaming: Implement anti-cheat measures
- Audit Logs: Maintain verification logs
- Regular Reviews: Review achievement completion
- Fair Distribution: Ensure fair access