[Free] MCan Dice

:sparkles: MCan Dice | QBCore, ESX & Standalone :sparkles:

mcan_dice_gif

Are you ready to bring a whole new level of IMMERSIVE ROLEPLAY to your server? :game_die:

Introducing MCan Dice, the ultimate dice rolling system built with realistic 3D props, cinematic throw animations, and pixel-perfect multiplayer sync. Whether your players are gambling in back alleys, settling disputes with a roll, or just having fun — this script delivers a premium, polished experience that feels like it belongs in the base game!

Featuring manual trajectory physics, wall & surface detection, framework integration, and item support, MCan Dice is the most complete dice system available for FiveM.


:glowing_star: CORE FEATURES :glowing_star:

This resource has been built from the ground up to deliver a premium-quality experience:


:game_die: 1. Realistic 3D Dice Props

  • Custom High-Quality Model: Uses a detailed mev_dice 3D prop that looks and feels authentic in the GTA V world.
  • Accurate Face Rotations: Each die lands and smoothly rotates to display the correct face — no fake numbers, the prop itself shows the result!
  • Floating 3D Text: Results are displayed as clean, distance-aware 3D text above each die with configurable scale, font, color, outline, and shadow.

:bullseye: 2. Advanced Throw Physics

  • Manual Trajectory System: Dice follow a realistic parabolic arc with spin, bounce effects, and randomized spread — no native GTA physics jank.
  • Wall Detection: Raycasts prevent dice from flying through walls. If you throw toward a wall, the dice bounce back realistically.
  • Surface Detection: Downward raycasts detect tables, desks, counters, and other objects — dice land ON surfaces, not through them.
  • Multi-Dice Spread: Throwing 2 or 3 dice spreads them naturally with side offsets for a realistic scatter pattern.

:counterclockwise_arrows_button: 3. Perfect Multiplayer Sync

  • Position-Synced Throws: The thrower calculates exact landing positions and sends them to all nearby players via the server — everyone sees dice land in the exact same spot.
  • Distance-Limited Rendering: Dice props and 3D text are only rendered within a configurable distance (default: 10m), saving performance.
  • Synced Pickup: When a player picks up their dice, they disappear for all nearby players simultaneously.
  • No Entity Duplication: Uses local (non-networked) objects to prevent the classic FiveM “double entity” sync bug.

:speech_balloon: 4. Chat Integration

  • Automatic /do Message: When dice settle and results appear, the script automatically executes a /do command — results are shown to nearby players through your server’s existing proximity chat system.
  • Delayed Timing: The chat message only appears when the 3D text shows up (after the dice settle), not instantly when thrown.
  • Togglable: Easily enable or disable chat announcements in the config.

:package: 5. Item & Inventory Support

  • Three Item Tiers: dice (1 die), dice_2 (2 dice), dice_3 (3 dice) — use items from your inventory to roll!
  • Reusable Items: Dice items are NOT consumed on use — players keep their dice after rolling.
  • Multi-Inventory Support: Built-in compatibility with qb-inventory, core_inventory, and native framework inventories.
  • Custom Inventory Ready: Clearly documented bridge file makes adding your own inventory system a breeze.
  • Optional: Item support can be toggled off — use commands or exports only if you prefer.

:globe_showing_europe_africa: 6. Localization

  • Multi-Language: Ships with full English and Turkish translations.
  • Easy to Extend: Add your own language by creating a simple Lua file in the locales/ folder.
  • Global L() Function: All text strings use the shared localization system — nothing is hardcoded.

:gear: CONFIGURATION & CUSTOMIZATION

We believe in flexibility. The following parts are fully open-source (un-escrowed):

  • config.lua: Framework selection, commands, items, exports, chat, cooldown, 3D text styling, pickup distance, render distance, dice lifetime — everything is configurable.
  • locales/: Pre-configured English and Turkish. Easily add your own localizations.
  • bridge/: Framework and inventory abstraction layer. Supports QBCore, ESX, and Standalone out of the box. Add custom inventories with a few lines of code.
  • Multi-Framework Support: Works seamlessly with QBCore, ESX, and Standalone setups.

:hammer_and_wrench: REQUIREMENTS

This script is lightweight and has minimal dependencies:

  • A FiveM server (that’s it!)
  • Optional: QBCore or ESX for item & notification support

:bust_in_silhouette: CREDITS


:shopping_cart: Download


:shopping_cart: Upgrade your server’s roleplay experience today with MCan Dice!

Code is accessible
Subscription-based
Lines (approximately)
Requirements
Support
6 Likes

No one else has it. successful

2 Likes

Nice idea

1 Like

It is kinda buggy, if I separately do 2 action to throw 2 dices, the second one is consumed but not thrown, and picking up only picks 1, meaning that the other one just gets lost into the abyss.

1 Like

Hi! Thank you for bringing this bug to my attention. I am already working on the dice throwing and pickup logic. A quick fix is on the way and will be shared in a new update very shortly.