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

Factory: Difference between revisions

From ModEnc
Jump to navigation Jump to search
Nighthawk200 (talk | contribs)
m Template updated
Testid123 (talk | contribs)
mNo edit summary
 
(8 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{flag|name=Factory
{{Flag
|files=rules(md).ini
|values={{Values|strings|hardcoded values (see article)}}
|values=special strings
|default={{tt|<none>}}
|default=<tt>&lt;none&gt;</tt>
|types={{Categ|BuildingTypes}}
|types=[[BuildingTypes]]
|ts=yes
|ts=yes
|fs=yes
|fs=yes
Line 10: Line 9:
|yr=yes
|yr=yes
|rp=yes}}
|rp=yes}}
This tag determines what type of object this BuildingType produces.<br>
This tag determines what type of object a BuildingType produces.
Although it accepts any string from the list below (Internal meaning), only five of them will actually work after going through a filtering routine, these being:
Although it accepts any string from the list{{Sup|[[{{PAGENAME}}#values|{{Arr|d}}]]}}, only four of them will actually work after going through a filtering routine:
*{{TTL|AircraftType}}
* <code>AircraftType</code>
*{{TTL|BuildingType}}
* <code>BuildingType</code>
*{{TTL|InfantryType}}
* <code>InfantryType</code>
*{{TTL|UnitType}} (for vehicles)
* <code>UnitType</code>


It is sometimes spoken of the strings {{tt|VesselType}} as well as {{tt|CloningType}}.<br>
== Allowed values ==
However, they neither work in TS/FS nor do they in RA2/YR.
 
=== AircraftType ===
This value indicates that this building can manufacture [[AircraftTypes]]. It is not required for this structure to double as an aircraft docking structure.
 
=== BuildingType ===
This value indicates that this building can manufacture other [[BuildingTypes]].
 
=== InfantryType ===
This value indicates that this building can manufacture [[InfantryTypes]]. {{f|ExitCoord|link}} is not obeyed, and actual exit coords are controlled by the {{f|GDIBarracks|link}}, {{f|NODBarracks|link}} and {{f|YuriBarracks|link}} flags.
 
=== UnitType ===
This value indicates that this building can manufacture ground vehicles (with {{f|Naval|no|link}}) or naval ships (with {{f|Naval|yes|link}}). Mind that a ground vehicle factory ''without'' {{f|WeaponsFactory|yes|link}} will have certain side-effects.
 
Be aware that all vehicles associated with this factory ''MUST'' specifically list this factory in its {{f|Prerequisite|link}} list, or there is a possibility that you will be faced with the [[New Construction Options|NCO Bug]].


==Internal meaning==
==Internal meaning==
Internally, the "Factory" is used to determine what something is.<br>
{{HorizontalBar|This section is in need of '''[{{fullurl:{{FULLPAGENAME}}|action=edit}} revision]'''.}}
Internally, the value of {{f|Factory}} is used to determine what something is.
If - for instance - a pointer to a TechnoType (by origin) is given over to a function, the function could get the TechnoType's "Factory" and determine whether it's a Building or an Infantry, Unit or Aircraft.<br>
If - for instance - a pointer to a TechnoType (by origin) is given over to a function, the function could get the TechnoType's "Factory" and determine whether it's a Building or an Infantry, Unit or Aircraft.<br>
This works using an RTTI ID number for every Factory.<br>
This works using an RTTI ID number for every Factory.
The available "factories" are the following:
 
{|cellpadding="4" class="table_descrow"
Although <code>VesselType</code> as well as <code>CloningType</code> are sometimes mentioned in {{Rules}}, they are not valid values.
 
{|cellpadding="4" class="table_descrow" id="values"
|+'''Possible values for {{f|Factory}}'''
!ID number
!ID number
!INI string
!INI string
Line 333: Line 349:


==See also==
==See also==
*{{TTL|AircraftType}}
* [[AircraftTypes]]
*{{TTL|BuildingType}}
* [[BuildingTypes]]
*{{TTL|InfantryType}}
* [[InfantryTypes]]
*{{TTL|UnitType}}
* [[VehicleTypes]]
*{{TTL|BuildingTypes}}

Latest revision as of 06:00, 14 October 2024

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: Factory
File(s): rules(md).ini
Values: Strings: Normal text. (Limited to: hardcoded values (see article))
Default: <none>
Applicable to: BuildingTypes


This tag determines what type of object a BuildingType produces. Although it accepts any string from the list, only four of them will actually work after going through a filtering routine:

  • AircraftType
  • BuildingType
  • InfantryType
  • UnitType

Allowed values

AircraftType

This value indicates that this building can manufacture AircraftTypes. It is not required for this structure to double as an aircraft docking structure.

BuildingType

This value indicates that this building can manufacture other BuildingTypes.

InfantryType

This value indicates that this building can manufacture InfantryTypes. ExitCoord is not obeyed, and actual exit coords are controlled by the GDIBarracks, NODBarracks and YuriBarracks flags.

UnitType

This value indicates that this building can manufacture ground vehicles (with Naval=no) or naval ships (with Naval=yes). Mind that a ground vehicle factory without WeaponsFactory=yes will have certain side-effects.

Be aware that all vehicles associated with this factory MUST specifically list this factory in its Prerequisite list, or there is a possibility that you will be faced with the NCO Bug.

Internal meaning

This section is in need of revision.

Internally, the value of Factory is used to determine what something is. If - for instance - a pointer to a TechnoType (by origin) is given over to a function, the function could get the TechnoType's "Factory" and determine whether it's a Building or an Infantry, Unit or Aircraft.
This works using an RTTI ID number for every Factory.

Although VesselType as well as CloningType are sometimes mentioned in Rules(md).ini, they are not valid values.

Possible values for Factory
ID number INI string Comment
0x00 <none> used for parent types such as the TechnoType or Foot
0x01 Unit
0x02 Aircraft
0x03 AircraftType
0x04 Animation
0x05 AnimationType
0x06 Building
0x07 BuildingType
0x08 Bullet
0x09 BulletType
0x0A Campaign
0x0B Cell
0x0C Factory
0x0D House
0x0E HouseType
0x0F Infantry
0x10 InfantryType
0x11 IsometricTile
0x12 IsometricTileType
0x13 BuildingLight
0x14 Overlay
0x15 OverlayType
0x16 Particle
0x17 ParticleType
0x18 ParticleSystem
0x19 ParticleSystemType
0x1A Script
0x1B ScriptType
0x1C Side
0x1D Smudge
0x1E SmudgeType
0x1F Special used for cameos (SW icon types)
0x20 SuperWeaponType
0x21 TaskForce
0x22 Team
0x23 TeamType
0x24 Terrain
0x25 TerrainType
0x26 Trigger
0x27 TriggerType
0x28 UnitType
0x29 VoxelAnim
0x2A VoxelAnimType
0x2B Wave
0x2C Tag
0x2D TagType
0x2E Tiberium
0x2F TAction
0x30 TEvent
0x31 WeaponType
0x32 WarheadType
0x33 Waypoint
0x34 Abstract
0x35 Tube Tunnels?
0x36 LightSource
0x37 EMP
0x38 Tactical consider this the battlefield with all the objects on it
0x39 Super
0x3A AITrigger
0x3B AITriggerType
0x3C Neuron unused?
0x3D FoggedObject unknown meaning
0x3E AlphaShape
0x3F VeinholeMonster
0x40 NavyType unknown meaning
RA2 only:
0x41 SpawnManager
0x42 CaptureManager
0x43 Parasite
0x44 Bomb
0x45 RadSite
0x46 Temporal
YR only:
0x47 Airstrike
0x48 SlaveManager
0x49 DiskLaser


See also