Pixel Crushers at Unite Austin
Save System for UFPS Released!
Our latest asset, Save System for UFPS, has been released!
Dialogue System for Unity 1.7.7 Released!
The Dialogue System for Unity version 1.7.7 is now available on the Pixel Crushers customer download page (contact us with your Unity Asset Store invoice number if you need access) and should be available on the Unity Asset Store in 3-7 business days.
The release notes are huge, so I’ll just include a link: Release Notes
(If your browser shows version 1.7.6, please refresh the Release Notes page.)
Dialogue System for Unity 1.7.7.2 Released!
Version 1.7.7.2 is now available on the Pixel Crushers customer download site, and should be available on the Unity Asset Store in 5-10 business days!
Version 1.7.7.2
[Core]
- Changed: When using OverrideActorName, now uses override actor’s portrait, not portrait of actor originally assigned to conversation in database.
- Added: ‘thisID’ Lua variable, useful with SimStatus.
- Fixed: [position #] > 10 weren’t being recognized.
- Fixed: Can now build for IL2CPP/UWP in Unity 2017.3.
- Fixed: Markup tag [position #] with numbers greater than 10 weren’t being recognized.
- Dialogue Editor: Added snap to grid options to node editor, made selected node(s) more prominent.
- Unity UI: Animation fixes, improved animation options, typewriter improvements.
[Third Party Support]
- articy:draft:
– Added: Can now define articy variables for emphasis tag settings.
– Fixed: Overwrite wasn’t overwriting.
– Fixed: Dialogues in documents had an extra link.
– Fixed: Uninitialized typeString error in variable conversion. - Action-RPG Starter Kit: Updated for ARPG 6.x.
- Customizable Sci-Fi Holo Interface: Improved handling of fade in/out if restarting dialogue while holo interface is fading out.
- I2 Localization: Can now specify to use language codes or language names.
- Invector Third Person Controller; Added support.
- Inventory Engine: Improvements to Lua functions.
- PlayMaker: Added GetActorName action.
- Rog: Added Inventory Engine integration.
- Text Mesh Pro: Typewriter now supports RPGMaker codes, added quest log window prefab, animation fixes.
- UFPS: Updated API calls in FPSyncLuaPlayerOnLoadLevel to remove deprecation warnings in Unity 2017, added EventSystem to demo scene.
Save System for UFPS 1.0.4 Released!
- Added: Emerald AI save support. (Saves position, health, and current behavior.)
- Improved: Save System now uses nonallocating (no GC) methods when loading.
Save System for Realistic FPS Prefab 1.0.7 Released!
- Added: Emerald AI save support. (Saves position, health, and current behavior.)
- Improved: Save System now uses nonallocating (no GC) methods when loading.
Love/Hate 1.8.9 Released!
Version 1.8.9 is now live on the Asset Store!
This version features some nice updates to the core system, such as an in-game Faction Member Debugger component and a tweak to deed evaluation that allows the Dominance emotion value to better reflect the witness’s affinity to the deed’s target.
It also adds Emerald AI integration. Combat with AIs affects Love/Hate factions and emotional states, and can push AIs into different Emerald temperaments (e.g., from Passive to Aggressive)
Release Notes
- Changed: Dominance change now better reflects witness’s affinity to target.
- Added: FactionMemberDebugger.
- Added: FactionMember.ForgetDeed().
- Added: FactionManagerSaver & FactionMemberSaver integration with Save System.
- Improved: Save System now uses nonallocating (no GC) methods when loading.
- Emerald AI: Added support.
- ICE Creature Control: Fixed bug in demo scene.
- PlayMaker: [Breaking Change] Actions with GameObject fields now use FsmOwnerDefault & require reassignment.
Dialogue System for Unity 1.7.7.3 Released
Version 1.7.7.3 is now available on the Unity Asset Store!
This update adds some handy usability enhancements to the Dialogue Editor.
Core
- Dialogue Editor:
- Added drag-and-drop of audio files to Sequence fields.
- Added node copy/paste.
- Added zoom at cursor.
- Improved snap to grid behavior.
- Added filters to Actor, Items/Quests, Locations, and Variables tabs.
- Added quest & quest entry dropdowns to Watches.
- Fixed Watches bug that reported invalid cached info.
- Fixed node editor context menu placement when canvas is zoomed.
- Changed: Dialogue Manager’s Show Alerts During Conversations checkbox is now respected by Alert Trigger and ShowAlert() function, not just Variable[“Alert”].
- Added: DialogueTime dropdown to Dialogue Manager.
- Added: Sequence field to Condition Observer.
- Added: [Actor] popup attribute for scripts.
- Added: UnityUIDialogueUI option to bind autonumber keys to numpad.
- Improved: QuestStateListeners now automatically add QuestStateDispatcher to Dialogue Manager if missing.
- Fixed: Unity UI Typewriter Effect now handles uppercase rich text codes.
- Fixed: Override Actor Name’s Unique ID button wasn’t marking scene dirty.
Third Party Support
- Adventure Creator: Added Action mode dropdown to Conversation action to Start Conversation (default) or Stop Conversation.
- articy:draft: Added support for converting strips as subtables.
- NGUI: Quest tracker now manually calls Reposition in case table doesn’t auto-reposition.
- plyGame: Updated for plyGame 3.1.4c. ConversationController now has option to set NPC to Idle-Stay instead of disabling plyGame control. Updated save/load system integration.
- TextMesh Pro Support: Fixed typewriter effect to allow typing to start even if it hasn’t run its Awake method yet; fixed bug in quest tracker to respect value of Show Completed Entry Text checkbox.
- Third Person Controller (Opsive): Added AbilityStartEvent.
Dialogue System for Unity 1.8.0 Released!
Version 1.8.0 is now available on the Pixel Crushers customer download site (contact us with your Unity Asset Store invoice number if you need access) and should be available on the Asset Store soon!
Core
- Dialogue Editor:
- Added: Horizontal layout option when adding new nodes & auto-arranging.
- Added: “between” option to Conditions wizard.
- Improved: Better positioning of pasted nodes, zooming with mouse wheel.
- Added: Sequencer shortcuts, including Sequencer Shortcuts component and Sequencer.RegisterShortcut/UnregisterShortcut() methods.
- Improved: Added checkbox (default is ticked) to initialize variables when loading saved games that weren’t present when game was saved.
- Improved: Added “oneshot” option to Audio() sequencer command.
- Improved: Added “stay” option to Fade() sequencer command to keep covered during behind-the-scenes operations.
- Fixed: Now observes conversation override for Input Settings > Always Force Response Menu checkbox.
- Timeline: Added Play Sequence playable to play Dialogue System sequences.
- Unity UI:
- Updated Animated Portraits to support override controls.
- Set portrait image min width in Generic Dialogue UI.
Third Party Support
- articy:draft: Fixed handling of empty strips.
- RT-Voice: Updated for RT-Voice 2.9.6.
Dialogue System for Unity 2.0.0 Released!
The huge Dialogue System for Unity 2.0.0 release is now available on the Unity Asset Store! This release introduces the simpler, more powerful Standard UI subsystem and many other improvements and optimizations.
Dialogue System for Unity 2.0.2 Released!
- Dialogue editor improvements: global search & replace, snap all nodes to grid, and more.
- Updates to support for i2 Localization, Inventory Pro, and uMMORPG.
- Fixed: ConversantIndex now points to correct actor when using DialogueActor component with GameObject name that doesn’t match conversation actor or DialogueActor.
- Dialogue Editor: Added global search & replace.
- Dialogue Editor: Added Snap All Nodes To Grid menu item.
- Dialogue Editor: Cross-conversation link dropdown now uses submenus if destination conversation has many entries.
- Dialogue Editor: Clicking on link in Inspector now centers on node in Dialogue Editor canvas.
- articy:draft: Importer now properly applies nested flow fragment names to flow dialogues.
- CSV: Fixed: Import of Text Tables wasn’t marking asset dirty so changes weren’t immediately saved.
- i2 Localization Support: Updated for i2 Localization 2.8.7; added support for Text Tables.
- Inventory Pro Support: Updated example scene for DS2; added Get/SetStats Lua functions.
- uMMORPG: Added Lua functions to get/set skill levels; added NPC option to bypass NpcDialogue panel; now saves character to server immediately at end of conversation & quest state changes.
Love/Hate 1.9.0 Released!
Version 1.9.0 is now available on the Unity Asset Store.
Release notes:
- Minimum version is now Unity 5.3.6.
- Improved: Deeds can now specify who can evaluate them.
- Improved: Faction Manager: Added instance property, Allow Only One Faction Manager checkbox.
- Improved: Faction Member Debugger: Added Visible checkbox, option to auto-destroy if not debug build.
- Improved: Save System: Added SaveSystemMethods.LoadOrRestart.
Quest Machine 1.0.5 Released!
- Improved: Now tracks times accepted on quester, not quest giver, to better support multiplayer.
- Added: QuestGiver & QuestListContainer.ResetToOriginalState() methods.
- Fixed: QuestStateSerializer now gracefully handles bad tag lists.
- articy:draft: Added support.
- Dialogue System for Unity: Updated for Dialogue System for Unity 2.x.
- Inventory Pro: Added support.
- uMMORPG: Added support.
Dialogue System for Unity 2.0.5 Released!
Version 2.0.5 is now available on the Pixel Crushers customer download site and should be available on the Asset Store in 5-10 business days. (If anyone needs access to the Pixel Crushers customer download site, please contact us with your Unity Asset Store invoice number.)
This is a big update. Some of the major highlights are:
- New localization export/import feature. (The devs who made Crossing Souls donated the code that this is based on. Thanks, guys!)
- RandomizeNextEntry() sequencer command and Lua function.
- Conversation position Lua functions. Jump into sub-dialogues and jump back out.
- ContinueConversation Timeline track. Control when to move to the next dialogue entry in a Timeline.
- Opsive Ultimate Character Controller integration. Works with all Opsive character controllers.
- uSurvival integration.
Note: If you’re using Unity 2018+, Unity’s Package Manager allows you to disable the Physics2D package. In Unity 2018+, the Dialogue System doesn’t assume that you’ve enabled Physics2D. To tell the Dialogue System that you’ve enabled Physics2D, select menu item Tools > Common > Misc > Enable Physics2D Support. If you’re using Unity 2017 or earlier, you don’t need to do this.
Version 2.0.5 Release Notes
Core:
- Changes:
- CHANGED: In Unity 2018+, if you need the Dialogue System to support 2D physics, you must now define the compiler symbol USE_PHYSICS2D.
- CHANGED: AudioWWW() sequencer command has been deprecated.
- CHANGED: Group nodes now run their OnExecute events.
- CHANGED: Renamed Lua “Library” folder to “LuaLibrary” to accommodate version control ignore lists. If updating from a previous version and you want this name change, you will need to manually rename it.
- Misc:
- Updated for .NET Standard 2.0 compatibility.
- Fixed .NET4 issue when a class named Assets is defined in the global namespace.
- Removed copyright symbol from script file header comments. (Bug in Unity 2017-2018 inspector can’t handle this symbol.)
- TimedEvent now has option to count time by # of frames.
- Tag masks on TriggerEvent and CollisionEvent now support >32 tags.
- Editor:
- Added new localization export/import feature on Dialogue Editor’s Database tab.
- Watches tab now shows correct quest entries in dropdown menu for selected quest instead of first watched quest.
- To reduce database size, if a node’s Title is set to the default “New Dialogue Entry”, it will be cleared as soon as you enter Dialogue Text or Menu Text.
- Exposed Allow Simultaneous Conversations checkbox.
- If unticking Dialogue Manager’s Don’t Destroy On Load, now checks Input Device Manager & Save System for Don’t Destroy On Load.
- Added Control Graphic Raycasters checkbox to InputDeviceManager.
- Lua & Sequences:
- Added RandomizeNextEntry() sequencer command & Lua function.
- Added conversation position stack Lua functions (save & return to conversation positions).
- Lua wizard multiple quest entry dropdowns now match their respective quests.
- LuaInterpreter now implements short circuit evaluation of ‘and’/’or’.
- LuaInterpreter math.random(x) now returns values [1..x] to conform to Lua standard.
- TextInput() sequencer command now looks for text field UIs in the current dialogue UI first.
- SequencerShortcuts now maintains a stack. If you remove a shortcut, previous shortcut on stack takes effect again.
- Added Timeline ContinueConversation track.
- Scripting:
- Added: DialogueLua.GetSimStatus() function.
- Fixed attributes [VariablePopup], [ActorPopup], and [QuestPopup] which weren’t populating dropdown lists in all circumstances.
- Fixed ConversationView.OnConversationContinueAll(), which when manually called wouldn’t notify listeners in certain circumstances.
- Added DialogueSystemController.initializationComplete event, isInitialized property.
- DialogueSystemTrigger methods are now virtual.
- Save System:
- Added Assign Unique Keys menu item for Savers.
- If Active Saver activates inactive target, it now also tells target’s other savers to apply data.
- PersistentDataManager now initializes new quest info and SimStatus when loading games saved with previous versions of database.
- ConversationStateSaver no longer requires that conversation has conversant assigned.
- ConversationStateSaver now stops active conversation if saved game had no active conversation.
- AnimatorSaver now saves parameter values as well as states.
- UI:
- Added Sci-fi Standard Dialogue UI.
- Fixed StandardDialogueUI null reference exception when a custom menu panel didn’t have a canvas.
- If a custom StandardUISubtitlePanel is already closed, it will no longer play the unfocus animation on start of conversation.
- Fixed NullReferenceException in SelectorUseStandardUIElements after changing scenes.
- Fixed StandardUIQuestLogWindow Show Details On Select feature.
- Added “Add EventSystem If Needed” checkboxes to Standard & Unity UI dialogue UIs & quest log windows.
- StandardUIMenuPanel now prevents second button clicks while menu panel is playing hide animation.
- TextMesh Pro: TextMeshProTypewriterEffect now properly recognizes alternate audio clips.
- Fixed QuestStateListener null reference exception when unable to add a QuestStateDispatcher.
Third Party Support:
- articy:draft: Instructions and Jumps are now converted as blank nodes with None() sequences instead of Group nodes.
- Corgi Platformer Engine: Improved appearance of dialogue bubble.
- Invector Controller: Added Lua functions to get/set stats and add items to inventory. Saves items & stats.
- Inventory Pro: Stats and inventory are now integrated with Save System.
- Opsive Ultimate Character Controller: Added support.
- PlayMaker: Added GetCurrentConversationInfo action. Fixed PlayMakerLua unregistering if on multiple Dialogue Managers. Fixed GetLocalizedText. Added GetLocalizedVersion to GetLuaField.
- Rog Inventory Engine: Updated actor prefab.
- uMMORPG: Updated for uMMORPG 1.140+.
- uSurvival: Added support.
Save System 1.1.0 for Realistic FPS Prefab Released
Version 1.1.0 of the Save System for Realistic FPS Prefab is now available on the AUnity Asset Store. It has these improvements:
- Improved: Now uses FPS Spawned Object Manager, which also adds reloaded spawned object back to Azu Object Pool. You can use this, for example, to save the state of arrows that have been shot into the scene.
- Improved: Timed Event now has option to time by # of frames.
- Improved: Tag masks in Trigger Event & Collider Event now support >32 tags.
- Save System: Added Assign Unique Key menu item for Saver components.
- Save System: Animator Saver now saves animator parameters.
- Save System: If Active Saver activates inactive target, it now also tells target’s other savers to apply data.
If you have the Dialogue System for Unity, you don’t need the Save System. The Dialogue System already includes save & load for RFPS. The Save System is just an inexpensive, easy way to add saved games and persistence across scene changes if your project doesn’t need conversations, barks, and quests.
Save System 1.0.7 for UFPS v1 Released
The Save System 1.0.7 for UFPS v1 is now live on the Unity Asset Store. This is for UFPS version 1. A save system for Opsive’s new Ultimate Character Controllers (UFPS v2, etc.) is coming soon.
Version 1.0.7 adds:
– Updated for UFPS 1.74. Minimum version is now Unity 5.6.0.
– Improved: Timed Event now has option to time by # of frames.
– Improved: Tag masks in Trigger Event & Collider Event now support >32 tags.
– Save System: Added Assign Unique Key menu item for Saver components.
– Save System: Animator Saver now saves animator parameters.
– Save System: If Active Saver activates inactive target, it now also tells target’s other savers to apply data.
If you have the Dialogue System for Unity, you don’t need the Save System. The Dialogue System already includes save & load for UFPS. The Save System is just an inexpensive, easy way to add saved games and persistence across scene changes if your project doesn’t need conversations, barks, and quests.
Quest Machine 1.0.8 Released!
Version 1.0.8 is now available on the AUnity Asset Store.
This release adds support for uSurvival and Inventory Engine.
Important Note: In Unity 2018+, it’s now possible to disable the built-in Physics2D package. For this reason, Quest Machine plays nicely and doesn’t assume that Physics2D is enabled, which would cause compiler errors if it’s disabled. If you’re making a 2D project in Unity 2018+ or want to play the 2D demo scene, select menu item Tools > Pixel Crushers > Common > Misc > Enable Physics2D Support to tell the Dialogue System that you’re using 2D. If you’re using Unity 2017 or older, you can skip this.
Version 1.0.8 Release Notes
- CHANGED: If using 2D in Unity 2018+, you must set scripting define symbol USE_PHYSICS2D (see above)
- Added: QuestGeneratorEntity.StartDialogue methods that generate quest first if necessary.
- Added: Can now adjust drive values at runtime.
- Added: Quest Journal UI options to always expand groups, show details when hovering on quest name.
- Added: Quest Journal UI quest name can now show quest’s icon.
- Added: EntityType Saver. (Saves runtime changes to drives.)
- Fixed: Removed null reference error when an urgency function is unassigned.
- Fixed: Trigger Event and Collision Event components now handle >32 tags.
- Fixed: Quest Journal > UI Settings > Journal UI incorrectly accepted Dialogue UI type.
- Improved: Editor windows now gracefully ignore unreadable third party DLLs.
- Improved: Added Assign Unique Keys menu item for Saver components.
- Improved: Animator Saver now saves parameter values.
- articy:draft:
- Articy condition nodes correctly link to true and false result nodes.
- Links to the same node now actually link to the same node instead of duplicates of the node.
- Dialogue System for Unity:
- Fixed: Now only replaces tags if Process QM Tags is ticked.
- Fixed: GiveQuest() Lua function finds Quest Journal even if ID is blank.
- Fixed: Now shows regular Quest Machine UI if content has no Dialogue System Conversation content.
- ORK Framework: Fixed bug in GetQuestNodeStateStep.
- Inventory Engine: Added integration.
- uSurvival: Added integration.
Love/Hate 1.9.3 Released!
Version 1.9.3 is now available on the AUnity Asset Store.
Important Note: In Unity 2018+, it’s now possible to disable the built-in Physics2D package. For this reason, Love/Hate plays nicely and doesn’t assume that Physics2D is enabled, which would cause compiler errors if it’s disabled. If you’re making a 2D project in Unity 2018+ or want to play the 2D demo scene, select menu item Tools > Pixel Crushers > Common > Misc > Enable Physics2D Support to tell Love/Hate that you’re using 2D. If you’re using Unity 2017 or older, you can skip this.
(On the plus side, if you’re not using 2D, Love/Hate is now even leaner because the compiler will conditionally exclude all 2D-related code.)
ORK Framework users: Please import the updated ORK Framework Support package. It fixes the GetTemperament step and adds a GetEmotionalState step.
Version 1.9.3 Release Notes:
- IMPORTANT CHANGE: On Unity 2018+, you must define scripting symbol USE_PHYSICS2D to use 2D physics.
- Fixed: FactionMember.FindRumorInMemory wasn’t matching target faction correctly.
- Fixed: Faction Member inspector was showing 1 + memory count.
- Fixed: Trigger Event and Collision Event components now handle >32 tags.
- Improved: Updated for .NET Standard 2.0 compatibility.
- Improved: FactionManager now delays check for faction database until Start. (Prevents check warning if you create your FactionManager at runtime in code.)
- Improved: Added Assign Unique Keys menu item for Saver components.
- Improved: Added Control Graphic Raycasters checkbox to Input Device Manager.
- Improved: Timed Event now has option to time by # of frames.
- Save System: Animator Saver now saves animator parameters.
- Save System: If Active Saver activates inactive target, it now also tells target’s other savers to apply data.
- ORK Framework: Fixed GetTemperament. Added GetEmotionalState.
Dialogue System 2.0.6 Released!
Version 2.0.6 of the Dialogue System for Unity is available for immediate download on the Pixel Crushers customer download site. (Contact us with your Unity Asset Store invoice number if you need access.) It should be available on the Asset Store in a few business days.
Version 2.0.6 Release Notes
Core
- Added: DOF() sequencer command to control DepthOfField PostProcessing effect.
- Added: DialogueDatabase.GetEntrytaglocal() function.
- Fixed: Automatic checking of Alert variable no longer show ‘nil’ if variable is undefined.
- Fixed: RandomizeNextEntry() Lua function reported error in some circumstances; now works on group node linked directly from START.
- Fixed: OnConversationCancelledLine() no longer reports error if there is no previous subtitle.
- Fixed: DialogueManager.hasInstance now updates if active Dialogue Manager instance changed.
- Fixed: Float conversion in .NET4 is now fixed to be culture invariant.
- Fixed: Cross-conversation link dropdowns no longer split dialogue text at ‘/’ characters.
- Fixed: Sequence parser no longer reports error on double semicolons (‘;;’).
- Fixed: Fade() sequencer command’s default duration is now correctly 1 second.
- Fixed: Timeline preview UI cleans up properly when changing to playmode.
- Fixed: ActorPopup, ItemPopup, QuestPopup, and VariablePopup attributes can now be nested in lists.
- Improved: Timeline Start Conversation clip no longer requires assignment of GameObject.
- Improved: Significant performance improvement in node editor when editing very large conversations.
- Improved: Sequence field helper menu (‘+’) has more options, submenu that lists all available commands.
- UI:
- Can now disable Standard UI Menu Panel scrollbar reset value.
- Optimized initialization when using default legacy GUI option with Selector & Proximity Selector.
- Panel show/hide animations now also support legacy Animation component as well as Animator.
Third Party Support
- articy:draft: Fixed parsing of compound expresso expressions containing semicolons. Added option to import documents into a conversation submenu.
- Emerald AI: Updated EmeraldAISaver for Emerald AI 2.1.1+.
- i2 Localization: Updated for i2 Localization 2.8.9. Added support for runtime translation of dialogue & menu text.
- Realistic FPS Prefab: Updated example scene for RFPSP 1.45.
- RT-Voice: Updated for RT-Voice 2018.3+.
Quest Machine 1.0.9 Released
Quest Machine 1.0.9 has been released and should be available on the Unity Asset Store in 3-7 business days.
Release Notes:
- CHANGED: Quests now also activate counter listeners if state is WaitingToStart and has autostart or offer conditions.
- Improved: Added cooldown update frequency to Quest Giver to automatically update quest cooldowns & quest indicators.
- Improved: UI panel show/hide animations can now use Animation component as well as Animator.
- Fixed: Float conversion in .NET4 is now culture invariant.
- Fixed: Can no longer delete Start node.
- Compass Navigator Pro: Updated support package.
- Emerald AI: Updated EmeraldAISaver to properly play dead state.
- Invector character controllers: Added support.