CfgFaces – Arma 2

From Bohemia Interactive Community
Jump to navigation Jump to search

Radical surgery occurred between Armed Assault and Arma 2. These notes apply to Arma 2.

Used in conjunction with setFace:

person setFace "cfgFaces.ClassName"; // quotes required this setFace "Marylin" soldier1 setFace "Face33"

A subset of 6 Camo faces are available for each of the Face01..107 faces, named "Face00_camo#, where # is in range 1..6 (e.g "Face77_camo2").

See Arma 2: CfgIdentities for a list of all possible Arma 2 (and Arma 2:OA) identities.


Config Structure

class CfgFaces 
{
	class Default;		// held in engine's ca_bin
	class Man : Default
	{
		class Default;	// held in ca_chars
		class FaceWhatever : Default
		{
			name = "$STR_Whatever";						// every class, different string name
			texture = "\some\texture\somewhere.paa";	// THE face for this 
			head = defaultHead;							// classname in cfgHeads
			material= "\some\rvmat\somewhere.rvmat";
			disabled = false;							// always TRUE for inherited camo faces
		};

		class OneOfSixCamos : FaceWhatever
		{
			/* uses the same face texture (obviously) */
			disabled = true;				// always
			name = "$STR_UniqueName";
			head = "alwaysOneOf6Classes";	// changes wounds
			material = "\AlwaysOneOfSix\Different\FacePaints.rvmat";
		};
	};
};
  • One, single, head model is used for ALL faces. On which, a different base texture is applied for EVERY 'face'
  • Separately, each of these faces have different face paint, and they, require a separate head class to reflect the different wound appearances.
    • ALL of the cammo derivates use one of six common facepaints
  • specifiying \root and .paa extension are essential
  • head= inevitably leads to one, single, default p3d stored in \ca\characters\man\defaulthead\defaulthead.p3d;


Subset Themes

All of the face01..107 faces are duplicated classwise in black and green masks. also a perfunctory sop to women models, and, a few unimaginative face models for some special us soldiers.


Adding a Face

Camouflage subclasses are not required.

class CfgFaces 
{
	class Default;
	class Man : Default
	{
		class Default;
		class FaceWhatever : Default
		{
			disabled = false;							// Should be part of default, but was overlooked
			name = "$STR_Whatever";
			texture = "\some\texture\somewhere.paa";	// Face texture
			identityTypes[] = { "Default", "Head_USMC", "Head_USMC_CO", "", "", "Head_CDF", "Head_CDF_CO", "", "Head_GUE", "Head_CIV", "" }; // Unknown
		};
	};
};


References