Questions about scripting
Posted: Sun Apr 20, 2003 4:48 pm
Here's the contents of the readme that comes with the FO2 mapper in the path ...\Fallout2_Mapper\scripts:
1) What has scripting to do with the editor? In other words, what can and can't we do with the editor alone, without altering the scripting in the way this readme talks about?
2) I wouldn't know a C preprocessor if it came up and hit me in the face. In fact, pretty much all of this Readme is gibberish to me. Does what the editor can do mean we won't need the C preprocessor or will making really advanced maps mean we'll need to get involved in this sort of stuff too?
Right. So:You must have a C preprocessor in order to build the Fallout 2 scripts!
-----------------------------------------------------------------------
When the Fallout/Fallout2 script compiler was made, it did not support
a preprocessing pass. When the scriptors requested support for preprocessor
statements such as #define, we decided the easiest way to provide them with
what they wanted was to just use the Watcom preprocessor that we all had
sitting on our machines already. It only took a few minutes to cook up a
batch file that would preprocess a script file using Watcom and then compile
it using our script compiler. This saved us a lot of time versus rewriting
the script compiler to have a built-in preprocessor.
Although we used the Watcom 10.x and 11.0 preprocessor, pretty much any C
preprocessor should work. Keep in mind that Watcom 11 was released over 6
years ago. Newer C preprocessors are probably far more strict about adhering
to the C language standards than Watcom was back then. Using a newer
preprocessor may generate warnings or errors that wouldn't have shown up
using Watcom 11.0.
I have updated the batch files to support either the Watcom or Microsoft
Visual C/C++ 6.0 preprocessors. You will have to edit p.bat to make
sure the correct line is uncommented for the preprocessor you are using.
If you do not have access to either of these tools, there is a group in
the process of making the Watcom compiler available for download as an open
source product. See http://www.openwatcom.org. At the time of this
writing, release candidate 2 was available for download. Another free
compiler that might work is lcc-win32. It is available for download from
http://www.cs.virginia.edu/~lcc-win32/ . I have _not_ tested building the
scripts with lcc-win32. Based on my experience getting things to work
between Watcom and MSVC, it is likely that the scripts will need some
massaging to get them to work with lcc-win32.
Please note that since we used Watcom during development, that is the only
one that I can claim will produce the correct output for the scripts. The
others should work just fine, but I make no promises.
These are not neccessarily the scripts that shipped with Fallout 2!
-------------------------------------------------------------------
I have done my best to put together something close to the scripts that
shipped with Fallout 2. However, the source for the scripts was not very
well organized and it was difficult to piece together all of the backups into
something I could claim was 'it'. For many of the scripts found here, the
output files generated by the script compiler are not identical to those that
shipped with the game. I have no idea if they are newer or older than what
shipped with the game. I only know that they are different.
You may also notice that there are many compiled script files that shipped
with Fallout 2 for which there is no source here. Fallout 2 shipped with many
compiled script files that were not used by the game. Some of those files are
left over from Fallout 1. Others were used for testing, renamed or cut from
the game before it shipped.
Enjoy!
Chris Jones
1/30/03
1) What has scripting to do with the editor? In other words, what can and can't we do with the editor alone, without altering the scripting in the way this readme talks about?
2) I wouldn't know a C preprocessor if it came up and hit me in the face. In fact, pretty much all of this Readme is gibberish to me. Does what the editor can do mean we won't need the C preprocessor or will making really advanced maps mean we'll need to get involved in this sort of stuff too?