Dialogue System 1.4.8 patch 2015-03-27 Available

Patch 2015-03-27 is available on the Pixel Crushers customer download site. Please contact us with your Unity Asset Store invoice number if you need access.

The patch contains:

  • Added: Precompiled DLL package for Unity 5 NLua (in Third Party Support).
  • Fixed: If StartConversation() was told to start at a terminating entry, it skipped the entry.
  • Fixed: If a Quest[]/Item[] table element was changed from a subtable to a different data type, QuestLog.GetAllQuests() returned an error.
  • Changed: (Unity UI) Response Menu > PC Image is now an Image (sprite), not a RawImage, to make it consistent with other Images.
  • Action-RPG Starter Kit: Improved inventory syncing during conversations.
  • Adventure Creator: Updated for AC 1.43; fixed a bug that raised an error when building.
  • S-Inventory: Fixed a bug in RemoveItem() when the item was equipped.

How to Use Unity UI for a Health Bar in Realistic FPS Prefab

(Updated for RFPS 1.23)

Realistic FPS Prefab (by Azuline Studios) uses a GUIText prefab to display health as a text string. This article describes how to replace it with a Unity UI health bar.

1. Add a Unity UI slider named “Healthbar”.

2. Edit HealthText.cs. In the variable section,  add the line containing “//[PixelCrushers]”:

3. In the Start method,  add the 2 lines containing “//[PixelCrushers]”:

4. In the Update method, add the line containing “//[PixelCrushers]”:

Fix for Realistic FPS Prefab “Crouch Jump” Bug

In Realistic FPS Prefab v1.21 (by Azuline Studios), when you stand from a crouch, the player’s collider immediately expands vertically from the crouched height to the standing height. This puts a lot of downward force under the player, which can have an interesting effect if you’re standing on top of another physics object. Since the physics object has a rigidbody, you get an equal and opposite upward force, jettisoning the player into the air.

If you want to fix it, edit FPSRigidbodyWalker.cs. Around line 880, in the “//Crouching & Prone” section of FixedUpdate(), change this line:

to this:

This code change checks if you’re standing up while on a rigidbody. If so, you’ll stand up more slowly to reduce the upward force from the rigidbody.

Dialogue System v1.4.8 Released!

The Dialogue System v1.4.8 has been released!
Note: The Dialogue Manager now has a separate Cancel Conversation key/button. The existing Cancel key/button now only cancels the current dialogue entry sequence. Both default to the Escape key.

Version 1.4.8

  • Changed: Conditions with only whitespace are now ignored as if they’re empty.
  • Changed: Make “Cancel Conversation” key/button separate from “Cancel” key/button (which cancels the dialogue entry sequence).
Third Party Support
  • articy:draft Converter:
    • Changed: Added option to convert flow fragments to conversation groups. (This is now the default.)
    • Added: Color-coded connection priority levels.
    • Fixed: Bug that allowed duplicate fields.
  • RPGKit: Added quest example; updated scripts for Unity 5 compatibility.
  • S-Inventory:
    • Added: Persistent data components for item pickups, item groups, and vendors.
    • Fixed: Skillbar item count text bug.
    • Updated for Unity 5.

How to Use Unity UI for Ammo Text in Realistic FPS Prefab

(Updated for RFPS 1.23 – 1.24)

This page contains an unofficial “how-to” for using the new Unity UI to show ammo text in Azuline Studios’ Realistic FPS Prefab (RFPS). (Realistic FPS Prefab is developed by Azuline Studios.)



1. Add a world space canvas to each gun. World space means it’s rooted to a position on the gun, rather than overlaying the screen in screen space. You can use a screen space canvas if you don’t want it positioned on the gun. If you don’t want to show an ammo count (such as for a knife or flashlight), don’t add a canvas to the weapon.

2. Add a Text element to the canvas.

3. The RFPS player prefab loads a HUD prefab named AmmoText that contains two GUITexts, one for the main counter text and a child for the drop shadow. Set their colors to 0 to make them invisible.

