Was this page helpful?
Welcome to the MBT Emote Menu documentation!
MBT Emote Menu is a premium NUI replacement for the rpemotes-reborn emote engine. It replaces the default NativeUI menu with a fully custom React interface while keeping full compatibility with rpemotes-reborn's emote library — no emote data migration needed, no breaking changes to existing setups.
Supports the full rpemotes-reborn emote library split into eight browseable categories: Emotes, Props, Dances, Shared, Expressions, Walk Styles, Animals, and Emojis. Each category can be individually shown or hidden from the menu.
Players can mark any emote as a favourite with a single click. The Favourites tab preserves both the selection and the custom sort order across sessions using KVP storage (no SQL required). A separate Recent tab automatically tracks the last 12 played emotes (configurable). Favourites can be reordered by dragging.
Drag any emote onto a numbered slot in the menu to bind it to a numpad key. Pressing the bound key plays the emote immediately without opening the menu.
Hold K (configurable) to open an 8-slot wheel. Two modes available: radial (flick the mouse toward a slot — default, like a weapon wheel) and linear (scroll to cycle through slots). Release to play the selected emote. Emotes are removed from a slot by pressing X while the wheel is open.
Create up to 4 named loadouts (configurable) that each bundle a complete Quick Bind slot set and Emote Wheel assignment. Switch between personas instantly from the settings panel — one click replaces all NUM1–NUM6 and wheel slots. Stored per-player via KVP.
| Layout | Description |
|---|---|
cinematic | Edge-docked, full-height panel that blends into the scene through a soft vignette |
default | Bounded, draggable floating panel — repositionable anywhere on screen |
Panel position (left/right) is independently configurable.
The browse view opens with a hero spotlight showing the single most-played emote across the whole server, on a rolling 7-day window. Purely aggregate — the server counts plays, never who played what. One click plays it. Configurable via MBT.Trending.
A 📍 button on each emote card lets you place an emote anywhere in the world before playing it. Click the pin, a transparent preview ped appears — move it with WASD, rotate with Q/E, raise or lower with R/G, then press Enter to walk over and play. Backspace cancels. Available on Emotes, Props, Dances, and Animals.
When you start a dance or shared emote, every player within a configurable radius gets a small anonymous pill ("Join: [emote] [Y]"). One key and they're doing the same emote. Your name is never shown. Each player can opt out with /mbt_openjoin off. Pills dismiss automatically when you stop the emote or walk away.
Walk near someone who is emoting and a floating bubble appears above their head with the emote name and a hotkey to copy it. Off by default — enable it with MBT.Features.WhatsThat = true.
When at least one other player is in range, a ribbon surfaces your most-played shared emotes at the top of the menu. One click opens the Partner Finder pre-aimed at the closest player.
Players can create named emote sequences that play automatically one after another. Playlists are stored client-side via KVP.
The Shared emotes category includes a built-in partner finder panel. Players search for nearby partners directly from the UI. When a partner is selected, the shared emote invitation is sent and tracked inline with an accept/decline popup.
Clicking the eye icon on any emote renders a live animated ped preview in your view only, showing exactly what the emote looks like before activating it. Other players keep seeing your character normally — the hide is local-only.
Six color tokens (Accent, Background, Card, Text, SubText, Border) are applied from MBT.Theme in config.lua. Every surface re-tints: the menu, the emote wheel, and all on-screen pills share the same accent color.
Built-in localization for English, Italian, Spanish, French, German, and Portuguese. Set MBT.Language in config.lua to the desired locale. Additional languages can be added by creating a new file in the locales/ folder.
Individual emotes can be restricted to specific server jobs. Players without the required job see the emote greyed out with a lock icon. Framework detection is automatic (ESX → QBox → QBCore → standalone) or can be forced explicitly.
MBT.BannedEmotes filters specific emotes from the catalog and from Open Join broadcasts, server-sideMBT.Features.AdultEmotes and MBT.Features.AbusableEmotes (both off by default)MBT.AntiSpam.CooldownMs, default 250ms)MBT.OpenJoin.MaxRecipients)/me and /do ChannelsConfigurable chat commands that float a styled pill above the author's head, visible to nearby players within a configurable range. Multiple pills per player stack vertically. Both the command name, range, label, and pill accent color are configurable per channel. The ProvidesRpText export lets other MBT resources detect and defer to this system automatically — no duplicate command conflicts.
A cinematic orbit camera opened from a camera button inside the menu. Drag to orbit around your ped, scroll to zoom, adjust FOV, toggle depth-of-field background blur, and switch between six timecycle look filters (None, Cinematic, Noir, Warm, Vibrant, Cool). Optional: post the shot to a Discord channel webhook with screenshot-basic. The Discord embed includes the player location, in-game time, a configurable server logo, and a caption.
Optional integration with mbt_meta_clothes and mbt_wearable_props. When enabled, the UI can surface relevant outfit/prop context while browsing emotes.
| Dependency | Notes |
|---|---|
| rpemotes-reborn | Required — MBT Emote Menu is a NUI frontend for this engine |
| OneSync | Required |
| FiveM Server Build 6116+ | Required |
| ox_lib | Optional — used for notifications if configured |
| screenshot-basic | Optional — required only for Photo Mode's "Send to Discord" button |
oxmysql is not required. All player data (favorites, recent, binds, playlists, wheel) is stored client-side via KVP — no database tables, no .sql files.
Designed for server owners who want a modern, polished emote interface without rebuilding their emote engine. If you already run rpemotes-reborn, you can install this resource alongside it in minutes — no configuration migration required.