Raised This Month: $51 Target: $400
 12% 

To hear own voice


Post New Thread Reply   
 
Thread Tools Display Modes
FromTheFuture
Senior Member
Join Date: Jan 2013
Old 05-14-2015 , 01:42   Re: To hear own voice
Reply With Quote #11

Somebody can give me the offset of m_bLoopback?
FromTheFuture is offline
Jhob94
AMX Mod X Donor
Join Date: Jul 2012
Old 05-14-2015 , 04:07   Re: To hear own voice
Reply With Quote #12

Well, from what i looked at cssdk (and wasn't very deep because i hadn't much time), when a client uses voice cmd, it gets gamerules and banlist to know who can hear and who can not hear. I am not sure in wich of them loopback is on. I guess gamerules is only about sv_alltalk and teams. BanList is the mute list, and i guess loopback is something to mute yourself. Yet i am not sure about this. I will look deeper tonight.
__________________
Jhob94 is offline
JusTGo
Veteran Member
Join Date: Mar 2013
Old 05-14-2015 , 05:28   Re: To hear own voice
Reply With Quote #13

Quote:
Originally Posted by fysiks View Post
I'm certainly glad it's not possible. There is no good reason to have the server force a person to hear themselves talk. It would be an instant "never go back to this server" feature.
some times people talks with very low mic or bad(haveing many noise and stuff) that cvar will make people know if others can hear them or no also they can enable/disable in game as they like. i always use to test if my mic is working.

Last edited by JusTGo; 05-14-2015 at 05:29.
JusTGo is offline
Nextra
Veteran Member
Join Date: Apr 2008
Location: Germany
Old 05-14-2015 , 11:38   Re: To hear own voice
Reply With Quote #14

Audio monitoring will always have to be client side. A server round-trip would make a voice loopback completely useless. Why you would want to force a client to use it is beyond me.

Quote:
Originally Posted by JusTGo View Post
some times people talks with very low mic or bad(haveing many noise and stuff) that cvar will make people know if others can hear them or no also they can enable/disable in game as they like. i always use to test if my mic is working.
People will notice their audio setup is broken. Either by testing themselves or by other people telling them. Forcing microphone monitoring by default is a stupid idea for a problem that rarely appears. You already test your setup, why would you want any server to force loopback on you?
__________________
In Flames we trust!
Nextra is offline
Jhob94
AMX Mod X Donor
Join Date: Jul 2012
Old 05-14-2015 , 15:16   Re: To hear own voice
Reply With Quote #15

Well, i was wrong, loopback doesn't put yourself automatickly at ban list, this is something else.

Here is what i found at voice_status.cpp:
PHP Code:
void CVoiceStatus::UpdateSpeakerStatusint entindexqboolean bTalking )
{
    
cvar_t *pVoiceLoopback NULL;

    if ( !
m_pParentPanel || !*m_pParentPanel )
    {
        return;
    }

    if ( 
gEngfuncs.pfnGetCvarFloat"voice_clientdebug" ) )
    {
        
char msg[256];
        
_snprintfmsgsizeofmsg ), "CVoiceStatus::UpdateSpeakerStatus: ent %d talking = %d\n"entindexbTalking );
        
gEngfuncs.pfnConsolePrintmsg );
    }

    
int iLocalPlayerIndex gEngfuncs.GetLocalPlayer()->index;

    
// Is it the local player talking?
    
if ( entindex == -)
    {
        
m_bTalking = !!bTalking;
        if( 
bTalking )
        {
            
// Enable voice for them automatically if they try to talk.
            
gEngfuncs.pfnClientCmd"voice_modenable 1" );
        }
        
        
// now set the player index to the correct index for the local player
        // this will allow us to have the local player's icon flash in the scoreboard
        
entindex iLocalPlayerIndex;

        
pVoiceLoopback gEngfuncs.pfnGetCvarPointer"voice_loopback" );
    }
    else if ( 
entindex == -)
    {
        
m_bServerAcked = !!bTalking;
    }

    if ( 
entindex >= && entindex <= VOICE_MAX_PLAYERS )
    {
        
int iClient entindex 1;
        if ( 
iClient )
        {
            return;
        }

        
CVoiceLabel *pLabel FindVoiceLabeliClient );
        if ( 
bTalking )
        {
            
m_VoicePlayers[iClient] = true;
            
m_VoiceEnabledPlayers[iClient] = true;

            
// If we don't have a label for this guy yet, then create one.
            
if ( !pLabel )
            {
                
// if this isn't the local player (unless they have voice_loopback on)
                
if ( ( entindex != iLocalPlayerIndex ) || ( pVoiceLoopback && pVoiceLoopback->value ) )
                {
                    if ( 
pLabel GetFreeVoiceLabel() )
                    {
                        
// Get the name from the engine.
                        
hud_player_info_t info;
                        
memset( &info0sizeofinfo ) );
                        
gEngfuncs.pfnGetPlayerInfoentindex, &info );

                        
char paddedName[512];
                        
_snprintfpaddedNamesizeofpaddedName ), "%s   "info.name );

                        
int color[3];
                        
m_pHelper->GetPlayerTextColorentindexcolor );

                        if ( 
pLabel->m_pBackground )
                        {
                            
pLabel->m_pBackground->setBgColorcolor[0], color[1], color[2], 135 );
                            
pLabel->m_pBackground->setParent( *m_pParentPanel );
                            
pLabel->m_pBackground->setVisiblem_pHelper->CanShowSpeakerLabels() );
                        }

                        if ( 
pLabel->m_pLabel )
                        {
                            
pLabel->m_pLabel->setFgColor255255255);
                            
pLabel->m_pLabel->setBgColor000255 );
                            
pLabel->m_pLabel->setText"%s"paddedName );
                        }
                        
                        
pLabel->m_clientindex iClient;
                    }
                }
            }
        }
        else
        {
            
m_VoicePlayers[iClient] = false;

            
// If we have a label for this guy, kill it.
            
if ( pLabel )
            {
                
pLabel->m_pBackground->setVisiblefalse );
                
pLabel->m_clientindex = -1;
            }
        }
    }

    
RepositionLabels();

Well, i don't have enough knowledge to tell you if it is possible or not to do what you want since my orpheu level / moduling level is still low. Yet, let's wait someone experient with this stuff to tell us if you can do something about this or if you will have to move on.
__________________
Jhob94 is offline
aron9forever
Veteran Member
Join Date: Feb 2013
Location: Rromania
Old 05-15-2015 , 02:02   Re: To hear own voice
Reply With Quote #16

PHP Code:
 // if this isn't the local player (unless they have voice_loopback on) 
                
if ( ( entindex != iLocalPlayerIndex ) || ( pVoiceLoopback && pVoiceLoopback->value ) ) 
__________________
Meanwhile, in 2050:
Quote:
Originally Posted by aron9forever
useless small optimizations
Quote:
Originally Posted by Black Rose View Post
On a map that is 512x512x128 units you end up with 3,355,443,200,000 different "positions". To store each one of those positions individually in the variable "user_or" you need 12 terabytes of memory.
aron9forever is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 23:19.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode