Enhanced Chat Menu v3.02 - User's Manual

Introduction

What does this script do? Well, it does a lot of things. Which is why it comes with this manual. The primary function of this script is to provide the user with a highly customizable voice chat menu. When first installed, this script is designed to resemble the voice chat menu that comes with Tribes 2. I have done this so that new users may easily transition into it. Unfortunately, it takes users quite some time to "find out" how to use the best stuff in this script because it is commonly mistook for a simple voicepack. Hopefully, with this documentation, users will be able to discover the multitude of features in ECM. This manual will go over all the features of ECM that make it THE voice menu modification script for Tribes 2.

Quick Installation

If you're familiar with ECM already (though this version has significant changes from the last version) or you are the kind of person who doesn't like to read long manuals, then all you need to do is follow these instructions to get started.

Note: All file paths are relative to your Tribes 2 installation base folder. This is generally C:\Dynamix\Tribes 2\GameData\base

After all that, you should be able to go into a game and begin owning people with your new voice menu

Table of Contents

1.0 Frequently Asked Questions

Before you start sending me T-Mails about how much my sucky script sucks because it is broken, please save us both a bit of trouble by reading through these common questions that users have about this script. If you ask me in game, you'll probably get referred to this.

2.0 The Enhanced Chat Menu Editor Dialog

From here you start on your journey towards fully mastering the capabilities of your script. Sure "Dance Baby Dance" is great at parties, but creating and using your catch phrases in game is really what this script is all about. You create and edit your own voice bind items in the Enhanced Chat Menu using the powerful tools that come with ECM. There are 3 ways to get at the menu editor dialog for ECM:

All 3 methods will bring up the same exact dialog, show below

Diagram of ECM Main Dialog

2.1 Voice Modes

ECM operates in 3 modes for compatibility reasons. This script can be a very fun tool for expressing yourself, but it may also be abused. People who do abuse it have caused some server admins to feel the need to block the effects of this script and others like it on different levels. The 3 modes allow you to roll back your voice menu in case you need or want to play in servers that block the nullvoice effect or voicepacks.

2.2 Auto Over-ride

This feature, new as of version 3.0, acts as an automated recovery system for server that block the effects of this script. The toggle button will turn this system on/off. While on, auto over-ride will use your first voice bind in a server to test for filters. If a filter is detected, you will be prompted to add the server to a list of "filterers". The next time you enter this server, ECM will automatically "roll back" its voice mode according to the severity of the filter. The "AUTO OVER-RIDE OPTIONS" button will present you with a dialog where you may manually add/remove servers from the "filterers" lists. (See The Auto Over-ride Options Dialog)

2.3 Menu Editing

The biggest thing on this dialog is the Menu Tree. This is a representation of your Enhanced Chat Menu and all of its submenus, displayed in a tree. You edit items in this tree by right-clicking on them. There are 2 types of items in this tree. Commands, which are items that represent a voice bind in your menu and Menus which may contain commands and other menus. The options you get when you right-click on an item depend on what type of item it is you clicked on.

2.4 Filters Button

ECM has various input and output filters to help clean up the chat window. This button will bring up a dialog that allows you to activate/deactivate certain filters. (See The Filter Options Dialog)

2.5 Voicepacks Button

ECM features an advanced voicepack protocol that allows the user to use multiple voicepacks in the same menu without having to switch. This button will bring up a dialog that will give you information on installed voicepacks using this protocol. (See The Voicepack Manager)

2.6 Behavior Button

This button brings up a dialog that lets you control the popup menu will behave in game. (See The Behavior Options Dialog)

2.7 Import/Export Buttons

The import and export buttons will let you import or export your current menu to a file. When you press either button, you will be prompted to supply a file name. When exporting menus, the menu file will be written to base/scripts/TDX/ECM/Menus/. This file may be given to another player for sharing of menu configurations. When importing, you will be putting the file in the same directory. Only files ending in .cs are valid. It is important to note that the file current.mnu.cs is the file being used for your current menu. Importing or exporting to this file is pretty useless. The default.mnu.cs is supplied as a template file. You will notice it is not present in the Menus directory. It is stored in the .vl2 and is used to create a current.mnu.cs file if none is present.

2.8 Revert Button

Clicking this button will cause the menu to reload from the last saved menu. All changes made since your last saved will be lost. This is useful if you totally mess up the menu somehow and need to roll back to a saved copy.

2.9 Save Button

This will cause the changes you made to the menu to be saved to the current.mnu.cs file and load them into memory for use in game.

2.10 Done Button

Closes the editor dialog. You may be prompted to save if you have made changes to the menu and not saved them.

3.0 The Command Editor

Picture of Command Editor

The command editor is where a lot of the action takes place. It is where you edit your chat commands and add all kinds of functionality to the menu. Some of this functionality is shown in the default menu, but it does not show all the possibilities. The section will explain the different "pages" of the command editor.

3.1.0 Command Type

This drop down selects what command page you wish to view. Some commands (Like Console Command) will work simultaneously with others, while others (Like Canned Chat Items) will over-ride other commands.

3.1.1 Chat Command

The most used page of the command editor is this one. It is where you can create a chat bind. It consists of a list of text and sound entries, 2 for each voice set, Nullvoice and Enhanced modes. Next to each sound text field is a button that will launch the Sound Explorer to help you select a sound. There are also Fill buttons that will allow you to fill fields with information. If a field is left completely blank, that bind will not show for that voice/mode.

3.1.2.0 ECM Functions

ECM functions are mini-scripts that can be called on a voice bind. ECM includes an API for creating ECMFunction modules to be used with ECM. ECM comes with a few functions that attempt to fix what nullvoice breaks. They are described below.

3.1.2.1 Issue Task

This function can issue various tasks on yourself or a "line of sight" entity. If you happen to be looking at a spot on the ground, a player or an object, it is used in the task issued. Client side scripts do not have access (legally) to data needed to discern the difference between these objects.

3.1.2.2 Accept Task

This function accepts the most recently issued task.

A3.1.2.3 ccept Task

This function completes your currently accepted task.

3.1.2.4 Accept Task

This function declines the most recently issued task.

3.1.2.5 Escort Line of Sight

This function will create a task to escort whatever is in your line of sight, then accept that command.

3.1.3 Console Command

This page contains a single line text box for you to enter a console command. This command will be executed when the bind is called along with any voice binds that are part of the command. All commands must end in ';' and you may use multiple commands separated by ';'.

3.1.4 Canned Chat Item

You can use legacy Canned Chat Items in any mode. Tho, in nullvoice, Canned Chat Items are mute. If you have any voice binds in the same scope of the Canned Chat Item, it will be over-ridden by the voice binds.

3.1.5 Voicepack Root

If you have voicepacks installed, you may select an entry point to a voicepack via this page. By making a bind a "Voicepack Root", all other command data will be over-ridden and the voicepack's submenus will appear instead. You may have multiple Voicepack roots for the same voicepack in the same menu in the same scope if you feel the need.

3.2 Command Label

This text box contains the text that will be displayed in the popup menu for this command.

3.3 Command Key Button

You can set which key will activate this command by clicking on this button. It will prompt you to press a key. The key you press will be used to activate the command item.

3.4 Cancel Button

Clicking this will exit the command editor without saving changes. This will cause you to lose any changes you made to the command item.

3.5 Clear Button

Clicking this button will reset all fields in the command item to default/blank values. This is good for starting fresh when editing a command item.

3.6 Revert Button

Clicking this button will revert the command item's fields the state they were in before the command editor was launched. This is good for a roll back if you make an big mistakes when editing a command item.

3.7 Save and Exit

Clicking this will make all changes to the command item permanent and close the command editor dialog.

4.0 The Sound Browser

Picture of Sounbd Explorer

The sound browser is a tool that scans your Tribes 2 installation for all available sounds and then presents them in a organized fashion. The first time you launch the sound explorer in a client session, you will see it scan for sounds. It will popup a dialog when it does this and the game may lock up for a few seconds as it searches for all playable sounds. Once it is completed, you are presented with a list of sounds. This list is organized by directory. You can choose which directory you wish to navigate with a drop down menu. The browser features a labeling system to make ambiguous file names and directories more descriptive. If a label is not available for a resource, the raw file name or directory name is used with square brackets ('[ ]') around it. When picking enhanced mode sounds, the sound browser will only allow you to pick sounds that are in the respective voice directory as those are the only sounds that will be able to be played in that mode.

4.1 Directory Pull down Menu

This pull down allows you to select which directory of sounds you want to view. This can help you narrow down your search for the perfect sound effect.

4.2 Sound Selection List

Here is where you select what you want. The left column is the display label for the sound, while the right column is the actual file name of the sound.

4.3 File Path Display

This display shows you the full path to the sound you have selected.

4.4 Select Sound Button

This button will close the dialog and use the sound you have selected in your operation.

4.5 Test Sound Button

This button will cause the selected sound to be played so that you may sample it and decide if it is the right sound for your chat command bind.

4.6 Set Label Button

You can label unlabeled sounds yourself with this button. You can also change existing labels if you feel the need.

4.7 Cancel Button

This will cancel the sound selection operation. It will also terminate the action that called the sound browser in the first place, causing nothing to happen.

5.0 The Voicepack Manager

Picture of Voicepack Dialog

This dialog displays a list of all installed voicepacks. When voicepacks are first initialized, they attempt to install to a default location on your menu. If they are unsuccessful, or you delete the voicepack root item, you will need to create a voicepack root item yourself to use the voicepack. All this dialog does is let you know that a voicepack is installed properly and ready to go. (See Voicepack Root)

5.1 Installed Voicepacks List

This is the list of installed voicepacks.

5.2 About Button

Clicking this button will display a dialog with extended information on the selected voicepack.

5.3.0 Conversion Utility

Picture of Voicepack Converter Dialog

This dialog displays a list of voicepacks that are not supported by ECM, but can be converted to a format that is. You can convert a voicepack by selecting it and pressing the 'CONVERT' button. The voicepack will then be converted and the utility will spit out 1 or more voicepack definition files for ECM's voicepack protocol. No changes are made to the original voicepack definition file(s) To learn more about ECM's voicepack protocol, see the Developer's documentation.

5.3.1 Convertible Voicepacks List

This is the list of convertible voicepacks.

5.3.2 Convert Button

This button starts the batch conversion of the selected old voicepack to ECM's voicepack protocol.

6.0 The Auto Over-ride Options Dialog

Picture of Over-ride Dialog

6.1 Servers that block nullvoice list

This is a list of all server IPs that have blocked nullvoice. When joining servers on this list, ECM will roll back to "Enhanced Mode" to prevent being broken by the server's nullvoice filter. You may manually add and remove server IPs with the buttons provided.

6.2 Servers that block voicepacks list

This is a list of all server IPs that have blocked voicepacks. When joining servers on this list, ECM will roll back to "Normal Mode" to prevent being broken by the server's voicepack filter. You may manually add and remove server IPs with the buttons provided.

7.0 The Filter Options Dialog

Picture of Filters Dialog

This dialog lets you toggle the status of various filters built into ECM.

7.1.1 Subdued Voicepack Text

This filter, when enabled, will send your voicepack text as colored with a dark color. This will help people know that the text is from a voicepack and should not be taken seriously.

7.1.2 No Voicepack Text

This filter will remove all text from out going voicepack binds.

7.1.3 Make All Team Binds

This filter will make all voicepack items team binds.

7.2.1 Subdued Voicepack Text

This filter will make all incoming voicepack items subdued in color.

7.2.2 Ignore Voicepacks

This filter will block all voicepacks

7.2.3 Mute Nullvoice Binds

This filter will mute all nullvoice users.

8.0 The Behavior Options Dialog

Picture of Behavior Dialog

8.1 Expand V-Menu Down

When enabled, this will cause the ECM's V-Menu HUD to expand downwards. When disabled, it will cause the hud to expand upwards.

8.2 Don't Take Over V-Menu

ECM now intercepts the call to the legacy V-Chat Menu. So even if you "forget" to bind ECM to V, you will still see ECM when you press V. You can turn off this "feature" by turning this toggle on.

9.0 Credits / Shoutouts

The following are a list of people and organizations that helped me make this script great, in one way or another.

9.1 Tribes

9.2 Peoples

10.0 Third Party Development

ECM 3.0 has several features that modularly designed and ready for third party developers to use. One of the most obvious ones in the voicepack protocol, but also, ECM's ECMFunctions system is modular and allows for third party developers to add to it. To learn about these systems without having to swim through the code, see the Developer's Documentation.