> For the complete documentation index, see [llms.txt](https://soulslike-framework.isik.vip/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://soulslike-framework.isik.vip/workflow/editor.md).

# Creating & Editing Actions

<div data-full-width="false"><figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2FBojxsAI4GflFeeJO0Wn5%2Fimage.png?alt=media&amp;token=53c29db8-1dce-4d81-b54e-19decb67b4d2" alt=""><figcaption></figcaption></figure></div>

In Soulslike Framework, everything can be considered an Action. Provided with the project are multiple example Actions that you can inspect.

Actions work hand-to-hand with the [**Input Buffer Component**](/components-managers/player-specific-components/input-buffer.md)**.** That means they can be queued & consumed.&#x20;

### Using the Utility Tools to Create/Edit Actions

1. Run the **Soulslike Action Creator** from the Soulslike Framework editor dropdown, or head into **/SoulslikeFramework/\_Utility/Creators** and right-click and Run Utility Widget -> **EUW\_ActionCreator:**

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2F2q9BgJ9UDVfFBbhl16m4%2Fimage.png?alt=media&amp;token=66c227a1-614b-4692-9259-0306cf98bf97" alt=""><figcaption></figcaption></figure>

2. Fill in the details as you desire:

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2F6WSIzaKOYWTqbJNCEuPB%2Fimage.png?alt=media&amp;token=d4fb7779-972f-44c3-8940-2bea2c436f00" alt=""><figcaption></figcaption></figure>

3. Click **Create Action** to generate the related assets.
4. Now, run the **Soulslike Action Browser** from the Soulslike Framework editor dropdown or head into **/SoulslikeFramework/\_Utility/Browsers** and right-click and Run Utility Widget -> **EUW\_ActionBrowser:**

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2F3pDwaB4VdCgUlp9ztnF4%2Fimage.png?alt=media&amp;token=538ff3a4-212d-4243-9b42-1a92354f40fb" alt=""><figcaption></figcaption></figure>

3. Find your action and select it in the Browser. Double-check its properties to ensure everything is correct. Then click **"Open Logic"** to open the Action's logic asset:

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2FocHaPwytpjVpddn7XSLQ%2Fimage.png?alt=media&amp;token=d63e03a6-4985-4c9b-a3bf-458cdeacaf31" alt=""><figcaption></figcaption></figure>

6. If the assets opens in Data-Only mode, click the **Open Full Blueprint Editor** text.

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2FkfQqt5wZwpDamhenLPR8%2Fimage.png?alt=media&amp;token=b123a2f4-aac8-4783-bac4-e87c3ed626ae" alt=""><figcaption></figcaption></figure>

7. Go to the **Functions** tab and override `ExecuteAction():`&#x20;

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2Fh5jNaSuTnUXyuRk49YVm%2Fimage.png?alt=media&amp;token=11ea8657-1040-449b-9a61-98a2e2fb5adb" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2FAPjEhyAVWjmBHqeSnVAa%2Fimage.png?alt=media&amp;token=00a2bd87-ee55-4c62-aaab-e9b6a6bf320b" alt=""><figcaption></figcaption></figure>

8. (Optional) You can also add a new event graph and override the **Event** version of the method:

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2FBF5S1BBBbMmTdqMOITiz%2Fimage.png?alt=media&amp;token=007de8ff-bb22-4b4e-86ed-b1ad617186ba" alt=""><figcaption></figcaption></figure>

8. Next up, we need to let our [**Action Manager**](/components-managers/player-specific-components/action-manager.md) know that we want to initialize this new Action. Head inside **B\_Soulslike\_Character** and select **AC\_ActionManager:**

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2FsxwCAhsC8xpMgfNtfEhT%2Fimage.png?alt=media&amp;token=98a32732-06ab-4ca2-b3a0-cd2cfc6f191d" alt=""><figcaption></figcaption></figure>

{% hint style="danger" %}
If you are using an **Override Table**, the **Actions map will be overridden.**&#x20;
{% endhint %}

10. Create a new Gameplay Tag for your action. Then, add your new Action to either the **table** or the **Actions map** using the new Gameplay Tag & Action Data Asset:

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2FlWPuciWLods1aLRbr1ju%2Fimage.png?alt=media&amp;token=203206b4-0399-4943-a239-133122463a7a" alt=""><figcaption></figcaption></figure>

11. Finally, using performing the Action **(Inside B\_Soulslike\_Character):**

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2FNnJ8OHUbJEZm5QvPY6JI%2Fimage.png?alt=media&amp;token=a1d4f444-3a81-44d5-8e61-faf8e9f70dd3" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2F46umjqe99V2nC1EJ8DMw%2Fimage.png?alt=media&amp;token=1bd21fe1-5e58-40f3-9e70-38eb4f154704" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3303637552-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOAGs3il6rJbkejwPOlEP%2Fuploads%2FLyO0AxSX2tTb1v8JEkFC%2Fimage.png?alt=media&amp;token=e05cc497-60ef-4b52-82ce-809b12a9d86d" alt=""><figcaption></figcaption></figure>
