EditVoicepack User's Guide

Version 3.0 released 2003-08-17 - Datafile updated 2004-03-09

For Microsoft Flight Simulator 2004: A Century of Flight

http://bevelstone.xs4all.nl/FlightSimulator/EditVoicepack

Even if you normally never read documentation, please scan through this document and read the red sections.

EditVoicepack is a utility designed to update the available words used by the ATC in Microsoft Flight Simulator 2004: A Century of Flight by combining existing words. It operates completely standalone and does not rely on the Microsoft SDK or the existing decompilers for the ATC voices. The users can conveniently share the modifications they have done to the voicepacks through a central server which will distribute the changes.

Content

Installation

This version does not support Microsoft Flight Simulator 2002, or any other version besides Microsoft Flight Simulator 2004: A Century of Flight. Please visit the EditVoicepack homepage for information on EditVoicepack versions available for other versions of Microsoft Flight Simulator.

EditVoicepack is based on the .Net Framework version 1.1 - so this must be installed before EditVoicepack can run. You can find the .Net Framework on the "Windows Updates" page available from the start menu. Notice that version 3.0 is the first version of EditVoicepack to use version 1.1 of the .Net Framework, so you might still have to install it even if you have been running previous version of EditVoicepack. If you launch the installer without the .Net Framework installed, you will be redirected to a download page at Microsoft. The recommended .Net Framework package for EditVoicepack is the package  Redistributable .NET Framework Redistributable Package version 1.1.

To install, simply run Setup.exe and go though the Wizard for installation. After installation, EditVoicepack can be found in the start menu. If you want to uninstall EditVoicepack, simply use the Add or Remove Programs feature of the Control Panel (see Windows help for details).

While I expect EditVoicepack to work on any computer supporting .Net, I have only tested it on Windows XP.

Upgrading from a previous version

If you do not have any custom modifications you want to preserve, simply delete the old version. If you want to preserve custom callsigns from version 1.0, these must first be exported one by one to *.vcpmod files using EditVoicepack 1.0. These files can be imported into the current version after it is installed.

If you want to preserve custom modifications from a newer version (2.0 or above), you should create a backup from your existing version of EditVoicepack, before installing this version. After installation, reinstall the backup, and perform an online update (you can also use an offline update). If this update is not done, EditVoicepack might fail while running UpdateVoicepack, or when browsing the modifications in the user interface. All validation errors (modifications colored red in the tree view) can be ignored until the update is complete. Unfortunately the build in backup function did not work on all systems in version 2.0 and 2.1. To create a manual backup, simply make a copy of the file EditVoicepackData.xml.

Quick Start

This section contain a step for step guide for users who are not interested in finding out how EditVoicepack can be used to create new voices, but simply want to use the supplied samples. It is still strongly recommended to read the remaining documentation. Please follow the instructions given in the Installation section above before going though this quick start guide.

  1. Close Microsoft Flight Simulator 2004: A Century of Flight if you have it running.
  2. Run EditVoicepack (the installer placed an icon in your start menu).
  3. If a dialog opens informing you of new updates, you can install them at this time (EditVoicepack will attempt to connect to a server at this stage to determine if any updates are available, so personal firewalls or dial-up dialogs might appear at this stage).
  4. Select "Update Voicepack" from the "File" menu. Wait until "Ready" is displayed in the status bar.
  5. Optionally select "Update Airlines.cfg" from the "Tools" menu.
  6. You are done - close EditVoicepack by selecting "Exit" from the "File" menu.
    If you installed any updates at point 4, you should save when prompted.

You should repeat this regularly to make sure you will receive all the new modifications uploaded. If you can't make the sounds work, you will have to read the rest of this guide in order to find out where the problem is. Notice that Saving is not enough. It will save any data you have so you for example can finish a callsign you are creating later, but it will not write any data to Microsoft Flight Simulator: A Century of Flight. Always run "Update Voicepack" from the file menu to update Microsoft Flight Simulator: A Century of Flight.

Changes from previous versions

This section contains the new features and bug fixes from the previous versions.

Version 2.2

Changes since version 2.2:

Version 2.1

The following problems in version 2.1 have been fixed:

Version 2.0

This section is only relevant for users of version 2.0. New users should skip it.

New features:

Bug fixes:

Version 1.0

This section is only relevant for users of version 1.0. New users should skip it.

