Skip to content

Releases: FlightControl-Master/MOOSE

MOOSE patch 2.4.2

12 Oct 19:23
Compare
Choose a tag to compare

You won't believe it, but fixing an erroneous workaround of patch 2.4.1. Now it should be correct....
Please use patch 2.4.2.

MOOSE patch 2.4.1

11 Oct 17:31
Compare
Choose a tag to compare

Our first patch... There was an undiscovered issue with cargo loading when the near range was too small during pickup for helicopters and APCs. This is fixed now. The pickup end route for boarding cargo is now at the center of the helo or APC.

You don't need to do anything, just reload the moose.lua :-)

take care,
FC

MOOSE Release 2.4.0

10 Oct 19:29
Compare
Choose a tag to compare

Are are proud to present you this new release 2.4.0.

Getting to this point has been a massive work. We've put in quite a large amount of testing on the different modules, and we also could fix a lot of the outstanding issues that were reported.

That being said, new modules means new things to learn, and maybe new issues may be introduced that we did not know yet. We really hope that you all can remain patient as you've been with us preparing and testing. Please keep reporting those issues on discord and here on github, and we'll fix them.

Special thanks go to the following people, who are on our Discord channels:

  • shadowze for his stringent testing through the past months and his pro-active advice.
  • gunterlund for his tests on the apc stuff.
  • nolove for his enthousiastic and never ending feedback on trying out the stuff.
  • delta for his great help on the discord channels and forums.

And all those who i may have forgotten to mention! (appologies in advance!)

1. What's new?

FlightControl and FunkyFranky have been working together a bit, and the result is a complete new cargo management system, artillery management, a new warehouse system, and suppression of fire.

MOOSE introduces a new cargo management system, which provides you the following:

1.1. Warehouses

A new WAREHOUSE module, that allows you to move cargo assets between warehouses. Warehouses move
cargo using the new cargo management system.

1.2. Transport Cargo by AI Carriers

ai_cargo_dispatcher

Create cargo transporation systems within your missions to dispatch cargo between various locations or zones by various carriers. These classes are the "engines" for transportation used by the WAREHOUSE class.

1.2.1. Transport Cargo using APCs

ai_cargo_dispatching_for_apc

AI_CARGO_DISPATCHER_APC transports cargo using AI controlled armoured personel carriers or vehicles between zones. Per AI group, the cargo transportation using airplanes is internally facilitated using the new AI_CARGO_APC class.

1.2.2. Transport Cargo using Helicopters

ai_cargo_dispatching_for_helicopters

AI_CARGO_DISPATCHER_HELICOPTER transports cargo using AI controlled helicopters between zones. Per AI group, the cargo transportation using airplanes is internally facilitated using the new AI_CARGO_HELICOPTER class.

1.2.3. Transport Cargo using Airplanes

ai_cargo_dispatching_for_airplanes

AI_CARGO_DISPATCHER_AIRPLANE transports cargo using AI controlled airplanes between airbases. Per AI group, the cargo transportation using airplanes is internally facilitated using the new AI_CARGO_AIRPLANE class.

1.3. Transport Cargo by Human Players

task_cargo_dispatcher

Create cargo transporation tasks within your missions to command human players to dispatch cargo between various locations or zones. The new TASK_CARGO_DISPATCHER class will be used for this purpose.

1.3.1. Create cargo transport tasks.

task_cargo_transport

Use the TASK_CARGO_DISPATCHER:AddTransport() method to create new cargo transport tasks. The new class TASK_CARGO_TRANSPORT is the internal new cargo tasking engine that will govern the transport task for one human player.

1.3.2. Create CSAR tasks.

task_cargo_csar

Use the TASK_CARGO_DISPATCHER:StartCSARTasks() to create automatically CSAR tasks for pilots that ejected from crashing airplanes for rescue. The new class TASK_CARGO_CSAR is the internal new cargo tasking engine that will govern the CSAR task for one human player.

1.4. Declare Cargo

