Critical: bump PROTOCOL_VERSION 8→9 for conversation_events/ended fields. Hoshe review: - Dirty flag (_log_dirty) prevents per-frame O(n) BBCode rebuild - BBCode injection: _escape_bbcode() replaces [ with [lb] on server text - D-064 regression: dialogue_active cleared in fade callback, not before - YAML quoting: remove unnecessary quotes from numeric values Tyre review: - Carry-forward for dialogue_response, conversation_events, conversation_ended in receive_bytes() — arrays merge, scalar falls through - pause_requested/unpause_requested signals route through main.gd input recording (_pending_record_inputs) for #507 replay determinism - Fix version comments: dialogue_response is v8 (#305), not v9 - Remove dead _active_overheard dictionary Araminta review: - Passive lines: ┃ glyph prefix + _desaturate() for name colours - Active conversation entries pinned (no timeout), unpinned with timestamp reset on conversation end - _enforce_contrast(): minimum luminance floor for name colour readability - Simplified 1-on-1 attribution: "Speaker:" instead of "Speaker → You:" Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
48 lines
1.6 KiB
YAML
48 lines
1.6 KiB
YAML
# Dialogue Log Theme — The Settled Reach
|
|
#
|
|
# Ticket: #535 | Sprint: 14
|
|
# Colors and timing for the unified dialogue log panel.
|
|
# Loaded by dialogue_box.gd at runtime.
|
|
|
|
# ============================================================
|
|
# PLAYER COLOR
|
|
# Fixed color for the player's name in dialogue log entries.
|
|
# ============================================================
|
|
player_color: "#e0e8ff"
|
|
|
|
# ============================================================
|
|
# NPC COLOR PALETTE
|
|
# 8 distinct colors for NPC names. Indexed by hash(npc_name) % 8.
|
|
# Must be readable on a dark semi-transparent panel background.
|
|
# ============================================================
|
|
npc_colors:
|
|
0: "#4a9ebb" # teal
|
|
1: "#6bc9a6" # green
|
|
2: "#e8c547" # amber
|
|
3: "#d49e5d" # warm orange
|
|
4: "#b586d4" # lavender
|
|
5: "#d45d5d" # muted red
|
|
6: "#5daa7d" # forest
|
|
7: "#7daccc" # sky blue
|
|
|
|
# ============================================================
|
|
# TEXT COLORS
|
|
# Arrow separator and speech text color.
|
|
# ============================================================
|
|
arrow_color: "#8890a0"
|
|
speech_color: "#c8d0e0"
|
|
|
|
# ============================================================
|
|
# PASSIVE (OVERHEARD) OPACITY
|
|
# Base opacity multiplier for non-player-centric lines.
|
|
# 1.0 = full opacity, 0.0 = invisible.
|
|
# ============================================================
|
|
passive_opacity: 0.9
|
|
|
|
# ============================================================
|
|
# ENTRY TIMING
|
|
# All entry types share the same lifetime and fade duration.
|
|
# ============================================================
|
|
entry_lifetime_seconds: 15.0
|
|
entry_fade_seconds: 3.0
|