Secret Labs

The original Secret Lab system had three separate global flags to control the boons and did not allow for AircraftTypes to be granted. Secret Lab logic also had some flaws which have been resolved (see Type 1 Fixes).

In Ares, the boon is only picked after the building is first captured by a MultiplayPassive=no country, or assigned to it if pre-placed on the map. The boon ultimately offered is picked at random, but only boons that are not presently buildable by the owner of the Secret Lab are eligible to be selected.

This logic has been extended with the following ‘per building’ flags. SecretLab=yes must be set on the building before it will be treated as a Secret Lab and so allow these flags to be considered.

[Building]►SecretLab.PossibleBoons= (list of TechnoTypes)
Specifies all the buildings, vehicles, infantry and aircraft that this particular building could potentially award as a secret lab boon. Defaults to all items from [General]►SecretInfantry, [General]►SecretUnits and [General]►SecretBuildings.
[Building]►SecretLab.GenerateOnCapture= (boolean)
Whether the Secret Lab shall re-pick the boon to be offered every time the building is captured by or assigned to a MultiplayPassive=no country. Otherwise, the boon is picked only once, the first time it is assigned to such country. Defaults to no.

Each possible boon can specify the following flags. Both are only checked at the time a boon is picked, so if SecretLab.GenerateOnCapture=no, then the boon might still be obtained by a forbidden country, or denied a required country if the Secret Lab is captured later on.

Note

This means that such Secret Labs may appear to disobey SecretLab.RequiredHouses and SecretLab.ForbiddenHouses when captured. This is not a bug.

[Boon]►SecretLab.RequiredHouses= (list of countries)
Specifies which countries are allowed to get this unit as a Secret Lab boon. Defaults to all houses.
[Boon]►SecretLab.ForbiddenHouses= (list of countries)
Specifies which countries are not allowed to get this unit as a Secret Lab boon. Defaults to none.

New in version 0.1.

Changed in version 0.9.