-
Notifications
You must be signed in to change notification settings - Fork 8
8. Custom Fields
Custom fields let you track exactly what matters for your roleplay scenario. You can add, remove, and modify fields to match your needs.
Custom fields are the variables that appear in your tracker card JSON data and templates. Each field represents something you want to track about your characters.
- Open Silly Sim Tracker settings
- Scroll to "Custom Sim Data Fields"
- Click "Add Field"
- Enter a field key and description
- Click outside to save
- Find the field you want to remove
- Click the "Remove" button next to it
- Confirm if needed
- Click directly on a field key or description to edit
- Make your changes
- Click outside to save
Field keys must follow these rules:
- No spaces (use underscores:
magic_points) - No special characters (stick to letters, numbers, underscores)
- Case sensitive (
hpandHPare different) - Should be descriptive but concise
Key: hp Description: Health Points (0-100)
Key: mp Description: Magic Points (0-50)
Key: level Description: Character Level (1-20)
Key: xp Description: Experience Points
Key: gold Description: Currency Amount
Key: ap Description: Affection Points (0-200)
Key: dp Description: Desire Points (0-150)
Key: tp Description: Trust Points (0-150)
Key: cp Description: Contempt Points (0-150)
Key: relationship_status Description: Relationship Level Text
Key: health Description: Health Status (0-100)
Key: stamina Description: Stamina Level (0-100)
Key: location Description: Current Location
Key: objectives Description: Active Quest Objectives
Key: inventory Description: Carried Items
Key: hunger Description: Hunger Level (0-100)
Key: thirst Description: Thirst Level (0-100)
Key: warmth Description: Warmth Level (0-100)
Key: health Description: Health Status (0-100)
Key: resources Description: Available Resources
Once you define a field, use it in your JSON:
{
"worldData": {
"current_date": "2025-08-10",
"current_time": "14:30"
},
"characters": [
{
"name": "Alice",
"hp": 75,
"mp": 50,
"level": 5,
"xp": 1250,
"gold": 100
}
]
}
Access custom fields in templates with {{stats.fieldName}}:
<div>Health: {{stats.hp}}</div>
<div>Level: {{stats.level}}</div>
<div>Gold: {{stats.gold}}</div>The {{sim_format}} macro automatically includes your custom fields:
{{sim_format}}
This generates an example showing all your defined fields.
Think about what you really need to track before adding fields.
✅ hp, mp, xp, gold
❌ health, Magic_Points, exp, $$
In descriptions, note valid value ranges:
Key: level Description: Character Level (1-20)
Key: hp Description: Health Points (0-100)
Begin with basic fields and add complexity as needed.
Keep your custom fields in sync with your system prompt requirements.
- Check that field keys match exactly in JSON and templates
- Verify the field is defined in settings
- Ensure the
{{sim_format}}macro reflects your fields
- Make sure you're using
{{stats.fieldName}}format - Check that the field exists in your JSON data
- Verify template syntax is correct
- Update system prompts when changing fields
- Use
{{sim_format}}to show current field structure - Test with sample JSON data
Group related fields together in your settings for easier management.
Use descriptions as quick reference for what each field tracks.
Keep notes of your field setups for different campaign types.
Custom fields are the heart of flexible tracking. Take time to set them up thoughtfully for the best experience.