Yarn Spinner 2.4

We’re incredibly excited to present Yarn Spinner 2.4 for Unity!


  • A new sample (Shot Reverse Shot) showing how you can use Cinemachine virtual cameras and custom dialogue views to make a shot reverse shot scene in your game.
  • Two new basic save methods on DialogueRunner that use the persistent data storage location as their save location
  • A new sample (User Input and Yarn) showing how you can use blocking commands and TMP Input fields to get input into Yarn variables.
  • A new method (ClearLoadedAssets) to unload all cached assets from the UnityLocalisedLineProvider
  • Projects can now provide a list of line IDs within a node using GetLineIDsForNodes
  • Newly created .yarnproject files now ignore any .yarn files that are in a folder whose name ends in ‘~’, which follows Unity’s behaviour.


  • Fixed a bug where YarnNode attributes would not display correctly in the Inspector when its property path is longer than 1.
  • Fixed a bug in the action registration source code generator that caused it to crash on certain files, which resulted in some commands not being registered at runtime.
  • Replaced the call to Yarn.Compiler.Utility.AddTagsToLines with Yarn.Compiler.Utility.TagLines
  • Fixed incorrect order of generic parameter names for AddFunction methods, usage is unchanged.
  • Fixed incorrect handling of line IDs inside the Unity Localised Line Provider preventing voice assets being loaded.
  • Fixed a crash where declaration statements without a value (<<declare $var>>) would crash the importer, leading to weird bugs.
  • Yarn Functions and Commands can now have up to 10 parameters if you need them.
  • The hard dependancy on Text Mesh Pro is now a soft one, for most projects this change won’t be noticed.
  • Deprecated SaveStateToPlayerPrefs and LoadStateFromPlayerPrefs
  • Dialogue Runner will now better wait for line providers to be ready before requesting lines UnityLocalisedLineProvider can now have it’s default setting of removing unused assets disabled, this is useful when caching multiple nodes worth of assets
  • Add Assets to Asset Table Collection Wizard now correctly prepends line: to the key to match the documented behaviour.
  • OptionsListView now deactivates child options when they are not needed instead of just making them transparent.
  • When using Unity Localization, line metadata is now stored on the shared entry for a line ID, rather than only on the base language’s entry. (This caused an issue where, if the game was not running in the base language, line metadata would not be available.)
  • Fixed an issue with AudioLineProvider that would prevent audio assets being loaded
  • Fixed an issue with the Project editor that prevented audio assets loading when using Addressables.
  • The Yarn Project inspector window will now log errors when your inspector width is considered too small


  • The Actions class will no longer log every single time a command is registered.
  • Removed YarnLinesAsCanvasText class and associated elements, this didn’t did anything and was using an approach that is no longer advisable.
  • The MainMenu sample is now gone, this code was not in the package and didn’t work so it is unlikely anyone will notice this has been removed.
  • Removed the deprecated code inside YarnProjectImporterEditor

For the previous changes please see the full changelog


Yarn Spinner for Unity v2.4.1 (e0683e1c) 7 MB
Nov 17, 2023

Get Yarn Spinner for Unity

Buy Now
On Sale!
15% Off
$50.00 $42.50 USD or more

Leave a comment

Log in with itch.io to leave a comment.