4. Instead, AmmoText should update the Text element on your weapon’s canvas. To do this, it needs a reference to the Text element. Add a public variable for it to AmmoText.cs. Then, in the Start() and SwitchWeapon() methods in WeaponBehaviour.cs, set AmmoText’s Text element. In AmmoText.cs’s Update() method, set the Text element’s text value to ammoGui.ToString().

So in AmmoText.cs, add these lines:

Line 30 in RFPS 1.23+, Line 19 in RFPS 1.21-1.22:

Line 51 in RFPS 1.23+, Line 39 in RFPS 1.21-1.22:

5. In WeaponBehavior.cs, add these lines:

Start method – line 715 in RFPS 1.23+, line 257 in RFPS 1.22, line 234 in RFPS 1.21:

OnEnable method – line 343 in RFPS 1.22, line 319 in RFPS 1.21: (for RFPS 1.23, see below)

For RFPS 1.23+, you’ll need to add an OnEnable method. Line ~680 (above the void Start() method):


More Goodies

How to Use Realistic FPS Prefab in Unity 5

This page contains unofficial instructions for using Azuline Studios’ Realistic FPS Prefab (RFPS) version 1.21 in Unity 5.0. (Realistic FPS Prefab is developed by Azuline Studios.)

(See also: How to Use Unity UI for Ammo Text in Realistic FPS Prefab)


1. Import RFPS into a Unity 4.x project. Then close the project.

2. Open the project in Unity 5 and let the script converter do its thing. Steps 1-2 are required because Unity 5 doesn’t correctly import the legacy animation assignments on RFPS’s prefabs.

3. Edit the “Player” Physics material or create a new Physics material named “ZeroFriction” and assign its values like this:


Then assign this material to the FPSPlayer’s Capsule Collider.

4. Make two changes to SmoothMouseLook.cs. In the Update() method, near the top change:


And near the bottom, change:





Choose Your Own Adventure Framework – Free Dialogue System Addon

Dialogue System customers can now download a free Choose-Your-Own-Adventure framework. The demo and download link are here:


(It’s less a “demo” and more a blank skeleton that you can hang your own text and artwork (textures, models, music, audio, lipsync, etc.) on. )

Dialogue System v1.4.7 Released!

The Dialogue System v1.4.7 has been released! You can download it right now on the Pixel Crushers customer download site. (Contact us with your invoice number if you need access.) It should be available on the Asset Store in a few days.

You can now start a conversation from any dialogue entry.

“Folders” for conversation grouping is an old feature but one that some users aren’t aware of. If you want to organize your conversations in groups, you can use forward slashes in titles, such as “Level 1/Commander”, “Level 1/Radio Barks”, and “Companions/Romantic/Nadia/In Barracks”. The slashes will act as submenus in the dialogue editor and conversation trigger pop-up menus.

Version 1.4.7


  • Improved: Added optional initial dialogue entry ID parameter to DialogueManager.StartConversation().
  • Improved: Added optional layer parameter to AnimatorPlay() and AnimatorPlayWait() sequencer commands.
  • Improved: Added LevelManager.LoadLevel() method; the LoadLevel() sequencer command uses it if available.
  • Changed: Removed obsolete UnityQuestLogWindow class (use UnityGUIQuestLogWindow instead)
  • Fixed: (Unity GUI) Fixed a positioning bug with nested panels when Clip Children is unticked.

Third Party Support

  • Action-RPG Starter Kit: Added syncing of equipment and skills. Added DSTeleporter.
  • articy:draft: Added option to convert flow fragments to conversation groups. (This is now the default.)
  • Cinema Director: Added ability to load from asset bundles. Added Bark, Lua, & Start/Stop Conversation events.
  • Realistic FPS Prefab: Added DialogueSystemOnPickUpItem.
  • RPG Kit: Updated to count all inventory items.