More specifically, an API is a set of classes and functions that "hooks" into a program to allow it to be modified or customized by external programs.
All you actually need to open and edit the script files are Windows Notepad (though it would be difficult to keep track of things there). The MSVC++ 6.0 SP5 program is needed to compile the scripts into missions that can be executed by the game. The MS Visual Studio IDE (Integrated Development Environment) simply provides a convenient place for code editing and project management.
I hope that explains things a little more for you.
To help you with setting up the API, here is a cut and paste of the SFC3 API readme:
---------------
A. Requirements
---------------
In order to create scripts that will function with the STAR TREK(r): Starfleet Command 3(tm)
(SFC3, for short) engine, you should meet the following requirements:
1. A Windows 32-bit operating system such as Windows 95/98/2000/XP.
2. Microsoft Visual C++ 6.0 installed.
3. All system requirements required to run SFC3 as described in the manual.
---------------------
B. Installing the API
---------------------
To setup the API, please follow these steps:
1) Copy the SFC3_Scripting_API folder to the harddrive on which you wish to develop.
2) Copy the files from "SFC3_Scripting_API\stl\Inlcude" and "SFC3_Scripting_API\stl\LIB" to their respective
directories found under the install path of your C++ IDE. These files are updates to Microsoft's
Standard Template Library and are necessary in order for the OP scripts to build successfully.
3) You must also have the Microsoft DX8.1 (or greater) SDK installed on your dev system.
4) From within VC++ go to Tools->Options and go to the directories tab. Select "Include files" from the
"Show directories for:" drop down. Make sure the DXSDK is listed 1st on this list. Do the same thing for
the DXSDK\Lib under "Library files" in the "Show directories for:" drop down.
---------------------
C. Building Scripts
---------------------
For the SFC3 version of the API you DO NOT build the script interface, you only build the individual
scripts.
1) Load up a workspace in VC6 by using File->Open Workspace and finding the location to which you installed
the script api open one of the .dsw files. For example open Scripts_Borg.dsw.
2) Choose the script you wish to work on and make it the Active Project by right-clicking on it and selecting same (Set As Active Project).
3) Build. The outputed .scr file will be created in the \SFC3_Scripting_API\Projects\Taldren\Projects\SFCTNG\source\assets\scripts directory.
---------------------------
D. Running A Script In Game
---------------------------
Now that a script has been created, it is time to run the script.
1. Go to the directory \SFC3_Scripting_API\Projects\Taldren\Projects\SFCTNG\source\assets\scripts. Take the newly created .scr file and place it in
"SFC3\Assets\Scripts" directory (or the \Assets\Scripts under where you have SFC3 installed.
2. For scripts that were created for Dynaverse 3, make your way to "Assets\Scripts\Campaigns" and
create yourself a new .mct file. Replace the names of the scripts with the name of your newly
created .scr file. Change other variables as you see fit. Make certain that the trigger prestige
is set to 0 and that the trigger mission is the title of your new script if you would like to see
your mission appear early in Dynaverse 3.
3. Now run SFC3. You should now see your single player campaign scripts show up as missions on the
mission selector in Dynaverse 3 and you should see your skirmish scripts show up on the list
under the skirmish setup screen.
---------------
E. Changes to the Comm System
---------------
The comm system is probably the most changed item from the SFC2 and OP API, so it will be addressed in brief here.
Comm states must be added by to the ship you wish the message to be coming from. IF you wish to make the message appear
as if it is coming from your bridge, place the code on the players ship.
For each state the comm menu can be in, you place mAddCommState in the proper ship. For each possible response to a comm message you create
a comm option. For example, to add a comm state to the players ship in the mission Borg_Life I used the following:
mAddCommState( kArrivedFirstGeneratorCommState, kB01_0110_msg, kB01_0110_vce );
mRegisterCommOption( kArrivedFirstGeneratorCommState, kEmptyCommState, kContinueID );
mAddCommState sets up the comm state 'kArrivedFirstGeneratorCommState' and attaches the message 'kB01_0110_msg' and the voice
'kB01_0110_vce' to it. You can leave off the voice or the voice and the message, if so the comm state will not play a voice or
play the voice or display a message when it is called.
mRegisterCommOption sets up the possible responses to the message for the player to choose from and to which comm state the ship should
go to next, depending on which response is chosen. In this case, the only reponse is continue and it goes to the empty comm state (no
further comm messages directly link to this). The first argument 'kArrivedFirstGeneratorCommState' must agree with the comm state you
wish it to attach to or it will show up under the wrong message. The 2nd argument tells it which comm state to go to next. The third
corresponds to the message you wish to display as the characters possible text. A forth argument can be used to specify a voice to
play with this choice. You may have many commoptions the real limit is higher than the number that will fit on screen.
-------------------
F. More Information
-------------------
For more information about this API, please visit the Taldren forums which are linked at:
http://www.taldren.com