😎EMOTE UI

⚡ Important: Full RPemote Compatibility

Emote is 100% compatible with RPemote's basic emote system. All standard RPemote commands and emotes work seamlessly with Emote. You can use the same commands (/e, /emote, /walk, etc.) and all RPemote emotes are fully supported. Emote extends RPemote's functionality with additional features like a modern UI, shared emotes, sequences, adjustment system, and much more, while maintaining complete backward compatibility.

📋 Description

Emote is a complete and professional animation system for FiveM, offering over 2300+ emotes organized into different categories. The script features a modern user interface, advanced customization features, and full integration with ESX, QBCore frameworks, or Standalone mode. Built on RPemote's foundation, Emote maintains full compatibility while adding powerful new features.

✨ Main Features

🎭 Complete Emote System

  • 2300+ Emotes organized into 10 categories:

    • Emotes: General animations

    • Dances: Dance animations

    • Props: Emotes with objects

    • Shared: Synchronized emotes between players

    • Walks: Custom walking styles

    • Gang Signs: Gang signs

    • Couple: Two-person emotes

    • Expressions: Facial expressions

    • +18: Adult content (optional)

    • Vehicles: Motorcycle-specific emotes

🎨Modern User Interface

  • Interactive menu accessible via F3 (configurable)

  • Advanced search to quickly find an emote

  • Favorites system with drag-and-drop

  • Full customization:

    • Interface colors (primary/secondary)

    • Menu position (left/center/right)

    • Predefined colors (red, green, yellow, blue, purple)

  • Quick menu (F4) to access favorites and sequences

🌍Multilingual Support

  • 3 languages available: English (en), French (fr), Spanish (es)

  • Locale system configurable in shared/_main.lua

  • Complete translations of interface and in-game messages

  • Dynamic category translations

🎯Advances Features

Sequence System

  • Creation of custom animation sequences

  • Configurable delay between each emote (max 10 seconds)

  • Save and load named sequences

  • Quick access via F4 menu

  • Management of multiple saved sequences

Emote Adjustment System

  • Precise adjustment of emote positions

  • 3D Gizmo for intuitive manipulation:

    • Translation (W) - Move the emote

    • Rotation (R) - Rotate the emote

    • Local/World mode (Q) - Change reference frame

    • Selection (Left click) - Select axis

    • Validation (Enter) - Confirm position

  • Safety limits (max distance, max height)

  • /adjust command or right-click on an emote

  • Return to starting position if cancelled

Clone Ped (Preview)

  • Real-time visualization of the emote before playing it

  • Position adjustment via sliders in settings:

    • Height - Adjust clone height

    • Position X/Y - Move horizontally

    • Rotation - Rotate the clone

  • Parameter saving in preferences (KVP)

  • Toggle with eye button in main menu

  • Camera synchronization for dynamic positioning

  • Adjustable transparency based on distance

Shared Emotes

  • Synchronization system between players

  • Invitation via /nearby [emote] command

  • Accept/Decline with E/L keys (10 seconds to respond)

  • Props support for shared emotes

  • Automatic second clone for visualization

  • Offset management for relative positioning

  • Shared dance emotes support

  • Automatic cleanup after 5 seconds

Props System

  • Automatic management of objects for emotes

  • Bone attachment to character

  • Precise placement with configurable offsets

  • Automatic cleanup on cancellation

  • Multi-props support for certain emotes

🎮Controles and Commands

Main Commands

  • /e [name] or /emote [name] - Play an emote

  • /emotemenu - Open animation menu

  • /cancelemote or /e c - Cancel current emote

  • /walk [name] or /w [name] - Change walking style

  • /walk reset - Reset walking style

  • /nearby [name] - Invite nearby player to shared emote

  • /adjust - Adjust position of current emote

Keyboard Shortcuts

  • F3 - Open animation menu (configurable)

  • F4 - Open quick menu (favorites/sequences)

  • X - Cancel current emote (if enabled)

  • CapsLock - Play favorite emote (if set)

Emote Binds

  • Integrated bind system to assign keys

  • Standard keyboard and numpad support

  • Graphical interface for configuration

  • Persistent bind saving

🎪 Special Features

Ragdoll

  • Activation/Deactivation via /ragdoll command or configured key

  • Configurable toggle mode

  • Default key: +

  • Synchronization with other players

Pointing

  • Finger pointing with synchronization

  • Disabled while crawling (error message)

  • Option to enable/disable in vehicles

  • Default key: B

  • Smooth and realistic animation

