ModEnc is currently in Maintenance Mode: Changes could occur at any given moment, without advance warning.

ScriptTypes: Difference between revisions

From ModEnc
Jump to navigation Jump to search
m Blargh, category
Line 28: Line 28:
*This section is read from {{Ini|ai}} and the current map file.  
*This section is read from {{Ini|ai}} and the current map file.  
*Unlike [[AITriggerTypes]], there is no difference on where a ScriptType is defined, they are compiled into a single list after reading both files.
*Unlike [[AITriggerTypes]], there is no difference on where a ScriptType is defined, they are compiled into a single list after reading both files.
*The infamous {{Tt|-G}} suffix has no meaning what so ever.  
*The infamous {{Tt|-G}} suffix has no meaning whatsoever.  
*Unlike [[TaskForces]], there is no effect to prefixing a ScriptType's ID with a hexadecimal prefix.
*Unlike [[TaskForces]], there is no effect to prefixing a ScriptType's ID with a hexadecimal prefix.


[[Category:AI(md).ini Sections]]
[[Category:AI(md).ini Sections]]
[[Category:Maps Sections]]
[[Category:Maps Sections]]

Revision as of 08:45, 17 June 2008

ScriptTypes
Sidebar/Default

This page should correctly be named "[ScriptTypes]"; it is wrong due to technical restrictions.


In Tiberian Sun through Yuri's Revenge, this section defines a list of all AI Scripts in the game. AI Scripts control what the AI controlled units actually do, like "attack enemy buildings", "gather just outside our own base", "move to nearest GACNST", and so on. Consider it a primitive programming language which supports two kinds of loops and no conditional statements. Each AI Script needs its own section in the same file. That section should contain a zero-based list of actual Script Actions with arguments for the TaskForce to execute. Unlike most other object lists, the list containing the script's actions does care about its ordering - it reads the lines indexed from 0 to 49 in ascending order. No other flags are read from that section, so nothing is stopping you from adding stuff like Name= for your own reference, which third party tools such as FinalAlert 2 or AI Editor V2 usually can use as well.

Format

[ScriptTypes]
0 = 0438CD41-G
1 = 0438CD42-G

[0438CD41-G]
Index = action,argument
Index = action,argument

[0438CD42-G]
Index = action,argument
Index = action,argument

Both action and argument are numbers, the meaning of arguments is different for each Action.

Note again: Index is read from 0 to 49 inclusive in order, unlike other object lists which read the contained items without paying attention to the keys on the left side.

Possible Actions

Additional information

  • This section is read from ai(md).ini and the current map file.
  • Unlike AITriggerTypes, there is no difference on where a ScriptType is defined, they are compiled into a single list after reading both files.
  • The infamous -G suffix has no meaning whatsoever.
  • Unlike TaskForces, there is no effect to prefixing a ScriptType's ID with a hexadecimal prefix.