Export and use it
Playing it in game
Unzip the download into a folder in resources, add one line to server.cfg and restart. Then type the command in chat, or play it from your own script or menu.
What is in the zip
The download is named after your animation, friendly_wave.zip for the wave. The files sit directly in the zip, without a folder around them:
client.lua
fxmanifest.lua
stream/friendly_wave.ycdstream/friendly_wave.ycdThe animation dictionary with your clip in it.fxmanifest.luaRegisters the resource and its client script. Nothing to edit.client.luaRegisters the chat command/friendly_wave, loads the dictionary and plays the clip on your ped.
Install the resource
- 1
Make a folder in resources
In your server's
resourcesdirectory, create a folder for the animation, for examplefriendly_wave. The folder name does not change the command. - 2
Unzip into it
Put the contents of the zip into that folder, so it holds
fxmanifest.lua,client.luaand thestreamfolder directly. - 3
Add it to server.cfg
ensure friendly_wave - 4
Restart the server
Restart the whole server and reconnect. Animations register when the server starts; a resource restart or
refreshis not enough. Then type/friendly_wavein chat.
The result page lists the same steps under Animation resource ready.
Command, dictionary and clip
All three carry the name of the animation:
Chat command
/friendly_waveAnimation dictionary
friendly_waveClip
friendly_wave
The command plays the clip on repeat until another task takes over the ped, such as another animation. Every builder export is its own resource, so any number of them can run side by side.
In scripts and emote menus
A builder clip plays like any GTA animation: load the dictionary, then start the clip on the ped. This plays the wave once; use 1 instead of 0 after -1 to repeat it, as the chat command does:
local dict, clip = 'friendly_wave', 'friendly_wave'
RequestAnimDict(dict)
while not HasAnimDictLoaded(dict) do Wait(10) end
-- flag 1 repeats until the ped gets another task, 0 plays once
TaskPlayAnim(PlayerPedId(), dict, clip, 8.0, -8.0, -1, 0, 0, false, false, false)Emote menus such as dpemotes and rpemotes, and trainers such as Menyoo, take the dictionary and clip name the same way. The steps are on the AI Animations page: Emote menus and Menyoo. For the wave, the Menyoo line is:
<Anim dict="friendly_wave" name="friendly_wave" />Good to know
The resource does not depend on a framework. It runs the same on ESX, QBCore, Qbox or a server without one.