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

Naval

From ModEnc
Jump to: navigation, search
Tiberian Dawn The Covert Operations Red Alert Counterstrike Aftermath Tiberian Sun Firestorm HyperPatch Red Alert 2 Yuri's Revenge Ares Generals Zero Hour Tiberium Wars Kane's Wrath
Flag: Naval
File(s): rules(md).ini
Values: Boolean values: yes or no, true or false, 1 or 0
Default: no
Applicable to: BuildingTypes, VehicleTypes


On BuildingTypes

If set to yes, this flag forces a Factory=yes building to only build VehicleTypes with a corresponding Naval=yes flag set. This flag serves as the only real logical distinction between a land-based vehicle factory and a naval-based ship factory.

Naval=yes also prevents this BuildingType from being placed on non-Water tiles, or being deployed from a vehicle on non-Water tiles, regardless of the value of WaterBound.

On VehicleTypes

If set to yes, determines that this vehicle can only be built by a factory with Naval=yes set.

Additionally, Naval=yes is used to designate what is considered a "naval" target for NavalTargeting logic.

NCO Bug Warning

Copied From EVA_NewConstructionOptions:

The cause of the NCO bug is, indirectly, due to the developers' decision to treat Naval and land-based vehicles as members of the same VehicleType class, rather than creating a separate class. Shipyards are therefore classed as Factory=VehicleType, just like War Factories. This means the game will determine that you can build the land-based vehicles when you don't have a War Factory but do have a Shipyard, and vice versa for Naval vehicles.

The result of this is that, unless you set all ground vehicles to have a Prerequisite of at least one of the War Factories and set all Naval units to have a Prerequisite of at least one of the Shipyards, you'll get the NCO bug when you own one of the factories but not the other. You can add other prerequisites as well if you like, but all units must include a Prerequisite of a factory of the appropriate kind.

PrerequisiteOverride makes this difficult, since a satisfied PrerequisiteOverride causes Prerequisite to be ignored. If you set PrerequisiteOverride to something other than the appropriate factory, you'll get the bug. So it's best to stay away from this tag where possible.