cargo

New classes have been introduced that you need to use to declare cargo within your mission scripts. The main CARGO class is the base class for all the cargo management. It contains the required functionality to load / board / unload / unboard cargo, and manage the state of each cargo object. From this CARGO class are other CARGO_ classes derived, which inherit the properties and functions from CARGO, but implement a specific process to handle specific cargo objects! It is not the purpose to use directly the CARGO class within your missions. However, consult the CARGO documention as it provides a comprehensive description on how to manage cargo within your missions.

1.4.1. Cargo groups

cargo_groups

Use CARGO_GROUP to manageme omoveable and grouped cargo logistics, which are based on a GROUP object. Typical cargo of this type can be infantry or (small) vehicles.

1.4.2. Cargo crates

cargo_crates

Use CARGO_CRATE to manageme single cargo crates, which are based on a STATIC object. Typical cargo of this type can be crates, oil barrels, wooden crates etc. The cargo can be ANY static type! So potentially also other types of static objects can be treated as cargo! Like flags, tires etc.

1.4.3. Cargo slingload

cargo_slingload

Use CARGO_SLINGLOAD for the management of sling loadable cargo crates, which are based on a STATIC object. This cargo can only be slingloaded.

1.5. Artillery

artillery

Use the new ARTY class to easily assign and manage targets for artillery units.

1.6. Suppression

Use the new SUPPRESSION class to hold fire, when ground units get hit by (suppressive) enemy fire. They will not be able to shoot back for a certain amount of time.

2. What more has changed?

2.1. New look and feel!

The MOOSE documentation has been completely reworked. Here is the link to the MOOSE documentation, it has not changed:

https://flightcontrol-master.github.io/MOOSE_DOCS/

Here are some of the changes:

  • New main documentation pages subdivided into different sections.
  • New MOOSE code documentation, now also showing per class the complete list of methods and fields. Also each class will now have a picture and a class inheritance tree.

2.2. New luadocumentor

During the release 2.4 preparation, i revised completely the code of luadocumentor to generate the above documentation pages.

2.3. New deployment process

Now we deploy our solutions using appveyor, and this deployment automation has greatly increased our productivity and consistency within the team.

2.4. Discord

Our community on Discord has grown massively. Lots of people to chat about MOOSE.

3. What has really changed?

Set of Zones

A new SET_ZONE class to model sets of zones and take action upon them.

#CARGO tag

Cargo can be declared within the mission editor by adding a #CARGO tag in the name.

#ZONE tag

Now you can declare your polygon zones also using the #ZONE tag within the mission editor.

DATABASE:

  • Added support for new NEUTRAL coalition DCS feature. Neutral groups (and players) are registered in the MOOSE data base (e.g., neutral groups can be found by GROUP:FindByName()).

AIRBASE:

  • Added Persian Gulf map airport enumerators including Shiraz and Kerman airports.
  • Added a lot of convenient wrapper function for new DCS API getparking() function. This enables finding the coordinates of parking spots, explicitly specifying terminal types, check on runway, mark parking spots and many more.
  • Added sophisticated find free parking spot routine, which is takes dimension of aircraft etc into account. Also, aircraft are not spawned at places with statics or too close to scenery objects (optional).
  • Added parameter of how many parking spots are required in find free parking spots routine.
  • FindFreeParking function: Added check that units of a group don't overlap with previous members of the same group.

AI_CARGO_DISPATCHER:

  • APCs and helos will now obey speeds set by SetPickupSpeed() and SetDeploySpeed().

DESIGNATE:

  • Fixed bug when e.g. smoke is fired that made script crash.

RAT (v2.3.2):

  • Improved how free parking spots are found with the new DCS API function.
  • Respawn delay is now used as despawn delay as well. Groups will not get removed immediately after engine shutdown.
  • Commute "starshape" option added to preserve home base.
  • Added user functions for parking spots, terminal types etc.
  • Added return of self for user functions.
  • Added check for all units of a group that did not move within a certain time.
  • Added new check on runway function and removed old version.
  • Changed some default parameter values.
  • Removed old RAT parking spot DB routines and old check on runway functions.

