Jump to content

Local voice chat


Tekken

Recommended Posts

Posted

I have default voice chat from mta team, and anybody can hear it, but i want to be only local on 50 meters how i can do it ?

Resources I made:

Do not PM me for help with leaked scripts! I WILL NOT HELP YOU!

 

Posted

Maybe you can change dxDrawVoice distance to something like that

local local_Voice_range = 50 

then you can ad this

if  (getDistanceBetweenPoints3D(camX, camY, camZ, headX, headY, headZ)<= local_Voice_range) then 
  
-- Your code here  
  
  

Failure is simply an opportunity to begin again more intelligently - Henry Ford

Posted

I wouldn't bother, the voice resource needs significant updating.

I once made a resource for it which let you create rooms, and only people within the rooms would hear one another. But the volume of that voice resource is so ridiculously quiet - it's practically of no use whatsoever.

Unless they've fixed it since I brought it up :lol:

If I help you in a thread and you need further assistance, please don't PM me - use the thread you created instead. This way everyone on the forum can take advantage of it.

Posted
I wouldn't bother, the voice resource needs significant updating.

I once made a resource for it which let you create rooms, and only people within the rooms would hear one another. But the volume of that voice resource is so ridiculously quiet - it's practically of no use whatsoever.

Unless they've fixed it since I brought it up :lol:

Your resource is exactly wath i need.., you have ti now ?

Resources I made:

Do not PM me for help with leaked scripts! I WILL NOT HELP YOU!

 

Posted

i tried like this:

addEventHandler ( "onClientPlayerVoiceStart", root, 
    function() 
        local voice_range = 50 
        local distance = getDistanceBetweenPoints3D (camX, camY, camZ, headX, headY, headZ) 
        if distance <= voice_range then 
            voicePlayers[source] = true 
        end 
    end     
) 

  • Like 1

Resources I made:

Do not PM me for help with leaked scripts! I WILL NOT HELP YOU!

 

Posted

it's not correct simply because u didn't add camX , CamY , camY , headX, headY , headY more than that i think SkatCh got confused between Draw voice image and the voice.

it can be like this:

local voice_range = 50 
  
addEventHandler ( "onClientPlayerVoiceStart", root, 
    function() 
       if (source and isElement(source) and getElementType(source) == "player") then 
        local sX, sY, sZ = getElementPosition(localPlayer) 
        local rX, rY, rZ = getElementPosition(source) 
        local distance = getDistanceBetweenPoints3D(sX, sY, sZ, rX, rY, rZ) 
        if distance <= voice_range then 
            voicePlayers[source] = true 
        end 
     end 
  end     
)  

Do not yield your back to your enemy, might feel something strange in your ass.

Two things are infinite the universe and human stupidity and i'm not sure about the universe.

UF: IsTextInGridList | GetGridListRowIndexFromText | Table.removeValue | removeHex | dxDrawTriangle

Skype: SaSuki102 | About Me | Youtube channel | Lua Tips & Tricks | Lua Strings | Lua Tables | Lua Operators

Posted

Try

  
local voice_range = 50 
  
addEventHandler ( "onClientPlayerVoiceStart", root, 
    function() 
       if (source and isElement(source) and getElementType(source) == "player") and localPlayer ~= source then 
        local sX, sY, sZ = getElementPosition(localPlayer) 
        local rX, rY, rZ = getElementPosition(source) 
        local distance = getDistanceBetweenPoints3D(sX, sY, sZ, rX, rY, rZ) 
        if distance <= voice_range then 
            voicePlayers[source] = true 
        end 
     end 
  end     
)  
  

Currently developing for International Gaming Community - Join us!

Posted

Now nowbody can hear me

local range = 50 
  
addEventHandler ( "onClientPlayerVoiceStart", root, 
function() 
    if (source and isElement(source) and getElementType(source) == "player") and localPlayer ~= source then 
        local sX, sY, sZ = getElementPosition(localPlayer) 
        local rX, rY, rZ = getElementPosition(source) 
        local distance = getDistanceBetweenPoints3D(sX, sY, sZ, rX, rY, rZ) 
        if distance <= range then 
            voicePlayers[source] = true 
        else 
            voicePlayers[source] = nil 
        end 
    end 
end     
) 

Resources I made:

Do not PM me for help with leaked scripts! I WILL NOT HELP YOU!

 

Posted

Found it, thank you guys for the support :D

local range = 50 
  
addEventHandler ( "onClientPlayerVoiceStart", root, 
function() 
    if (source and isElement(source) and getElementType(source) == "player") and localPlayer ~= source then 
        local sX, sY, sZ = getElementPosition(localPlayer) 
        local rX, rY, rZ = getElementPosition(source) 
        local distance = getDistanceBetweenPoints3D(sX, sY, sZ, rX, rY, rZ) 
        if distance <= range then 
            voicePlayers[source] = true 
        else 
            cancelEvent()--This was the shit 
        end 
    end 
end 
) 

Resources I made:

Do not PM me for help with leaked scripts! I WILL NOT HELP YOU!

 

  • 2 years later...
Posted
11 hours ago, UltraGaming said:

Well I am trying this and now everyone can hear me every where I am even with the last reply.

Posted February 11, 2015

- Hashemite Kingdom Of Jordan -

Posted
On 28-2-2017 at 04:36, UltraGaming said:

Well I am trying this and now everyone can hear me every where I am even with the last reply.

Did you put this client side?

Nothing is impossible when you acquire the knowledge
 
Posted

If you want it very sophisticated, it won't be as easy as setting down the volume. My brother made a 3D-position-local VOIP which also calculates all sound pan from camera to source. It was a pain in the arse, so idk if he'll share it for free.

If I helped, leave a "Thanks".

Posted

I'll take a look on this cause i might use it within Dynasty Network to use this ingame For normal local chat and Group chat rooms

Nothing is impossible when you acquire the knowledge
 
  • 4 months later...
Posted

I know it's old, but i'm trying to i mean they said they achieved it which i highly doubt because all the servers would be flooded with voice chats.

Posted
10 hours ago, Resmurf said:

I know it's old, but i'm trying to i mean they said they achieved it which i highly doubt because all the servers would be flooded with voice chats.

  
local nearbyPlayers = {} 
  
addEventHandler("onPlayerVoiceStart", root, 
    function() 
        local r = 50 
        local posX, posY, posZ = getElementPosition(source) 
        local chatSphere = createColSphere(posX, posY, posZ, r) 
        nearbyPlayers = getElementsWithinColShape(chatSphere, "player") 
        destroyElement(chatSphere) 
        local empty = exports.voice:getNextEmptyChannel() 
        exports.voice:setPlayerChannel(source, empty) 
        for index, player in ipairs(nearbyPlayers) do 
            exports.voice:setPlayerChannel(player, empty) 
        end 
    end 
) 
addEventHandler("onPlayerVoiceStop", root, 
    function() 
        exports.voice:setPlayerChannel(source) 
        for index, player in ipairs(nearbyPlayers) do 
            exports.voice:setPlayerChannel(player) 
        end 
        nearbyPlayers = {} 
    end 
) 

 

  • Like 1
  • 1 year later...
Posted (edited)

where do i add thoese codes? idk because im begginer in this and i'm trying to mage a good script from the old owl script

 

Edited by eFFecT1
  • 1 month later...
Posted (edited)

has anyone found a way to make this, why can't MTA have a good Local Voice chat like in FiveM for roleplay purposes, 

Edited by Mr.Solo

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...