Skip to content

Support persistent Close conversation mode - #610

Merged
RANGROO merged 4 commits into
unstablefrom
codex/intimate-conversation-mode
Jul 25, 2026
Merged

Support persistent Close conversation mode#610
RANGROO merged 4 commits into
unstablefrom
codex/intimate-conversation-mode

Conversation

@RANGROO

@RANGROO RANGROO commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • adds CLOSE as a first-class server execution mode and keeps Close conversations private to the player and resolved responder
  • consumes CHIM's authoritative managed audience and separate present_actors snapshot
  • adds physically present actors to scene context and event-history membership without making inactive actors responders
  • allows compatible gameplay actions to target inactive present actors
  • formats present actors as Name [RefID: XXXXXXXX] and asks action schemas to prefer that exact identifier
  • preserves explicit actor RefIDs through action post-filtering while retaining actor-name fallback
  • keeps rechat generation server-side and blocks automatic rechat while Close mode is active
  • handles Close wording, subtitles, memory extraction, Oghma context, and private delivery without changing global distance settings

Compatibility

  • no database migration is required
  • existing actor-name action targets remain valid
  • RefIDs are request-local; persisted event people and audience identity remain name-based
  • a supplied RefID is validated by the CHIM plugin before use, then falls back to the supplied actor name
  • physical presence does not activate an NPC or widen the managed response audience
  • pairs with Dwemer-Dynamics/CHIM#85

Validation

  • php -l passed for every changed PHP and test file
  • focused presence and RefID tests: 5 tests, 15 assertions passed
  • existing Close/asterisk parsing tests passed earlier on this branch
  • git diff --check passed
  • the broader suite retains unrelated local-environment errors from unavailable PostgreSQL setup, missing ZipArchive, and Windows test-command assumptions

Review notes

  • no generated files, database contents, logs, or runtime configuration are included
  • the unstable guard requires this PR because core runtime files overlap active development
  • the latest RefID/action-target delta is automated-test validated but has not been deployed or verified in-game

Related PR

  • Dwemer-Dynamics/CHIM#85

@RANGROO RANGROO changed the title Support persistent intimate conversation mode Support persistent Close conversation mode Jul 24, 2026
@RANGROO
RANGROO marked this pull request as ready for review July 25, 2026 00:32
@RANGROO
RANGROO merged commit 8c8b1c3 into unstable Jul 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant