# Custom Emotes & Props

## Animations 🕺

Animations can be added to rpemotes-reborn by simply downloading or purchasing them from the multitude of creators that exist, and inserting them in the `[Custom Emotes]` folder found within rpemotes-reborn ' `stream` folder.

Simply create a new folder and name it whatever you like, then add the animations inside of this file. For example sake, here are animations from talented creator [Struggleville](https://www.gta5-mods.com/users/struggleville):

<figure><img src="https://1129454017-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdObeBabUWQIqWLqFDRgW%2Fuploads%2FB0xwo88C5S18ukkdRqx1%2FStruggleville.png?alt=media&#x26;token=4e669050-e7ff-4c08-9543-e1992d1e710a" alt="" width="563"><figcaption><p>Animation files provided by talented creator, 'Struggleville' of GTA5Mods 🙏</p></figcaption></figure>

One of the great things about creators such as Struggleville or [Darks Animations](https://www.gta5-mods.com/users/Darks%20Animations) is that they provide information which we can use within RPEmotes or FiveM in general. \
\
Other people, may only simply provide a txt file and tell you to paste something into Menyoo's FavoriteAnims. We'll touch on this later:

<figure><img src="https://1129454017-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdObeBabUWQIqWLqFDRgW%2Fuploads%2F7AP8EMAV9hiS4TJOrsha%2FAnimations.png?alt=media&#x26;token=e6febe56-93db-48e6-ac0d-6b4f409661f6" alt=""><figcaption><p>Animation dictionaries and names, provided by some popular GTA5Mods members</p></figcaption></figure>

In the screenshot below, we can see that the `/e` command for this animations is `laydownsexy` and that the animation dictionary is `anim@female_laying_sexy` while the animation itself is `laying_sexy_clip`. You can also see that we have given it the `EmoteLoop` command, a start delay of 700 milliseconds, as well as an[ "Exit Emote"](https://rpemotes-reborn.gitbook.io/rpemotes-reborn/for-developers/important-note/exit-emotes):&#x20;

<figure><img src="https://1129454017-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdObeBabUWQIqWLqFDRgW%2Fuploads%2FvYhPbnJjmzcwW5TQeIji%2FStruggleville2.png?alt=media&#x26;token=07dff111-fe4d-4994-8676-e8c5c1e78524" alt=""><figcaption><p>A brief explanation of the code</p></figcaption></figure>

***

## AnimationListCustom.lua:

At first glance, the file will be empty and may appear somewhat intimidating.\ <br>

<figure><img src="broken-reference" alt=""><figcaption><p>An empty template for adding your own expressions, walk styles, shared emotes, dances, animal, prop and exit emotes.</p></figcaption></figure>

\
To add your animations, simply pay attention to the tables within the file. Custom Expressions, Walks, Shared Emotes, and so on. For this example, we are going to simply add a dance animation and call it "Test".

Simply remove the `}` from the `CustomDP.Emotes` table and add the following:

<figure><img src="https://1129454017-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdObeBabUWQIqWLqFDRgW%2Fuploads%2FaojP4UV0NzYt2DHpPxpJ%2Fexample.png?alt=media&#x26;token=2a7f747d-621e-4bae-a782-5310d0588b4a" alt=""><figcaption></figcaption></figure>

Simply go in game and type `/e test` and your character should now begin to perform the animation of which we have added.\
\
**Final Note:** `AnimationListCustom.lua` and `BackUpAnimationListCustom.lua` files from versions prior to version 1.5.0 are not compatible with version 1.5.0, and files from version 1.5.0 are not backwards compatible with versions prior to version 1.5.0. To retain any custom animation code from previous versions, copy over any customizations into the `AnimationListCustom.lua` file that is included in the current version.

***

## Prop Emotes 🍔

Custom Props can be streamed to rpemotes-reborn!

Prop emotes can be difficult to get right, especially the rotation. To figure out the rotation and placement of animations and props, [Menyoo](https://github.com/Hakkodevelopment/MenyooFiveM/releases) can be used, or a variety of other prop and animation dev utils are available for FiveM.

Once updated and working, you can&#x20;

* Right click your FiveM desktop icon, and select `Open file location`
* Select `FiveM Application Data`
* Put the `menyoo.asi` file in the `plugins` folder. If the `Plugins` folder doesn’t exist, create one.
* Press F8 twice in game. This can be changed to another key by opening the config file found in `MenyooStuff`. Google to find what keyboard key is what number, and change it to that.

{% embed url="<https://www.youtube.com/watch?v=onN6yr3BXc8>" %}
How To Install Menyoo To FiveM Sever
{% endembed %}

***

## FiveM & Scripthook ⚙️

**THE SERVER WILL NEED TO HAVE SCRIPTHOOK ENABLED FOR IT TO WORK, IF YOU ARE NOT THE SERVER OWNER, DON’T BOTHER, OR TRY AND FIND A SERVER WITH SCRIPTHOOK ALLOWED.**

If you are the server owner, you can enable scripthook in the server.cfg file under the following. You do **NOT** need to download anything.

```lua
# This allows players to use scripthook-based plugins such as the legacy Lambda Menu.
# Set this to 1 to allow scripthook. Do note that this does _not_ guarantee players won't be able to use external plugins.
sv_scriptHookAllowed 0
```

Alternatively, you can enable scripthook in the F8 console by typing `sv_scriptHookAllowed 1`. **Again, you need to be the server owner or have access to commands.**

***

## Prop Emote Example 🗑️

Here you can see I have applied the animation `_idle_garbage_man`, within the directory `missfbi4prepp1`.

<figure><img src="https://1129454017-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdObeBabUWQIqWLqFDRgW%2Fuploads%2Fx5wLHJGjr3Gvmcfa0q8O%2Fprop000.jpeg?alt=media&#x26;token=b5da7cc5-f453-4b2c-b392-ba17e64b43ae" alt=""><figcaption><p>A "prop emote" example using the garbage man prop and animation, attached to the players' arm</p></figcaption></figure>

I have also attached the prop `prop_cs_street_binbag_01` to the `Right Wrist` bone:

<figure><img src="https://1129454017-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdObeBabUWQIqWLqFDRgW%2Fuploads%2FrOtePDJ2vahieSV0gqg8%2Fprop001.jpeg?alt=media&#x26;token=7f584af6-b075-45af-aaab-ae93e2ec899a" alt=""><figcaption><p>"Right Wrist" bone used to attached the garbage bag prop to the ped</p></figcaption></figure>

If we scroll through the list of bones, we should see that another bone name has been ticked ☑️ In this case, the name is `PH_R_Hand.`

## Converting Pitch, Roll And Yaw 🔁

The Pitch, Roll and Yaw within Menyoo will need to be converted to with with rpemotes-reborn. You can visit this [website ](https://www.andre-gaschler.com/rotationconverter/)to easily do so.

Your **XYZ** in Menyoo is fine and can be used in rpemotes-reborn, however we will need to convert the **Pitch, Roll and Yaw**.&#x20;

On the **Input** side, you want to select **Degrees**, then in the **Euler angle** section, select `"ZXY"` order, which is what Menyoo uses. On the **Output** side, also select **Degrees**, then in the **Euler angle** section, select `“YZX”` order, which is what rpemotes-reborn uses. Input Menyoo’s **Pitch, Roll and Yaw** into the **X Y and Z fields**. Copy the values for X, Y, and Z from the **Euler angles** (degrees) section on the **Output** side. Enter those values into your dpemotes **AmimationListCustom.lua** PropPlacement field after your Menyoo X, Y and Z. If it’s a long number like 123.4567890, you can get away with just 123.456.

<figure><img src="https://1129454017-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdObeBabUWQIqWLqFDRgW%2Fuploads%2F1PPR3m0GWK0vEp81tX56%2Fconverter.png?alt=media&#x26;token=d537beb5-226b-40c2-85f4-1324be0e28f1" alt=""><figcaption><p>3D Rotation Converter</p></figcaption></figure>
