Skip to content
This repository was archived by the owner on May 27, 2026. It is now read-only.

9. Performance Tips

Prolix OCs edited this page Aug 14, 2025 · 1 revision

Keep Silly Sim Tracker running smoothly with these performance optimization tips.

Data Structure Optimization

Keep JSON Lightweight

Only include data you're actively using:

// ❌ Too much data
{
  "characters": [
    {
      "name": "Alice",
      "hp": 75,
      "mp": 50,
      "inventory": ["sword", "shield", "potion", "map", "key", "ring", "amulet", "scroll", "lantern", "rope"],
      "skills": ["swordsmanship", "magic", "stealth", "diplomacy", "swimming", "cooking", "lockpicking"],
      "quest_log": ["quest1", "quest2", "quest3", "quest4", "quest5"]
    }
  ]
}

// ✅ Essential data only
{
  "characters": [
    {
      "name": "Alice",
      "hp": 75,
      "mp": 50,
      "inventory_count": 3,
      "active_quests": 2
    }
  ]
}

Use Appropriate Data Types

// ❌ Inefficient
{
  "hp": "75",        // String instead of number
  "isActive": "true" // String instead of boolean
}

// ✅ Efficient
{
  "hp": 75,          // Number
  "isActive": true   // Boolean
}

Character Management

Limit Active Characters

  • Recommended: 4 or fewer active characters per message
  • Maximum: Technical limit is higher, but performance degrades
  • Solution: Use inactive status for absent characters
{
  "characters": [
    {
      "name": "Alice",
      "isActive": true
    },
    {
      "name": "Bob",
      "isActive": false,  // Present in story but not active
      "inactiveReason": 1 // 1=Asleep, 2=Comatose, etc.
    }
  ]
}

Template Optimization

Simplify HTML Structure

<!-- ❌ Complex nesting -->
<div class="card">
  <div class="header">
    <div class="title-wrapper">
      <div class="title-content">
        <h2>{{characterName}}</h2>
      </div>
    </div>
  </div>
</div>

<!-- ✅ Simple structure -->
<div class="card">
  <h2>{{characterName}}</h2>
</div>

Efficient CSS

/* ❌ Complex selectors */
.card .header .title-wrapper h2 {
  color: white;
}

/* ✅ Simple selectors */
.character-name {
  color: white;
}

Extension Settings

Hide Raw JSON Blocks

  • Where: Settings → Hide Sim Blocks in Chat
  • Benefit: Reduces DOM clutter and improves performance
  • Trade-off: Less visible data for debugging

Use Built-in Templates When Possible

  • Built-in templates are pre-optimized
  • Custom templates require additional parsing
  • Clear custom templates when not needed

Browser Optimization

Keep Browser Updated

  • Latest browsers have better JavaScript performance
  • Regular updates include performance improvements
  • Some features may not work in older browsers

Close Unnecessary Tabs

  • Each tab consumes memory and CPU
  • Background tabs can still impact performance
  • Close tabs you're not actively using

Disable Resource-Heavy Extensions

  • Other extensions can compete for resources
  • Try disabling extensions temporarily to test performance
  • Keep only essential extensions enabled

Large Chat Management

Archive Old Chats

  • Long chats with many tracker cards can impact performance
  • Archive completed stories when no longer actively used
  • Start fresh chats for new campaigns

Clean Up Unused Data

  • Remove unused character definitions
  • Delete test messages with invalid JSON
  • Keep your chat history organized

Advanced Tips

Monitor Performance

Use browser developer tools:

  1. Press F12 to open developer tools
  2. Go to the Performance tab
  3. Record while using the extension
  4. Look for bottlenecks

Batch Updates

  • Group related character updates in single messages
  • Avoid rapid message sending
  • Let the extension process updates naturally

Memory Management

  • Regularly refresh SillyTavern for long sessions
  • Restart browser periodically for extended use
  • Monitor memory usage in task manager

Quick Performance Checklist

Daily Usage

  • Keep active characters ≤ 4
  • Use efficient JSON structure
  • Enable "Hide Sim Blocks in Chat"
  • Close unnecessary browser tabs

Weekly Maintenance

  • Archive old chats
  • Clear unused custom templates
  • Update browser if needed
  • Restart browser periodically

Monthly Optimization

  • Review custom fields for unused items
  • Clean up character definitions
  • Check for extension updates
  • Monitor overall system performance

When to Be Concerned

Normal Performance

  • Cards appear within 1-2 seconds
  • No browser lag during normal use
  • Memory usage stays reasonable

Signs of Issues

  • Cards take more than 5 seconds to appear
  • Browser becomes unresponsive
  • Memory usage continuously increases
  • Other SillyTavern features slow down

Solutions for Problems

  1. Immediate: Refresh the page
  2. Short-term: Reduce active characters
  3. Long-term: Archive old chats and clean up data
  4. Extreme: Clear browser cache and restart

By following these performance tips, you can enjoy smooth, responsive tracker card generation even in complex roleplay scenarios.

Clone this wiki locally