RATMANAGER:

  • Added interval between spawns.

ARTY (v1.0.4):

  • Added tactical nuclear shells, illumination bombs and smoke shells.
  • Added dynamic target/relocation assignment via marks on the F10 map.
  • Added small data base with min/max firing ranges of most common artillery group.
  • Added possibility to set rearming ...
Read more

MOOSE Release 2.3.1

20 May 07:23
Compare
Choose a tag to compare

Release 2.3.1. fixes compatibility issues with the news DCS world release 2.5, concerning the new markings functionalities on the map.
When marks are placed, DCS generates S_EVENT_MARK_ADDED, S_EVENT_MARK_CHANGE, S_EVENT_MARK_REMOVE events. The internal event handler in MOOSE would crash when it would see those new events. This is fixed now. As a result, you will now also see these mark events in the dcs.log appearing, including its contents etc.

Please update your missions with this new version.

MOOSE Release 2.4.a

14 May 06:26
Compare
Choose a tag to compare
MOOSE Release 2.4.a Pre-release
Pre-release

Release 2.4.a (alpha release). This is work in progress, but we have published this material since a lot of new things are available in this release!


Release 2.4 is focussing on cargo management and handling, and provides other new classes for artillery and suppression of fire. The artillery and suppression is new artwork from FunkyFranky!

Cargo

Cargo core classes

  • A new CARGO_GROUP class: declares a CARGO object that handles a GROUP of infantry or vehicles for cargo handling using the MOOSE cargo handling classes for boarding and unboarding into and from carriers.
  • A new CARGO_CRATE class: declares a CARGO object that handles a STATIC object or cargo object for cargo handling using the MOOSE cargo handling classes for loading and unloading into and from carriers.
  • A new CARGO_SLINGLOAD class: declares a CARGO object that handles a STATIC cargo object for cargo handling using the MOOSE cargo handling classes for sling loading by helicopters.

Cargo handling classes for AI carriers:

  • A new AI_CARGO_APC class: Provides methods for the transportation of cargo by a group of ground vehicles, like APCs, trucks etc.
  • A new AI_CARGO_HELICOPTER class: Provides methods for the transportation of cargo by a group of helicopters.
  • A new AI_CARGO_PLANE class: Provides methods for the transportation of cargo by a group of planes.

Cargo task dispatching to a SET of AI carriers:

  • A new AI_CARGO_DISPATCHER_APC class: Orchestrates the AI to transport cargo to deploy locations, by APC groups.
  • A new AI_CARGO_DISPATCHER_HELICOPTER class: Orchestrates the AI to transport cargo to deploy locations, by helicopters.

Cargo task dispatching to a SET of Human Player manned carriers:

  • A new TASK_CARGO_TRANSPORT class: Orchestrates the tasking of cargo transportation by human players to defined deployment zones.
  • A new TASK_CARGO_CSAR class: Orchestrates the tasking of transportation of downed pilots (so shuted pilots behind enemy lines) by human players to defined deployment zones.

Artillery

  • A new ARTY class: Can be used to easily assign and manage targets for artillery units.

Suppression

  • A new SUPPRESSION class: When ground units get hit by (suppressive) enemy fire, they will not be able to shoot back for a certain amount of time.

Set of Zones

  • A new SET_ZONE class: Great new class to model sets of zones and take action upon them.

Other changes:

  • ~CARGO tag: Cargo can be declared within the mission editor by adding a ~CARGO tag in the group name.
  • Zone database: Now the DATABASE object has been extended with a new ZONES list that contains all trigger zones declared in the mission editor. A new ZONE_BASE:FindByName method is now available to search for the ZONE object instead of creating it.

Demonstration missions for the new features:

For now, I recommend you look at the scripts embedded within the demonstration missions.
These missions are not yet in an official published release, so that need to be downloaded from the develop branch in the repository MOOSE_MISSIONS.


