Release v3.0.0 - Major update with JSON format, lock/unlock trackers, reorganized UI, colored dialogues, editable prompts, and numerous bug fixes

This commit is contained in:
Spicy_Marinara
2026-01-07 17:22:22 +01:00
parent 8df6548e0b
commit c3cdac24c6
46 changed files with 6241 additions and 3571 deletions
+282 -168
View File
@@ -81,6 +81,15 @@
</label>
</div>
<!-- Dialogue Coloring Toggle -->
<div class="rpg-toggle-container rpg-feature-col" id="rpg-dialogue-coloring-toggle-wrapper">
<label class="rpg-toggle-label" title="Colored Dialogues">
<input type="checkbox" id="rpg-toggle-dialogue-coloring">
<i class="fa-solid fa-palette"></i>
<span class="rpg-toggle-text" data-i18n-key="template.mainPanel.coloredDialogues">Colored Dialogues</span>
</label>
</div>
<!-- Spotify Music Toggle -->
<div class="rpg-toggle-container rpg-feature-col" id="rpg-spotify-toggle-wrapper">
<label class="rpg-toggle-label" title="Spotify Music">
@@ -90,15 +99,6 @@
</label>
</div>
<!-- Snowflakes Toggle -->
<div class="rpg-toggle-container rpg-feature-col" id="rpg-snowflakes-toggle-wrapper">
<label class="rpg-toggle-label" title="Snowflakes Effect">
<input type="checkbox" id="rpg-toggle-snowflakes">
<i class="fa-solid fa-snowflake"></i>
<span class="rpg-toggle-text" data-i18n-key="template.mainPanel.snowflakesEffect">Snowflakes Effect</span>
</label>
</div>
<!-- Dynamic Weather Toggle -->
<div class="rpg-toggle-container rpg-feature-col" id="rpg-dynamic-weather-toggle-wrapper">
<label class="rpg-toggle-label" title="Dynamic Weather Effects">
@@ -107,7 +107,22 @@
<span class="rpg-toggle-text" data-i18n-key="template.mainPanel.dynamicWeatherEffects">Dynamic Weather</span>
</label>
</div>
</div>
<!-- Narrator Mode Toggle -->
<div class="rpg-toggle-container rpg-feature-col" id="rpg-narrator-toggle-wrapper">
<label class="rpg-toggle-label" title="Narrator Mode">
<input type="checkbox" id="rpg-toggle-narrator">
<i class="fa-solid fa-book-open"></i>
<span class="rpg-toggle-text" data-i18n-key="template.mainPanel.narratorMode">Narrator Mode</span>
</label>
</div>
<!-- Auto-generate Avatars Toggle -->
<div class="rpg-toggle-container rpg-feature-col" id="rpg-auto-avatars-toggle-wrapper">
<label class="rpg-toggle-label" title="Auto-generate Avatars">
<input type="checkbox" id="rpg-toggle-auto-avatars-panel">
<i class="fa-solid fa-user-plus"></i>
<span class="rpg-toggle-text" data-i18n-key="template.mainPanel.autoAvatars">Auto Avatars</span>
</label>
</div> </div>
<!-- Manual Update Button -->
<button id="rpg-manual-update" class="rpg-btn-primary rpg-manual-update-btn">
@@ -126,15 +141,6 @@
data-i18n-key="template.mainPanel.settingsButton">Settings</span>
</button>
</div>
<!-- Holiday Promotion -->
<div class="rpg-holiday-promo" id="rpg-holiday-promo" style="text-align: center; padding: 12px 10px; margin-top: 8px; font-size: 11px; opacity: 0.85; position: relative; line-height: 1.5;">
<button id="rpg-dismiss-promo" style="position: absolute; top: 4px; right: 4px; background: none; border: none; color: currentColor; opacity: 0.6; cursor: pointer; padding: 2px 6px; font-size: 14px; line-height: 1;" title="Dismiss permanently"></button>
<div style="margin-bottom: 4px;">Happy Holidays & Happy New Year!</div>
<a href="https://www.electronhub.ai/" target="_blank" style="color: inherit; text-decoration: none; border-bottom: 1px dotted currentColor; display: inline-block;">
🎁 15% OFF for Electron Hub subscriptions with <strong>2026WITHMARINARA</strong> 🎁
</a>
</div>
</div>
</div>
</div>
@@ -201,7 +207,7 @@
Color (Low):</label>
<input type="color" id="rpg-stat-bar-color-low" value="#cc3333" />
<small data-i18n-key="template.settingsModal.theme.statBarLowNote">Color when stats are at
0%</small>
0%.</small>
</div>
<div class="rpg-setting-row">
@@ -209,7 +215,7 @@
Bar Color (High):</label>
<input type="color" id="rpg-stat-bar-color-high" value="#33cc66" />
<small data-i18n-key="template.settingsModal.theme.statBarHighNote">Color when stats are at
100%</small>
100%.</small>
</div>
</div>
@@ -219,7 +225,7 @@
<small class="notes" style="display: block; margin-bottom: 10px;"
data-i18n-key="template.settingsModal.displayNote">
<i class="fa-solid fa-info-circle" aria-hidden="true"></i> Use the Extensions tab to enable/disable
the RPG Companion extension.
the RPG Companion extension entirely
</small>
<div class="rpg-setting-row">
@@ -237,84 +243,145 @@
<input type="checkbox" id="rpg-toggle-user-stats" />
<span data-i18n-key="template.settingsModal.display.showUserStats">Show User Stats</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showUserStatsNote">
Enable User Stats that track your persona's statistics, mood, attributes, skills, etc.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-info-box" />
<span data-i18n-key="template.settingsModal.display.showInfoBox">Show Info Box</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showInfoBoxNote">
Display location, time, weather, and recent events.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-thoughts" />
<span data-i18n-key="template.settingsModal.display.showPresentCharacters">Show Present
Characters</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showPresentCharactersNote">
Display character portraits with their current thoughts and status.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-thoughts-in-chat" />
<span data-i18n-key="template.settingsModal.display.showThoughtsInChat">Show Thoughts</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showThoughtsInChatNote">
Display character thoughts as overlay bubbles next to their messages.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-inventory" />
<span data-i18n-key="template.settingsModal.display.showInventory">Show Inventory</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showInventoryNote">
Track items carried, clothing worn, stored items, and assets.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-quests" />
<span data-i18n-key="template.settingsModal.display.showQuests">Show Quests</span>
</label>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-thoughts-in-chat" />
<span data-i18n-key="template.settingsModal.display.showThoughtsInChat">Show Thoughts in Chat</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showThoughtsInChatNote">
Display character thoughts as overlay bubbles next to their messages
data-i18n-key="template.settingsModal.display.showQuestsNote">
Manage main and optional quests with objectives.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-always-show-bubble" />
<span data-i18n-key="template.settingsModal.display.alwaysShowThoughtBubble">Always Show Thought
Bubble</span>
<input type="checkbox" id="rpg-toggle-lock-icons" />
<span data-i18n-key="template.settingsModal.display.showLockIcons">Show Locking/Unlocking Trackers</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.alwaysShowThoughtBubbleNote">
Auto-expand thought bubble without clicking the icon first
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-animations" />
<span data-i18n-key="template.settingsModal.display.enableAnimations">Enable Animations</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.enableAnimationsNote">
Smooth transitions for stats, content updates, and dice rolls
data-i18n-key="template.settingsModal.display.showLockIconsNote">
Display lock/unlock icons on tracker items to prevent AI from modifying them.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-show-html-toggle" />
<span data-i18n-key="template.settingsModal.display.showImmersiveHtmlToggle">Show Immersive HTML</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showImmersiveHtmlToggleNote">
Display a toggle button to enable/disable HTML formatting in messages.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-show-dialogue-coloring-toggle" />
<span data-i18n-key="template.settingsModal.display.showDialogueColoringToggle">Show Colored Dialogues</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showDialogueColoringToggleNote">
Display a toggle button to enable/disable colored dialogue formatting.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-show-spotify-toggle" />
<span data-i18n-key="template.settingsModal.display.showSpotifyMusicToggle">Show Spotify Music</span>
</label>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-show-snowflakes-toggle" />
<span data-i18n-key="template.settingsModal.display.showSnowflakesToggle">Show Snowflakes Effect</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showSpotifyMusicToggleNote">
Display Spotify music player with AI-suggested scene-appropriate tracks.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-show-dynamic-weather-toggle" />
<span data-i18n-key="template.settingsModal.display.showDynamicWeatherToggle">Show Dynamic Weather Effects</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showDynamicWeatherToggleNote">
Display a toggle button to enable/disable animated weather effects.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-plot-buttons" />
<span data-i18n-key="template.settingsModal.display.showPlotProgressionButtons">Show Plot
Progression Buttons</span>
<input type="checkbox" id="rpg-toggle-show-narrator-mode" />
<span data-i18n-key="template.settingsModal.display.showNarratorMode">Show Narrator Mode</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showPlotProgressionButtonsNote">
Display buttons above chat input for plot progression prompts
data-i18n-key="template.settingsModal.display.showNarratorModeNote">
Display a toggle button to enable/disable narrator mode (infer characters from context).
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-show-auto-avatars" />
<span data-i18n-key="template.settingsModal.display.showAutoAvatars">Show Auto-generate Avatars</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showAutoAvatarsNote">
Display a toggle button to automatically generate avatars for characters without images.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-randomized-plot" />
<span data-i18n-key="template.settingsModal.display.showRandomizedPlot">Show Randomized Plot Progression</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showRandomizedPlotNote">
Display button for AI-generated random plot progression prompts.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-natural-plot" />
<span data-i18n-key="template.settingsModal.display.showNaturalPlot">Show Natural Plot Progression</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showNaturalPlotNote">
Display button for context-aware narrative continuation prompts.
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-encounters" />
<span data-i18n-key="template.settingsModal.display.showStartEncounter">Show Start Encounter</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showStartEncounterNote">
Display button to initiate interactive combat encounters.
</small>
<label class="checkbox_label">
@@ -323,58 +390,9 @@
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.showDiceDisplayNote">
Display the "Last Roll" indicator in the panel.
Display the "Last Roll" indicator in the panel
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-auto-avatars" />
<span data-i18n-key="template.settingsModal.display.autoGenerateAvatars">Auto-generate Missing
Avatars</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.autoGenerateAvatarsNote">
Automatically generate avatars for characters without custom images using the Image Generation
Plugin
</small>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-debug-mode" />
<span data-i18n-key="template.settingsModal.display.enableDebugMode">Enable Debug Mode</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.enableDebugModeNote">
Shows parser logs in a mobile-friendly UI panel. Useful for troubleshooting. Look for the red bug
button.
</small>
</div>
<div class="rpg-settings-group">
<h4><i class="fa-solid fa-swords" aria-hidden="true"></i> Combat Encounters</h4>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-encounters" />
<span>Enable Combat Encounters</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;">
Show the "Start Encounter" button above chat input for interactive combat
</small>
<div class="rpg-setting-row" style="margin-top: 12px;">
<label for="rpg-encounter-history-depth">Chat History Depth:</label>
<input type="number" id="rpg-encounter-history-depth" min="1" max="20" value="8"
class="rpg-input" />
<small>Number of recent messages to include in combat initialization</small>
</div>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-autosave-logs" />
<span>Auto-save Combat Logs</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;">
Save detailed combat logs to file for future reference and analysis
</small>
</div>
<div class="rpg-settings-group">
@@ -468,44 +486,52 @@
</div>
</div>
<div class="rpg-setting-row">
<label for="rpg-update-depth"
data-i18n-key="template.settingsModal.advanced.contextMessages">Context Messages:</label>
<input type="number" id="rpg-update-depth" min="1" max="20" value="4" class="rpg-input" />
<small data-i18n-key="template.settingsModal.advanced.contextMessagesNote">Number of recent messages
to include (Separate mode only)</small>
</div>
<div class="rpg-setting-row">
<label for="rpg-memory-messages"
data-i18n-key="template.settingsModal.advanced.memoryBatchSize">Memory Batch Size:</label>
<input type="number" id="rpg-memory-messages" min="4" max="50" value="16" class="rpg-input" />
<small data-i18n-key="template.settingsModal.advanced.memoryBatchSizeNote">Number of messages to
process per batch in Memory Recollection</small>
</div>
<div id="rpg-separate-mode-settings">
<label class="checkbox_label">
<input type="checkbox" id="rpg-use-separate-preset" />
<span data-i18n-key="template.settingsModal.advanced.useSeparatePreset">Use model connected to RPG
Companion Trackers preset</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.advanced.useSeparatePresetNote">
Separate mode only. When enabled, tracker generation will use the model from the "RPG Companion
Trackers" preset instead of your main API model. The preset will be switched automatically during
generation and restored afterward. Select the desired model in that preset and make sure the "Bind
presets to API connections" toggle is on (next to the import/export preset buttons).
</small>
<div class="rpg-setting-row">
<label for="rpg-update-depth"
data-i18n-key="template.settingsModal.advanced.contextMessages">Context Messages:</label>
<input type="number" id="rpg-update-depth" min="1" max="20" value="4" class="rpg-input" />
<small data-i18n-key="template.settingsModal.advanced.contextMessagesNote">Number of recent messages
to include (Separate mode only)</small>
</div>
</div>
<label class="checkbox_label" id="rpg-auto-update-container">
<label class="checkbox_label" id="rpg-auto-update-container" style="margin-top: 16px;">
<input type="checkbox" id="rpg-toggle-auto-update" />
<span data-i18n-key="template.settingsModal.display.toggleAutoUpdate">Auto-update after
messages</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;">
Automatically refresh RPG info after each message. Only available in Separate Generation mode.
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.toggleAutoUpdateNote">
Automatically refresh RPG info after each message.
</small>
<label class="checkbox_label" style="margin-top: 16px;">
<input type="checkbox" id="rpg-save-tracker-history" />
<span data-i18n-key="template.settingsModal.advanced.saveTrackerHistory">Save Tracker History in
Chat</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.advanced.saveTrackerHistoryNote">
When enabled, tracker data is saved in chat history for each message. In Together mode, trackers
appear in &lt;trackers&gt; XML tags (hidden from display). In Separate mode, tracker data is stored
in message metadata. When disabled, only the most recent trackers are kept.
</small>
<div class="rpg-setting-row">
<label for="rpg-encounter-history-depth" data-i18n-key="template.settingsModal.advanced.encounterHistoryDepth">Chat History Depth For Encounters:</label>
<input type="number" id="rpg-encounter-history-depth" min="1" max="20" value="8"
class="rpg-input" />
<small data-i18n-key="template.settingsModal.advanced.encounterHistoryDepthNote">Number of recent messages to include in combat initialization.</small>
</div>
<label class="checkbox_label">
<input type="checkbox" id="rpg-toggle-autosave-logs" />
<span data-i18n-key="template.settingsModal.advanced.autoSaveCombatLogs">Auto-save Combat Logs</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.advanced.autoSaveCombatLogsNote">
Save detailed combat logs to file for future reference and analysis.
</small>
<div class="rpg-setting-row" style="margin-top: 16px;">
@@ -530,35 +556,13 @@
when using GuidedGenerations or similar extensions.
</small>
<label class="checkbox_label" style="margin-top: 16px;">
<input type="checkbox" id="rpg-toggle-narrator-mode" />
<span data-i18n-key="template.settingsModal.display.narratorMode">Narrator Mode</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.display.narratorModeNote">
Use character card as narrator. Infer characters from context instead of using fixed character
references.
</small>
<label class="checkbox_label" style="margin-top: 16px;">
<input type="checkbox" id="rpg-save-tracker-history" />
<span data-i18n-key="template.settingsModal.advanced.saveTrackerHistory">Save Tracker History in
Chat</span>
</label>
<small style="display: block; margin-left: 24px; margin-top: -8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.advanced.saveTrackerHistoryNote">
When enabled, tracker data is saved in chat history for each message. In Together mode, trackers
appear in &lt;trackers&gt; XML tags (hidden from display). In Separate mode, tracker data is stored
in message metadata. When disabled, only the most recent trackers are kept.
</small>
<!-- Customize Prompts Button -->
<div style="margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--rpg-border);">
<button id="rpg-open-prompts-editor" class="menu_button" style="width: 100%;">
<button id="rpg-open-prompts-editor" class="rpg-btn-customize-prompts">
<i class="fa-solid fa-file-lines" aria-hidden="true"></i> <span>Customize Prompts</span>
</button>
<small style="display: block; margin-top: 8px; color: #888; font-size: 11px;">
Edit all AI prompts used for generation, plot progression, and combat encounters
Edit all AI prompts used for generation, plot progression, and combat encounters.
</small>
</div>
@@ -571,7 +575,7 @@
</button>
<small style="display: block; margin-top: 8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.advanced.resetFabPositionsNote">
Resets all floating action buttons (toggle, refresh, debug) to default top-left positions.
Resets all floating action buttons (toggle, refresh) to default top-left positions.
Useful if buttons are off-screen.
</small>
</div>
@@ -582,6 +586,10 @@
<i class="fa-solid fa-trash" aria-hidden="true"></i> <span
data-i18n-key="template.settingsModal.advanced.clearCache">Clear Extension Cache</span>
</button>
<small style="display: block; margin-top: 8px; color: #888; font-size: 11px;"
data-i18n-key="template.settingsModal.advanced.clearCacheNote">
Clears all cached data including tracker history and temporary files.
</small>
</div>
</div>
</div>
@@ -726,7 +734,7 @@
<div class="rpg-settings-popup-body">
<small class="notes" style="display: block; margin-bottom: 16px;">
<i class="fa-solid fa-info-circle"></i> Customize the AI prompts used throughout the extension. Leave fields empty to use defaults.
Customize the AI prompts used throughout the extension. Leave fields empty to use defaults.
</small>
<!-- HTML Prompt -->
@@ -739,7 +747,21 @@
</small>
<textarea id="rpg-prompt-html" class="rpg-prompt-textarea" rows="4"></textarea>
<button class="menu_button rpg-restore-prompt-btn" data-prompt="html" style="margin-top: 8px;">
<i class="fa-solid fa-rotate-left"></i> Restore Default
<i class="fa-solid fa-rotate-left"></i>&nbsp;Restore Default
</button>
</div>
<!-- Dialogue Coloring Prompt -->
<div class="rpg-prompt-editor-section">
<label for="rpg-prompt-dialogue-coloring" style="display: block; margin-bottom: 8px; font-weight: 600;">
<i class="fa-solid fa-palette"></i> Dialogue Coloring Prompt
</label>
<small style="display: block; margin-bottom: 8px; color: #888; font-size: 11px;">
Injected when "Enable Dialogue Coloring" is enabled. Affects all generation modes.
</small>
<textarea id="rpg-prompt-dialogue-coloring" class="rpg-prompt-textarea" rows="4"></textarea>
<button class="menu_button rpg-restore-prompt-btn" data-prompt="dialogue-coloring" style="margin-top: 8px;">
<i class="fa-solid fa-rotate-left"></i>&nbsp;Restore Default
</button>
</div>
@@ -753,7 +775,21 @@
</small>
<textarea id="rpg-prompt-spotify" class="rpg-prompt-textarea" rows="4"></textarea>
<button class="menu_button rpg-restore-prompt-btn" data-prompt="spotify" style="margin-top: 8px;">
<i class="fa-solid fa-rotate-left"></i> Restore Default
<i class="fa-solid fa-rotate-left"></i>&nbsp;Restore Default
</button>
</div>
<!-- Narrator Mode Prompt -->
<div class="rpg-prompt-editor-section">
<label for="rpg-prompt-narrator" style="display: block; margin-bottom: 8px; font-weight: 600;">
<i class="fa-solid fa-book-open"></i> Narrator Mode Prompt
</label>
<small style="display: block; margin-bottom: 8px; color: #888; font-size: 11px;">
Injected when "Narrator Mode" is enabled. Instructs AI to infer characters from context.
</small>
<textarea id="rpg-prompt-narrator" class="rpg-prompt-textarea" rows="3"></textarea>
<button class="menu_button rpg-restore-prompt-btn" data-prompt="narrator" style="margin-top: 8px;">
<i class="fa-solid fa-rotate-left"></i>&nbsp;Restore Default
</button>
</div>
@@ -767,7 +803,7 @@
</small>
<textarea id="rpg-prompt-plot-random" class="rpg-prompt-textarea" rows="6"></textarea>
<button class="menu_button rpg-restore-prompt-btn" data-prompt="plotRandom" style="margin-top: 8px;">
<i class="fa-solid fa-rotate-left"></i> Restore Default
<i class="fa-solid fa-rotate-left"></i>&nbsp;Restore Default
</button>
</div>
@@ -781,7 +817,7 @@
</small>
<textarea id="rpg-prompt-plot-natural" class="rpg-prompt-textarea" rows="4"></textarea>
<button class="menu_button rpg-restore-prompt-btn" data-prompt="plotNatural" style="margin-top: 8px;">
<i class="fa-solid fa-rotate-left"></i> Restore Default
<i class="fa-solid fa-rotate-left"></i>&nbsp;Restore Default
</button>
</div>
@@ -795,7 +831,7 @@
</small>
<textarea id="rpg-prompt-avatar" class="rpg-prompt-textarea" rows="3"></textarea>
<button class="menu_button rpg-restore-prompt-btn" data-prompt="avatar" style="margin-top: 8px;">
<i class="fa-solid fa-rotate-left"></i> Restore Default
<i class="fa-solid fa-rotate-left"></i>&nbsp;Restore Default
</button>
</div>
@@ -809,7 +845,7 @@
</small>
<textarea id="rpg-prompt-tracker-instructions" class="rpg-prompt-textarea" rows="4"></textarea>
<button class="menu_button rpg-restore-prompt-btn" data-prompt="trackerInstructions" style="margin-top: 8px;">
<i class="fa-solid fa-rotate-left"></i> Restore Default
<i class="fa-solid fa-rotate-left"></i>&nbsp;Restore Default
</button>
</div>
@@ -823,7 +859,7 @@
</small>
<textarea id="rpg-prompt-tracker-continuation" class="rpg-prompt-textarea" rows="4"></textarea>
<button class="menu_button rpg-restore-prompt-btn" data-prompt="trackerContinuation" style="margin-top: 8px;">
<i class="fa-solid fa-rotate-left"></i> Restore Default
<i class="fa-solid fa-rotate-left"></i>&nbsp;Restore Default
</button>
</div>
@@ -837,7 +873,7 @@
</small>
<textarea id="rpg-prompt-combat-narrative" class="rpg-prompt-textarea" rows="6"></textarea>
<button class="menu_button rpg-restore-prompt-btn" data-prompt="combatNarrative" style="margin-top: 8px;">
<i class="fa-solid fa-rotate-left"></i> Restore Default
<i class="fa-solid fa-rotate-left"></i>&nbsp;Restore Default
</button>
</div>
</div>
@@ -855,3 +891,81 @@
</footer>
</div>
</div>
<!-- Welcome Modal for v3.0 -->
<div id="rpg-welcome-modal" class="rpg-settings-popup" role="dialog" aria-modal="true"
aria-labelledby="rpg-welcome-title" style="display: none;">
<div class="rpg-settings-popup-content" style="max-width: 600px;">
<header class="rpg-settings-popup-header">
<h3 id="rpg-welcome-title">
<i class="fa-solid fa-stars"></i>
Welcome to RPG Companion v.3.0.0!
</h3>
<button id="rpg-welcome-close" class="rpg-popup-close" type="button"
aria-label="Close Welcome">
<i class="fa-solid fa-times"></i>
</button>
</header>
<div class="rpg-settings-popup-body" style="max-height: 500px; overflow-y: auto; padding: 20px;">
<div style="background: rgba(255, 165, 0, 0.1); border-left: 3px solid orange; padding: 12px; margin-bottom: 20px;">
<strong style="color: orange;">⚠️ Important:</strong> Due to a change in the tracker format, we recommend that you use <strong>Clear Extension Cache</strong> in the Settings before you start using this version!
</div>
<h4 style="margin-top: 20px; margin-bottom: 10px;"><strong>What's new?</strong></h4>
<ul style="line-height: 1.6; margin-left: 20px;">
<li>Switched to the JSON format for the trackers.</li>
<li>You can now lock/unlock trackers that you don't want the model to change between generations.</li>
<li>Removed features that were half-baked or didn't work.</li>
<li>Organized Settings and Edit Trackers windows.</li>
<li>All features of the extension are now accessible from the main panel view.</li>
<li>Added Colored Dialogues option that makes the model color dialogue lines differently depending on the speaker.</li>
<li>Introduced Dynamic Weather Effects that add visual effects to your SillyTavern window depending on the current weather from the trackers.</li>
<li>All prompts used for the extension's features are now editable.</li>
<li>Made the user's level optional in the Edit Trackers.</li>
</ul>
<h4 style="margin-top: 20px; margin-bottom: 10px;"><strong>Bug Fixes:</strong></h4>
<ul style="line-height: 1.6; margin-left: 20px;">
<li>Fixed tracker logic in Together generation mode.</li>
<li>Fixed various UI bugs (too many to count).</li>
<li>Upgraded mobile view.</li>
<li>Spotify Music widget is more visible now, plus it works in the mobile view.</li>
<li>Auto-update after messages option is now available for External API generation mode.</li>
<li>Fixed the display of the thoughts window and its mobile display.</li>
<li>Fixed smaller bugs.</li>
</ul>
<h4 style="margin-top: 20px; margin-bottom: 10px;"><strong>Special thanks to all the other contributors for this project:</strong></h4>
<p style="margin-left: 20px; line-height: 1.6;">
Paperboygold, Munimunigamer, Subarashimo, Lilminzyu, Claude (???), IDeathByte, Chungchandev, Joenunezb, and Amauragis!
</p>
<div style="margin-top: 20px; text-align: center;">
<p style="margin-bottom: 10px;">Join our Discord server to share your feedback, report bugs, or request new features!</p>
<a href="https://discord.com/invite/KdAkTg94ME" target="_blank" class="menu_button" style="display: inline-block; margin: 5px;">
<i class="fa-brands fa-discord"></i> Discord Server
</a>
</div>
<div style="margin-top: 20px; text-align: center;">
<p style="margin-bottom: 10px;">And don't forget to consider supporting me if you enjoy my work. Thank you!</p>
<a href="https://ko-fi.com/marinara_spaghetti" target="_blank" class="menu_button" style="display: inline-block; margin: 5px;">
<i class="fa-solid fa-heart"></i> Support on Ko-fi
</a>
</div>
<div style="margin-top: 30px; text-align: center; font-size: 18px; font-style: italic;">
<strong>Happy gooning!</strong>
</div>
<div style="margin-top: 10px; text-align: right; color: #888; font-style: italic;">
~ Marinara
</div>
</div>
<footer class="rpg-settings-popup-footer">
<button id="rpg-welcome-got-it" class="rpg-btn-primary" type="button" style="width: 100%;">
<i class="fa-solid fa-check"></i> Got it!
</button>
</footer>
</div>
</div>