While the ways modifications to the voicepack are defined have remained unchanged, the way EditVoicepack handles its data has changed substantial to accommodate for the new automated update functionality. It is no longer necessary to open any file when running EditVoicepack, but you should consider doing regular backup if you create your custom callsigns, or alternatively export them to vcpmod files.

The following defects from version 1.0 have been addressed in this release:

If you have callsigns from version 1.0 you would like to move to the new version of EditVoicepack, you can either export the entries one by one from version 1.0, then import them in version 2.0, or you can import your entire vcpmod file into 2.0. Please notice that the last approach will lead to a number of callsigns allready present in the "Standard Modifications" branch being imported as well - you should manually delete all the imported callsigns already supported by version 2.0.

Using EditVoicepack

This section contains useful information for anyone using EditVoicepack. While some of the information might be very trivial to you, please read though it fast.

What EditVoicepack does

EditVoicepack will modify a file in the SOUND subdirectory of your Microsoft Flight Simulator 2004: A Century of Flight installation. The file is named usenglishbig.gvp and contains all spoken language used by the ATC, as well as the text displayed in the ATC window. In case you selected the compact installation of Microsoft Flight Simulator: A Century of Flight , the file might be called usenglishsmall.gvp. Localized (translated) versions of Microsoft Flight Simulator: A Century of Flight will have different file names. EditVoicepack is designed to recognize the files in any language; however it has mainly been tested on the English version.

You can make a backup of the files, but EditVoicepack is fairly good at restoring its changes (Only the fist 100 bytes of the file is overwritten and these 100 bytes can easily be reset by EditVoicepack. If EditVoicepack fails to restore the file, you can find it on your Microsoft Flight Simulator 2004: A Century of Flight DVD or CD number 2 inside the "MSGame4.cab" file for the 10 voice setup, and inside the "MSGame5.cab" file for the three voice setup. If Windows can't open the cab file (I believe all current versions of Windows can, but can't remember for sure with Windows 98) the file can be opened with for example WinZip. If you make a backup of your existing voicepack, please make sure it is not stored in the "SOUND" directory, as Microsoft Flight Simulator 2004: A Century of Flight will search through the directory and load any voice pack it finds, no matter what name they have.

The EditVoicepack user interface

EditVoicepack uses the familiar "Explorer look". On the left you have a tree structure, and on the right you have the details for the selected node in the tree. The tree will contain two main sections: Custom Modifications and Standard Modifications. The Custom Modifications is where you can create your own modifications to the voicepack, while the Standard Modification section contains modifications controlled centrally from the EditVoicepack web server. Updates will be available regularly as users add new or improved modifications to the central repository. Please notice that while you can't change the callsigns in the Standard Modifications section, you can choose which modifications to include in your voicepacks.

You will see that there is a checkbox for each node in the tree. This checkbox can have three different settings: Include (white checkbox with a green mark in it), Exclude (White checkbox without a mark), or Default (gray checkbox with or without a mark). Clicking the checkbox toggles the settings. If a node is set to Exclude, this node (and any child node set to Default) is ignored when updating the voicepack. If a node is set to Include, the node (and any child node set to default) is included when updating the voicepack. If the node is set to Default, it will be included if the parent node is included - any Default node included when updating the voicepack will have a green mark. Please notice that modifications can be inserted several places in the tree (and hence the same node can appear multiple places). Any node set to Default and present more than one place in the tree will be included if any of its parent nodes are included.

Using the Custom Modifications branch

The branch contains three root nodes: Aircrafts, Airlines, and Airports. Aircrafts and Airports contain additional nodes once you expand them as described below. Please notice that a very basic understanding of aircraft configuration under Microsoft Flight Simulator 2004: A Century of Flight is required. If you do not know how to modify an "aircraft.cfg" file, please refer to the Microsoft Aircraft Container SDK - you will find it on http://zone.msn.com/flightsim (for the purpose of correcting callsigns, the SDK for Microsoft Flight Simulator 2002 can be used, until Microsoft release an updated version)..

If a node type is not mentioned below, it simply contains other nodes that will be mentioned - I trust you to be able to expand the node and find the relevant items yourself. You can right click any item you have created under the mentioned notes to delete, copy, or export it (see the description of Import in the section describing the menu below). If the text of a node is red, it means that the "standard" section (see below) already contains a modification for this identifier.

The Aircraft Manufactures node

