Editing – ArmA: Armed Assault

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Link to ArmA: Community Tools instead of blank ArmA: Tools)
m (Text replacement - "{{arma2}}" to "{{GameCategory|arma2|link= y}}")
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Stub}}
{{TOC|side}}
'''[[:Category:ArmA: Armed Assault|{{arma1}}]]''' offers many possibilities to '''add new content''' to it. You can [[ArmA: Mission Editing|create missions]], [[ArmA: Addon Editing|introduce new vehicles]], enhance your missions and addons with the large [[Scripting|scripting]] capabilities or create a whole new [[ArmA: Total Conversions|total conversion]] - a game in the game.


'''[[Armed Assault]]''' offers many possibilities to '''add new content''' to it. You can [[ArmA: Mission Editing|create missions]], [[ArmA: Addon Editing|introduce new vehicles]], enhance your missions and addons with the large [[Scripting|scripting]] capabilities or create a whole new [[ArmA: Total Conversions|total conversion]] - a game in the game.
Many [[ArmA: Addon Groups|addon groups]] have formed and kept alive [[:Category:Operation Flashpoint|{{ofp}}]] until the release of [[:Category:ArmA: Armed Assault|{{arma1}}]]. The '''nearly unlimited capabilities''' of addon and mission editing have brought completely different scenarios into the game than what it was originally designed for. Various mods have been created by creative members of the community.


Many [[ArmA: Addon Groups|addon groups]] have formed and kept alive [[Operation Flashpoint]] until the release of [[Armed Assault]]. The '''nearly unlimited capabilities''' of addon and mission editing have brought completely different scenarios into the game than what it was originally designed for. Space mods, lego mods or mods simulating other games or films (Star Wars, Starship Troopers, Stargate, ...) have been created by creative members of the community.
[[:Category:ArmA: Armed Assault|{{arma1}}]] means to even '''extend these capabilities'''. There are more possibilities when [[ArmA: Addon Editing|editing addons]], many [[:Category:Armed_Assault:_New_Scripting_Commands_List|new commands]] for [[Scripting|scripting]] and additional features for [[ArmA: Mission Editing|mission editors]].
 
[[Armed Assault]] means to even '''extend these capabilities'''. There are more possibilities when [[ArmA: Addon Editing|editing addons]], many [[:Category:Armed_Assault:_New_Scripting_Commands_List|new commands]] for [[Scripting|scripting]] and additional features for [[ArmA: Mission Editing|mission editors]].


== Getting Started ==
== Getting Started ==
Line 16: Line 15:
== Backward Compatibility ==
== Backward Compatibility ==


Although [[Armed Assault]] is largely compatible with the original [[Operation Flashpoint]] series of games, no editing functions should be assumed to be fully compatible, unless they are specifically linked as Articles or Subcategories to this page. There are a few changes which often break existing code:
Although [[:Category:ArmA: Armed Assault|{{arma1}}]] is largely compatible with the original [[:Category:Operation Flashpoint|{{ofp}}]] series of games, no editing functions should be assumed to be fully compatible, unless they are specifically linked as Articles or Subcategories to this page. There are a few changes which often break existing code:


* [[String]] and [[Code]] are now two distinct types (see [[Code]])
* [[String]] and [[Code]] are now two distinct types (see [[Code]])
Line 22: Line 21:
== Forward Compatibility ==
== Forward Compatibility ==


[[ArmA 2]] will be largely compatible with [[Armed Assault]]. To make porting of content from ArmA as simple as possible, there are few important things:
{{GameCategory|arma2|link= y}} will be largely compatible with [[:Category:ArmA: Armed Assault|{{arma1}}]]. To make porting of content from ArmA as simple as possible, there are few important things:


* using of undefined variable in scripts (nil value) will be in ArmA 2 strictly reported as an error. All variables used in any scripts must be initialized before first use
* using of undefined variable in scripts (nil value) will be in Arma 2 strictly reported as an error. All variables used in any scripts must be initialized before first use


