:eek: ok.....
-delete- First of all, those of you who use Windows, pay no attention to this, this patch does not apply to you. -end delete-
EDIT: This now applies to all OS's, including Windows! Keep reading later posts to find out more.
In Unix/Linux/MacOSX each user has their own directory to do with what they want. Usually called a home directory (at least in Linux). This is where a user's configuration files and data files are put. So, on these platforms, Tremulous creates a directory for each user called ".tremulous" to store their configs and to put auto-downloaded PK3s into. Now, following proper filesystem standards, you would probably have Tremulous installed in /usr/games/ or /usr/share/games/ or whatever. These installation directories should not be modifiable by regular users, only root! When you first start Tremulous it will create a directory something like this /home/usernamehere/.tremulous/ which will hold your personal configuration settings for Tremulous as well as any PK3s you auto-download. This is also the directory you should be using when developing mods and maps for Tremulous. Now, if you were making your own shader files (which any decent mapper would, even if you are using premade code) then you would have them in /home/usernamehere/.tremulous/base/scripts/mymap.shader. Now, some of the shader commands are evaluated when you compile the BSP, so q3map2 needs to be able to find mymap.shader. Without my patch, it will default to the Quake3 settings (which are compiled into q3map2 in the same way). Q3map2 allows you to override where it looks for the game's install directory, but not the Unix user directory. So, when compiling tremulous maps on *nix systems, it will default to /home/usernamehere/.q3a/ and be unable to find your shaders in /home/usernamehere/.tremulous/. So any compile-time shader parameters, such as water, will be of no effect. You would end up with what looks like water (all the render-time effects), but is a solid brush (compile-time effects).
Now most of the popular games that use the Q3 engine have similar code included in q3map2 so it can support them. You use the -game switch to select which game you are mapping for when running the program from the command line. Now it would be nice to add a switch that will override the user's game directory to help future projects, but seeing as how Tremulous has been around a bit it would be nice to have it compiled in. Now I haven't asked if GTKRadiant would include this patch in their code. If not, the Tremulous project could keep their own fork of q3map2 which includes this patch.
Again, if you use Windows, don't worry about it. If you use any Unix-like OS (including MacOSX) you need this patch to save yourself some headaches. Some noob mappers have been complaining about being able to "walk on water" when they try and put water in their maps. This is most likely the cause of those problems if they were using a Unix-like OS. In fact, this is how I discovered this problem. I was following the instructions to the letter and still couldn't get water or lava to work. Finally figured out it was a compile error and realized what was going on.
This does not affect the old Tremulous Q3 mod! This does not affect you if you are working directly in your Tremulous install directory (usually Windows users). If you are in Linux, Unix, or MacOSX you shouldn't be altering anything in your install directory (unless you were lazy and installed Tremulous to your home directory :roll:).