This is a big update with lots of new features, improvements, and bug fixes. Some highlights include:
- Multi-Language Proofreading Copy: Special plain text export+import for spell check, grammar check, etc.
- Runtime Localization Import: Can now import localization spreadsheets at runtime.
- EndlessBook & Page Curler Support: Two options to play conversations like reading a book.
Release Notes:
Core:
- Added: Proofreading copy export/import.
- Added: DialogueDatabaseLocalizationImporter for runtime import of localization CSVs.
- Improved: Added customNodeContextMenuSetup delegate to customize dialogue entry context menu.
- Improved: Splitting dialogue text into separate entries on pipe characters now doesn't add empty entry if text ends with pipe.
- Improved: SetPanel(actor, panel) now supports 'custom' for panel.
- Improved: SMSDialogueUI always resumes its own conversations using itself as the UI in case you're using multiple dialogue UIs.
- Improved: SMSDialogueUI record/restore calls are now virtual. (Credit: emotitron)
- Improved: Audio/AudioWait() command now logs audio source when Debug Level is Info.
- Improved: Updated asmdefs with references to Addressables, Cinemachine, Input System, TextMesh Pro, and Timeline in case those packages are installed.
- Improved: ConditionPriorityUtlity.StringToConditionPriority now uses Enum.Parse.
- Improved: Dialogue Editor fields sections report duplicate fields; added Find Duplicate Fields report to Database > Check For Issues.
- Improved: Dialogue Editor's Database section will use entrytag format on Dialogue Manager if current scene has a Dialogue Manager.
- Improved: Added Activate On Enable checkbox to TimedEvent.
- Improved: Voiceover Script can now export/import optional field you can use to record whether entry was recorded, filename, etc.
- Improved: If conversation has called SetDialoguePanel(false) which cached & changed dialogue UI info but conversation doesn't undo with SetDialoguePanel(true), end of conversation undoes it.
- Changed: Assignment.VariableChanged is no longer invoked if variable is set to the same as its current value.
- Changed: IStandardDialogueUI interface has new OverrideActorSubtitlePanel signature.
- Fixed: Base Dialogue Manager prefab's Stop Evaluation At First Valid was ticked; should have been unticked by default to allow RandomizeNextEntry() to work.
- Fixed: Fixed bug introduced in 2.2.47 that created blank-named variables when using Lua dropdowns' Variables section.
- Fixed: LinkUtility.SortOutgoingLinks now uses Link.priority instead of unused DialogueEntry.conditionPriority.
- Fixed: When providing a new BarkHistory each time, DialogueManager.Bark() now no longer skips entry 0 in randomization.
- Fixed: AnimatorSaver no longer saves trigger parameters multiple times on subsequent saves. [Save system opsive]
- Fixed: ConversationModel <START> treated as group when linked to.
- Fixed: ConversationStateSaver now correctly restores continue button state (w/exception of SetContinueMode() overrides); handles missing actors; handles interrupting active conversations better.
- Fixed: Edge case issue when fast forwarding quickly through a conversation with certain show/focus animation settings.
- Fixed: StandardUIQuestLogWindow can now show Abandon button again for abandonable active quests.
- Fixed: TextMeshProTypewriterEffect properly handles align tags now.
- Fixed: AudioWaitOnce() command.
- Fixed: Conversations section node editor heading (conversation dropdown row) should no longer be cut off when undocked.
- Fixed: C# methods beginning with "end" can now be registered with Lua.
- Fixed: RandomizeNextEntryNoDuplicate() now returns previously-used entry instead of null reference exception if it's the only entry available.
- Changed: Removing field from template now only removes it from specified asset type, not all types of assets in database.
- Arcweave: Added dialogue entry sorting option; import window buttons now dynamically adjust to narrower window sizes.
- articy:draft: Fixed issues with importing input pins on cross-conversation links & links from dialogue fragments to dialogues.
- Cinemachine: Added support for Cinemachine 3 in Unity 202x (and Unity 6+).
- Compass Navigator Pro 2: Now handles multiple questers; fixed issue with instantiated POIs.
- Corgi Platformer Engine: Now disables Corgi input during conversations if Conversation Zone's Can Move While Talking is unticked.
- EndlessBook: Added integration.
- Invector: Updated StopCharacter code for Invector 2.6.4b.
- Lively Chat Bubbles: Added example prefab with continue button.
- Now We're Talking: If loading from Addressables, now unloads when NWT() sequencer command ends.
- Page Curler: Added integration.
- Timeline: Added Sequencer Message clip; Timeline() sequencer command GameObject binding indices updated for current Timeline versions.
- SuperTextMesh: LocalizeUI now works with STM.
- uMMORPG Remastered: Updated to v2.41.
- Yarn 2: Records metadata hashtags in a custom field named Metadata in corresponding dialogue entry.