The MOOSE framework come delivered in one lua file. There are two versions of this file, but with different file sizes.

  • Moose.lua (with comments, larger file) ... For mission designers, who are developing missions and want to check upon errors appearing in the dcs.log or have a detailed code reference etc.

  • Moose_.lua (without comments, smaller file) ... For runtime environments, to facilitate quicker downloads of mission files and performance.

You can download the files in the Downloads section below.
To use, include the Moose.lua in your .miz file using a DO SCRIPT Trigger. Mission Designers need to read here for a detailed usage description. Consult the MOOSE documentation for further details on the framework.

MOOSE Release 2.3.0

14 Apr 05:28
d792061
Compare
Choose a tag to compare

The MOOSE framework come delivered in one lua file. There are two versions of this file, but with different file sizes.

  • Moose.lua (with comments, larger file) ... For mission designers, who are developing missions and want to check upon errors appearing in the dcs.log or have a detailed code reference etc.

  • Moose_.lua (without comments, smaller file) ... For runtime environments, to facilitate quicker downloads of mission files and performance.

You can download the files in the Downloads section below.
To use, include the Moose.lua in your .miz file using a DO SCRIPT Trigger. Mission Designers need to read here for a detailed usage description. Consult the MOOSE documentation for further details on the framework.


1. RANGE Practice

...

The RANGE class enables easy set up of bombing and strafing ranges within DCS World.

Implementation is based on the Simple Range Script by Ciribob, which itself was motivated by a script by SNAFU see here.

476th - Air Weapons Range Objects mod is highly recommended for this class.

Features

  • Impact points of bombs, rockets and missils are recorded and distance to closest range target is measured and reported to the player.
  • Number of hits on strafing passes are counted and reported. Also the percentage of hits w.r.t fired shots is evaluated.
  • Results of all bombing and strafing runs are stored and top 10 results can be displayed.
  • Range targets can be marked by smoke.
  • Range can be illuminated by illumination bombs for night practices.
  • Bomb, rocket and missile impact points can be marked by smoke.
  • Direct hits on targets can trigger flares.
  • Smoke and flare colors can be adjusted for each player via radio menu.
  • Range information and weather report at the range can be reported via radio menu.

2. Zone Capturing

...

Models the process to capture a Zone for a Coalition, which is guarded by another Coalition.

This is a powerful concept that allows to create very dynamic missions based on the different state transitions of various zones.

Models the possible state transitions between Guarded, Attacked, Empty and Captured states. A zone has an owning coalition, that means that at a specific point in time, a zone can be owned by the red or blue coalition.

The Zone can be in the state Guarded by the owning coalition, which is the coalition that initially occupies the zone with units of its coalition. Once units of an other coalition are entering the Zone, the state will change to Attacked. As long as these units remain in the zone, the state keeps set to Attacked. When all units are destroyed in the Zone, the state will change to Empty, which expresses that the Zone is empty, and can be captured. When units of the other coalition are in the Zone, and no other units of the owning coalition is in the Zone, the Zone is captured, and its state will change to Captured.

3. ATC Operations

...

The ATC_GROUND_CAUCASUS class monitors the speed of the airplanes at the airbase during taxi.
The pilots may not drive faster than the maximum speed for the airbase, or they will be despawned.

4. RAT

...

Lots of improvements on the RAT system.

The aim of the RAT class is to fill the empty DCS world with randomized air traffic and bring more life to your airports.

In particular, it is designed to spawn AI air units at random airports. These units will be assigned a random flight path to another random airport on the map.

Even the mission designer will not know where aircraft will be spawned and which route they follow.