The aircraft manufactures (if you read the Microsoft SDK, these are the sounds with the prefix "AC_NAME" on the identifier) sounds are used by ATC whenever your aircraft is not referred to by airline (for example Cessna OY-BKW instead of Scandinavian 867). It is also used in a few other situations. Right click the Aircraft Manufactures node and select Create New to add a new item in the list. The Identifier must match the atc_type entry in the aircraft.cfg file for ATC to use it.

The Aircraft Models node

The aircraft models (if you read the Microsoft SDK, these are the sounds with the prefix "AC_MODEL" on the identifier) sounds are used by ATC whenever your aircraft is mentioned to other pilots - for example in case of traffic alerts. It is also used in a few other situations. Right click the Aircraft Models node and select Create New to add a new item in the list. The Identifier must match the atc_model entry in the aircraft.cfg file for ATC to use it.

The Callsigns node

The callsigns are used by ATC to identify almost all aircrafts in regular scheduled flight, or flights belonging to a specific organization (for example "Danish Air Force"). The callsign is followed by the flight number (for example Scandinavian 876 or Speed Bird 654 - Speed Bird is the callsign for British Airways). Right click the Callsigns node and select Create New to add a new item in the list. The Identifier must match the atc_airline entry in the aircraft.cfg file for ATC to use it.

The Airport Agent Names node

The airport agent names are used in communication between the "agent" (for example the tower controller) and the pilot. Right click the node and select Create New to add a new item in the list. The Identifier must match the identifier of an existing agent but should not contain the AGENT_NAME prefix. All agents are defined in the Microsoft Flight Simulator 2004: A Century of Flight scenery files.

In Microsoft Flight Simulator 2002 the scenery files could be edited with AFCAD (by Lee Swordy), however at the time EditVoicepack was released, an Microsoft Flight Simulator 2004: A Century of Flight compatible version has not been release by Lee, due to extensive changes to the data structures for scenery files. I am not aware if any Microsoft Flight Simulator: A Century of Flight compatible version of AFCAD will be released - and if it is released, I do not know if it will support changing or adding agent names.

Often the agent name will match the ICAO name mentioned below, so EditVoicepack will automatically create an agent for each ICAO modification (see below) added to the voicepack. So if you use the phrase from the modification as the name in AFCAD, you do not need to create an agent modification.

The Airport ICAO node

The airport name based on the ICAO code is for example used when you request clearance for IFR flights. You can add any airport known by Microsoft Flight Simulator 2004: A Century of Flight . Right click the node and select Create New to add a new item in the list. The Identifier must match the ICAO code of the airport - you can find this code in the dialog where you select airports in Microsoft Flight Simulator 2004: A Century of Flight.

The main view

When you have created a new item in the tree, or select one you created earlier, the right side of the EditVoicepack user interface will switch to a mode where you can define the item. The interface is the same no matter what item you are working on (an airline, an aircraft manufacturer, etc). In the top, you will find a few settings shared between all the different voices.

Identifier

Please read the description for the different nodes to see what you should write in the Identifier field. The text in the Identifier field will be combined with a keyword for each type (Airline, Airport Name, etc) to form a unique ID used by Microsoft Flight Simulator: A Century of Flight to recognize the phrase. Please read though the following Force Variation section for further details.

Force Variation

Microsoft Flight Simulator 2004: A Century of Flight supports several words defined for the same identifier (this is called variations). It then selects a variation randomly whenever the word is needed. If you leave Force Variation unchecked, EditVoicepack will automatically store the item as a new variation if the Identifier matches an existing id. If you need to overwrite an existing entry (for example to correct some of the build in mistakes in the shipping files from Microsoft) you must specify the variation to use by setting the checkmark and chose the variation index (often 0). If the specified variation isn't present, EditVoicepack will behave as if Force Variation was unchecked. You can see the variation index of existing words in the Sound Selection list mentioned below.

Comment

This field can contain any relevant information - for example can it be useful to have the airline name if an airlines callsign does not match the name of the airline.

Author

In case you wish to be credited for any word definitions you create, you can out your name here. You can also include email address or other relevant information if you want.

Ignore Errors

