> For the complete documentation index, see [llms.txt](https://docs.siminsights.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.siminsights.com/hyperskill-studio-authoring/state-machine-reference/actions/how-to-author-the-state-machine.md).

# How to Author the State Machine

This page walks through opening a simulation in the HyperSkill Desktop application and laying out its state machine. A detailed explanation of controls and interface functions is described in the section [State Machine Builder User Interface](https://docs.google.com/document/d/1-o5qSv4zTkzj7YSmRTkV4zezFq7lwU00FyTy0kw1l1U/edit#bookmark=id.6vu41emx3478).

1. Launch “HyperSkill-Desktop.exe”.

<figure><img src="https://2704613365-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxYaaXoZ4YGbVdAnAhdcE%2Fuploads%2Fwlw14VQovIo80bD7uydu%2F4_71_83_96_101.png?alt=media&#x26;token=cf548fc0-7d7a-4966-b806-b16e9ae70c2e" alt=""><figcaption></figcaption></figure>

2. Log in to your account and select “Simulations” from the home screen.
3. Select a simulation from the list and click on the pencil icon ![](https://2704613365-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxYaaXoZ4YGbVdAnAhdcE%2Fuploads%2FXPHH3aOowYWtGUzUYOH6%2F45_102.png?alt=media\&token=2da9991e-50cd-4cb5-8e8b-22c7f47689c4) to open it in edit mode.
4. Click on the State Machine tab ![](https://2704613365-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxYaaXoZ4YGbVdAnAhdcE%2Fuploads%2FVjReHRUuCUx0IbGJzLmD%2F103.png?alt=media\&token=b4977391-045b-42b1-afec-8447a6b2670b) to open the State Machine creation UI.
5. Lay out your states and transitions as desired, using the functions outlined in the State Machine Builder User Interface.

## How the state machine runs

* In experience mode, the state machine starts from the entry node, which is set by the Entry Node dropdown.
* Anything in the Always Running State is checked at every transition.
* State machine nodes can affect any attribute, but each can have only one trigger to act as a transition. There is no limit to the number of conditions.
* States execute along the path of the transitions.

To see what each state can do, see [Actions](/hyperskill-studio-authoring/state-machine-reference/actions.md).
