Skip to content

Introduction

WhyTheHellIsEvery4thYearGarbage? edited this page Nov 19, 2020 · 10 revisions

This program is for source games ONLY. Also, please note that captions will look different if you have a custom HUD or modified how captions are displayed.

What is a voicemenu?

In source, a voicecommand is a predefined call that displays in chat and sends an audible version.
A voicemenu is a selection of voicecommandss that appears generally to your left. Like this:

Zoomed-in older Team Fortress 2 voicemenu
An emulated voicemenu is a voicemenu that is simulated using captions and scripting. Like this:

List of text from captions.

Source voicemenus vs. Emulated voicemenus.

± - Negligable benefit/downside. ✓ Benefit. ❌ Downside.

Criteria Source Voicemeus Emulated voicemenus
Quick to setup ❌ Requires scripting.
Localizable Strings ± Users need your ± Can be mimiced by cycling emuvoicemenus
Assignable gestures ± ±
Command whitelist ❌ Only voicecommands. ✓ Any command.
Maximum VMs usable ❌ 9 ✓ Infinite
Maximum Voicecommands per menu ❌ 9 ✓ Infinite
Formattable ❌ No ✓ Yes
Cooldown ❌ Long cooldown ✓ Only affected by chat cooldown.
Valid with sv_pure? ❌ No ✓ Yes

Why does this generator exist?

The voicemenu in Source games do work. However, not everyone is satisfied with them, so the general response is to modify it. Voicemenus are defined in a file called voicecommands.txt, and you can modify it.

Unfortunately however, voicecommands.txt is not in any sv_pure level. As a result, you can only remove voicecommands. There is another way though: We can use captions and scripting to emulate a voicemenu.

Emulated voicemenus have a number of advantages. They can be formatted, execute any command (not just voicemenu), and works in any sv_pure level. (It's technically possible to localize for other languages, just not automatically.)

One problem however, is that it can take a long time to actually make an emulated voicemenu from scratch. First it needs to be efficient and usable, which requires planning. Then you have to figure out how to make an emulated voicemenu. Next you have to write the cfg files neccessary. Finally you have to rigorously test it. This process can take a long time to complete depending on how complex your emulated voicemenu will be.

This is why this generator was made: To reduce wasted time on making emulated voicemenus, so that you only have to focus on the first step mentioned above. I originally made a remote respository for this program to function as a backup, but seeing as how it is public anyways, I decided to touch it up for end-users.

Clone this wiki locally