Hands Up

  • Raise hands with synchronization

  • Available in vehicles (optional)

  • Default key: Y

  • Toggle mode available

Crouching

  • Realistic crouching system

  • Configurable FPS mode (disables crouching in 3rd person view)

  • Stealth mode disable (optional)

  • Default key: LControl

  • Smooth animation with transitions

Crawling

  • Crawling with smooth animations

  • Default key: RControl

  • Compatible with emote system

  • Blocks certain actions while crawling

Binoculars

  • Binoculars system with night vision and thermal vision

  • Toggle between vision modes (if enabled)

  • /binoculars command

  • Showable/hideable instructions

  • Exit with ESC or command

  • Thermal and night vision separately configurable

🛠️Framework Integration

Multi-Framework Support

  • ESX - Full support

  • QBCore - Full support

  • Standalone - Autonomous mode without framework

Configuration

📦 Available Exports

Client-Side

Server-Side

The script exposes network events for synchronizing emotes between players.

Network Events

Client → Server:

  • ServerEmoteRequest - Send shared emote request

  • ServerValidEmote - Validate accepted shared emote

  • emote:GetLastFromTarget - Get last emote played by a player

  • emote:GotLastPlayed - Send last played emote

Server → Client:

  • ClientEmoteRequestReceive - Receive shared emote request

  • SyncPlayEmote - Synchronize emote with another player

  • SyncPlayEmoteSource - Synchronize source emote

  • emote:GetLastPlayedForTarget - Request last played emote

  • emote:PlayOtherPlayerAnim - Play another player's animation

  • emote:PlayEmoteByName - Play emote by name

  • emote:deleteClonePed - Delete clone ped

  • emote:destroyCloneProps - Destroy clone props

⚙️ Advanced Configuration

Adjustment Settings

General Settings

🎨Interface Customization

Colors

  • Custom color: Free choice of primary/secondary colors

  • Predefined colors: Red, Green, Yellow, Blue, Purple

  • Default color: Return to original colors

Menu Position

  • Left: Menu aligned to left

  • Center: Centered menu

  • Right: Menu aligned to right (default)

📚 File Structure

🚀Installation

  1. Download the script to your resources folder

  2. Configure the framework in shared/_main.lua

  3. Configure the language in shared/_main.lua (Config.Locale)

  4. Add to server.cfg:

  5. Restart the server

🎨 Animation Options

Texture Variants

  • Variant support for certain emotes

  • Allows changing prop appearance

  • Management via PlayEmoteByName export with textureVariation parameter

Emote Options

  • EmoteLoop: Infinite loop animation

  • EmoteMoving: Allows movement during animation

  • EmoteDuration: Specific animation duration (in milliseconds)

  • NoAnimation: Disables animation (for certain special emotes)

  • Prop: Object name to use

  • PropBone: Prop attachment bone

  • PropPlacement: Prop position and rotation

  • Attachto: Attach entity to another (for shared emotes)

📝 Important Notes

  • The script requires asset packs for props

  • Expressions and walking styles are saved after disconnect (if enabled)

  • Shared emotes require both players to be close (< 3m)

  • Emote binds are saved locally

  • Emotes in vehicles play only upper body part

  • The script automatically disarms player when playing emote (if enabled)

  • Props are automatically cleaned up when cancelling emote

  • Clone ped follows camera in real-time for optimal positioning

  • Emotes with scenarios use GTA V native scenario system

  • Texture variants are supported for certain emotes with props

  • The system automatically detects player gender for certain emotes

🎯 Use Cases

For Players

  • Immersive RP: Over 2300 animations to enrich roleplay

  • Customization: Fully customizable interface

  • Speed: Quick access via favorites and binds

  • Sharing: Synchronized emotes with other players

For Developers

  • Exports: Complete API for integration

  • Events: Event system for synchronization

  • Configuration: Extensible parameters

  • Modular architecture: Organized and maintainable code

🔒 Security and Performance

  • Server validation: Shared emote verification

  • Distance limits: Protection against abuse (3m for shared emotes)

  • Automatic cleanup: Props and entity removal

  • Error handling: Robust handling of edge cases

  • Memory optimization: Emotes loaded in batches (50 per batch)

  • Timeout management: 10 second timeout for shared emote invitations

  • Spam protection: Validation system to prevent abuse

  • Scenario cleanup: Automatic removal of scenario objects

Last updated