Features

  • Very simple interface. Just one unit and two lines of Lua code needed to fill your map.
  • High degree of randomization. Aircraft will spawn at random airports, have random routes and random destinations.
  • Specific departure and/or destination airports can be chosen.
  • Departure and destination airports can be restricted by coalition.
  • Planes and helicopters supported. Helicopters can also be send to FARPs and ships.
  • Units can also be spawned in air within pre-defined zones of the map.
  • Aircraft will be removed when they arrive at their destination (or get stuck on the ground).
  • When a unit is removed a new unit with a different flight plan is respawned.
  • Aircraft can report their status during the route.
  • All of the above can be customized by the user if necessary.
  • All current (Caucasus, Nevada, Normandy) and future maps are supported.

The RAT class creates an entry in the F10 radio menu which allows to

  • Create new groups on-the-fly, i.e. at run time within the mission,
  • Destroy specific groups (e.g. if they get stuck or damaged and block a runway),
  • Request the status of all RAT aircraft or individual groups,
  • Place markers at waypoints on the F10 map for each group.

Note that by its very nature, this class is suited best for civil or transport aircraft. However, it also works perfectly fine for military aircraft of any kind.

5. User Sounds

A simple class for the Management of DCS User Sounds.

6. User Flags

A simple class for the Management of DCS User Flags, which are set within the Mission Editor.

Release 2.2 - Patch 6 (Stable Version)

31 Oct 10:19
Compare
Choose a tag to compare

List of Changes:

  • Some minor bug fixes in RAT on top of 2.2.5.

The MOOSE framework come delivered in one lua file. There are two versions of this file, but with different file sizes.

  • Moose.lua (with comments, larger file) ... For mission designers, who are developing missions and want to check upon errors appearing in the dcs.log or have a detailed code reference etc.

  • Moose_.lua (without comments: smaller file) ... For runtime environments, to facilitate quicker downloads of mission files and performance.

You can download the files in the Downloads section below.

To use, include the Moose.lua in your .miz file using a DO SCRIPT Trigger. Mission Designers need to read here for a detailed usage description. Consult the MOOSE documentation for further details on the framework.


Release 2.2 - Patch 5

29 Oct 19:06
Compare
Choose a tag to compare

RAT v2

The RAT code has seen a complete overhaul. Many changes under the hood and some new features. However, older scripts should still work as before.

The most important new feature that has been added is that RAT now also allows zones as destination, i.e. the final destination does not necessarily have to be an airport any more. This opens the door for a lot of new scenarios.

New features:

  • Zones are allowed as destinations. These can be trigger zones defined in the mission editor or airports. Each airport automatically has a zone defined around it with a radius of 8 km.
  • Aircraft can fly to a zone and return to their departure. E.g. Interesting for Carrier ops.
    Improved waypoint construction algorithm.
  • Valid departure and destination airports can be selected by MOOSE zones. Easy selection of airports depending on their geographical location.
  • More detailed updated about aircraft status, i.e. when aircraft enter climb, cruise, descent and holding stage. This option must be enabled by user.

New switches:

  • DestinationZone() - Destinations will be treated zones. Aircraft will not descent or land but despawned once they reach the destination zone.
  • ReturnZone() - Aircraft will fly to a zone and then return to their departure airport or zone.
  • StatusReports() - Aircraft will send text messages when they change their flight status, e.g. take-off, climb, cruise, descent, hold.
  • SetDestinationsFromZone(moose_zone) - Valid destinations are selected from airports which lie inside a MOOSE(!) zone.
  • SetDeparturesFromZone(zone) - Valid destinations are selected from airports which lie inside a MOOSE(!) zone.
  • NoRespawn() - Aircraft are not respawned when they have reached there destination.
  • RadioON() - Enables voice radio messages. Same as activating the COMM tick box in the mission editor template.
  • RadioOFF() - Disables voice radio messages. Same as deactivating the COMM tick box in the mission editor template.
  • RadioFrequency(frequency) - Sets the radio frequency of voice messages.
  • ATC_Clearance(n) - RAT ATC gives landing clearance for up to n aircraft at the same time but still with a delay after the last landing clearance was given. Default is 1.
  • ATC_Delay(time) - Time which has to pass until the next aircraft will get landing clearance after the previous one got clearance. Only applies if RAT:ATC_Clearance(n) is used with n>1.

