No voice????

Hello fellow T2 freaks! Had a problem and i was hoping that someone could help me with it. I recently was going through my base files and deleted some old scripts that are just sitting that are not compatible w/ tribesnext. Somehow during this process i accidentally deleted something that allows me to have a voice when doing a bind. I can do an animation/taunt bind and i hear my voice just fine. Only when i do a bind that would be in "global chat". also when the game ends i cannot VGCG. won't let me? o_0 any help would be greatly appreciated. Thanx in advance.

Comments

  • One solution (If all else fails):
    1. Uninstall Tribes 2 and the TribesNext patch. But, copying your scripts somewhere so they're safe.
    2. Re-install Tribes 2. Install TribesNext patch.
    3. Run game to check if everything runs smoothly.
    4. Copy scripts back into Tribes 2 folder (If you get asked to overwrite, say no)

    Hope this helps!
  • I had the same problem a while back...think it was related to Flux Chat/Flux Voice. You can read about it and my solution in this thread: http://www.tribesnext.com/forum/index.php/topic,2028.0.html
  • Thanx alot guys. I ended up doing some reading on your link "OW", and it helped out. didnt have to read into many files. just looked @ the latest modified in my base/autoexec dile. Found a couple voicepack.dso files. Deleted them and now all seems fine! Next step was a fresh install, but really didnt want to wait for that..Again, many thanx guys!
  • edited June 2011
    Awwwrgeeeesh! Same problem again...no voice but can hear it in player set up, don't know why, made no changes to the game; the solution I used before won't work for me this time. I remove/edit the .wav file but it keeps returning, and I can find no .dso files. I'd appreciate any ideas. This is the console message I get:
    • nullvoiceuser.jpg
  • Awwwrgeeeesh! Same problem again...no voice but can hear it in player set up, don't know why, made no changes to the game; the solution I used before won't work for me this time. I remove/edit the .wav file but it keeps returning, and I can find no .dso files. I'd appreciate any ideas. This is the console message I get:
    Do you have voice.vl2 un-packed by any chance? (Has really nothing to do with it but still...)
  • Thanks for you reply Heat Killer; good thought and yes the voice.vl2 is unpacked.

    Two things:
    1) interesting that after I changed the ClientPrefs.cs file I could find no evidence of a single .dso anywhere and
    2) even though I would change the ~prefs/ClientPrefs.cs/$pref::Player::Voice = "Derm5"; .wav file to ~Derm1, it would always revert to a ~Derm5 when I tried it in a server. This smacks of a hidden .dso somewhere to me, but I could find none.

    A third thing: I stumbled upon a solution (perhaps only temporary) by messing around in-game with the warrior setup voice options; I changed to the bot voice which worked okay in a server, then I switched back to a derm voice and it now works properly. I don't know why this solution worked instead of number 2) (above) which has been the solution to this problem for me heretofore.

    I'm not sure what is going on here, especially since it seems to occur to me periodically without reason or regularity that I can see. Any insight you might provide that might preclude this happening again Mr. Heat Killer, would be most appreciated.
  • Do you have read-only permission for the folder?
  • edited July 2011
    No Blakhart, I don't, but your question causes me to ask if you think the Indexing Service might be a contributing factor (see attached picture)?

    Btw, anybody know what "Null Voice user" means? (Screen shot attachment in my June 29 post.)
    • fileattributes.jpg
  • I can't say if index is bad for t2 or not, as it is one of the first things I disable after an install. Isn't there a null voice usage to crash clients?
  • Isn't there a null voice usage to crash clients?
    I don't know what "null voice" is, or what it means to "crash clients" either ... please help me understand what those two terms mean.
    There is a "$Host::NoNullVoiceSpam = 0;" setting in ServerPrefs.cs on the server, but I don't know what that means or does either. :-\
  • There is/was a null voice crash that was patched out, at least in some cases. This null voice manipulation is a method by wich non-voice game sounds can be played when a client desired them to be, such as the mario sounds and the t-rex roar.

    This script keeps these null voice folks quiet, at least for your client:
    // #autoload
    package SoDMuteFags {
        function clientCmdChatMessage(%sender, %voice, %pitch, %msgString, %a1, %a2, %a3, %a4, %a5, %a6, %a7, %a8, %a9, %a10)
        {
            %newvoice = detag(%voice);
            if ( %newvoice $= "" ) {
                // Player is using null-voice exploit, show the message but don't play the sound
                %message = detag( %msgString );
                %wavStart = strstr( %message, "~w" );
                if ( %wavStart != -1 ) {
                    %msgString = getSubStr(%message, 0, %wavStart);
                }
            }
            parent::clientCmdChatMessage(%sender, %voice, %pitch, %msgString, %a1, %a2, %a3, %a4, %a5, %a6, %a7, %a8, %a9, %a10);
        }
    };
    activatePackage(SoDMuteFags);
    

    This script silences all globals:
    // #autoload
    // #name = NoMoreFuckingGlobalPileOfFuckingShite
    // #author = ilys
    // #warrior = ilys
    // #category = ilys' Scripts
    
    package NoMoreFuckingGlobalPileOfFuckingShite
    {
    	function clientCmdCannedChatMessage(%sender, %msgString, %name, %string, %keys, %voiceTag, %pitch)
    	{
       		%msg = detag( %msgString ); 
    		if (getSubStr(%msg,0,1) $= "\c4")
    			return;
    		parent::clientCmdCannedChatMessage(%sender, %msgString, %name, %string, %keys, %voiceTag, %pitch);
    	}
    
    	function clientCmdChatMessage(%sender, %voice, %pitch, %msgString, %a1, %a2, %a3, %a4, %a5, %a6, %a7, %a8, %a9, %a10)
    	{
       		%msg = detag( %msgString ); 
    		if (getSubStr(%msg,0,1) $= "\c4")
    			return;
    		parent::clientCmdChatMessage(%sender, %voice, %pitch, %msgString, %a1, %a2, %a3, %a4, %a5, %a6, %a7, %a8, %a9, %a10);
    	}
    };
    activatePackage(NoMoreFuckingGlobalPileOfFuckingShite);
    
  • edited July 2011
    Thanks Blakhart.

    I've installed scripts before but nothing "raw" like this.

    I've looked in the ~scripts/Autoexec folder, but the scripts I'm running have their own folder and name (i.e. -Boots-, jsut, etc.). Where do I put your scripts?

    Oh, and is there a way to install this on my server?

    Thanks again. ;D
  • Both scripts above are clientside, just drop them in the autoexec folder. Anything that is placed in the autoexec folder by client or server gets run with no further questioning. This one is serverside but is kinda drastic in that it really limits voice spam:
    //
    // NVServerFilter v1.0
    //
    // This script is designed to give the power back to server admins
    // to purge spammers of TDXChat and similar scripts that use Null
    // voices to play sounds in the game. It does so WITHOUT crippling
    // their ability to talk "NORMALLY" in the game.
    //
    // Its' like putting my own dog down :(. But who best to come up with
    // the antidote, than the one who created the plauge. Muhahaha!
    //
    // By TracerDX
    
    $Host::UseNVSoundFilter = true;
    
    package NVFilter {
    	function chatMessageTeam( %sender, %team, %msgString, %PlayerName, %Message, %a3, %a4, %a5, %a6, %a7, %a8, %a9, %a10 )
    	{
    
    		//If Client is Null Voiced, check sound
    		if((%client.voice $= "") && $Host::UseNVSoundFilter)
    			if (NVCheckString(%Message))
    				%Message = getSubStr(%Message, 0, strpos(%Message, ".wav"));		//Truncate .wav
    
    		parent::chatMessageTeam( %sender, %team, %msgString, %PlayerName, %Message, %a3, %a4, %a5, %a6, %a7, %a8, %a9, %a10 );
    	}
    
    	function chatMessageAll( %sender, %msgString, %PlayerName, %Message, %a3, %a4, %a5, %a6, %a7, %a8, %a9, %a10 )
    	{
    
    		//If Client is Null Voiced, check sound
    		if((%client.voice $= "") && $Host::UseNVSoundFilter)
    			if (NVCheckString(%Message))
    				%Message = getSubStr(%Message, 0, strpos(%Message, ".wav"));		//Truncate .wav
    
    		parent::chatMessageAll( %sender, %msgString, %PlayerName, %Message, %a3, %a4, %a5, %a6, %a7, %a8, %a9, %a10 );
    	}
    };
    
    activatePackage(NVFilter);
    
    function NVCheckString( %msgString ) {
    
    	%pos = strpos( %msgString, "~w" );
    
    	//Don't filter Soundless messages
    	if (%pos == -1)
    		return(false);
    
    	%sound = getSubStr( %msgString, (%pos + 2), (strlen(%msgString) - (%pos + 2)) );
    
    	if ((getSubStr( %sound, 0, 6 ) !$= "voice/") || (getSubStr( %sound, 0, 15 ) $= "voice/announcer") || (getSubStr( %sound, 0, 14 ) $= "voice/Training"))  //Filter out non-voice or announcer voice binds
    		return(true);
    
    	//Good sound, play it
    	return(false);
    
    }
    
    /////////////////////////////////////////////////////////////////////////////////////////////
    //Dev Note.
    //
    // This filter is achieved by removing the .wav from the sound file to be played.
    // To make a client side "un-filter", just:
    // %pos = strpos(%msgString, ".wav");
    // if (%pos == -1)
    //		%msgString = %msgString @ ".wav";
    //
    /////////////////////////////////////////////////////////////////////////////////////////////
    

    It also goes in the server scripts/autoexec folder and runs automatically.
  • Pm me your email addy and I will send you some other serverside scripts.
Sign In or Register to comment.