Starsiege Quickchat Generator (SQCGen v3.2)

Want to sound cool and impress all your friends, but tired of editting your quickchat.cs? Want access to an unlimited number of quickchats to reflect your suave and sophisticated personality? SQCGen can help. Got milk? Nope, can't help ya there. MechWarrior3 hacks? Very funny, run along now.

What are Quickchats?

Starsiege's quickchats are the sound effects you can send to other players by pressing Ctrl-F1 through Ctrl-F9. The bindings for the keys are defined in quickchat.cs. For instance the following lines:
  function QuickChat1()
  {
    Say( "TargetTeam", 1, "Excellent.", "M1_DM_excellent.WAV" );
  }
bind the message "Excellent." to Ctrl-F1.

What Does SQCGen Do?

SQCGen helps manage quickchats by automatically generating a quickchat.cs from any list of Say statements. You just put as many Say statements as you want in a file, and whenever you change the list you just drag and drop it onto SQCGen.exe. This will generate a quickchat.cs that binds the quickchats using one of these keymap schemes:

Function Key Binding Numeric Keypad Binding
This is the default mode and is a natural extension of both the original game's and SQCGen v2's schemes. The first 9 quickchats are mapped to Ctrl-F1 through Ctrl-F9, the next 9 are Shift-F2 Ctrl-F1 through Shift-F2 Ctrl-F9, Shift-2 Shift-F1 Ctrl-F1 through Shift-F2 Shift-F1 Ctrl-F9 are the 82nd through 91st quickchats, etc. The recipient for your message starts as Everybody. You select it for all subsequent quickchats by typing:

  • Shift-Numpad5 for Everybody
  • Shift-Numpad6 for Team
  • Shift-Numpad2 for Target
  • Shift-Numpad3 for TargetTeam
This alternate binding is much easier to use. You just type in the number of the quickchat and press:

  • NumpadEnter for Everybody
  • Numpad+ for Team
  • Numpad* for Target
  • Numpad/ for TargetTeam

For example you type Numpad5 Numpad6 Numpad1 Numpad+ to send quickchat 561 to all your teammates. Numpad- clears any partially entered number. To use this binding you must edit SQCGen.cs and change the line that says $qcNumpad=0; to say $qcNumpad=1;.

Be advised: the Function Key Binding replaces the game's normal behavior for Shift-F1, which is important for Starsiege's single player mode. The Numeric Keypad Binding replaces several of the game's important multiplayer bindings. If either of these choices are unacceptable you can either make a custom binding by editting SQCGen.cs, or delete SQCGen and restore your original quickchat.cs.

In addition to generating quickchat.cs SQCGen also produces two printer-friendly reference guides (one for each binding) in MapFKeys.txt and MapNumpad.txt. You can print either one as is, but if you have many quickchats it's worth taking a few minutes to load the file into your favorite high-end word processor (Corel WordPerfect works for me) and format it into 4 or 5 columns with a small font. That way you can fit 200+ quickchats per printed page. If you run SQCGen.exe from the DOS command-line you can use the -html option to produce HTML output. There are two problems with this: it uses the MULTICOL tag (which is only supported by Netscape 3.0+), and any more than one page worth of quickchats causes the columns to flow unnaturally across the printed pages.

SQCGen includes a list of all the standard Starsiege quickchats (SSQuickchats.txt), including some not originally documented in the game. You can use the entire list, or you can create your own list and organize the quickchats into any order you want.

Installation

This program is intended for use under Windows 95/98/NT. If you had a previous version of SQCGen your quickchat lists will still work but you should first rename your existing SQCGen folder, follow the instructions below, and then copy your old lists into the new SQCGen folder. If you decide to use the Numeric Keypad Binding you may also want to rearrange your existing sets into groups of 10 instead of groups of 9.

Navigate to the folder where Starsiege is installed; it's called C:/Dynamix/Starsiege by default. Unzip sqcgen.zip into a new folder called C:/Dynamix/Starsiege/SQCGen. Note this folder MUST be within the Starsiege folder for SQCGen to work properly. When you use SQCGen it overwrites scripts/quickchat.cs, so make sure you rename your original quickchat.cs file before doing anything else. Now check that the installation works: using an Explorer window drag Cybrid.txt onto SQCGen.exe and drop it. A black DOS window will briefly appear and then go away. Now quickchat.cs should contain the bindings for a complete set of Cybrid quickchats. There are 36 in all, start the game and try them. OK? Now you're ready to peruse SSQuickchats.txt and create your own quickchat lists. Go get 'em tiger. Have fun. Remember you have to exit and restart Starsiege in order for any changes to quickchat.cs to take effect.

You may want to create a shortcut to the SQCGen folder on your desktop. That way you can quickly select or edit your quickchats. When creating a new list of quickchats I fire up one Wordpad window with SSQuickchats.txt, scan for the messages I want, select them, copy them, and then paste them into another Wordpad window in the order I want.

Tricks

For reference purposes it helps to group quickchats into categories and label them with comments (any line that starts with // is a comment).

Ordinarily bindings are assigned in sequential order, but for organizational purposes you might want to leave gaps in your bindings. It is possible to manually specify a new position for the subsequent bindings with a line like this embedded in your Say statement list:

  // fn=321
If you're using the Function Key Binding this causes the next Say statement to have the binding Shift-3 Shift-2 Ctrl-1. If you use the Numeric Keypad bindings use something like:
  // id=321
to cause the next Say statement to have the binding Numpad3 Numpad2 Numpad1 NumpadEnter. When using this feature (in either mode) be careful not to create duplicate bindings. SQCGen will not prevent or warn you if you do.

Troubleshooting

If you can use Notepad and drag and drop files you should be able to figure out SQCGen Einstein. Nobody should have to educate a geek who can assemble a tricked-out state-of-art 3D gaming system in how to use this kind of simple tool. Frankly I don't have time for it, so if you have problems read the advice below and try to fix it yourself before you go crying for help. Post a message on the Starsiegeplayers Customization forum if you have a comment, question, or *gasp* bug report. Myself or someone else will likely be happy to discuss it with you or help.

If SQCGen encounters a problem it leaves its DOS window open briefly so you can read the error message. Please do so.

Problem: No quickchat sounds, but you do see messages.
Solution: If it is only certain sounds you can't hear then it is either because:

If you can't hear any of the stock sounds it's possible your taunts.vol is either missing or corrupted. Restore it; in the worst case by reinstalling Starsiege.

Problem: You hear the wrong quickchats. The order of the quickchat bindings is out of sequence with your list.
Solution: Usually this is because there's a syntax error in one of your Say statements and it was skipped, causing all the others to move forward in the binding. You should see the message "Skipped garble: <offending line here>" in SQCGen's DOS window identifying each line that has a problem. Make sure all your Say statements have the following form:

    Say("Everybody",1,"Some text.","foo.wav");
SQCGen v3 is more forgiving than ever. You can have spaces in the statement and can even forget the semi-colon, but you still have to get the quotes and the WAV filename right.

Problem: No quickchat sounds, no messages.
Solution: Either quickchat.cs doesn't exist, or it has a syntax error, possibly because you made changes (including one or more errors) in SQCGen.cs. Restore the original SQCGen.cs and try again.

Problem: You dropped a list file on SQCGen but the quickchats haven't changed.
Solution: All the SQCGen files, including your lists, must be in a folder called C:/Dynamix/Starsiege/SQCGen. If it is and you still have this problem watch for an error message in the DOS window and if it's something you can't understand or fix please report the bug.

Problem: Target and TargetTeam actually work just like Everybody.
Solution: This is a bug in Starsiege not SQCGen. There is no solution at this time.

Problem: Chats don't work at all, or are not the ones you specified. Some tauntpacks come with a quickchat.cs and if you unzip the entire pack into your starsiege folder for some reason the game recognizes and uses that one instead of the real one at starsiege/scripts/quickchat.cs.
Solution: Delete starsiege/quickchat.cs if there is one. Do not extract quickchat.cs from other tauntpacks in the future.

SQCFilter

Sometimes you have a gnarly old quickchat.cs that you or someone else put alot of effort into crafting by hand, and you'd like a convenient way to extract just the Say statements. That's what SQCFilter.exe does. Drop a file on it and any lines with valid Say statements in them will be extracted and deposited into SQCFilter.txt. The Say statements are actually parsed and regenerated from scratch, with all spaces removed. The recipient is always changed to Everybody.

Caveats

Please use your quickchats judiciously. We've seen what happens when someone first realizes they have 9 quickchats. Imagine that to the Nth degree. To disable the stock quickchat sounds move or rename the taunts.vol file. To disable custom quickchat sounds move or rename their WAV files. In either case the quickchat text will still appear in the message window.

I highly recommend you find a place in your keymap (OPTIONS/EDIT CONFIG) for a "Ignore target chat on/off" binding. I use U. This comes in very handy when you encounter a person whose taunts and/or typewritten comments annoy you. Simply target them, press your Ignore key, and party on.

The Say list files you drop on SQCGen must be plain text. Use Wordpad or Notepad to create and edit them.

In general the quality of some of the undocumented sounds is poor. Also I had to type in their text myself; and I could only guess what was being said in some cases. Don't sue me if I misinterpreted anything. In fact be clever and create your own custom text. I about fell out of my seat laughing the first time I saw "Tell your wife I loved her."

The contents of SQCGen.cs are automatically included at the beginning of every quickchat.cs file SQCGen creates. So if you change it (and don't come cryin to me if you break it by doing so) you must regenerate your list.

Credits

SQCGen was inspired by Xac's original quickchat scripting efforts. Thanks Xac.

Testcase hosted the first Starsiege taunt page (now shut down) and produced a boatload of quality taunt packs. Get em, use em, and laugh out loud. Thanks Testcase.

The best taunt page I'm currently aware of is hosted by Sniper at http://pluto.spaceports.com/~ibrigade/pubtaunts.html. Thanks Sniper.

Dynamix produced a great game in Starsiege, but they had nothing to do with SQCGen. Any errors in SQCGen or its documents are my fault, not theirs. Thanks Dynamix.

History

[OF] Pincushion
Orion Faction ~tFc~


Last modified: Thu 09 March 2000