The MOOSE framework come delivered in one lua file. There are two versions of this file, but with different file sizes.

  • Moose.lua (with comments: large) ... For mission designers, who are developing missions and want to check upon errors appearing in the dcs.log or have a detailed code reference etc.

  • Moose_.lua (without comments: small) ... For runtime environments, to facilitate quicker downloads of mission files and performance.

You can download the files in the Downloads section below.

To use, include the Moose.lua in your .miz file using a DO SCRIPT Trigger. Mission Designers need to read here for a detailed usage description. Consult the MOOSE documentation for further details on the framework.


Release 2.2 - Patch 4

26 Oct 17:33
Compare
Choose a tag to compare

This patch brings a change on the SPAWN class:

  • Modified :SpawnInZone(), :SpawnFromVec2(), :SpawnFromStatic(), :SpawnFromUnit() specifying an optional MinHeight and MaxHeight as a parameter, so that the mission designer can choose if he wanna use the group height set in the mission editor for spawn or a random height specified by the parameters.

The MOOSE framework come delivered in one lua file. There are two versions of this file, but with different file sizes.

  • Moose.lua (with comments, 2.1MB) ... For mission designers, who are developing missions and want to check upon errors appearing in the dcs.log or have a detailed code reference etc.

  • Moose_.lua (without comments, 0.8MB) ... For runtime environments, to facilitate quicker downloads of mission files and performance.

You can download the files in the Downloads section below.

To use, include the Moose.lua in your .miz file using a DO SCRIPT Trigger. Mission Designers need to read here for a detailed usage description. Consult the MOOSE documentation for further details on the framework.


MOOSE Release 2.3 alpha - (EARLY ADOPTERS VERSION)

08 Oct 12:22
Compare
Choose a tag to compare

For those who want to use the latest of the latest, use the following Moose.lua files...
Note that this version of MOOSE contain prototype methods, and are bound to change.
However, when methods are changed, I will communicate that, so you can adapt your missions.
I will try to keep the changes to the minimum.


The MOOSE framework come delivered in one lua file. There are two versions of this file, but with different file sizes.

  • Moose.lua (with comments, larger file) ... For mission designers, who are developing missions and want to check upon errors appearing in the dcs.log or have a detailed code reference etc.

  • Moose_.lua (without comments, smaller file) ... For runtime environments, to facilitate quicker downloads of mission files and performance.

You can download the files in the Downloads section below.
To use, include the Moose.lua in your .miz file using a DO SCRIPT Trigger. Mission Designers need to read here for a detailed usage description. Consult the MOOSE documentation for further details on the framework.


List of changes:

  • Menu optimization for A2G and DESIGNATE.
  • Moved commandcenter menu to Group level. It is only generated when a Mission menu is generated.
  • Removed S_EVENT_PLAYER_ENTER_UNIT events and S_EVENT_PLAYER_LEAVE_UNIT events. They don't work anyway properly in MP. No deal there.
  • Added marking of task on map when also assigned.
  • A BAI task won't be converted to a CAS task when a friendly airplane is nearby.
  • Only the top 5 tasks will be listed in the menu to prevent a menu overflow and menus won't be synced.
  • Fixed the issue in AI_BALANCER.
  • Fixed the issue with autolase in designate.
  • Fixed dissappearing menus in A2G tasking... It was RAT or MENU_MISSION that caused it.
  • Fixed issue in BASE:ScheduleOnce and BASE:ScheduleRepeat which caused issues in Capture Coalitions.
  • Fixed issue with MISSILETRAINER.
  • Fixed issue in BASE with methods ScheduleOnce and ScheduleRepeat, which would allocate SchedulerObject which would confuse SCHEDULER!
  • Fixes with Tracing in RAT.
  • Fixes with BASE.Debug in EVENT.
  • Added interactive debugging.
  • Fixed menus dissapearing.
  • Extended the Waypoint functions of COORDINATE with new methods for Air operations:
    • function COORDINATE:WaypointAirTurningPoint( AltType, Speed )
    • function COORDINATE:WaypointAirFlyOverPoint( AltType, Speed )
    • function COORDINATE:WaypointAirTakeOffParkingHot( AltType, Speed )
    • function COORDINATE:WaypointAirTakeOffParking( AltType, Speed )
    • function COORDINATE:WaypointAirTakeOffRunway( AltType, Speed )
    • function COORDINATE:WaypointAirLanding( Speed )
  • Introduction of the ZONE_CAPTURE_COALITION class, which is an exciting new capability within the MOOSE framework!
  • ATC_GROUND now has default speed limits per map, and default takeoff prevention speeds per map. These speed limits can be modified using the underlying methods for all airbases or for one specific airbase.
    • For Caucasus: 50 km/h and 150 km/h.
    • For Nevada: 50 km/h and 150 km/h.
    • For Normandy: 40 km/h and 100 km/h.
  • ATC_GROUND: New methods to prevent players from taking off at the runway. Players are kicked without warning:
    • :SetMaximumKickSpeed() - Prevents takeoff speed limit in meters per second.
    • :SetMaximumKickSpeedKmph() - Prevents takeoff speed limit in kilometers per hour.
    • :SetMaximumKickSpeedMiph() - Prevents takeoff speed limit in miles per hour.
  • ATC_GROUND: Updated methods to limit the speed on the airbases:
    • :SetKickSpeed() - Specifies speed limit in meters per second.
    • :SetKickSpeedKmph() - Specifies speed limit in kilometers per hour.
    • :SetKickSpeedMiph() - Specifies speed limit in miles per hour.
  • Ensure that ATC_GROUND classes in the :New() constructor return itself!
  • Added new ATC_GROUND class.
  • Modified :SpawnInZone(), :SpawnFromVec2(), :SpawnFromStatic(), :SpawnFromUnit() specifying an optional MinHeight and MaxHeight as a parameter, so that the mission designer can choose if he wanna use the group height set in the mission editor for spawn or a random height specified by the parameters.
  • Disabled the logic of Fratricide until a DCS bug gets fixed by ED. There is no workaround possible. Units containing a player cannot be destroyed using Unit:destroy() API in multi player when the player is seated in a Unit from a Client connected PC to the Server.
  • Fixed error in AI_A2A_PATROL due to a stupid error that sneaked into the logic due to a variable rename. Fixed now! (sorry). This problem stopped AI_A2A_DISPATCHER patrolling.
  • By default, hit messages are disabled. They can be enabled by using SCORING:SetMessagesHit().
  • Added GOAL, ZONE_GOAL, ZONE_GOAL_COALITION, ZONE_CAPTURE_COALITION classes to model capturing of Zones by a Coalition.
  • Added on the ZONE class an improved search method to search for SCENERY in a ZONE. Added also methods ZONE:GetScannedScenery() and ZONE:GetScannedSceneryType() methods to inspect which Scenery has been found after a Zone:Scan()...
  • Added USERFLAG class to manage user flags.
  • Added USERSOUND class to manage sounds.
  • Added SET_BASE:GetSetNames() to return an array of the object names of a Set. (Created dynamic lists based on mission editor groups defined).
  • Added SET_BASE:GetSetObjects().
  • Revised the message naming.
  • Optimized the code for GetScannedCoalition.
  • Markings text optimized for ZONE_CAPTURE_COALITION. Now the owning coalition is also shown.
  • Added ZONE_POLYGON:NewFromGroupName() to ease the syntax.
  • Renamed Functional.Spawn#SPAWN to Core.Spawn#SPAWN.
  • Added method SPAWN:InitRandomizeTemplatePrefixes().
  • Added Templating from a SET_GROUP object in SPAWN. Added SPAWN:InitRandomizeTemplateSet and SPAWN:InitRandomizeTemplatePrefixes().