I'd love it if every installation went totally trouble-free. But my experience so far is that there have been a few problems installing my scripts, and even once they're installed problems can still arise. So I've set up this page to help answer the most frequent troubleshooting questions.

(#1) IMPORTANT: Check this first!
It's important that I be able to give you the right kind of answers on this page. So, I need to make sure your script has been installed correctly.

Does your main menu screen look like this?
Notice the PrestoPack window in the lower left.


If not, you are not correctly installed!
Head over to the Installation Page for tips on getting the script installed correctly.

(#2) This Script Requires Version 1.3+!
Most Tribes scripts (this one included) require versions of Tribes later than 1.0! Please make sure you are running the latest version -- You can get it here.
(#3) Try Scripts One at a Time!
When you're trying to debug a problem with installed scripts, it usually helps to only load one at a time. Once you know each script works by itself, then you can make them work together.

The same thing applies to the PrestoPack - If you're having trouble, first please check if it works without any other scripts loaded.

So, back up your AUTOEXEC.CS file and replace it with one that has only the line
exec("presto\\install.cs");
in it. After you've gotten the pack working, read on to troubleshoot conflicts with other scripts.

Now that you've read these important warnings, I'll try to solve your problem. Since something isn't working, I am sure you are very upset. I'll try to word the problems as is appropriate to your level of anger.

YOUR DUMB PACK WON'T RUN FOR ME! WHAT'S UP WITH THAT?
Let's check the obvious stuff first. Yes, I know you're not one of those people that doesn't read directions. This is just in case:
  • Did you install it correctly? Check warning (#1) above, and the Installation Page for tips on getting the script installed correctly.
  • Are you running the latest major version of Tribes? Check warning (#2) above to see where to get the latest version.
  • Are you running the pack all by itself? Check warning (#3) above for information about how to test the pack by itself.
  • You are looking for help installing Greeting Card WizardŽ 2.4, right?
    Ha ha. Just kidding.
Alright, so you really have a problem with the Pack. To be honest, I don't have a whole lot of answers yet - that's because 99% of the bugs people have told me about were covered by those above three rules. Hey, just in case, why don't you go back and read them one more time?

One thing that might have happened is that you were editing your preferences and made a typing error. It's easy to do, especially if you're not familiar with the Tribes scripting language. Maybe you forgot to end the line with a semi-colon, or accidentally hit a key, leaving a stray character in the middle of the document.

It's easy to check. Bring up the main menu screen, and hit the ~ key. This will bring up the console. You'll see a lot of lines saying things like "Executing this.cs..." and "Executing that.cs...", look for lines that say "error."

Click on this screenshot to show what an error looks like:

See how the error message gives you an idea that the error is on line 283? Well, since I can't really see what you might have done, you're sort of on your own to fix it. The best thing to do is to look at the lines around the thing you changed, to see what other, correct statements look like.

If this isn't it, then read through the rest of these troubleshooting tips, because it might be covered later...


OKAY, SO IT'S RUNNING, BUT EVERY OPTION IS SET TO FALSE! WHAT KIND OF STUPID SCRIPT IS THIS?
Oops... looks like when you unzipped the file, you didn't use a tool that recognizes long file names. What you're seeing is a symptom of the file PRESTOPREFS.CS not being where it's supposed to. Well, if you use a program that doesn't recognize long file names, it's probably there, but called something like PRESTOPR.CS.

The fix is to either use a better unzipper, like WinZip, or to go into your tribes\config\presto directory and rename the file "PrestoPr.cs" to its full name, "PrestoPrefs.cs"... Some other scripts use long file names too, so you're gonna want to get a better unzipping tool sooner or later.


HEY! YOU GAVE ME AN INVALID SCRIPT FILE ERROR! THAT SUCKS.
An invalid script file error can come from one of two things:
  • The file is missing.
  • The file is not a text file.
If the file is missing, we have to figure out why. First, let me explain one of them: GenericTriggers.cs is always missing, so don't worry if you see that it's reported as an invalid script file.

Why else might a script be missing? Maybe you had a script file and deleted it, but forgot to take it out of your AUTOEXEC.CS file. Maybe when you saved it, the editor you were using saved it with an extra extension, so it's actually called AUTOEXEC.CS.TXT now. Or maybe you didn't unzip it from the ZIP package into the right directory? I can't really be sure... Hopefully I gave you some good ideas where to look.

Of course, there's still the other possibility - the script isn't missing, but it's corrupt. This can happen pretty easily when you're editing script files in a word processor, like Word or WordPad. These editors just love to save the files in their own data format, instead of text. So when using them you have to be absolutely sure that you've saved the file as text! If one day you have a working installation, but then you edit a file and start getting invalid script file errors, this is probably what happened.


YEAH SURE, YOUR SCRIPT WORKS, BUT HOW DO I ADD OTHER SCRIPTS?
I've written up an explanation of how to install new scripts. You can find it here, at the bottom of the scripts download page.


YOU PROMISED ME THAT PRESTO-COMPATIBLE SCRIPTS WOULD WORK, BUT THIS ONE I TRIED DOESN'T! YOU LIAR.
Well, first, let me say that because I didn't write those other scripts, I can't offer a 100% guarantee that any script is totally compatible with mine, or other scripts. Still, my pack is designed to help authors make very friendly scripts that work well together. So probably what you have here is a script installation problem.

First, Presto-compatible scripts need my pack installed first! That means that the line which says
	exec("presto\\install.cs");
needs to be before the line that includes the new script. This is because those scripts use some stuff from my pack which won't be around until it's been loaded.

Next, maybe the scripts have errors in them, or when you were editing one you left an error in it. One thing that might have happened is that you were editing the script and made a typing error. It's easy to do, especially if you're not familiar with the Tribes scripting language. Maybe you forgot to end the line with a semi-colon, or accidentally hit a key, leaving a stray character in the middle of the document. Or maybe the author distributed it with an error? (Not too likely, and a sure way to get a Big Duh award)

It's easy to check. Bring up the main menu screen, and hit the ~ key. This will bring up the console. You'll see a lot of lines saying things like "Executing this.cs..." and "Executing that.cs...", look for lines that say "error."

Click on this screenshot to show what an error looks like:

See how the error message gives you an idea that the error is on line 283 of PrestoPrefs.cs? Well, your scripts might have an error like this too. Since I can't really see what you might have done, you're sort of on your own to fix it. The best thing to do is to look at the lines around the thing you changed, to see what other, correct statements look like.

Finally, there's a chance that it's actually conflicting with another script you loaded. To test this, try building an AUTOEXEC.CS file which loads only my pack, and then the script. If it works right then, it means another script is causing the problem. One by one, re-add your scripts until it breaks - then you know which script is breaking the other one.

If this isn't it, then read through the rest of these troubleshooting tips, because it might be covered later...


HEY - MY OLD SCRIPT STOPPED WORKING WHEN I INSTALLED YOUR PACK! WHAT GIVES?
Now, I assume you read warning (#3) up above, and that you already know which script is causing the problem and it's not mine. What? You're not sure? I'll explain again how to find out.

First, try running only my script. Then, one by one, add back in the other scripts, checking each time to see if there is a problem. If you find one that causes a problem, leave it out of your autoexec, and set it aside. Then go on trying the rest of the scripts.

Okay so now you know which script(s) are causing the problems. Unfortunately many older scripts are just not compatible with any other scripts, including mine! The most common example of this is a script which uses the function OnClientMessage. I can't get in to a full discussion of this function, suffice it to say that there can be only one of them in all of your scripts, but most scripts want it to be their own one.

Usually this means that in order to include a new script, you have to edit your old scripts and combine them all together into a new file. This is a really ugly and error-prone way to do it.

Well, the PrestoPack includes a way for other scripts to all get in on the action without getting in each other's way! New Presto-compatible scripts should not cause you any problems. But you'll still have to modify all your old, naughty scripts to make them behave.

The problem is that the order in which you load the scripts is very important! The last script to be loaded always wins. If you load a misbehaving script after mine, it could make mine not work! First, let's check. Someone might have already done it for you! I've re-written several common scripts to be compatible with my pack, and lots of authors are converting their scripts as well. Check this table:
Old, Naughty Script Did This New, Compatible Script Is Here
Thanked people when they repaired you Scripts Page: Thanks!
Announced when you were repairing stuff Scripts Page: Repair Notification
Told you about team-damage stuff Scripts Page: Team Damage
Told people you had the flag Scripts Page: FlagCall
Killer Bunny's dyn_hud.cs No need! DynHUD in my Pack replaces it.
MADHUD Working with the author to fix it.
Some other HUD (FishHUD,etc) On the Scripts Page there are lots of replacement HUDs!
Something else Check the Scripts Page but probably you'll need to read on...

Now, if you've found that you have a conflict in an old-style script, and no replacement is available, here is how you can make it more compatible very easily! I will specifically talk about scripts which use OnClientMessage, but it's not the only function which can cause this problem. There are other functions which can conflict and they're dealt with in the same way. (Luckily the most important step was when you identified the exact script with the problem and it wasn't mine ;) )

Old, Naughty Script

function onClientMessage(%client, %msg)
   {
   if(%client)
      $lastClientMessage = %client;
   else
      {
      if(String::findSubStr(%msg, "Being repaired by") != -1)
         {
         %matchIdx = 18 + String::findSubStr(%msg, "Being repaired by");    
         for(%i=0; String::getSubStr(%msg, %i, 1) != ""; %i++)
         %length++;
         %thankName = String::getSubStr(%msg, %matchIdx, %length-%matchIdx);
         localMessage("thanks"); // sound local, so everyone doesn't have to hear it
         }
      }
   return true;
   }

New, Compatible Script

function MyRepairScriptOnClientMessage(%client, %msg)
   {
   if(%client)
      $lastClientMessage = %client;
   else
      {
      if(String::findSubStr(%msg, "Being repaired by") != -1)
         {
         %matchIdx = 18 + String::findSubStr(%msg, "Being repaired by");    
         for(%i=0; String::getSubStr(%msg, %i, 1) != ""; %i++)
         %length++;
         %thankName = String::getSubStr(%msg, %matchIdx, %length-%matchIdx);
         localMessage("thanks"); // sound local, so everyone doesn't have to hear it
         }
      }
   return true;
   }
Event::Attach(eventClientMessage, MyRepairScriptOnClientMessage);
See, they're really not that different... Here are the changes I made:
  • First, I renamed the function OnClientMessage to something else. I picked MyRepairScriptOnClientMessage because I know no one else has a script called that!
  • Next, I put that Event::Attach line at the end. What this does is to let the function you renamed still "think" it is the only OnClientMessage function, without getting in the way of all the other functions that think that too.
When you make these changes it's important to type them exactly! If you leave off as much as a semi-colon, the script might not work :(

Now, as I said, there are other scripting functions that can cause conflicts, but OnClientMessage is the most common one. The others have fixes nearly as simple, but I can't put them all up on this webpage. If you know you have an incompatible script, you can head to The Planet Starsiege Datacore and ask people there if they have a compatible version! It's where most of the scripters hang out.


WHERE THE HELL DID YOU PUT MY V-CHAT MENU? IT'S GONE!
In offering new menus, I had to make a calculated risk. See, Tribes really only allows one real menu in the whole game! So in order to let people make new menus, I actually trick Tribes into using the same menu, but I add take away all the choices and add in new ones each time you bring up a menu.

Yeah, yeah, so you don't care how my scripts work. But the problem, and the reason it might affect you, is that this would destroy your old menu! So I put in a feature in the pack called the "OldChat" menu, which is your old menu, and I try to keep it the same as before you installed my script.

The Presto Preferences for OldChat let you put it on any key, but by default it's on V. So maybe there's a chance that you changed your V-Chat key away from V, but now it's not working because the OldChat menu is back on V again. Or maybe you were editing the Presto Preferences and thought you didn't need OldMenu and you disabled it. Well, you need it :)

But occasionally the menu disappears anyway - even if you didn't do anything in the preferences. If this is the case, you should probably let me know so I can work with you to fix it!


HUH? EVERY TIME I USE THE DROP MENU IT SAYS "UNABLE TO COMPLETE OBJECTIVE"
Well, the problem is that the Drop Menu is by default bound to the Control-D key. This happens to be the same as "(D)ecline Command" :( So the solution is that either you can edit your Presto Preferences to change my Drop Menu to another key, or you can use the Tribes key configuration to move the other command out of the way.


YEAH, WELL THAT DOESN'T MATTER 'CUZ THE DROP MENU IS BROKEN ANYWAY!
Okay, this is true. Yeah, a last minute bug crept in and now the Drop Menu doesn't want to drop any ammo besides the chaingun's. Oops!
This will be fixed in version 0.94 and I've released an interim fix.


WHAT HAPPENED TO MY GRENADES? YOU JERK, I USE THE G KEY ALL THE TIME AND NOW IT DOESN'T WORK! INSTEAD SOME DUMB MENU COMES UP.
This is another case of my keys getting in the way of the default ones. Now, let me explain why you should change your grenade key to another letter and leave my Job Menu on the G key.

The Job Menu is designed to help you and your team communicate very specifically what you're doing or what's needed. It will really It's such a useful feature that I wanted it to go on an easy to use key. If you look at what makes the V-chat menu so easily usable, it's that it's on a left-handed key real close to your movement keys. Well, my Job Menu deserves to be on a close key too, and I think if you start to use it you'll soon learn just how communicative you can become with only a few keystrokes.

Well, most people end up putting grenades on another key, and most people use all the other keys really close to the movement keys. So I figured that G was the best place to put the menu - it's close but not so close that it gets in the way.

Please consider moving your grenades key too.... But if you don't want to, the Job Menu key can be changed in your Presto Preferences.


THIS IS REALLY WEIRD... THERE'S SOME STUFF STUCK ON MY PLAYSCREEN AND I CAN'T GET RID OF IT!
The symptoms of this problem are that you see extra HUDs or windows on your playfield.

There is a file called PLAY.GUI which is in your Tribes config directory. It's safe to delete this file - in this case, you should. Sometimes (after a crash, etc) garbage will be saved in the file and from then on, Tribes will automatically load the garbage every time you play again! After you delete this, that stuff should go away.


WHY IS IT SO QUIET? I CAN'T HEAR VOICES IN THE GAME ANY MORE.
This was a tricky problem to find and fix, but it's not in the latest version of my pack. So you probably have an older version -- you'll need to upgrade even if it says your pack is at version 0.93. One way to check to see if you have the bug is to open up the PrestoPrefs.cs file, and look at the lines near the end. If it says
$PrestoPref::BannerCycleTime = 30;
you've got the version with the bug. If it says
$PrestoPref::BannerCycleTime = 10;
you're just fine and you don't have this problem, so why are you reading this?

By the way: Some websites might have an old copy of my 0.93 pack, but the one from this site definitely includes the fix! Head over here and download it again...


WHEN I HIT TAB, I CAN'T VOTE ANY MORE. WHAT ARE YOU, A COMMIE?
Your freedom of speech is important to me! So I will tell you how to fix this problem. First, I will give you an idea of what you did (yes, you! ;) ) to mess up the tab menu.

When you installed my pack the first time, you probably accidentally put some or all of my files into your tribes\config directory, rather than into the tribes\config\Presto directory where they belong. Well, since it looks like you're running the script okay (or you would have stopped at troubleshooting question #1), you probably realized this and reinstalled the PrestoPack correctly. Well, you didn't delete the old, misplaced files!

That's okay, this is easy enough to fix. Go in to your tribes\config directory and delete any file which also exists in the tribes\config\Presto directory. Don't just delete every file because this will really screw you up and then you'll be really mad at me. In particular, it is because there is a file called MENU.CS in your config directory that your tab menu is not working. So make sure you delete at least that file. But try and make sure you get all the duplicates! Who knows what problems the rest of those files are causing...

Now go and vote yourself crazy.