Character Card V3
Understanding the Character Card V3 format - the standard for portable AI character data.
What is Character Card V3?
Character Card V3 (also called "Chara" format) is the industry-standard format for AI character data. It embeds complete character information inside PNG image files, making characters portable across different platforms.
Key Features
- Character data embedded in PNG image files
- Human-readable and machine-parseable
- Cross-platform compatibility
- Supports advanced features (lorebooks, extensions, etc.)
- No vendor lock-in - your characters are truly yours
Why PNG Files?
- Character avatar and data in single file
- Easy to share (just send an image)
- Works everywhere (social media, Discord, forums)
- Data is invisible to casual viewers
- Standard format all platforms support
V3 Specification
Character Card V3 extends earlier versions with support for advanced features.
V3 Improvements
- Lorebooks: Embedded world information
- Multiple Greetings: Alternative start messages
- Extensions: Custom data and scripts
- Regex Scripts: Pattern-based behaviors
- Group Chats: Multi-character metadata
- Assets: Additional images and files
V3 vs Earlier Versions
V1: Basic character info only V2: Added scenario, example dialogues V3: Full feature support (lorebooks, extensions, scripts)Tiny Land uses V3 for all exports but can import V1 and V2 cards (auto-upgraded to V3).
Data Structure
V3 cards contain a JSON structure with all character information.
Core Fields
{
"spec": "chara_card_v3",
"spec_version": "3.0",
"data": {
"name": "Character Name",
"description": "Brief description",
"personality": "Detailed personality",
"scenario": "Setting/context",
"first_mes": "First greeting",
"mes_example": "Example dialogues",
"creator_notes": "Notes from creator",
"system_prompt": "Custom system prompt",
"post_history_instructions": "Post-history rules",
"alternate_greetings": ["Alt 1", "Alt 2"],
"tags": ["tag1", "tag2"],
"creator": "Creator name",
"character_version": "1.0"
}
}Advanced Fields
"character_book": {
"entries": [
{
"keys": ["trigger", "keywords"],
"content": "Lorebook entry content",
"priority": 10,
"enabled": true
}
]
},
"extensions": {
"regex_scripts": [...],
"depth_prompt": {...},
"custom_data": {...}
}Exporting Characters
How to Export
- Go to your character's profile page
- Click ⋮ More button
- Select Export as V3 Card
- Choose what to include (lorebooks, scripts, etc.)
- Download PNG file
Export Options
- Include Lorebook: Embed lorebook entries
- Include Scripts: Embed regex scripts and extensions
- Include Chat History: Export with example conversations (optional)
- Compress Data: Reduce file size (recommended for large characters)
What Gets Exported
- Avatar image (visible)
- All character data (embedded)
- Multiple greetings
- Lorebook entries (if selected)
- Custom scripts (if selected)
- Tags and metadata
💡 Pro Tip: Exported PNG files work as normal images. You can view them in any image viewer, post them on social media, or use them as avatars - the character data stays embedded.
Importing Characters
How to Import
- Go to Create Character
- Click Import Character Card
- Upload PNG file or drag & drop
- Review imported data
- Edit if needed
- Save character
What Gets Imported
- Avatar image
- Name and description
- Personality and definitions
- All greetings
- Lorebook (if present)
- Scripts and extensions (if present)
- Tags
Import Sources
- V3 cards from Tiny Land
- V3 cards from other platforms
- V2 cards (auto-upgraded)
- V1 cards (auto-upgraded)
See full guide: Import & Export Guide
Sharing Characters
Sharing Methods
1. Direct File Sharing
- Export as V3 card
- Share PNG file anywhere (Discord, email, cloud storage)
- Recipients can import directly
2. Public Gallery
- Make character public on Tiny Land
- Users can chat or fork your character
- Always exportable by others
3. Character Links
- Share Tiny Land profile URL
- Users can view, chat, and export
- You maintain control (can make private later)
Licensing & Attribution
- You own characters you create
- Others can fork and modify (if public)
- Original creator credit is embedded
- Add creator notes to specify usage rights
Technical Details
PNG Metadata (tEXt Chunk)
Character data is stored in the PNG tEXt chunk:
Keyword: chara Text: [base64-encoded JSON data]Encoding Process
- Character data serialized to JSON
- JSON encoded to base64
- Stored in PNG tEXt chunk with keyword "chara"
- PNG remains valid image file
Decoding Process
- Read PNG file
- Extract tEXt chunk with keyword "chara"
- Decode base64 to JSON
- Parse and validate JSON structure
File Size Considerations
- Base image: 100-500 KB (depends on resolution)
- Character data: 5-50 KB (text data)
- Lorebooks: +10-100 KB (if large)
- Total: Usually under 1 MB
Validation & Compatibility
Tiny Land Validation
When importing, Tiny Land checks:
- Valid PNG file format
- Contains "chara" tEXt chunk
- Valid base64 encoding
- Valid JSON structure
- Required fields present
- V3 spec compliance
Cross-Platform Compatibility
V3 cards work with:
- Tiny Land (full support)
- SillyTavern (full support)
- Agnai (full support)
- Other V3-compatible platforms
Handling Incompatible Features
- Platform-specific extensions may not transfer
- Core character data always transfers
- Lorebooks widely supported
- Scripts may need platform-specific adaptation
Best Practices
Creating Portable Characters
- Use standard V3 fields for maximum compatibility
- Test exports on other platforms
- Include creator notes with usage instructions
- Keep lorebooks self-contained
- Document custom extensions
Organizing Exported Characters
- Use descriptive file names: "CharacterName_v1.0.png"
- Keep backups of important characters
- Version your characters (update character_version field)
- Maintain changelog in creator notes
Privacy Considerations
- Don't include personal information in character data
- Review all fields before sharing publicly
- Remember: anyone who gets the PNG can read the data
- Chat history is NOT included (unless explicitly exported)
💡 Fun Fact: You can inspect Character Card data yourself! Use any PNG metadata viewer or base64 decoder to read the "chara" tEXt chunk. It's all human-readable JSON.