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
No edit summary
 
Pd (talk | contribs)
No edit summary
Line 1: Line 1:
{{DeeZireInclusion}}<br />
==The "Factory" tag==
Determines what type of object this BuildingType produces - can be set to any of the following;-<br />
{{flag|name=Factory
<br />
|files=rules(md).ini
BuildingType - object is a Construction Yard and provides structure-building options<br />
|values=special strings
VehicleType - object is a War Factory and provides vehicle-building options<br />
|special=none
AircraftType - object is a Helipad/Airfield and provides aircraft-building options<br />
|default=<tt>&lt;none&gt;</tt>
InfantryType - object is a Barracks and provides infantry-building options<br />
|types=[[BuildingTypes]]
<br />
|games=TS, FS, RA2, YR}}
Note that the VesselType classification is no longer used (ships are now VehicleTypes with Naval=yes set), and despite its presence in RULES.INI the CloningType value is obsolete.
This tag determines what type of object this BuildingType produces.<br>
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:
*<tt>AircraftType</tt>
*<tt>BuildingType</tt>
*<tt>InfantryType</tt>
*<tt>UnitType</tt> (for vehicles)
 
It is sometimes spoken of the strings <tt>VesselType</tt> as well as <tt>CloningType</tt>.<br>
However, they neither work in TS/FS nor do they in RA2/YR.
 
==Internal meaning==
Internally, the "Factory" is used to determine what something is.<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 ID number for every Factory.<br>
The available "factories" are the following:
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 //unknown meaning
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

Revision as of 14:30, 20 August 2006

The "Factory" tag

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: special strings
Special Values: none
Default: <none>
Applicable to: BuildingTypes


This tag determines what type of object this 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:

  • AircraftType
  • BuildingType
  • InfantryType
  • UnitType (for vehicles)

It is sometimes spoken of the strings VesselType as well as CloningType.
However, they neither work in TS/FS nor do they in RA2/YR.

Internal meaning

Internally, the "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 ID number for every Factory.
The available "factories" are the following:

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			//unknown meaning
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