hide results

    Voicepack Tutorial by MarcusBlack6

    Version: 2.02 | Updated: 07/05/03 | Search Guide | Bookmark Guide

    +-++-++-++-++-+ +-++-++-++-++-++-++-++-+  +-++-++-++-++-++-++-++-++-++-++-++-+
    |B||r||e||t||t| |J||o||r||d||a||n||'||s|  |*||*||*||*||*||*||*||*||*||*||*||*|
    +-++-++-++-++-+ +-++-++-++-++-++-++-++-+  +-++-++-++-++-++-++-++-++-++-++-++-+
      @@@  @@@  @@@@@@  @@@  @@@@@@@ @@@@@@@@ @@@@@@@   @@@@@@   @@@@@@@ @@@  @@@
      @@@  @@@ @@@@@@@@ @@@ @@@@@@@@ @@@@@@@@ @@@@@@@@ @@@@@@@@ @@@@@@@@ @@@  @@@
      @@!  @@@ @@!  @@@ @@! !@@      @@!      @@!  @@@ @@!  @@@ !@@      @@!  !@@
      !@!  @!@ !@!  @!@ !@! !@!      !@!      !@!  @!@ !@!  @!@ !@!      !@!  @!!
      @!@  !@! @!@  !@! !!@ !@!      @!!!:!   @!@@!@!  @!@!@!@! !@!      @!@@!@!
      !@!  !!! !@!  !!! !!! !!!      !!!!!:   !!@!!!   !!!@!!!! !!!      !!@!!!
      :!:  !!: !!:  !!! !!: :!!      !!:      !!:      !!:  !!! :!!      !!: :!!
       ::!!:!  :!:  !:! :!: :!:      :!:      :!:      :!:  !:! :!:      :!:  !:!
        ::::   ::::: ::  ::  ::: :::  :: ::::  ::      ::   :::  ::: :::  ::  :::
         :      : :  :  :    :: :: : : :: ::   :        :   : :  :: :: :  :   :::
           @@@@@@@ @@@  @@@ @@@@@@@  @@@@@@  @@@@@@@  @@@  @@@@@@  @@@
           @@@@@@@ @@@  @@@ @@@@@@@ @@@@@@@@ @@@@@@@@ @@@ @@@@@@@@ @@@
             @@!   @@!  @@@   @@!   @@!  @@@ @@!  @@@ @@! @@!  @@@ @@!
             !@!   !@!  @!@   !@!   !@!  @!@ !@!  @!@ !@! !@!  @!@ !@!
             @!!   @!@  !@!   @!!   @!@  !@! @!@!!@!  !!@ @!@!@!@! @!!
             !!!   !@!  !!!   !!!   !@!  !!! !!@!@!   !!! !!!@!!!! !!!
             !!:   !!:  !!!   !!:   !!:  !!! !!: :!!  !!: !!:  !!! !!:
             :!:   :!:  !:!   :!:   :!:  !:! :!:  !:! :!: :!:  !:!  :!:
              ::   ::::: ::    ::   ::::: :: ::   :::  :: ::   :::  :: ::::
              :     : :  :     :     : :  :   :   : : :    :   : : : :: : :
                    ____              __  __                       __
                   / __/___   ____   / / / /___   ____ ___  ___ _ / /
                  / _/ / _ \ / __/  / /_/ // _ \ / __// -_)/ _ `// /
                 /_/___\___//_/     \____//_//_//_/   \__/ \_,_//_/__
                /_  __/___  __ __ ____ ___  ___ _ __ _  ___  ___  / /_
                 / /  / _ \/ // // __// _ \/ _ `//  ' \/ -_)/ _ \/ __/
                /_/   \___/\_,_//_/  /_//_/\_,_//_/_/_/\__//_//_/\__/
                                    Version 2.02
    i.   Legal stuff 
    ii.  Version History
    iii. E-mail 
    iv.  Thanks
    v.   What you'll need
    vi.  Guidelines for recording
    II. Assembling the voicepack
     A. Before you start
     B. The .uax file
     C. The script
     D. The strings, and such
     E. The .u file
     F. The .int file
     G. Editing the .ini file
     H. Testing your voicepack
    +-++-+ +-++-++-++-++-+ +-++-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-++-+
    |i||.| |L||e||g||a||l| |S||t||u||f||f| |*||*||*||*||*||*||*||*||*||*||*||*||*|
    +-++-+ +-++-++-++-++-+ +-++-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-++-+
    This may be not be reproduced under any circumstances except for personal,
    private use. It may not be placed on any web site or otherwise distributed 
    publicly without advance written permission. Use of this guide on any other 
    web site or as a part of any public display is strictly prohibited, and a 
    violation of copyright. (So I used that statement--sue me.)
    The one site I give permission to host this tutorial is GameFAQs
    UPDATE 7/05/03: I have also allowed this document to be hosted on www.dlh.net.
    Copyright 2003 Brett Jordan.
    +-++-++-+ +-++-++-++-++-++-++-+ +-++-++-++-++-++-++-+ +-++-++-++-++-++-++-++-+
    |i||i||.| |V||e||r||s||i||o||n| |H||i||s||t||o||r||y| |*||*||*||*||*||*||*||*|
    +-++-++-+ +-++-++-++-++-++-++-+ +-++-++-++-++-++-++-+ +-++-++-++-++-++-++-++-+
    2.02--Updated which sites can host this document. Also re-updated my e-mail
    address. I begin to wonder if it's possible for me to stick with one screen
    2.01--Updated my e-mail address. My apologies to anyone who e-mailed me to my
    old address and I didn't respond...
    2.0--Changed the ASCII Art title drastically. Also changed the section
    dividers from ugly-looking alternating-direction slashes to the ASCII Art
    with the section titles in them as seen above this paragraph. Added "What
    you'll need" and "Guidelines for recording" sections. Changed section titles
    to make them less wordy. Added paragraph about .wav conversion in step A.
    1.01--Removed "Using UnrealEd 2.0" from the title so it wouldn't be mistaken
    as the tutorial's version number. Also added a note in step C and changed some
    of its text slightly.
    1.0--First version.
    +-++-++-++-+ +-++-++-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-++-++-++-+
    |i||i||i||.| |E||-||m||a||i||l| |*||*||*||*||*||*||*||*||*||*||*||*||*||*||*|
    +-++-++-++-+ +-++-++-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-++-++-++-+
    My E-mail address is now xentaroadunx@aol.com. If you need help with your voice-
    pack, E-mail me with the subject title "UT Voicepack Help". If you don't have
    this subject title, I will consider your mail junk mail and delete it before it
    is read.
    +-++-++-+ +-++-++-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-+
    |i||v||.| |T||h||a||n||k||s| |*||*||*||*||*||*||*||*||*||*||*||*||*||*||*||*|
    +-++-++-+ +-++-++-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-++-++-++-++-+
    Infogrames, Epic Software, and Digital Extremes for making this incredible
    Jeff Veasey for hosting my tutorial on his site, GameFAQs(along with thousands
    of other tutorials for other games.)
    The authors of the other tutorials from which I learned to make a voicepack
    from. (NOTE: This tutorial IS original work!)
    Ftomrandom for pointing out that I forgot to mention to convert voice samples
    to .wav format.
    +-++-+ +-++-++-++-+ +-++-++-++-++-++-+ +-++-++-++-+ +-++-++-++-++-++-++-++-++-+
    |v||.| |W||h||a||t| |y||o||u||'||l||l| |n||e||e||d| |*||*||*||*||*||*||*||*||*|
    +-++-+ +-++-++-++-+ +-++-++-++-++-++-+ +-++-++-++-+ +-++-++-++-++-++-++-++-++-+
    You'll need UnrealEd (it should be in the Unreal Tournament/System directory),
    a medium for recording (such as a CD drive or PC microphone) and Windows Sound
    Recorder if you're recording your own samples (You should have this--look under
    Start/Programs/Accessories/Multimedia.), and Notepad, which, I hope, you have.
    If you have Mac or Linux, then I can't really help you here.
    +-++-++-+ +-++-++-++-++-++-++-++-++-++-+ +-++-++-+ +-++-++-++-++-++-++-++-++-+
    |v||i||.| |G||u||i||d||e||l||i||n||e||s| |f||o||r| |r||e||c||o||r||d||i||n||g|
    +-++-++-+ +-++-++-++-++-++-++-++-++-++-+ +-++-++-+ +-++-++-++-++-++-++-++-++-+
    (if you're recording your own voicepack)
    Make sure that the sounds you record are LOUD. VERY LOUD. Why so loud? Well,
    to put it simply--you won't be able to hear it amidst the Flak Cannons. One
    of the worst things you could do is have a voicepack that is inaudible. The
    rule of thumb is this: It's always better to make it too loud than not loud
    Don't put your mouth right on top of the microphone. This ensures choppy sounds.
    You don't have to be extremely loud to record sounds--though this contradicts
    what I said earlier about loudness. Nothing a little Increase Volume option
    in Sound Recorder can't fix.
    And remember--if something doesn't sound right the first time, just re-record
    it. It may take you a couple of tries to get all the samples just right.
    +-++-++-++-++-++-++-++-++-++-+ +-++-++-+ +-++-++-++-++-++-++-++-++-+ +-++-++-+
    |A||S||S||E||M||B||L||I||N||G| |T||H||E| |V||O||I||C||E||P||A||C||K| |*||*||*|
    |A||.| |B||e||f||o||r||e| |y||o||u| |s||t||a||r||t| |*||*||*||*||*||*||*||*||*|
    +-++-+ +-++-++-++-++-++-+ +-++-++-+ +-++-++-++-++-+ +-++-++-++-++-++-++-++-++-+
    OK, now you've got all these nice little voice samples, and you're ready to make
    them into an Unreal Tournament voicepack. 
    Well, the first thing you need to do is put all the samples you are going to use
    in one directory. This may sound stupid, but make sure that the folders in the 
    directory don't contain any spaces in their names. Yeah, it's weird, but you
    have to do this, otherwise things won't work so nicely later.
    Make sure all of your voice samples are converted to .wav format. Now, if you're
    going to just use your voicepack for yourself, you can record the sounds at any
    frequency and quality you want. However, if you plan to make your voicepack
    available for download somewhere, it is best to record the sounds at 8 bit,
    11,025 Hz Mono so the file size won't be quite so large. Because, there will
    always be people with 56K modems, like myself. XP
    That was the simple first step. Unfortunately, the other steps aren't so easy.
    +-++-+ +-++-++-+ +-++-++-++-+ +-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-+
    |B||.| |T||h||e| |.||u||a||x| |f||i||l||e| |*||*||*||*||*||*||*||*||*||*||*||*|
    +-++-+ +-++-++-+ +-++-++-++-+ +-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-+
    Once the first step is done, open up UnrealEd (if you've never used it before,
    it's in the Unreal Tournament/System directory. It has a green UT icon.). Give
    it a minute to load, then open up the Sound Browser. (The icon looks like a 
    speaker) From here, go to the File menu (in the Sound browser) and choose 
    "Import...".  Then select the folder  that your samples are in, select all the 
    samples you want to import, and click OK.
    NOTE: Some tutorials say that UnrealEd will screw up if you select more than 1
    sample to import at once. I, personally, have had no such trouble, so go ahead
    and try it. But if it doesn't work, just do it one at a time.
    Also, if your sound files won't import, make sure that the directory that
    they're in contains no spaces, like I said before.
    Now see a little window with places where you have to type in information. Under
    "Package", type a name for the package. It is best to relate the name of the
    package to your voicepack's theme; so if you're creating a voicepack of Tom
    Hanks, you would probably name the package "Hanks".
    If you have more than 25 voice samples, I suggest grouping the samples. If you
    have fewer than 25 samples, then just put them in an "All" group. If you do
    group your samples, make sure to group them logically, like putting all your
    Taunts into a group called "Taunt".
    Name is the name of the sample. Type in something that you can identify each
    sample with.
    If you are not grouping your samples, select OK All. If you are, click OK until
    you get to a file you want to put in a different group, then type the name of
    the group you want to put the file in and resume clicking OK.
    Make sure that all of your samples were loaded, then choose "File" and then
    "Save..." and save the file as the same name as the package.
    Now that that's done, you can move on to step C.
    +-++-+ +-++-++-+ +-++-++-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-++-++-+
    |C||.| |T||h||e| |s||c||r||i||p||t| |*||*||*||*||*||*||*||*||*||*||*||*||*||*|
    +-++-+ +-++-++-+ +-++-++-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-++-++-+
    Now you need to open up the Actor Class browser (The button looks like a pawn in
    chess). Click the plus sign (+) next to "Actor", then "Info", then "VoicePack",
    then "ChallengeVoicePack".
    OK, this is important. If you are making a voicepack for a male, then right
    click "VoiceMale" and select "New...". If you are making a voicepack for a female, 
    then right-click "VoiceFemale" and select "New...", and the same applies if
    you're making a Boss voicepack.
    Under "Package", type the EXACT same thing you named the package in your .uax 
    file. Under "Name", name it whatever you want, but I suggest the same name as the
    NOTE: Remember the difference between the Package name and the Voicepack name!
    It helps if you name them both the same thing so there won't be any confusion.
    Now you should have something that looks like this (I'm using the "Hanks"
    package as an example):
    // Hanks.
    class Hanks expands VoiceMale;
    Minimize that window.
    Now go back to the Actor Class browser and follow the same path, up to
    "ChallengeVoicePack". Then click the plus sign next to "VoiceBoss", "VoiceMale",
    or "VoiceFemale" (Whichever suits your voicepack) and double-left-click either
    item there.
    Now you should see a whole bunch of text that you most likely don't understand.
    That's OK, you don't need to understand a word of it. Just highlight everything
    starting with:
    #exec OBJ LOAD FILE=..\Sounds\Male1Voice.uax PACKAGE=Male1Voice
    on down to the bottom. Then press Ctrl-C. Now, double-left-click on the name of
    your package on the menu to the left of the text, click two lines below the text
    there and hit Ctrl-V. Now all that text should be in your voicepack's script.
    Now click on the line that says "#exec OBJ LOAD" and all that and go to where it
    says "..\Sounds\Male1Voice.uax" and change where it says Male1Voice.uax (or
    whatever it says) to the name of your .uax file, and the PACKAGE name to the name
    of your package.
    Finally, click on "Tools" at the top of the window and select "Compile Changed".
    When it's done, you can exit that window.
    +-++-+ +-++-++-+ +-++-++-++-++-++-++-++-+ +-++-++-+ +-++-++-++-+ +-++-++-++-+
    |D||.| |T||h||e| |s||t||r||i||n||g||s||,| |a||n||d| |s||u||c||h| |*||*||*||*|
    +-++-+ +-++-++-+ +-++-++-++-++-++-++-++-+ +-++-++-+ +-++-++-++-+ +-++-++-++-+
    Now it's time for the longest step. This step will vary in length depending on
    how many samples you have, and how much effort you put into it.
    Go to the Actor Class browser and go all the waydown to "ChallengeVoicePack", 
    then go under whichever one of the three applies to your voicepack. You should 
    see your voicepack's name. Right-click it, and select "Default Properties...".
    You'll see a lot of plus sigs, but you only have to worry about 
    "ChallengeVoicePack". Click the plus sign next to it, and you should see a lot
    of stuff come up.
    OK, here's where voicepacks are made or broke. This is where you actually assign
    the samples to Acknowledgements, Friendly Fire, etc. and type in the message
    strings and abbreiviations.
    AckAbbrev: Where you type in the abbreviations for your Acknowledgement voice
    strings. The abbreviation will be shown when the in-game voice menu is brought
    up (Default key: V) instead of the whole string. If the whole sample's text
    string is short enough to fit in the voice menu, you can leave this blank. I
    advise keeping abbreviations shorter than 20 characters.
    AckSound: Where you set each Acknowledgement sound sample to be played. The
    easiest way to do this is to open up the Sound browser, open your package, pick
    the sample you want to use, and then go back to the Voicepack properties and
    click on the slot you want that sample to be in, and then click "Use". This
    automatically puts the selected sound file in the Sound browser in the slot.
    AckString: This is the text that is displayed in the top-right corner of the
    screen during the game when a voice sample is played. Type in all the text you
    want displayed here.
    AckTime: Uh...I don't know what this does. I _think_ that it sets how much of
    a delay is made after an order is given to respond with an acknowledgement. But
    I could very well be wrong. Just leave it alone, unless you want to find out
    what it really does. If you find out, please e-mail me and tell me what it does.
    Thanks in advance :)
    FFireAbbrev: Type abbreviations for Friendly Fire strings.
    FFireSound: Set sound samples for Friendly Fire.
    FFireString: Type the text string for Friendly Fire samples.
    MatureTaunt: Leave this value at 0 if a Taunt isn't, or set it to 1 if it is, a
    Mature Taunt. If the value is set to 1, and the option "No Mature Taunts" is
    checked in the Unreal Tournament Preferences menu, then the corresponding taunt
    will not be played. Use this for voicepacks that have little swearing in them.
    But if they're ALL bad, then the person shouldn't be using the voicepack if they
    don't want to hear bad words. :/
    NameSound: Set sound samples for the leader names (the samples played after the
    computer acknowledges the team leaders such as "Red Leader, Blue Leader," etc.)
    They go in this order:
    0. Red leader
    1. Blue leader
    2. Green leader
    3. Gold leader
    NameTime: I don't know this one either. X(
    numAcks: Set the number of Acknowledgements that this voicepack has.
    numFFires: Set number of Friendly Fires.
    numTaunts: Should be self-explanatory.
    OrderAbbrev: Should be self-expanatory.
    OrderSound: Set order sounds, but make sure that they are arranged in this
    0. Defend the base (Orders bots to defend the flag or objectives)
    1. Hold this position (Orders bots to stay where they are and attack)
    2. Assault the base (Orders bots to destroy objectives)
    3. Cover me (Orders bots to follow you and provide covering fire)
    4. Freelance (Bots will act depending on the point spread and game type)
    *skip 5-9*
    10. Take their flag (Orders bots to take the enemy's flag [CTF only])
    11. Search and destroy (Orders bots to find control points[Domination only])
    OrderString: Set Order text strings.
    OtherAbbrev: Self-explanatory, again.
    OtherSound: Set Other sounds, arranged in this order:
    0. Base is uncovered (Never heard bots say it, even when no one was defending.)
    1. Get our flag back (Bots won't say it)
    2. I've got the flag (Bots as well as humans say this when they acquire the
    enemy's flag)
    3. I've got your back (Bots say this half of the time when they follow you.)
    4. I'm hit (Bots say this when they take damage.)
    5. Man down (Bots say this when a teammate dies.)
    6. I'm under heavy attack (Bots say this when being fired upon.)
    7. You got point (Bots say this the other half of the time after following you.)
    8. I've got our flag (Bots say this when they're about to recover their team's
    9. I'm in position (Bots say this when they reach a position for defending.)
    10. Hang in there/On my way (Bots say this when they're going to their 
    11. Control point secure (Bots and humans say this when they secure a control
    point in Domination.)
    12. Enemy flag carrier is here (Bots [NAGGINGLY!] say this when the enemy gets
    your flag.)
    13. I need some backup (Bots will say this for no apparent reason, even when
    they don't need any backup.)
    14. Incoming/Take them down (Bots say this when the enemy team approaches their
    base in large numbers.)
    15. I've got your back (...again? Must be a mistake...)
    16. Objective destroyed (Bots and humans say this when an objective is destroyed
    in Assault mode.)
    17. Medic (Bots say this when they need health. 'Course you can't do anything
    about it...)
    otherstring: Set Other text strings.
    TauntAbbrev: Self-explanatory.
    TauntSound: Again, self-explanatory.
    TauntString: Do I need to say anything?
    OK, when you're finished doing all that, hit the "X" at the top of the screen.
    You're almost done!
    +-++-+ +-++-++-+ +-++-+ +-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-++-++-+
    |E||.| |T||h||e| |.||u| |f||i||l||e| |*||*||*||*||*||*||*||*||*||*||*||*||*||*|
    +-++-+ +-++-++-+ +-++-+ +-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-++-++-+
    This is a simple step. Go back to the Actor Class browser, and go to "View" at
    the top, then "Show Packages". You should see the name of your package here.
    Check the box next to it, and then go to the Save button at the top of the
    screen and click it to save your .u file. Easy!
    Now, close UnrealEd. You don't need it anymore!
    +-++-+ +-++-++-+ +-++-++-++-+ +-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-+
    |F||.| |T||h||e| |.||i||n||t| |f||i||l||e| |*||*||*||*||*||*||*||*||*||*||*||*|
    +-++-+ +-++-++-+ +-++-++-++-+ +-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-+
    Go to your
    Unreal Tournament/System
    directory, and copy a .int file and paste it in the same folder. Now open that
    copy, and delete the text. Now, copy and paste this text into it:
    Change the "WWWW" to the name of your package, "XXXX" to the name of your 
    voicepack, "YYYY" to Male, Female, or Boss, whichever pertains to your voicepack,
    and "ZZZZ" to what you want the pack to be called in the game (this text appears
    in the drop-down menu where you select your Voice in the Unreal Tournament Player
    Setup menu.)
    Now save the file (Do not use "Save as...", just "Save"!) and close it. Then
    right-click on the file and select "Rename..." and change the name to the same
    name that your .u file is.
    Just one extremely short step left...
    +-++-+ +-++-++-++-++-++-++-+ +-++-++-+ +-++-++-++-+ +-++-++-++-+ +-++-++-++-+
    |G||.| |E||d||i||t||i||n||g| |t||h||e| |.||i||n||i| |f||i||l||e| |*||*||*||*|
    +-++-+ +-++-++-++-++-++-++-+ +-++-++-+ +-++-++-++-+ +-++-++-++-+ +-++-++-++-+
    Open the UnrealTournament Configuration Settings in the
    Unreal Tournament/System
    directory. Then find in the file where it says
    and go to the bottom of that area just before the blank line, and type in the
    where "XXXX" is the name of your voicepack (NOT your package!) This is necessary
    to use your voicepack in an online game.
    Congratulations! You're done with your voicepack!
    But you wouldn't let your voicepack go without TESTING it, would you?
    +-++-+ +-++-++-++-++-++-++-+ +-++-++-++-+ +-++-++-++-++-++-++-++-++-+ +-++-++-+
    |H||.| |T||e||s||t||i||n||g| |y||o||u||r| |v||o||i||c||e||p||a||c||k| |*||*||*|
    +-++-+ +-++-++-++-++-++-++-+ +-++-++-++-+ +-++-++-++-++-++-++-++-++-+ +-++-++-+
    Now comes the FUN part! XD
    Start up Unreal Tournament, and change your Player Setup so that your voicepack
    is the voicepack you use. Start a game with bots that also have the voicepack.
    Test the voicepack out in all game modes and see if all the samples are where
    they should be. See if the bots say what they're supposed to when they're
    supposed to.
    This step can last as long as you want it to! Have fun!
    +-++-++-+ +-++-+ +-++-++-++-++-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-+
    |E||n||d| |o||f| |d||o||c||u||m||e||n||t| |*||*||*||*||*||*||*||*||*||*||*||*|
    +-++-++-+ +-++-+ +-++-++-++-++-++-++-++-+ +-++-++-++-++-++-++-++-++-++-++-++-+
    Copyright 2003 by Brett Jordan
    February 24, 2003 7:43 P.M. CST

    View in: