Chdata / Versus-Saxton-Hale

The presuccessor of FF2(FF2 is the successor of VSH)
GNU General Public License v3.0
11 stars 6 forks source link

Fix /hale_voice and make a standard for it. #7

Open Chdata opened 9 years ago

Chdata commented 9 years ago

Currently what hale_voice does:

Mutes "most" sounds except for the "important to gameplay" ones.

It's honestly just confusing which are muted and which merely become "quieter", and some people just want to mute him /entirely/.

Additionally, boss voices are played twice, which for some clients on occassion will actually make it sound like two sounds overlapping:

EmitSoundToAllExcept(SOUNDEXCEPTVOICE, s, , SNDCHAN_VOICE, SNDLEVEL_TRAFFIC, SND_NOFLAGS, SNDVOL_NORMAL, 100, Hale, NULL_VECTOR, NULL_VECTOR, false, 0.0); EmitSoundToAllExcept(SOUNDEXCEPTVOICE, s, , SNDCHAN_ITEM, SNDLEVEL_TRAFFIC, SND_NOFLAGS, SNDVOL_NORMAL, 100, Hale, NULL_VECTOR, NULL_VECTOR, false, 0.0);

Due to them being on different soundchannels. SNDCHAN_VOICE happens to make it be affected by attributes that alter the player's voice, such as the engineer's bug h'ween costume or pyrovision, while SNDCHAN_ITEM plays the normal version.

Having them on these SNDCHANS also prevents two voice lines from overlapping, when killing multiple people quickly in a row - the new sound cancels the old one.

SNDCHAN_AUTO will let them overlap - thus a system similar to slender fortress's SetClientMusic will need to be made if we want to cancel the previous sound when we play a new one.

Also, everything past SOUNDEXCEPT_VOICE, szSample doesn't need to be their - it marginally barely changes anything about the sound.

(FlaminSarge's explanation that supposedly it makes the sound like it's coming from the direction Hale is in, however, since it's played to everyone throughout the entire map anyway, that doesn't matter).