EditVoicepack is constantly validating your data to help you to keep it consitent and correct. In case there are validation errors in a modification, the modification (and all it's parent nodes) will be displayed with red in the treeview. The errors will also be displayed with red on the main modification view. If several errors are present, the display will cycle though them. In a few cases, the validation errors are not really errors. An example of this could be the callsign "KLM" (this is just an example; "KLM" is obviously already in Microsoft Flight Simulator 2004: A Century of Flight, so there is no need to add it). As "KLM" is an acronym, all letters should be uppercase; however the validator can not recognize acronyms. It will therefore expect "Klm", and hence flag it as an error. To suppress falsely identified errors, press the "Ignore Errors..." button and set a checkmark at the errors you would like to ignore. Select an item to see a more detailed description of the error.

Voice Selection list

You find the voice selection list on the left side in the Voices frame. When you define a new word, you should include a definition for each of the voices. You can right click a voice to copy the definition to any of the other voices, but you should still adjust the word for the specific voice manually, as the source words are not all spoken with the same rhythm. When copying, you can chose to copy the sound definition (sound segments), the phrase, or both. You can also choose to copy to an individual voice, any voice still left empty, or simply copy to all voices no matter what data they contain.

Sound Selection list

All the way to the right you find the sound selection list. You use it to choose the different source words you want to build your new word from. Each time you click an item in the list, it will play the sound associated with it with the voice currently selected in the voice selection list. Above the list you find a filter definition. If you enter a text in this field only sounds where the phrase (the phrase is the text displayed in the ATC window in Microsoft Flight Simulator 2004: A Century of Flight when the sound is being played) match the filter. Please notice that the filter is defined using regular expressions. This allow you to search for words beginning with a specific text by for example entering ^air, or to find words ending with air, type air$. You can also place similar sounding letters in brackets, separated with "|" to match any of them, for example you can try ^(k|c)(i|e)m. Please refer to a regular expression tutorial for full details. If you filter is an invalid regular expression (don't worry, normal search strings with alpha numeric characters works as you are used to) the filter will be ignored. Please notice the right column in the sound selection list. It contains the full ID of the text, as well as the variation number in brackets - this can be useful if you want to override an existing word. The first word in the ID should not be entered in the ID text field when you want to override an existing word. When you have found the word you want to use, select it and press the Add Selected Sound button. Alternatively, double click the word.

Sound Definition area

In the center of the Voices frame you will find the controls you use to define the word for a specific voice. At the top, you will find a field where you can enter the phrase displayed in the ATC window of Microsoft Flight Simulator 2004: A Century of Flight when the word is used. Notice that you will often want the same phrase for all voices, but it is not required. As most (if not all) modifications should have identical phrases, they are default "locked", meaning changing the phrase for one voice will change them all. Press the small lock next to the phrase text box to allow editing the phrases one by one.

Below the phrase field you will find two buttons - one that will play you defined word once, and one that will repeat until the button is pressed again, or another sound is played somewhere in EditVoicepack. These two buttons will be inactive if you have not yet added a sound from the sound selection list as described above.

When you have added one or more sounds, you will have a small control for each where you can define which part is played. Change the selection by right clicking it and setting a new start or end point of the selection, or drag the selection edge with your mouse. Under each wave file edit control you will find small buttons allowing you to play the selected sound once or repeatedly, just as you could for the entire sound. To the right you will find buttons you can use to zoom in and out. If you right click the wave file edit control you can select to remove the sound again, or move it up or down.

Using the Standard Modifications branch

As mention the Standard Modifications branch is updated from a web server and it is not possible to edit the modifications in this branch. As the structure of the branch can also be updated, it is not possible to give an up to date description in this file. Please read the comment for each node to see what it contains. Remember one modification can be inserted several places in the tree, and hence also appear several places.

The Menu

The file menu offers the following main options:

File/Save

Saves any changes you have done.

File/Create Backup

When you save, the changes are always written to one file controlled by EditVoicepack. In case this file is damaged, you can loose your custom modifications (standard modifications can of course be retrieved from the server again). You can use this function to create a seperate copy of this file in any location you want, to keep your data safe.

File/Restore Backup

Restores a backup file created with File/Create Backup.

File/Update Voicepack

Writes the defined words to the Microsoft Flight Simulator 2004: A Century of Flight voice file. Any previously defined words not included any more, will be removed.

File/Restore Voicepack

Restores the voicepack to include the standard words only (removing all changes EditVoicepack have done to the voicepack files).

File/Import...

Imports a file with modifications. If you import definitions for words you already have, you will end up with several variants for the word, even if they are completely identical. Notice that you can export modifications by right clicking the modifications node.

Tools/Update Airlines.cfg

While ATC can use any new phrases as soon as you have updated the voicepack, you will not be able to select them in the callsign dropdown box when you select a plane. The list of callsigns displayed is controlled by a file called Airlines.cfg in your Aircraft directory. The Update "Airlines.cfg" will update the file with all airlines defined in the original voicepack, as well as any additional airlines currently included in EditVoicepack.

Tools/View Missing...

This option will show you a list of words used by your installed aircrafts, but not available with the currently included modification applied. Please be aware that this can very likely be a problem with the aircraft files and should be corrected instead of adding wrong entries to the ATC voices.

Help/About...

Displays version information as well as allows you to update EditVoicepack. Use this function to check the server for updates to the EditVoicepack program or the modifications. When Automatically check for updates on startup is selected, this check will be performed each time EditVoicepack is started, and the update dialog will automatically open if updates are available.

Sending Updates to the Server

One of the strong points of EditVoicepack is that you do not have to create all the modifications you would like to the voicepack, neither do you have to search various sites to find them. EditVoicepack lets the users upload their modifications to the server, where they will be automatically distributed to all other users of EditVoicepack.

To upload your modification, right click it and select "Send to server..." or "Update Server..." (only one will be present, depending on which node you right clicked). A wizard will now open and guide you though the process. After you have uploaded the update, you can visit http://bevelstone.xs4all.nl/FlightSimulator/EditVoicepack to track the review process of the modification.

Besides your own modifications, you can also upload requests to have the standard modifications changed (as before, right click and select "Send to server..". It is however only possible to request that the modification is deleted or to change the groups the modification is assigned to. If you would like to make further changes (for example improving the sounds), please copy the modification first (right click it and select "Copy"). You can now make your changes in the new modification and upload it to the server.

If you upload a new callsign it will automatically be moved from the custom section of EditVoicepack to the standard section. Any changes you have done after the modification was uploaded will be lost. In case the modification was changed by the reviewer, you will loose your original data as well. If you want to preserve your data, lease export the modification after uploading it to the server. If you are changing an existing modification, only the copy in your standard section will be updated, the copy in the custom section will remain unmodified, and you should delete it as soon as your modification has been accepted.

Changing the Identifier

The server tracking the uploaded modifications uses the Identifier to check if you are updating an existing callsigns. If the identifier needs to be changed, the server can not match the uploaded modification with the existing modification. Please use the comments field to specify the original Identifier that should be deleted. If the reviewer still fails to delete the wrong identifier, you can upload a request to have it deleted after your new identifier has been accepted.

Compatibility

If you use EditVoicepack, it is not recommended to change the voicepacks with any other program - at least not if you plan to share word definitions with other people who might not have the same modifications. If you do, your should be careful only adding sounds to the voice pack, never changing the existing words as they might be used as source for a new word in EditVoicepack. If you have additional voicepacks in your SOUND directory, please make sure the filename does not end with "small.gvp" or "big.gvp", as EditVoicepack might choose the wrong file. Simply rename the file keeping the ".gvp" extension, Microsoft Flight Simulator 2004: A Century of Flight will load it anyway.

Distribution

Beta versions of EditVoicepack can not be distributed to any site without permission (please see feedback section for contact information). A beta version will have the word Beta after the version number at the top of this file - the word Beta will not be present in the software itself - it is only this readme file that can be used to determine if a package is a beta version.

Release versions can be freely distributed on any media (online or CD etc) as long as the package is not modified in any way, and no payment is directly required for the file. Indirect payment (for example a fee for fast access to a file library, or payment for a magazine containing the program on a cover CD is acceptable). If you have any questions, please contact me on larsm@xs4all.nl.

EditVoicepack can be bundled with commercial products, as long as I receive a copy of the finished product - please contact me for details. Commercial software vendors that recommends users to use EditVoicepack the vendors products but do not distribute it with their product are requested (but not required) to provide me with a free version as well.

Conditions of Use

This software is provided "as is", and usage of it is the responsibility of the user - I accept no responsibility for any damage this program might course.

Feedback

If you have constructive criticism or any other form of feedback, please send me an email on larsm@xs4all.nl. Please notice any email mentioning missing or low quality callsigns, will be ignored - most of the callsigns shipped with this package can easily be improved - it just takes more time than the author had available. Use the build in functionality to send an improved or additional callsign instead.

Known Issues

This section outlines known problems with this version of EditVoicepack.

Copyright © 2002, 2003 Lars Møllebjerg, All rights reserved.