* in ArmA 2 namespaces will be introduced for user scripts and variables. There are many low level reasons to do this and most of the content will be not be affected by this in any negative way. However, in order to be prepared, it is very important to separate UI related scripts and code as much as possible and not simply share global variables between UI and missions as UI namespace needs to be handled differently.
* in Arma 2 namespaces will be introduced for user scripts and variables. There are many low level reasons to do this and most of the content will be not be affected by this in any negative way. However, in order to be prepared, it is very important to separate UI related scripts and code as much as possible and not simply share global variables between UI and missions as UI namespace needs to be handled differently.


* in order to maintain smooth frame rate in real-time content, time limit for all scripts in each frame is enforced by the engine in ArmA 2. Generally speaking, in case of more demanding scripts, be prepared that their result may come way later and also there probably can suffer from significant latency. It is under evaluation if and how possibly allow user scripts to change how much time they may take from the CPU in every frame.
* in order to maintain smooth frame rate in real-time content, time limit for all scripts in each frame is enforced by the engine in Arma 2. Generally speaking, in case of more demanding scripts, be prepared that their result may come way later and also there probably can suffer from significant latency. It is under evaluation if and how possibly allow user scripts to change how much time they may take from the CPU in every frame.


== What's new ==
== What's new ==
Line 50: Line 49:
;Terrain Surface
;Terrain Surface
* [[Layered Terrain Surface Representation]]
* [[Layered Terrain Surface Representation]]
;Environment
* [[ArmA: Ambient Life]]
* [[ArmA: Ambient Sounds]]


=== AI Modification ===
=== AI Modification ===
Line 59: Line 54:
* Each unit type can define its own [[FSM]] (AI logic) defining how the unit behaves when acting as a part of the formation [[Armed Assault: FormationFSM]]
* Each unit type can define its own [[FSM]] (AI logic) defining how the unit behaves when acting as a part of the formation [[Armed Assault: FormationFSM]]


[[Category:ArmA: Editing| ]]
{{GameCategory|arma1|Editing}}

Latest revision as of 13:01, 19 March 2024

Armed Assault offers many possibilities to add new content to it. You can create missions, introduce new vehicles, enhance your missions and addons with the large scripting capabilities or create a whole new total conversion - a game in the game.

Many addon groups have formed and kept alive Operation Flashpoint until the release of Armed Assault. The nearly unlimited capabilities of addon and mission editing have brought completely different scenarios into the game than what it was originally designed for. Various mods have been created by creative members of the community.

Armed Assault means to even extend these capabilities. There are more possibilities when editing addons, many new commands for scripting and additional features for mission editors.

Getting Started

Backward Compatibility

Although Armed Assault is largely compatible with the original Operation Flashpoint series of games, no editing functions should be assumed to be fully compatible, unless they are specifically linked as Articles or Subcategories to this page. There are a few changes which often break existing code:

Forward Compatibility

Arma 2 will be largely compatible with Armed Assault. To make porting of content from ArmA as simple as possible, there are few important things:

  • using of undefined variable in scripts (nil value) will be in Arma 2 strictly reported as an error. All variables used in any scripts must be initialized before first use
  • in Arma 2 namespaces will be introduced for user scripts and variables. There are many low level reasons to do this and most of the content will be not be affected by this in any negative way. However, in order to be prepared, it is very important to separate UI related scripts and code as much as possible and not simply share global variables between UI and missions as UI namespace needs to be handled differently.
  • in order to maintain smooth frame rate in real-time content, time limit for all scripts in each frame is enforced by the engine in Arma 2. Generally speaking, in case of more demanding scripts, be prepared that their result may come way later and also there probably can suffer from significant latency. It is under evaluation if and how possibly allow user scripts to change how much time they may take from the CPU in every frame.

What's new

Mission Editing

  • Official and Community Tools. Eg: PBO file handling and more.

Addon Editing

Scripting

  • Precompilation - Code is now distinct type

Terrain Editing

Terrain Surface

AI Modification