Page cover image

๐ŸŽฑmad-magic8ball

Ask it a question and shake for answers to life's mysteries.

Tebex package

Introduction

A FiveM resource that adds a Magic 8 Ball item to your server, complete with a 3D model, animations, and customizable responses.

Preview

Watch the preview video to see mad-magic8ball in action, or view the screenshots below.

mad-magic8ball YouTube preview

Features

  • ๐ŸŽฑ Interactive 3D Magic 8 Ball model with realistic animations and prop

  • โœ’๏ธ Customizable responses

  • ๐ŸŽ’ Item usable from inventory

  • ๐Ÿ“ข Command to use the Magic 8 Ball without needing the item

  • ๐Ÿ‘จโ€๐Ÿ’ป Configurable settings


How to Use

As an Item

The Magic 8 Ball can be used as an inventory item. The item name is configurable in config.lua.

  1. Players can use the Magic 8-Ball item from their inventory

  2. When used, a 3D Magic 8-Ball will appear on screen

  3. Click on the ball to shake it and receive a random prediction

  4. Press ESC to close the UI

Using a Command

You can also use the Magic 8 Ball via a command:

  • Default command: /magic8ball


Dependencies


Supports

  • qb-inventory

  • ox_inventory

  • any other inventories - follow the instructions below


Installation

  1. Ensure you have the required dependency

  2. Place the folder in your server's resources directory

  3. Add start mad-magic8ball to your server.cfg

  4. Configure the config.lua file to match your server's needs

  5. If using the item, follow the instructions below

Adding the Item to Inventory

An item image is included in the INSTALL directory. Add this to your inventory's web image folder.

For QB-Core/QB-Inventory

Add the item to your qb-core/shared/items.lua file:

magic8ball = { name = 'magic8ball', label = 'Magic 8-Ball', weight = 100, type = 'item', image = 'magic8ball.png', unique = false, useable = true, shouldClose = true, description = "Ask it a question and shake for answers to life's mysteries."},

For ox_inventory

Add the following to your ox_inventory/data/items.lua file:

['magic8ball'] = {
    label = 'Magic 8-Ball',
    weight = 100,
    stack = true,
    close = true,
    description = "Ask it a question and shake for answers to life's mysteries.",
    client = {
        export = 'mad-magic8ball.magic8ball'
    }
},

For Other Inventory Systems

If you're using a another inventory system, you can integrate the Magic 8 Ball by triggering the client event:

-- Server-side: When your inventory system handles item usage
RegisterServerEvent('your-inventory:useItem')
AddEventHandler('your-inventory:useItem', function(itemName)
    local src = source
    if itemName == 'magic8ball' then
        TriggerClientEvent('mad-magic8ball:use', src)
    end
end)
-- Client-side: Alternative integration method
-- Call this function when your inventory item is used
function YourInventory.UseItem(itemName)
    if itemName == 'magic8ball' then
        TriggerEvent('mad-magic8ball:use')
    end
end

Configuration

All settings can be found in config.lua:

mad-magic8ball config

Support

Join our Discord community for support, regular updates and to request new features.


Escrow Protection

This resource is protected by FiveM's escrow system to safeguard against unauthorised distribution. The core functionality is secured while maintaining full customisability through the extensive configuration system.

Despite the security measures:

  • All configuration options remain fully editable.

  • Server owners retain complete control over all settings.

  • No functionality is limited by the protection system.

This approach ensures you receive a premium, leak-protected resource while maintaining the freedom to customise it for your server's unique needs.

Last updated