# Feature Tour

![The Feature Tour Sample.](https://463139507-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGAKWviXNATe9kDFWZAco%2Fuploads%2Fgit-blob-becf90f689bd638df37e1943c19e57128e947084%2Fgauntlet-01.png?alt=media)

The Feature Tour Sample is an ideal starting point for newcomers to Yarn Spinner. It presents a series of conversations along a corridor, each demonstrating a different capability of Yarn Spinner.

Are you ready to navigate this narrative gauntlet?

{% hint style="info" %}
You can learn how to add the Yarn Spinner for Samples to your project over at [](https://docs.yarnspinner.dev/yarn-spinner-for-unity/samples "mention").
{% endhint %}

## Features Covered

* [Nodes, Lines](https://docs.yarnspinner.dev/write-yarn-scripts/scripting-fundamentals/lines-nodes-and-options) and [Options](https://docs.yarnspinner.dev/write-yarn-scripts/scripting-fundamentals/options)
* [Jumps](https://docs.yarnspinner.dev/write-yarn-scripts/scripting-fundamentals/jumps) and [Detours](https://docs.yarnspinner.dev/write-yarn-scripts/scripting-fundamentals/detour)
* [Variables and Interpolation](https://docs.yarnspinner.dev/write-yarn-scripts/scripting-fundamentals/logic-and-variables)
* [Flow Control and Branching](https://docs.yarnspinner.dev/write-yarn-scripts/scripting-fundamentals/flow-control)
* [Commands](https://docs.yarnspinner.dev/write-yarn-scripts/scripting-fundamentals/commands) and [Functions](https://docs.yarnspinner.dev/write-yarn-scripts/scripting-fundamentals/functions)
* Storylets
* A Dialogue Interactible component and node-character associations

## Tour Structure

The feature tour consists of a long corridor with multiple rooms. Each room contains one or more interactive characters, with each character showcasing a specific Yarn Spinner feature. While this sample doesn't demonstrate every Yarn Spinner capability, it covers the most commonly used ones.

### Dialogue Interactible Component

At the heart of this feature tour is a class, **Dialogue Interactible**. This component is attached to each interactive character and associates a specific dialogue node with that character. If you're curious about how a particular feature works, you can identify which node contains that feature through this component.

![Sally talking about variables](https://463139507-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGAKWviXNATe9kDFWZAco%2Fuploads%2Fgit-blob-aaeef2d92001c3b9902c9482c58be93944c19513%2Fgauntlet-02.png?alt=media)

For example, if you want to see which node provides dialogue for a specific character, select that character in the scene and examine the Dialogue Interactible component.

![Sally's dialogue interactible component](https://463139507-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGAKWviXNATe9kDFWZAco%2Fuploads%2Fgit-blob-ee18551f61608d7eb3e36d613de65b6e307709f4%2Fgauntlet-03.png?alt=media)

In this example, we can see the node is `Room4_Variables_2`. Since all dialogue in this sample is contained in a single file (`Tour.yarn`), you simply need to open that file and locate the node to understand its implementation.
