New script language for X-Force from Jim_Raynor |
19.06.2004, 22:53 |
With the release of V0.845 of X-Force, which will be soon available, there will be extensive changes in the script language X-Script. The special for X-Force developed script language will be replaced by the extensive and flexible Pascal Script by Carlo Kok (www.remobjects.com). Pascal Script was formerly known as Innerfuse Pascal Script.
As the name implies, the language is based on Pascal and offers a lot of possibilities. For example:
- variables, constants
- Pascal language constructs:
- | Begin/End
- | If/Then/Else
- | For/To/Downto/Do
- | Case x Of
- | Repeat/Until
- | While
- | Exit
- | Continue
- | Break
- standard types: Byte, Shortint, Char, Word, SmallInt, Cardinal, Longint, Integer, String, Real, Double, Single, Extended, Boolean, Enumerations, Variant
- own functions and types (especially records) could be defined
- arrays could be used
Besides the external new possibilities of Pascal Script, the communication with X-Force will be much easier. With only one code line you can import an excisting Delphi function in Pascal Script and it could be called from there. Pascal Script supports direct interaction with Delphi objects and Delphi records so that expansion will be easier in the future.
Furthermore it is now possible to adjust the processing of the script in the mission editor and in the game by creating an API to have access to the game score data. Up to now it was always necessary for the mission editor to create an extra test environment. By that, I mean that processing functions had to be managed twice. In the "new" mission editor the X-Force score data is used directly. The only difference is that the GUI of X-Force is bypassed and the different events have to be released by yourself.
With the changes in the mission editor and the flexible connection to Pascal Script, the need to double update in the mission editor and in the game will be unnecessary . Extensions and new functions can be introduced much faster and more error resistent. You can count on more extension of X-Script in the future.
In the past the development of X-Scripts was very difficult. In the old version of X-Script there was no way to access the existing data structures or to use already programmed functions. New functions with access to the internal data and functions had to be written. With Pascal Script this is not a problem anymore. You now have direct access on Delphi functions within X-Script.
Rarely there had to be written connection functions, if a complex function for X-Script was needed in the game. Now these connection functions can be used directly in Delphi and are not only useable in X.Script.
Of course there will be some disadvantages which are relatively minor.
At first all existing scripts were affected and had to be retyped completely. This means that X-Script had to be relearned. Unfortunately the error messages are no longer completely clear like before. There are a few bugs which cause access violations within Pascal Script. If you have any problems you can get support in the forum.
Writing Pascal-based X-Script is a little bit harder, but there are many more possibilities with the new X-Script.
And now the good news:
The planning shows that all already existing scripts will be finished by the end of next week. The first version with the "new" X-Script will be V0.840. When all scripts are rewritten, the public beta test for V0.845 will be started. There are not many new features but some big mistakes in the tactical missions are fixed. The test will have a running time of four weeks because extensive internal changes had be made.
At the same time the planning for V0.850 is ongoing. Sascha alias Kasaderis is already creating an extensive changes to the soldiers and to the tactical missions. After the team internal vote, a public discussion will be started. The necessary program changes are planned for V0.850.
[ Write a comment ]
|
|