﻿;     This file should be encoded using the UTF-8 format.

;     Each string (phrase) entry has three parts to it.
;     The first part is the translated version prefixed by a string ID and tab.
;     The second part is the English version, there for reference.
;     The last part shows how in the source code the string is used,
;     and a string is sometimes used multiple places in the source.

;     Note: only translate the first part!  Do not translate anything else.

;     All strings are formatted using C formatting rules.
;     %s is replaced at run-time with other strings
;     %d is replaced at run-time with whole numbers
;     %f is replaced at run-time with real numbers (floating-point numbers)
;     \r\n means go to next line (sometimes shown as just \n)
;     See this link for advanced formatting:
;     http://www.phim.unibe.ch/comp_doc/c_manual/C/FUNCTIONS/format.html

;     Original English:  %s has %d wins and %d losses.
;     In-game English:   Mark has 12 wins and 7 losses.

;     Do not reorder format identifiers or else the game will crash. For example:
;     Original English:  E977D41F     %s has %d wins and %d losses.
;     This will crash:   E977D41F     A total of %d wins %d losses has been achieved by %s.
;     This is okay:      E977D41F     %s tiene %d triunfos y %d pérdidas.


6464C2B0	?
;		?
;		AssetNetwork.cpp: strDescription = "?";
;		Mover.cpp: CString strWeapon = pWeapon ? pWeapon->GetDescription() : "?";

F0B70568	This unit has a sticky bomb attached to it. It will blow up soon.
;		This unit has a sticky bomb attached to it. It will blow up soon.
;		Attackee.cpp: params.strMouseOver = "This unit has a sticky bomb attached to it. It will blow up soon.";

BEF9DDAB	Sticky Bomb
;		Sticky Bomb
;		Attackee.cpp: params.strText = "Sticky Bomb";
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_STICKYBOMBSHOT, "Sticky Bomb", false, false));
;		TechUserComponent.cpp: szName = "Sticky Bomb";

80A1C8B8	Sticky Bomb X %d
;		Sticky Bomb X %d
;		Notes:  shown if unit has more than one sticky bomb on it
;		Attackee.cpp: params.strText = CString("Sticky Bomb X %d", count);

321FA17D	Bullet weapons will do full damage extra this because of Acid Bomb damage from a Karkino.
;		Bullet weapons will do full damage extra this because of Acid Bomb damage from a Karkino.
;		Attackee.cpp: params.strMouseOver = "Bullet weapons will do full damage extra this because of Acid Bomb damage from a Karkino.";

07FB42EC	The damage has reduced this unit's Advance Materials bonus by %0.1f%%.
;		The damage has reduced this unit's Advance Materials bonus by %0.1f%%.
;		Attackee.cpp: params.strMouseOver += CString("The damage has reduced this unit's Advance Materials bonus by %0.1f%%.", fReduction * 100.0f);

0F977709	Acid Bomb from a Karkino has reduced this unit's armor effectiveness by %0.1f%%.
;		Acid Bomb from a Karkino has reduced this unit's armor effectiveness by %0.1f%%.
;		Attackee.cpp: params.strMouseOver = CString("Acid Bomb from a Karkino has reduced this unit's armor effectiveness by %0.1f%%.", fReduction * 100.0f);

68D1CCEA	Combustive weapons will do full damage extra this because of Acid Bomb damage from a Karkino.
;		Combustive weapons will do full damage extra this because of Acid Bomb damage from a Karkino.
;		Attackee.cpp: params.strMouseOver = "Combustive weapons will do full damage extra this because of Acid Bomb damage from a Karkino.";

8AEB986B	Acid Damage
;		Acid Damage
;		Attackee.cpp: params.strText = "Acid Damage";

5429D1FF	Fire!
;		Fire!
;		Notes:  unit is on fire and yelling about it (keep word short as possible)
;		Attackee.cpp: g_psinkMain->OnMessage("Fire!", pUnit);

9FA6EA84	Damage:
;		Damage:
;		Attacker.cpp: entry.strText = "Damage:";
;		Drop.cpp: entry.strText = "Damage:";

F66CCCE6	Damage-per-second
;		Damage-per-second
;		Attacker.cpp: entry.strMouseOver = "Damage-per-second";

9C0007F0	Someone's capturing that
;		Someone's capturing that
;		Attacker.cpp: g_psinkMain->OnMessage(CString("Someone's capturing that"), GetParent());

EBA0C0A2	%s is not in attack range of %s.
;		%s is not in attack range of %s.
;		Attacker.cpp: g_psinkMain->OnMessage(CString("%s is not in attack range of %s.", pPrimaryTarget->GetName(true).Data(), GetParent()->GetName(true).Data()));

E7590D2B	%s cannot attack without someone to man its weapon.
;		%s cannot attack without someone to man its weapon.
;		Attacker.cpp: g_psinkMain->OnMessage(CString("%s cannot attack without someone to man its weapon.", GetParent()->GetName(true).Data()));

6D991192	%s needs %s.
;		%s needs %s.
;		Attacker.cpp: g_psinkMain->OnMessage(CString("%s needs %s.", GetParent()->GetName(true).Data(), GetResourceName(res, true).Data()));

2EF04BAA	I need to descend first.
;		I need to descend first.
;		Notes:  A unit (that is being levitated or is flying) says this when he needs to descend to the ground level in order to attack a ground target.
;		Attacker.cpp: g_psinkMain->OnMessage("I need to descend first.", m_pUnit);

5A832738	Attacker does not have a direct line-of-fire to its target.  Attacks may not reach target.
;		Attacker does not have a direct line-of-fire to its target.  Attacks may not reach target.
;		Attacker.cpp: params.strMouseOver = "Attacker does not have a direct line-of-fire to its target.  Attacks may not reach target.";

E6D1F78A	Line-Of-Fire Obstructed
;		Line-Of-Fire Obstructed
;		Attacker.cpp: params.strText = "Line-Of-Fire Obstructed";

45BC2500	Attackers weapon is in bad condition
;		Attackers weapon is in bad condition
;		Attacker.cpp: params.strMouseOver = "Attackers weapon is in bad condition";

6D5AA2EE	Weapon in bad condition
;		Weapon in bad condition
;		Attacker.cpp: params.strText = "Weapon in bad condition";

B298F27C	Unit is holding fire.  Press CTRL+X to fire at will.
;		Unit is holding fire.  Press CTRL+X to fire at will.
;		Attacker.cpp: params.strMouseOver = "Unit is holding fire.  Press CTRL+X to fire at will.";

B502FE23	Hold-Fire
;		Hold-Fire
;		Attacker.cpp: params.strText = "Hold-Fire";

EDF0B549	Structure
;		Structure
;		Attacker.cpp: strTarget = "Structure";
;		Design.cpp: if(!strTypeHeader.CompareI("Structure"))

8A440699	Protec Aura
;		Protec Aura
;		Notes:  Translated word should be no longer than 14 characters
;		Attacker.cpp: strTarget = "Protec Aura";

7EE6D1F8	Armor
;		Armor
;		Notes:  use a generic term for armor
;		Attacker.cpp: strTarget = "Armor";

C6A0E6CA	The target has resistance against piercing weapons
;		The target has resistance against piercing weapons
;		Attacker.cpp: params.strMouseOver = "The target has resistance against piercing weapons";

47518732	Resistance
;		Resistance
;		Notes:  Translated word should be no longer than 14 characters
;		Attacker.cpp: strTarget = "Resistance";

A1045C6B	Water Hose
;		Water Hose
;		Attacker.cpp: strTarget = "Water Hose";

78DB64E2	Metal Unit
;		Metal Unit
;		Attacker.cpp: strTarget = "Metal Unit";

F564A54F	The target has resistance against flame weapons
;		The target has resistance against flame weapons
;		Attacker.cpp: params.strMouseOver = "The target has resistance against flame weapons";

AFFE3F5A	%0.0f%% dmg vs %s
;		%0.0f%% dmg vs %s
;		Attacker.cpp: params.strText = CString("%0.0f%% dmg vs %s", fFlameDmgFactor * 100.0f, strTarget.Data());
;		Attacker.cpp: params.strText = CString("%0.0f%% dmg vs %s", fBluntDmgFactor * 100.0f, strTarget.Data());
;		Attacker.cpp: params.strText = CString("%0.0f%% dmg vs %s", fRatio * 100.0f, strTarget.Data());

D70F4150	The target has resistance against concussive/blunt weapons
;		The target has resistance against concussive/blunt weapons
;		Attacker.cpp: params.strMouseOver = "The target has resistance against concussive/blunt weapons";

4A4A7019	piercing
;		piercing
;		Attacker.cpp: strWeaponType = "piercing";

79D3D2D4	/
;		/
;		Attacker.cpp: strWeaponType += "/";

BA13CF96	concussive
;		concussive
;		Attacker.cpp: strWeaponType += "concussive";

0F3CFB78	combustive
;		combustive
;		Attacker.cpp: strWeaponType += "combustive";

285DC8FF	The target has resistance against %s weapons at %s
;		The target has resistance against %s weapons at %s
;		Attacker.cpp: params.strMouseOver = CString("The target has resistance against %s weapons at %s", strWeaponType.Data(), GetHitDirectionName(hitDir, false).Data());

A5A26D8F	Out-of-ammo
;		Out-of-ammo
;		Attacker.cpp: params.strText = "Out-of-ammo";

39C42017	%s needs ammo.
;		%s needs ammo.
;		Attacker.cpp: params.strMouseOver = CString("%s needs ammo.", strWeaponNeedsAmmo.Data());

F5859AB3	Out-of-gas
;		Out-of-gas
;		Attacker.cpp: params.strText = "Out-of-gas";

31124D8A	%s needs gas.
;		%s needs gas.
;		Attacker.cpp: params.strMouseOver = CString("%s needs gas.", strWeaponNeedsGas.Data());

6026E29E	%s
;		%s
;		Attacker.cpp: *info.pstrNameOut = CString("%s", weaponDef.m_strName.Data());
;		ResourceFactory.cpp: CString strResource = CString("%s", GetResourceName(type, false).Data());
;		ResourceFactory.cpp: str = CString("%s", GetResourceName(restype, false).Data());
;		ResourceFactory.cpp: str += CString("%s", GetResourceName(aTypes[i], false).Data());
;		TechDrop.cpp: entry.strValue = CString("%s", ShowTechLevel(pEntry->units).Data());

ECC75933	Weapon Class: %s
;		Weapon Class: %s
;		Attacker.cpp: info.paStrsOut->Add(CString("Weapon Class: %s", GetWeaponClassName(wc, true).Data()));

1B2FD396	Damage/Sec: %2.1f
;		Damage/Sec: %2.1f
;		Attacker.cpp: info.paStrsOut->Add(CString("Damage/Sec: %2.1f", hpDamage));

965361E7	Range: Melee
;		Range: Melee
;		Attacker.cpp: info.paStrsOut->Add("Range: Melee");

5D0BFA34	Range: %2.1f
;		Range: %2.1f
;		Attacker.cpp: info.paStrsOut->Add(CString("Range: %2.1f", fDistInTiles));

EB71E3BC	Area of Effect: %2.1f
;		Area of Effect: %2.1f
;		Attacker.cpp: info.paStrsOut->Add(CString("Area of Effect: %2.1f", fRadiusAreaofEffect));

9A4B2487	Hit chance: %2.f%%
;		Hit chance: %2.f%%
;		Attacker.cpp: info.paStrsOut->Add(CString("Hit chance: %2.f%%", fHit));

44C071D8	Cooldown: %d second.
;		Cooldown: %d second.
;		Attacker.cpp: text = CString("Cooldown: %d second.", nSec);

898D5BCC	Cooldown: %d seconds.
;		Cooldown: %d seconds.
;		Attacker.cpp: text = CString("Cooldown: %d seconds.", nSec);

3EE65500	Weapon condition: 
;		Weapon condition: 
;		Attacker.cpp: CString strWeaponCondition("Weapon condition: ");

13759677	Damaged
;		Damaged
;		Attacker.cpp: strWeaponCondition.Append("Damaged");
;		Drop.cpp: entry.strValue = "Damaged";

CCB6E1AC	Good
;		Good
;		Attacker.cpp: strWeaponCondition.Append("Good");
;		Drop.cpp: entry.strValue = "Good";

20E63862	Excellent
;		Excellent
;		Attacker.cpp: strWeaponCondition.Append("Excellent");
;		Drop.cpp: entry.strValue = "Excellent";

2B5FDEBA	Turret rotation speed is being increased by %0.0f%%
;		Turret rotation speed is being increased by %0.0f%%
;		Attacker.cpp: info.paCurrentLevelOut->Add(CString("Turret rotation speed is being increased by %0.0f%%", (fNow - fBase) / fBase * 100.0f));

D5627A4A	Another upgrade would bring the total increase to %0.0f%%
;		Another upgrade would bring the total increase to %0.0f%%
;		Attacker.cpp: info.paNextLevelOut->Add(CString("Another upgrade would bring the total increase to %0.0f%%", (fNext - fBase) / fBase * 100.0f));
;		Teleporter.cpp: info.paNextLevelOut->Add(CString("Another upgrade would bring the total increase to %0.0f%%", (fNext - fBase) / fBase * 100.0f));

B1660425	Helps this unit hit moving targets.
;		Helps this unit hit moving targets.
;		Attacker.cpp: info.paStrsOut->Add("Helps this unit hit moving targets.");

11C8546C	damage
;		damage
;		Attacker.cpp: strType = "damage";

93875A49	range
;		range
;		Attacker.cpp: strType = "range";

D7943D68	area
;		area
;		Attacker.cpp: strType = "area";

AA90EEB8	%s upgrade levels has increased
;		%s upgrade levels has increased
;		Attacker.cpp: info.paCurrentLevelOut->Add(CString("%s upgrade levels has increased", ShowTechLevelAsWord(info.fUpgrades, true).Data()));

04CFCBAB	This upgrade has increased attack %s
;		This upgrade has increased attack %s
;		Notes:  %s is either 'damage', 'range', or 'area-of-effect'
;		Attacker.cpp: info.paCurrentLevelOut->Add(CString("This upgrade has increased attack %s", strType.Data()));

86465711	from %d HP per second to %d
;		from %d HP per second to %d
;		Attacker.cpp: info.paCurrentLevelOut->Add(CString("from %d HP per second to %d", RoundOff(hpDamageWithout), RoundOff(hpDamage)));

766C36BC	%0.0f
;		%0.0f
;		Notes:  Melee means short-ranged
;		Attacker.cpp: info.paCurrentLevelOut->GetLast() += CString("%0.0f", distRange);
;		Attacker.cpp: CString strBase = distRangeWithout < 2.0f ? "Melee" : CString("%0.0f", distRangeWithout);
;		Unit.cpp: str = CString("%s needs %s %s to upgrade me.", m_pUpgraderBuilding->GetName(true).Data(), CString("%0.0f", fAmtNeeded).Data(), GetResourceName(restype, true).Data()); // Auto Factory needs 8 salvage to upgrade me.

0E2654A5	Melee
;		Melee
;		Notes:  Melee means short-ranged
;		Attacker.cpp: CString strBase = distRangeWithout < 2.0f ? "Melee" : CString("%0.0f", distRangeWithout);
;		Drop.cpp: entry.strValue = "Melee";

29546650	from %s to %0.0f
;		from %s to %0.0f
;		Notes:  %0.0f means display a float point number as a real number (it's basically like %d).
;		Attacker.cpp: info.paCurrentLevelOut->Add(CString("from %s to %0.0f", strBase.Data(), distRange));

1E02F594	from %0.1f to %0.1f
;		from %0.1f to %0.1f
;		Attacker.cpp: info.paCurrentLevelOut->Add(CString("from %0.1f to %0.1f", distAreaWithout, distArea));

00875251	Another upgrade of this type would raise to %d
;		Another upgrade of this type would raise to %d
;		Attacker.cpp: info.paNextLevelOut->Add(CString("Another upgrade of this type would raise to %d", RoundOff(fNextLevel)));

7D5E8400	Another upgrade of this type would raise to %0.1f
;		Another upgrade of this type would raise to %0.1f
;		Attacker.cpp: info.paNextLevelOut->Add(CString("Another upgrade of this type would raise to %0.1f", fNextLevel));

37D0E832	%s is not able to store %s
;		%s is not able to store %s
;		Building.cpp: strReason = CString("%s is not able to store %s", GetName(false).Data(), GetResourceName(type, true).Data());

ADA47FF8	%s is not able to share %s
;		%s is not able to share %s
;		Building.cpp: strReason = CString("%s is not able to share %s", GetName(false).Data(), GetResourceName(type, true).Data());

A9185CB2	Needs 
;		Needs 
;		Notes:  Needs is followed by more text.  For example: Needs %d salvage, %d gas
;		Building.cpp: params.strText = "Needs ";
;		ConstructionYard.cpp: str += "Needs ";
;		Researcher.cpp: params.strText = "Needs ";
;		UnitFactory.cpp: params.strText = "Needs " + res.GetAsTextList();

71FB337F	Needs Worker
;		Needs Worker
;		Building.cpp: params.strText = "Needs Worker"; // selection pane for buildings
;		ConstructionYard.cpp: params.strText = "Needs Worker";

A1B712C6	Needs Worker\nMove a soldier into the building.\nA building needs a worker in order to function, and to regain health if damaged. Any type of soldier can function as a worker, even captured enemies.
;		Needs Worker\nMove a soldier into the building.\nA building needs a worker in order to function, and to regain health if damaged. Any type of soldier can function as a worker, even captured enemies.
;		Building.cpp: params.strMouseOver = "Needs Worker\nMove a soldier into the building.\nA building needs a worker in order to function, and to regain health if damaged. Any type of soldier can function as a worker, even captured enemies.";

669E9487	Needs Pipeline
;		Needs Pipeline
;		Building.cpp: params.strText = "Needs Pipeline";

8003816A	This building requires gas.  Connect a pipeline from this building to a gas source, such as a gas station or refinery.
;		This building requires gas.  Connect a pipeline from this building to a gas source, such as a gas station or refinery.
;		Building.cpp: params.strMouseOver = "This building requires gas.  Connect a pipeline from this building to a gas source, such as a gas station or refinery.";

78BC2174	Upgrading to %s
;		Upgrading to %s
;		Building.cpp: params.strText = CString("Upgrading to %s", params.pDef->strName.Data());

F0791FEA	upgrading to %s
;		upgrading to %s
;		Building.cpp: return CString("upgrading to %s", pDef->strName.Data());

812A94AE	Target is out of rotation range.
;		Target is out of rotation range.
;		Building.cpp: g_psinkMain->OnMessage("Target is out of rotation range.", this);

7FDC92FA	%s [%s]
;		%s [%s]
;		Component.cpp: str = CString(200, "%s [%s]", m_pParent->GetDescription().Data(), CString::MakeFromAnsi(typeid( *this ).name(), false).Data());

43865999	, 
;		, 
;		Notes:  seperator of a list of nouns
;		ConstructionYard.cpp: str += ", ";
;		MapObj.cpp: strList += ", ";
;		ResourceStore.cpp: strText += ", ";

5A43B591	More resources are required for construction.
;		More resources are required for construction.
;		ConstructionYard.cpp: params.strMouseOver = "More resources are required for construction.";
;		Peon.cpp: params.strMouseOver = "More resources are required for construction.";

63F4EE81	Assign a soldier to the construction site.\nThis building is under construction.  Assign up to 4 soldiers to work on the construction.
;		Assign a soldier to the construction site.\nThis building is under construction.  Assign up to 4 soldiers to work on the construction.
;		ConstructionYard.cpp: params.strMouseOver = "Assign a soldier to the construction site.\nThis building is under construction.  Assign up to 4 soldiers to work on the construction.";

03532DCA	Being constructed
;		Being constructed
;		ConstructionYard.cpp: params.strText = "Being constructed";

CE8BA1FE	%0.0f%% construction bonus
;		%0.0f%% construction bonus
;		ConstructionYard.cpp: params.strText = CString("%0.0f%% construction bonus", fRate);

B99FF64F	Add another worker for %0.0f%% construction bonus
;		Add another worker for %0.0f%% construction bonus
;		ConstructionYard.cpp: params.strMouseOver = CString("Add another worker for %0.0f%% construction bonus", ( fMinRatio / aData[nUnits] * 100) - 100);

4D215868	construction bonus is at max
;		construction bonus is at max
;		ConstructionYard.cpp: params.strMouseOver = CString("construction bonus is at max");

6C47A390	%s is under construction.
;		%s is under construction.
;		ConstructionYard.cpp: params.strText = CString("%s is under construction.", IGameMapObj::GetMapObjName(m_typeToBe, true).Data());

1BFDF5B1	Construction cooldown: %d
;		Construction cooldown: %d
;		Corpse.cpp: params.strText = CString("Construction cooldown: %d", ticksLeft / 100);
;		SitePlan.cpp: params.strText = CString("Construction cooldown: %d", ticksCooldownLeft / 100);

A92672A9	The %s can be reconstructed after the cooldown has counted down.
;		The %s can be reconstructed after the cooldown has counted down.
;		Corpse.cpp: params.strMouseOver = CString("The %s can be reconstructed after the cooldown has counted down.", GetMapObjName(GetTypeToBe(), false).Data());
;		SitePlan.cpp: params.strMouseOver = CString("The %s can be reconstructed after the cooldown has counted down.", GetMapObjName(GetTypeToBe(), false).Data());

9021CA04	Design file has a settings error
;		Design file has a settings error
;		Notes:  if the user chooses to edit the game design file, he could an error message for invalid settings.  The title of the error message box will have this caption.
;		Design.cpp: const char *					s_szDesignMsgBoxTitle = "Design file has a settings error";

EF8E89E9	Text form of design data does not match binary form.  This can happen if there is a bug in the design save/load code.
;		Text form of design data does not match binary form.  This can happen if there is a bug in the design save/load code.
;		Design.cpp: g_pApp->MsgBox("Text form of design data does not match binary form.  This can happen if there is a bug in the design save/load code.", "Error");
;		Design.cpp: g_pApp->ExitWithMsg("Text form of design data does not match binary form.  This can happen if there is a bug in the design save/load code.", "Internal Error");

9C1C9375	Error
;		Error
;		Design.cpp: g_pApp->MsgBox("Text form of design data does not match binary form.  This can happen if there is a bug in the design save/load code.", "Error");
;		Design.cpp: "Error");

A756CF10	Internal Error
;		Internal Error
;		Design.cpp: g_pApp->ExitWithMsg("Text form of design data does not match binary form.  This can happen if there is a bug in the design save/load code.", "Internal Error");

A8539DFD	[LAND_MINE]
;		[LAND_MINE]
;		Design.cpp: if(!strBlockName.CompareI("[LAND_MINE]"))

89C9F745	GameTech
;		GameTech
;		Design.cpp: if(!strType.CompareI("GameTech"))

7F29E296	Duration
;		Duration
;		Design.cpp: GetNumberList(strBlock, "Duration", properties.graphLevitationDuration, false, true, true, true, true);//GT_LEVITATION
;		Design.cpp: else if(str.GetSettingAsInt(pRemoteViewerDef->ticksDuration, "Duration"))

14A285AC	\r\n
;		\r\n
;		Design.cpp: g_pApp->ExitWithMsg(L"Game does not recognize the game tech: " + str + L"\r\n\r\n" + strBlock.GetBlockName() + "\r\n" + strBlock, s_szDesignMsgBoxTitle);
;		Design.cpp: g_pApp->ExitWithMsg(L"unknown source type: " + *pstrCopySourceName + L"\r\n\r\n" + strBlock.GetBlockName() + "\r\n" + strBlock, s_szDesignMsgBoxTitle);
;		Design.cpp: g_pApp->ExitWithMsg(L"Unknown Expansion: \r\n\r\n" + strBlock.GetBlockName() + "\r\n" + strBlock, s_szDesignMsgBoxTitle);
;		Design.cpp: g_pApp->ExitWithMsg(L"Unknown defensive entry: \r\n\r\n" + strBlock.GetBlockName() + "\r\n" + strBlock, s_szDesignMsgBoxTitle);
;		Design.cpp: g_pApp->ExitWithMsg(pExpansionDef->strNameAnsi + L" is not a defensive entry: \r\n\r\n" + strBlock.GetBlockName() + "\r\n" + strBlock, s_szDesignMsgBoxTitle);
;		Design.cpp: g_pApp->ExitWithMsg(L"Peons require resource capacity. This entity is a peon without resource capacity:\r\n\r\n" + strBlock.GetBlockName() + "\r\n" + strBlock, s_szDesignMsgBoxTitle);
;		Design.cpp: g_pApp->ExitWithMsg(L"ProductionRatio requires unit station def:\r\n\r\n" + strBlock.GetBlockName() + "\r\n" + strBlock, s_szDesignMsgBoxTitle);
;		Design.cpp: g_pApp->MessageBoxOK(CString("%s is too large or small, number must be between -32768 and 32767.\r\n\r\n", CString(szSetting).Data()) + block.GetBlockName() + "\r\n" + block, s_szDesignMsgBoxTitle);

CD177789	ResourceCost
;		ResourceCost
;		Design.cpp: GetResourceCost(strBlock, "ResourceCost", pGameTechDef->resourceCost);
;		Design.cpp: GetResourceCost(strBlock, "ResourceCost", pWeaponDef->resourceCost);
;		Design.cpp: GetResourceCost(strBlock, "ResourceCost", pManaUserDef->resourceCost);
;		Design.cpp: GetResourceCost(strBlock, "ResourceCost", pAttackeeDef->resourceCost);
;		Design.cpp: else if(strAttribute.GetSettingAsString(str, "ResourceCost"))
;		Design.cpp: if(strAttribute.GetSettingAsString(str, "ResourceCost"))
;		Design.cpp: else if(str.GetSettingAsString(strValue, "ResourceCost"))

3AA22D0E	Researcher
;		Researcher
;		Design.cpp: pGameTechDef->bResearchTechDrop = str == "Researcher";
;		Design.cpp: if(!strType.CompareI("Researcher"))

A55DDA2D	Grenade
;		Grenade
;		Design.cpp: if(!strType.CompareI("Grenade"))

D95ED5F6	_TossInWindow
;		_TossInWindow
;		Design.cpp: strSuffix = "_TossInWindow";

FC688315	PlantTheBomb
;		PlantTheBomb
;		Design.cpp: if(!strType.CompareI("PlantTheBomb"))

5A323D16	Resources_WinRound
;		Resources_WinRound
;		Design.cpp: CAnsiString strEndRound = iEndRound == 0 ? "Resources_WinRound" : "Resources_LoseRound";

1756BD47	Resources_LoseRound
;		Resources_LoseRound
;		Design.cpp: CAnsiString strEndRound = iEndRound == 0 ? "Resources_WinRound" : "Resources_LoseRound";

890D7574	Amount
;		Amount
;		Design.cpp: if(GetSettingAsStringList(astrValues, "Amount", &str))

09B629C8	on
;		on
;		Design.cpp: properties.bRemoveUnitsEachRound_PlantTheBomb = (strRemoveUnits.CompareI("on") == 0);
;		Design.cpp: pWeaponDef->m_bPassThroughInfantry = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAutoProneWhenDeployed = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAttackGroundOrder = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAttackGroundOnceOrder = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pHealerDef->bIsCapableStructures = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pHealerDef->bIsCapableServiceOrganic = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bUseFirstAid = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bUseSpareParts = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bIsLarge = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bOrganicHull = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bMetalEncasedUnit = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bCanUseGrenades = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bDetector = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pVariationDef->bUnconscious = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pVariationDef->bPrisoner = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pExpansionDef->bAllowOnSteep = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pDefensiveExpansionDef->bCheckFaceOpenLand = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pDefensiveExpansionDef->bCloserToEnemy = strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0;
;		Design.cpp: pDefensiveExpansionDef->bCloserToFriend = strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0;
;		Design.cpp: pDefensiveExpansionDef->bMirrorDefenseExpansion = strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0;
;		Design.cpp: pDefensiveExpansionDef->bSkipScoreChecks = strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0;
;		Design.cpp: pDockDef->bLoadingDock = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pDockDef->bUnloadingDock = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bFriendlyFire = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bIsRunAndGunCapable = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bCanHitGround = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bPassThroughInfantry = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAutoProneWhenDeployed = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bCanUseInProne = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bIsDroppable = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAutoFireWeapon = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bWanderingAttacker = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bIsCarefulAboutFriendlyFire = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAttackGroundOrder = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAttackGroundOnceOrder = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bPrediction = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bViewerShot = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bFlareWhenShotFired = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bFlareWhenShotLands = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bLearnWithPractice = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bLineOfFireBlockage = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pHealerDef->bIsCapableStructures = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pHealerDef->bIsCapableServiceOrganic = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pDockDef->bLoadingDock = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pDockDef->bUnloadingDock = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);

8CD10EA0	InitialResources
;		InitialResources
;		Design.cpp: GetWordList(strBlock, "InitialResources", astrList, false, true);

DB564297	StructureDefault
;		StructureDefault
;		Design.cpp: if(!strType.CompareI("StructureDefault"))

268E9F2C	Tech
;		Tech
;		Design.cpp: if(!strType.CompareI("Tech"))
;		Design.cpp: if(str.GetSettingAsString(strValue, "Tech"))

3BAB9587	UpgradeImprovement
;		UpgradeImprovement
;		Design.cpp: if(!strType.CompareI("UpgradeImprovement"))

ED9ECC2A	ResourceGathering
;		ResourceGathering
;		Design.cpp: if(!strType.CompareI("ResourceGathering"))

1600ED91	CargoSpaceUsedPerResource
;		CargoSpaceUsedPerResource
;		Design.cpp: GetWordList(strBlock, "CargoSpaceUsedPerResource", astrList, false, true);

DF95B584	Misc
;		Misc
;		Design.cpp: if(!strType.CompareI("Misc"))

31B5EAEC	GameAges
;		GameAges
;		Design.cpp: GetNumberList(strBlock, "GameAges", aGameAgesTemp, true, true, false, false);

05D4A552	RangeClasses
;		RangeClasses
;		Design.cpp: if(!strType.CompareI("RangeClasses"))

CA8CE817	TeammatesApart
;		TeammatesApart
;		Design.cpp: CAnsiString strTeammates = g_pGameSettings->core.bTeammatesTogether == false ? "TeammatesApart" : "TeammatesTogether";
;		Design.cpp: CAnsiString strBaseSite = iTeammatesTogether == 0 ? "TeammatesApart" : "TeammatesTogether";

D590B44F	TeammatesTogether
;		TeammatesTogether
;		Design.cpp: CAnsiString strTeammates = g_pGameSettings->core.bTeammatesTogether == false ? "TeammatesApart" : "TeammatesTogether";
;		Design.cpp: CAnsiString strBaseSite = iTeammatesTogether == 0 ? "TeammatesApart" : "TeammatesTogether";

3476B92F	BaseSites
;		BaseSites
;		Design.cpp: GetWordList(strBlock, "BaseSites", astrList, true, true);

44186B66	Count
;		Count
;		Design.cpp: if(!strValue.GetSettingAsInt(nCount, "Count"))
;		Design.cpp: if(strValue.GetSettingAsInt(nMapObjs, "Count"))
;		Design.cpp: if(!strValue.GetSettingAsInt(nUnits, "Count"))

117303DE	InitialMapObjs
;		InitialMapObjs
;		Design.cpp: GetWordList(strBlock, "InitialMapObjs", astrList, false, true);

E5E4F8D7	Distance
;		Distance
;		Design.cpp: else if(strValue.GetSettingAsFloat(fDistance, "Distance"))

2700D4E3	InitialUnits
;		InitialUnits
;		Design.cpp: GetWordList(strBlock, "InitialUnits", astrList, false, true);

83C9C3F2	EliminationBuildings
;		EliminationBuildings
;		Design.cpp: GetWordList(strBlock, "EliminationBuildings", astrList, false, true);

9EC71521	EliminationUnits
;		EliminationUnits
;		Design.cpp: GetWordList(strBlock, "EliminationUnits", astrList, false, true);

F3F917A0	Mover
;		Mover
;		Design.cpp: if(!strType.CompareI("Mover"))

0C0638E8	AttackArea
;		AttackArea
;		Design.cpp: core.m_distBaseArea = GetFloat(strBlock, "AttackArea" + strSuffix, bRequired, core.m_distBaseArea);
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "AttackArea" + strSuffix, &str))
;		Design.cpp: str.GetSettingAsFloat(core.m_distBaseArea, "AttackArea" + strSuffix);

434D7339	OvershootDistance
;		OvershootDistance
;		Design.cpp: core.m_fOvershootDistance = GetFloat(strBlock, "OvershootDistance" + strSuffix, bRequired, 0.0f, core.m_fOvershootDistance);
;		Design.cpp: else if(str.GetSettingAsFloat(core.m_fOvershootDistance, "OvershootDistance" + strSuffix))

6E9FA2D0	Weapon
;		Weapon
;		Design.cpp: if(!strType.CompareI("Weapon"))
;		Design.cpp: if(IsTypeMatch_For2ndPass(strType, "Weapon"))

2BBC5D43	off
;		off
;		Design.cpp: if(str.CompareI("off") == 0)
;		Design.cpp: pWeaponDef->m_bMustDescendToAttackHitGround = strMDTHG.CompareI("off") != 0;
;		Design.cpp: pExpansionDef->bAllowOnRoad = !(strValue.CompareI("off") == 0 || strValue.CompareI("no") == 0);
;		Design.cpp: if(strValue.CompareI("off") == 0)
;		Design.cpp: pWeaponDef->m_bMustDescendToAttackHitGround = strValue.CompareI("off") != 0;

1A25A210	never
;		never
;		Design.cpp: else if(str.CompareI("never") == 0)
;		Design.cpp: else if(strValue.CompareI("never") == 0)

B6DDCEBA	NeedRange
;		NeedRange
;		Design.cpp: else if(str.CompareI("NeedRange") == 0)
;		Design.cpp: else if(strValue.CompareI("NeedRange") == 0)

75E735A9	yes
;		yes
;		Design.cpp: pWeaponDef->m_bPassThroughInfantry = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAutoProneWhenDeployed = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAttackGroundOrder = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAttackGroundOnceOrder = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pHealerDef->bIsCapableStructures = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pHealerDef->bIsCapableServiceOrganic = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bUseFirstAid = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bUseSpareParts = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bIsLarge = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bOrganicHull = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bMetalEncasedUnit = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bCanUseGrenades = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pUnitDef->bDetector = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pVariationDef->bUnconscious = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pVariationDef->bPrisoner = (str.CompareI("on") == 0 || str.CompareI("yes") == 0);
;		Design.cpp: pExpansionDef->bAllowOnSteep = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pDefensiveExpansionDef->bCheckFaceOpenLand = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pDefensiveExpansionDef->bCloserToEnemy = strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0;
;		Design.cpp: pDefensiveExpansionDef->bCloserToFriend = strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0;
;		Design.cpp: pDefensiveExpansionDef->bMirrorDefenseExpansion = strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0;
;		Design.cpp: pDefensiveExpansionDef->bSkipScoreChecks = strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0;
;		Design.cpp: pDockDef->bLoadingDock = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pDockDef->bUnloadingDock = (s.CompareI("on") == 0 || s.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bFriendlyFire = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bIsRunAndGunCapable = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bCanHitGround = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bPassThroughInfantry = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAutoProneWhenDeployed = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bCanUseInProne = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bIsDroppable = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAutoFireWeapon = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bWanderingAttacker = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bIsCarefulAboutFriendlyFire = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAttackGroundOrder = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bAttackGroundOnceOrder = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bPrediction = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bViewerShot = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bFlareWhenShotFired = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bFlareWhenShotLands = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bLearnWithPractice = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pWeaponDef->m_bLineOfFireBlockage = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pHealerDef->bIsCapableStructures = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pHealerDef->bIsCapableServiceOrganic = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pDockDef->bLoadingDock = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);
;		Design.cpp: pDockDef->bUnloadingDock = (strValue.CompareI("on") == 0 || strValue.CompareI("yes") == 0);

F23F0023	_InUnitHolder
;		_InUnitHolder
;		Design.cpp: strSuffix = "_InUnitHolder";
;		Design.cpp: CAnsiString strSuffix("_InUnitHolder");

DBD61586	ExpNeededToLevelUp
;		ExpNeededToLevelUp
;		Design.cpp: GetNumberList(strBlock, "ExpNeededToLevelUp", pWeaponDef->afExpNeededToLevelUp, true, true, false, false);
;		Design.cpp: GetNumberList(strBlock, "ExpNeededToLevelUp", pUnitDef->afExpNeededToLevelUp, true, true, false, false);
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "ExpNeededToLevelUp", &str))

33F4941B	DamageFactorInfantryProne
;		DamageFactorInfantryProne
;		Design.cpp: pDamageSourceDef->m_fDamageFactorInfantryProne = GetFloat(strBlock, "DamageFactorInfantryProne" + strSuffix, bRequired, 0.0f, pDamageSourceDef->m_fDamageFactorInfantryProne);
;		Design.cpp: else if(str.GetSettingAsFloat(pDamageSourceDef->m_fDamageFactorInfantryProne, "DamageFactorInfantryProne"))

ED377495	DamageFactorVehicle
;		DamageFactorVehicle
;		Design.cpp: pDamageSourceDef->m_fDamageFactorVehicle = GetFloat(strBlock, "DamageFactorVehicle" + strSuffix, bRequired, 0.0f, pDamageSourceDef->m_fDamageFactorVehicle);
;		Design.cpp: else if(str.GetSettingAsFloat(pDamageSourceDef->m_fDamageFactorVehicle, "DamageFactorVehicle"))

A8D3C34A	DamageFactorVehicleOccupant
;		DamageFactorVehicleOccupant
;		Design.cpp: pDamageSourceDef->m_fDamageFactorVehicleOccupant = GetFloat(strBlock, "DamageFactorVehicleOccupant" + strSuffix, bRequired, 0.0f, pDamageSourceDef->m_fDamageFactorVehicleOccupant);
;		Design.cpp: else if(str.GetSettingAsFloat(pDamageSourceDef->m_fDamageFactorVehicleOccupant, "DamageFactorVehicleOccupant"))

FEE1138B	DamageFactorStructure
;		DamageFactorStructure
;		Design.cpp: pDamageSourceDef->m_fDamageFactorStructure = GetFloat(strBlock, "DamageFactorStructure" + strSuffix, bRequired, 0.0f, pDamageSourceDef->m_fDamageFactorStructure);
;		Design.cpp: else if(str.GetSettingAsFloat(pDamageSourceDef->m_fDamageFactorStructure, "DamageFactorStructure"))

7806AD19	DamageFactorStructureOccupantFighting
;		DamageFactorStructureOccupantFighting
;		Design.cpp: pDamageSourceDef->m_fDamageFactorStructureOccupantFighting = GetFloat(strBlock, "DamageFactorStructureOccupantFighting" + strSuffix, bRequired, 0.0f, pDamageSourceDef->m_fDamageFactorStructureOccupantFighting);
;		Design.cpp: else if(str.GetSettingAsFloat(pDamageSourceDef->m_fDamageFactorStructureOccupantFighting, "DamageFactorStructureOccupantFighting"))

A4C13835	DamageFactorStructureOccupantHiding
;		DamageFactorStructureOccupantHiding
;		Design.cpp: pDamageSourceDef->m_fDamageFactorStructureOccupantHiding = GetFloat(strBlock, "DamageFactorStructureOccupantHiding" + strSuffix, bRequired, 0.0f, pDamageSourceDef->m_fDamageFactorStructureOccupantHiding);
;		Design.cpp: else if(str.GetSettingAsFloat(pDamageSourceDef->m_fDamageFactorStructureOccupantHiding, "DamageFactorStructureOccupantHiding"))

D5299A2A	DamageFactorTargetOnWall
;		DamageFactorTargetOnWall
;		Design.cpp: pDamageSourceDef->m_fDamageFactorTargetOnWall = GetFloat(strBlock, "DamageFactorTargetOnWall" + strSuffix, bRequired, 0.0f, pDamageSourceDef->m_fDamageFactorTargetOnWall);
;		Design.cpp: else if(str.GetSettingAsFloat(pDamageSourceDef->m_fDamageFactorTargetOnWall, "DamageFactorTargetOnWall"))

64DC34E9	DamageFactorTargetBehindShortWall
;		DamageFactorTargetBehindShortWall
;		Design.cpp: pDamageSourceDef->m_fDamageFactorTargetBehindShortWall = GetFloat(strBlock, "DamageFactorTargetBehindShortWall" + strSuffix, bRequired, 0.0f, pDamageSourceDef->m_fDamageFactorTargetBehindShortWall);
;		Design.cpp: else if(str.GetSettingAsFloat(pDamageSourceDef->m_fDamageFactorTargetBehindShortWall, "DamageFactorTargetBehindShortWall"))

51724039	IgnoreInTransit
;		IgnoreInTransit
;		Design.cpp: GetWordList(strBlock, "IgnoreInTransit", aStrings, true, true);

66E87932	TargetsNotAutoFiredAt
;		TargetsNotAutoFiredAt
;		Design.cpp: GetWordList(strBlock, "TargetsNotAutoFiredAt", aStrings, true, true);

02444FC5	InvalidTargets
;		InvalidTargets
;		Design.cpp: GetWordList(strBlock, "InvalidTargets", aStrings, true, true);

67430BD6	Attacker
;		Attacker
;		Design.cpp: if(!strType.CompareI("Attacker"))

7F9000CF	none
;		none
;		Design.cpp: if(str != "none")

EC3AE242	Peon
;		Peon
;		Design.cpp: if(!strType.CompareI("Peon"))

B872428F	UnitStation
;		UnitStation
;		Design.cpp: if(!strType.CompareI("UnitStation"))

26AA6D03	Transporter
;		Transporter
;		Design.cpp: if(!strType.CompareI("Transporter"))

F17D3EFC	ResourcePurchaser
;		ResourcePurchaser
;		Design.cpp: if(!strType.CompareI("ResourcePurchaser"))

A20AA39B	ResearchPurchaser
;		ResearchPurchaser
;		Design.cpp: if(!strType.CompareI("ResearchPurchaser"))

67CDFC4F	Healer
;		Healer
;		Design.cpp: if(!strType.CompareI("Healer"))

69730DDB	RemoteViewer
;		RemoteViewer
;		Design.cpp: if(!strType.CompareI("RemoteViewer"))

6032D9B8	ManaUser
;		ManaUser
;		Design.cpp: if(!strType.CompareI("ManaUser"))

4607A604	TechUser
;		TechUser
;		Design.cpp: if(!strType.CompareI("TechUser"))

344BA18F	ResourceSender
;		ResourceSender
;		Design.cpp: if(!strType.CompareI("ResourceSender"))

FA199328	ResourceReceiver
;		ResourceReceiver
;		Design.cpp: if(!strType.CompareI("ResourceReceiver"))

7C89A36D	Unit
;		Unit
;		Design.cpp: if(!strTypeHeader.CompareI("Unit"))
;		Design.cpp: if(IsTypeMatch_For2ndPass(strType, "Unit"))

2EBB67F1	[
;		[
;		Design.cpp: CAnsiString strWithBraces = "[" + *pstrCopySourceName + "]";

C7D8C2C4	]
;		]
;		Design.cpp: CAnsiString strWithBraces = "[" + *pstrCopySourceName + "]";

3476296C	UpgradeCost
;		UpgradeCost
;		Design.cpp: GetResourceCost(strBlock, "UpgradeCost", pUnitDef->upgradeCost);

661A476E	StrategicSite
;		StrategicSite
;		Design.cpp: if(!strType.CompareI("StrategicSite"))
;		Design.cpp: if(IsTypeMatch_For2ndPass(strType, "StrategicSite"))

08EA554E	UnitVariation
;		UnitVariation
;		Design.cpp: if(!strType.CompareI("UnitVariation"))
;		Design.cpp: if(IsTypeMatch_For2ndPass(strType, "UnitVariation"))

1197DFE3	Random
;		Random
;		Design.cpp: if(strPlacementType.CompareI("Random") == 0)
;		Design.cpp: if(strValue.CompareI("Random") == 0)
;		Design.cpp: else if(strValue.CompareI("Random") == 0)

D4D8CCEA	Serial
;		Serial
;		Design.cpp: else if(strPlacementType.CompareI("Serial") == 0)
;		Design.cpp: else if(strValue.CompareI("Serial") == 0)

5DD611DE	PerSpot
;		PerSpot
;		Design.cpp: if(strPlacementSettings.GetSettingAsInt(pExpansionDef->iPerSpot, "PerSpot"))

94A02A83	Pre Terrain
;		Pre Terrain
;		Design.cpp: pExpansionDef->placementType.bPreTerrain = strValue.CompareI("Pre Terrain") == 0;

67AA281F	no
;		no
;		Design.cpp: pExpansionDef->bAllowOnRoad = !(strValue.CompareI("off") == 0 || strValue.CompareI("no") == 0);

C6F9713A	FaceMainExpansion
;		FaceMainExpansion
;		Design.cpp: if(strValue.CompareI("FaceMainExpansion") == 0)

9B6F465A	FaceOutward
;		FaceOutward
;		Design.cpp: else if(strValue.CompareI("FaceOutward") == 0)

68AA02C5	Upgrader
;		Upgrader
;		Design.cpp: if(!strType.CompareI("Upgrader"))

5B292E0A	TechFactory
;		TechFactory
;		Design.cpp: if(!strType.CompareI("TechFactory"))

B6D0CF0A	TechProvider
;		TechProvider
;		Design.cpp: if(!strType.CompareI("TechProvider"))

8D811482	ResourceFactory
;		ResourceFactory
;		Design.cpp: if(!strType.CompareI("ResourceFactory"))

54204EB0	YardResourceManager
;		YardResourceManager
;		Design.cpp: if(!strType.CompareI("YardResourceManager"))

DC7DA4C7	UnitFactory
;		UnitFactory
;		Design.cpp: if(!strType.CompareI("UnitFactory"))

E2091CDF	Dock
;		Dock
;		Design.cpp: if(!strType.CompareI("Dock"))

7249AECA	ResourceCapacity
;		ResourceCapacity
;		Design.cpp: GetResourceCost(strBlock, "ResourceCapacity", pAttackeeDef->resCapacity);

C514D0A5	HitPoints
;		HitPoints
;		Design.cpp: GetNumberList(strBlock, "HitPoints", pAttackeeDef->aHpInitial, false, true, false, false);
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "HitPoints", &str))

335192EA	ProductionRatio
;		ProductionRatio
;		Design.cpp: if(!strBlock.GetSettingAsString("ProductionRatio").IsEmpty())

6C72C119	 Corpse
;		 Corpse
;		Design.cpp: CAnsiString str = " Corpse";

E96CCF45	 
;		 
;		Design.cpp: pStructureCorpseDef->strDisplayNameTranslated = pBuildingDef->strNameAnsi.ToString(true) + " " + CString("Ruin");

0C4F2E3F	Ruin
;		Ruin
;		Design.cpp: pStructureCorpseDef->strDisplayNameTranslated = pBuildingDef->strNameAnsi.ToString(true) + " " + CString("Ruin");

4C030DEE	MapObj
;		MapObj
;		Design.cpp: if(!strTypeHeader.CompareI("MapObj"))
;		Design.cpp: OnNewMapObjDef(new SMapObjDef(MO_GFX_OBJ, "MapObj", false, false));

E7DFFA93	Short Wall
;		Short Wall
;		Design.cpp: if(!strTypeHeader.CompareI("Short Wall"))

18190382	Building
;		Building
;		Design.cpp: if(!strTypeHeader.CompareI("Building"))
;		Design.cpp: if(IsTypeMatch_For2ndPass(strType, "Building"))

BA1A3259	Error in 
;		Error in 
;		Design.cpp: g_pApp->MessageBoxOK("Error in " + strBlockName + "\r\n\r\n" +
;		Design.cpp: g_pApp->MessageBoxOK("Error in " + strBlock.GetBlockName() + "\r\n\r\n" +

8BC21544	\r\n\r\n
;		\r\n\r\n
;		Design.cpp: g_pApp->MessageBoxOK("Error in " + strBlockName + "\r\n\r\n" +
;		Design.cpp: PLib::g_pApp->ExitWithMsg(L"Mover def reference not found: " + strHeader + "\r\n\r\n" + strBlock, L"design file error");
;		Design.cpp: g_pApp->MessageBoxOK("Error in " + strBlock.GetBlockName() + "\r\n\r\n" +

629B9E5B	Unknown
;		Unknown
;		Design.cpp: OnNewMapObjDef(new SMapObjDef(MO_UNKNOWN, "Unknown", false, false));
;		Design.cpp: "Unknown", // SUnitDef::UNKNOWN = -1,

3DE8BECF	SitePlan
;		SitePlan
;		Design.cpp: OnNewMapObjDef(new SEntityDef(MO_SITEPLAN, "SitePlan", true, false));

64329345	Warp Gate
;		Warp Gate
;		Design.cpp: OnNewMapObjDef(new SEntityDef(MO_WARPGATE, "Warp Gate", false, false));

3FE72B40	Tech Drop
;		Tech Drop
;		Design.cpp: OnNewMapObjDef(new SEntityDef(MO_TECH_DROP, "Tech Drop", true, false));

476F7C2E	Ammo Drop
;		Ammo Drop
;		Design.cpp: OnNewMapObjDef(new SEntityDef(MO_AMMO_DROP, "Ammo Drop", true, false));

D6AF76A7	Gas Drop
;		Gas Drop
;		Design.cpp: OnNewMapObjDef(new SEntityDef(MO_GAS_DROP, "Gas Drop", true, false));

D4756D93	Metal Drop
;		Metal Drop
;		Design.cpp: OnNewMapObjDef(new SEntityDef(MO_METAL_DROP, "Metal Drop", true, false));

9526BA2A	Weapon Drop
;		Weapon Drop
;		Design.cpp: OnNewMapObjDef(new SEntityDef(MO_WEAPON_DROP, "Weapon Drop", true, false));

A940BECF	Relic
;		Relic
;		Design.cpp: OnNewMapObjDef(new SEntityDef(MO_RELIC, "Relic", true, false));

C9DB9ABD	Launcher Shot
;		Launcher Shot
;		Design.cpp: OnNewMapObjDef(new SMapObjDef(MO_LAUNCHER_SHOT, "Launcher Shot", false, false));

8B3D2EF9	MapObj Link
;		MapObj Link
;		Design.cpp: OnNewMapObjDef(new SMapObjDef(MO_MAPOBJ_LINK, "MapObj Link", false, false));

48B7A9B1	Precipitation
;		Precipitation
;		Design.cpp: OnNewMapObjDef(new SMapObjDef(MO_PRECIPITATION, "Precipitation", false, false));

71C644A4	Flag
;		Flag
;		Design.cpp: OnNewMapObjDef(new SEntityDef(MO_FLAG, "Flag", true, false));

203DD629	Bomb
;		Bomb
;		Design.cpp: OnNewMapObjDef(new SEntityDef(MO_FOOTBALL, "Bomb", true, false));

1900D54D	Spot
;		Spot
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_ATTACKGROUNDFLAG, "Spot", false, false));

E114F1EF	Grayed Target
;		Grayed Target
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_GRAYEDTARGET, "Grayed Target", false, false));

47158222	Structure Ext.
;		Structure Ext.
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_STRUCTURE_EXTENSION, "Structure Ext.", false, false));

14C9AE22	EMP Grenade
;		EMP Grenade
;		Notes:  this research tech allows firetucks to throw EMP grenades
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_EMPGRENADESHOT, "EMP Grenade", false, false));
;		TechUserComponent.cpp: szName = "EMP Grenade";

7962C8B2	Smoke Grenade Shot
;		Smoke Grenade Shot
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_SMOKEGRENADESHOT, "Smoke Grenade Shot", false, false));

3562F328	Flashbang
;		Flashbang
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_FLASHBANG, "Flashbang", false, false));
;		TechUserComponent.cpp: szName = "Flashbang";

3BA50E6F	HE Grenade
;		HE Grenade
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_HEGRENADE, "HE Grenade", false, false));
;		TechUserComponent.cpp: szName = "HE Grenade";

28496E05	Molotov Cocktail
;		Molotov Cocktail
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_MOLOTOVCOCKTAIL, "Molotov Cocktail", false, false));
;		TechUserComponent.cpp: szName = "Molotov Cocktail";

922F674C	Sticky Bomb On Ground
;		Sticky Bomb On Ground
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_STICKYBOMB_ONGROUND, "Sticky Bomb On Ground", false, false));

18360FC5	Slowness
;		Slowness
;		Notes:  this research tech allows Shaman to slow down enemy units
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_SLOWNESSSHOT, "Slowness", false, false));
;		TechUserComponent.cpp: szName = "Slowness";
;		Unit.cpp: params.strText = "Slowness";

4F5145FD	Madness
;		Madness
;		Notes:  this research tech allows mindblasters to make enemy units temporarily uncontrollable
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_MADNESSSHOT, "Madness", false, false));
;		TechUserComponent.cpp: szName = "Madness";
;		Unit.cpp: params.strText = "Madness";

760757C7	Taunt
;		Taunt
;		Notes:  this research tech allows brawler to force enemy units to attack it
;		Design.cpp: OnNewMapObjDef(new SAttackeeDef(MO_TAUNTSHOT, "Taunt", false, false));
;		TechUserComponent.cpp: szName = "Taunt";

848442BB	Unit Corpse
;		Unit Corpse
;		Design.cpp: SEntityDef * pUnitCorpse = new SEntityDef(MO_UNIT_CORPSE, "Unit Corpse", true, false);

8F618658	Corpse
;		Corpse
;		Design.cpp: pUnitCorpse->strDisplayNameTranslated = "Corpse";

BFA8CC30	Pipe
;		Pipe
;		Design.cpp: SStructureDef * pDef = new SStructureDef(MO_PIPE, "Pipe", true, true);

95CBE82E	Football Goal
;		Football Goal
;		Design.cpp: SStructureDef * pDef = new SStructureDef(MO_FOOTBALL_GOAL, "Football Goal", true, true);

35F26B8F	Road
;		Road
;		Design.cpp: SStructureDef * pDef = new SStructureDef(MO_ROAD, "Road", true, true);

ADA6E1F3	Pathing Obstruction
;		Pathing Obstruction
;		Design.cpp: pDef->strNameAnsi = "Pathing Obstruction";

0AAEADA2	Construction Yard
;		Construction Yard
;		Design.cpp: pDef->strNameAnsi = "Construction Yard";

001E5C07	Salvage
;		Salvage
;		Design.cpp: SEntityDef * pDef = new SEntityDef(MO_SALVAGE, "Salvage", true, false);
;		Design.cpp: "Salvage", // RES_SALVAGE = 0,
;		Game.cpp: szName = "Salvage";

01A3DBCD	Metal
;		Metal
;		Design.cpp: SEntityDef * pDef = new SEntityDef(MO_METAL, "Metal", true, false);
;		Design.cpp: "Metal", // RES_METAL
;		Game.cpp: szName = "Metal";

16C0B66F	GFX Structure Small
;		GFX Structure Small
;		Design.cpp: pDef->strNameAnsi = "GFX Structure Small";

9FA3FDFC	GFX Structure Medium
;		GFX Structure Medium
;		Design.cpp: pDef->strNameAnsi = "GFX Structure Medium";

3AEE75C2	GFX Structure Large
;		GFX Structure Large
;		Design.cpp: pDef->strNameAnsi = "GFX Structure Large";

76400027	GFX Salvage Structure Small
;		GFX Salvage Structure Small
;		Design.cpp: pDef->strNameAnsi = "GFX Salvage Structure Small";

E7C4B4E8	GFX Salvage Structure Medium
;		GFX Salvage Structure Medium
;		Design.cpp: pDef->strNameAnsi = "GFX Salvage Structure Medium";

5A6EC38A	GFX Salvage Structure Large
;		GFX Salvage Structure Large
;		Design.cpp: pDef->strNameAnsi = "GFX Salvage Structure Large";

91F91B6D	ResourceList
;		ResourceList
;		Design.cpp: if(GetSettingAsStringList(astrList, "ResourceList", &str))

076AF4A7	TransferRate
;		TransferRate
;		Design.cpp: if(strAttribute.GetSettingAsInt(entry.ticksTransferRate, "TransferRate"))

6DD51468	TransferAmount
;		TransferAmount
;		Design.cpp: else if(strAttribute.GetSettingAsFloat(entry.fTransferAmount, "TransferAmount"))

D376E0B7	ReserveAmount
;		ReserveAmount
;		Design.cpp: else if(strAttribute.GetSettingAsFloat(entry.fReserveAmount, "ReserveAmount"))

BD802DAE	ReserveAmountForTeammate
;		ReserveAmountForTeammate
;		Design.cpp: else if(strAttribute.GetSettingAsFloat(entry.fReserveAmountForTeammate, "ReserveAmountForTeammate"))

DD494840	RatioDiffAllowSend
;		RatioDiffAllowSend
;		Design.cpp: else if(strAttribute.GetSettingAsFloat(entry.fRatioDiffAllowSend, "RatioDiffAllowSend"))

BC690F74	Fallback_Capacity
;		Fallback_Capacity
;		Design.cpp: else if(strAttribute.GetSettingAsFloat(entry.fFallback_Capacity, "Fallback_Capacity"))

A48FAAA5	FillToMaxCapacity
;		FillToMaxCapacity
;		Design.cpp: else if(str.GetSettingAsBool(pResSenderDef->bFillToMaxCapacity, "FillToMaxCapacity"))

78E9656E	ScanRange
;		ScanRange
;		Design.cpp: else if(str.GetSettingAsFloat(pResSenderDef->fScanRange, "ScanRange"))

ED5C6E38	RequestAmount
;		RequestAmount
;		Design.cpp: if(strAttribute.GetSettingAsFloat(entry.fRequestAmount, "RequestAmount"))

64CA3C12	ResourceRequestRatio_Cpu
;		ResourceRequestRatio_Cpu
;		Design.cpp: else if(strAttribute.GetSettingAsFloat(entry.fResourceRequestRatio_Cpu, "ResourceRequestRatio_Cpu"))

DD682E83	TrackRange
;		TrackRange
;		Design.cpp: else if(str.GetSettingAsFloat(pResReceiverDef->fTrackRange, "TrackRange"))

C7B9EE1B	TechsSupported
;		TechsSupported
;		Design.cpp: if(GetSettingAsStringList(astrList, "TechsSupported", &str))

8FF112F2	NitroUpgradeFactor
;		NitroUpgradeFactor
;		Design.cpp: if(str.GetSettingAsFloat(pMoverDef->fNitroModifer, "NitroUpgradeFactor"))

82BB6D02	UnitSpeedFactor_Carrying
;		UnitSpeedFactor_Carrying
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fUnitSpeedFactor_Carrying_PlantTheBomb, "UnitSpeedFactor_Carrying"))

97D3F22B	UnitSpeedFactor_Encumbered
;		UnitSpeedFactor_Encumbered
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fUnitSpeedFactor_Encumbered , "UnitSpeedFactor_Encumbered"))

8397A840	SpeedNotActive
;		SpeedNotActive
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fWarpSpeedNotActive, "SpeedNotActive"))

70E4D504	SpeedActive
;		SpeedActive
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fWarpSpeedActive, "SpeedActive"))

51AD9EE5	EnduranceRegenPerSecond
;		EnduranceRegenPerSecond
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fEnduranceRegenPerSecond, "EnduranceRegenPerSecond"))

326F78C8	EnduranceConsumePerSecond
;		EnduranceConsumePerSecond
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fEnduranceConsumePerSecond, "EnduranceConsumePerSecond"))

749A9E9E	GasConsumptionRate
;		GasConsumptionRate
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fGasConsumptionRate, "GasConsumptionRate"))

FC81568B	GasConsumptionFactor_Sprinting
;		GasConsumptionFactor_Sprinting
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fGasConsumptionFactor_Sprinting, "GasConsumptionFactor_Sprinting"))

4AC83E76	GasConsumptionFactor_OnRoad
;		GasConsumptionFactor_OnRoad
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fGasConsumptionFactor_OnRoad, "GasConsumptionFactor_OnRoad"))

CA573577	TopSpeed
;		TopSpeed
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->kinSimProps.fTopSpeed, "TopSpeed"))

62476E83	Acceleration
;		Acceleration
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->kinSimProps.fAccel, "Acceleration"))

6994247E	RotationSpeed
;		RotationSpeed
;		Design.cpp: else if(str.GetSettingAsFloat(fValue, "RotationSpeed"))

405F8097	RotationSpeed_Prone
;		RotationSpeed_Prone
;		Design.cpp: else if(str.GetSettingAsFloat(fValue, "RotationSpeed_Prone"))

D88D239D	StairsFactor
;		StairsFactor
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fTimeScalePerTileForStairs, "StairsFactor"))

E988C739	PatrolFactor
;		PatrolFactor
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fTimeScalePerTileForPatrol, "PatrolFactor"))

E55FF030	RoadFactor
;		RoadFactor
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fTimeScalePerTileForRoad, "RoadFactor"))

1C3D3428	SizeModifierForProne
;		SizeModifierForProne
;		Design.cpp: else if(str.GetSettingAsFloat(pMoverDef->fSizeModifierForProne, "SizeModifierForProne"))

2C665C34	StandToProneDuration
;		StandToProneDuration
;		Design.cpp: else if(str.GetSettingAsInt(pMoverDef->ticksStandToProneDuration, "StandToProneDuration"))

BEAC6F9E	ProneToStandDuration
;		ProneToStandDuration
;		Design.cpp: else if(str.GetSettingAsInt(pMoverDef->ticksProneToStandDuration, "ProneToStandDuration"))

25E6EE46	ProneFactor
;		ProneFactor
;		Design.cpp: str.GetSettingAsFloat(pMoverDef->fTimeScalePerTileForProne, "ProneFactor");

5A21E33A	AttackDamage
;		AttackDamage
;		Design.cpp: if(GetSettingAsStringList(aStrings, "AttackDamage" + strSuffix, &str))

057D7871	AttackDamage_Moving
;		AttackDamage_Moving
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "AttackDamage_Moving" + strSuffix, &str))

6A93BF6F	RateOfFireStart
;		RateOfFireStart
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "RateOfFireStart" + strSuffix, &str))

B192C148	RateOfFireStart_Prone
;		RateOfFireStart_Prone
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "RateOfFireStart_Prone" + strSuffix, &str))

E5ACE163	RateOfFireStart_TargetMoving
;		RateOfFireStart_TargetMoving
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "RateOfFireStart_TargetMoving" + strSuffix, &str))

5E4FEA8A	RateOfFireContinue
;		RateOfFireContinue
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "RateOfFireContinue" + strSuffix, &str))

AB673862	RateOfFireContinue_Moving
;		RateOfFireContinue_Moving
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "RateOfFireContinue_Moving" + strSuffix, &str))

88D44A50	RateOfFireBurst
;		RateOfFireBurst
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "RateOfFireBurst" + strSuffix, &str))

182185C3	RateOfFireBurst_Moving
;		RateOfFireBurst_Moving
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "RateOfFireBurst_Moving" + strSuffix, &str))

20425063	BurstShots
;		BurstShots
;		Design.cpp: else if(str.GetSettingAsInt(core.m_nBurstShots, "BurstShots" + strSuffix))

09F29044	AccuracyCurveSpacingForX
;		AccuracyCurveSpacingForX
;		Design.cpp: else if(str.GetSettingAsFloat(distAccuracyCurveSpacingForX, "AccuracyCurveSpacingForX" + strSuffix))

E12C4C86	AccuracyGround
;		AccuracyGround
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "AccuracyGround" + strSuffix, &str))

CC59325A	AccuracyAir
;		AccuracyAir
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "AccuracyAir" + strSuffix, &str))

238AD3CF	AccuracyBonusFactorForAltitude
;		AccuracyBonusFactorForAltitude
;		Design.cpp: else if(str.GetSettingAsFloat(core.m_fAccuracyBonusFactorForAltitude, "AccuracyBonusFactorForAltitude" + strSuffix))
;		Design.cpp: else if(str.GetSettingAsFloat(core.m_fAccuracyBonusCloseRange_AirGroundMismatch, "AccuracyBonusFactorForAltitude" + strSuffix))

0D8A8DF2	AccuracyBonusCloseRange
;		AccuracyBonusCloseRange
;		Design.cpp: else if(str.GetSettingAsFloat(core.m_fAccuracyBonusCloseRange, "AccuracyBonusCloseRange" + strSuffix))

CCD95469	TurretRotationVelocity
;		TurretRotationVelocity
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "TurretRotationVelocity" + strSuffix, &str))

3CDC9D92	TurretRotationLimit
;		TurretRotationLimit
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "TurretRotationLimit" + strSuffix, &str))

7EE44B6C	AttackRange
;		AttackRange
;		Design.cpp: else if(str.GetSettingAsString(strValue, "AttackRange" + strSuffix))
;		Design.cpp: GetSettingAsStringList(aStrings, "AttackRange" + strSuffix, &str);

2A538124	DamageDecay
;		DamageDecay
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "DamageDecay" + strSuffix, &str))

61EB6B10	DeployTime
;		DeployTime
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "DeployTime" + strSuffix, &str))

D1073A11	FriendlyFire
;		FriendlyFire
;		Design.cpp: else if(str.GetSettingAsString(strValue, "FriendlyFire"))

5E41FF0A	RunAndGun
;		RunAndGun
;		Design.cpp: else if(str.GetSettingAsString(strValue, "RunAndGun"))

234E2084	TargetTracking
;		TargetTracking
;		Design.cpp: else if(str.GetSettingAsBool(pWeaponDef->m_bHasTargetTracking, "TargetTracking"))

4551DDE4	HitGround
;		HitGround
;		Design.cpp: else if(str.GetSettingAsString(strValue, "HitGround"))

AA869EC2	UnitHolderWeapon
;		UnitHolderWeapon
;		Design.cpp: else if(str.GetSettingAsBool(pWeaponDef->m_bUnitHolderWeapon, "UnitHolderWeapon"))

2B19F026	CanTargetInSmoke
;		CanTargetInSmoke
;		Design.cpp: else if(str.GetSettingAsBool(pWeaponDef->m_bCanTargetInSmoke, "CanTargetInSmoke"))

59DA2C5C	HitAir
;		HitAir
;		Design.cpp: else if(str.GetSettingAsString(strValue, "HitAir"))

CBE16878	MustDescendToHitGround
;		MustDescendToHitGround
;		Design.cpp: else if(str.GetSettingAsString(strValue, "MustDescendToHitGround"))

FF359BB1	ProneRangeForAccuracyBonus
;		ProneRangeForAccuracyBonus
;		Design.cpp: else if(str.GetSettingAsFloat(pWeaponDef->m_distProneRangeForAccuracyBonus, "ProneRangeForAccuracyBonus"))

0A733235	AccuracyBonusFactorForProne
;		AccuracyBonusFactorForProne
;		Design.cpp: else if(str.GetSettingAsFloat(pWeaponDef->m_fAccuracyBonusFactorForProne, "AccuracyBonusFactorForProne"))

011EF227	DamageReceiveFactorWhenActive
;		DamageReceiveFactorWhenActive
;		Design.cpp: else if(str.GetSettingAsFloat(pWeaponDef->m_fDamageReceiveFactorWhenActive, "DamageReceiveFactorWhenActive"))

8498B900	DamageReceiveFactorWhenInactive
;		DamageReceiveFactorWhenInactive
;		Design.cpp: else if(str.GetSettingAsFloat(pWeaponDef->m_fDamageReceiveFactorWhenInactive, "DamageReceiveFactorWhenInactive"))

2F9C185B	AttackMinRange
;		AttackMinRange
;		Design.cpp: else if(str.GetSettingAsFloat(pWeaponDef->m_distMinRange, "AttackMinRange"))

C24C9808	AttackMinRange_Prone
;		AttackMinRange_Prone
;		Design.cpp: else if(str.GetSettingAsFloat(pWeaponDef->m_distMinRangeProne, "AttackMinRange_Prone"))

344DA6DC	ForceProneOnMovingTargets
;		ForceProneOnMovingTargets
;		Design.cpp: else if(str.GetSettingAsBool(pWeaponDef->m_bForceProne_OnMovingTargets, "ForceProneOnMovingTargets"))

C2A49BE4	ForceProneOnStationaryTargets
;		ForceProneOnStationaryTargets
;		Design.cpp: else if(str.GetSettingAsBool(pWeaponDef->m_bForceProne_OnStationaryTargets, "ForceProneOnStationaryTargets"))

06D4D488	PassThroughInfantry
;		PassThroughInfantry
;		Design.cpp: else if(str.GetSettingAsString(strValue, "PassThroughInfantry"))

568AF84B	AutoProneWhenDeployed
;		AutoProneWhenDeployed
;		Design.cpp: else if(str.GetSettingAsString(strValue, "AutoProneWhenDeployed"))

2F1B9CC2	CanUseInProne
;		CanUseInProne
;		Design.cpp: else if(str.GetSettingAsString(strValue, "CanUseInProne"))

A4F98B60	AfterburnStructures
;		AfterburnStructures
;		Design.cpp: else if(str.GetSettingAsFloat(pWeaponDef->m_fAfterBurnRatio[0], "AfterburnStructures"))

66178A39	AfterburnUnits
;		AfterburnUnits
;		Design.cpp: else if(str.GetSettingAsFloat(pWeaponDef->m_fAfterBurnRatio[1], "AfterburnUnits"))

795B69F7	ResourceTypeConsumed
;		ResourceTypeConsumed
;		Design.cpp: else if(str.GetSettingAsString(strValue, "ResourceTypeConsumed"))

E6B951D1	ResourceConsumedPerShot
;		ResourceConsumedPerShot
;		Design.cpp: else if(GetSettingAsStringList(aStrings, "ResourceConsumedPerShot", &str))

05A083AD	IsDroppable
;		IsDroppable
;		Design.cpp: else if(str.GetSettingAsString(strValue, "IsDroppable"))

C574CE66	AutoFireWeapon
;		AutoFireWeapon
;		Design.cpp: else if(str.GetSettingAsString(strValue, "AutoFireWeapon"))

0B06E247	WanderingAttacker
;		WanderingAttacker
;		Design.cpp: else if(str.GetSettingAsString(strValue, "WanderingAttacker"))

ACAC207D	IsCarefulAboutFriendlyFire
;		IsCarefulAboutFriendlyFire
;		Design.cpp: else if(str.GetSettingAsString(strValue, "IsCarefulAboutFriendlyFire"))

BFD0B6AF	AttackGroundOrder
;		AttackGroundOrder
;		Design.cpp: else if(str.GetSettingAsString(strValue, "AttackGroundOrder"))

B012DD2B	AttackGroundOnceOrder
;		AttackGroundOnceOrder
;		Design.cpp: else if(str.GetSettingAsString(strValue, "AttackGroundOnceOrder"))

73A81F38	LobCurve
;		LobCurve
;		Design.cpp: else if(str.GetSettingAsFloat(pWeaponDef->m_fLobCurve, "LobCurve"))

79646C18	Prediction
;		Prediction
;		Design.cpp: else if(str.GetSettingAsString(strValue, "Prediction"))

EF49A49D	Homing
;		Homing
;		Design.cpp: else if(str.GetSettingAsFloat(pWeaponDef->m_fHoming, "Homing"))

4B508727	ShotSpeed
;		ShotSpeed
;		Design.cpp: else if(str.GetSettingAsFloat(pWeaponDef->m_fShotSpeed, "ShotSpeed"))

E7DE3C23	ViewerShot
;		ViewerShot
;		Design.cpp: else if(str.GetSettingAsString(strValue, "ViewerShot"))

278114C7	ShotFireFlare
;		ShotFireFlare
;		Design.cpp: else if(str.GetSettingAsString(strValue, "ShotFireFlare"))

FD2B5185	ShotLandsFlare
;		ShotLandsFlare
;		Design.cpp: else if(str.GetSettingAsString(strValue, "ShotLandsFlare"))

DEA30795	LearnWithPractice
;		LearnWithPractice
;		Design.cpp: else if(str.GetSettingAsString(strValue, "LearnWithPractice"))

A03A1266	LineOfFireBlockage
;		LineOfFireBlockage
;		Design.cpp: else if(str.GetSettingAsString(strValue, "LineOfFireBlockage"))

C1C4413F	AutoMinimizeArea
;		AutoMinimizeArea
;		Design.cpp: if(str.GetSettingAsFloat(pDamageSourceDef->m_distAutoMinimizeArea, "AutoMinimizeArea"))

336985E5	DamageFactorInfantry
;		DamageFactorInfantry
;		Design.cpp: else if(str.GetSettingAsFloat(pDamageSourceDef->m_fDamageFactorInfantry, "DamageFactorInfantry"))

002808BA	AttackClass
;		AttackClass
;		Design.cpp: else if(str.GetSettingAsString(strValue, "AttackClass"))

D542AF22	WeaponsSupported
;		WeaponsSupported
;		Design.cpp: if(str.GetSettingAsString(strValue, "WeaponsSupported"))

371100DD	MaxCarriedWeapons
;		MaxCarriedWeapons
;		Design.cpp: else if(str.GetSettingAsInt(pAttackerDef->nMaxCarriedWeapons, "MaxCarriedWeapons"))

5FFE5DB0	InitialWeapon
;		InitialWeapon
;		Design.cpp: else if(str.GetSettingAsString(strValue, "InitialWeapon"))

E3BDB206	HoseProtection
;		HoseProtection
;		Design.cpp: else if(str.GetSettingAsFloat(pAttackerDef->fFireHoseProtectionModifier, "HoseProtection"))

E32680B3	AuraLevelModifer
;		AuraLevelModifer
;		Design.cpp: else if(str.GetSettingAsFloat(pAttackerDef->fAmpliconAuraUpgradeModifier, "AuraLevelModifer"))

AA0DA50F	MutantDamageBenefitFromHumans
;		MutantDamageBenefitFromHumans
;		Design.cpp: else if(str.GetSettingAsFloat(pAttackerDef->fMutantBenefitFromHumanDamage, "MutantDamageBenefitFromHumans"))

2220DFC1	MutantRangeBenefitFromHumans
;		MutantRangeBenefitFromHumans
;		Design.cpp: else if(str.GetSettingAsFloat(pAttackerDef->fMutantBenefitFromHumanRange, "MutantRangeBenefitFromHumans"))

BEA45259	AttackHeight
;		AttackHeight
;		Design.cpp: else if(str.GetSettingAsFloat(pAttackerDef->fAttackHeight, "AttackHeight"))
;		Design.cpp: if(str.GetSettingAsFloat(pTransporterDef->fAttackHeight, "AttackHeight"))

54897B62	AttackHeight_Prone
;		AttackHeight_Prone
;		Design.cpp: else if(str.GetSettingAsFloat(pAttackerDef->fAttackHeight_Prone, "AttackHeight_Prone"))

BDA692DF	HoldFireLowAmmo
;		HoldFireLowAmmo
;		Design.cpp: else if(str.GetSettingAsFloat(pAttackerDef->fHoldFireLowAmmo, "HoldFireLowAmmo"))

463DBD64	HoldFireLowGas
;		HoldFireLowGas
;		Design.cpp: else if(str.GetSettingAsFloat(pAttackerDef->fHoldFireLowGas, "HoldFireLowGas"))

DBE3CFD3	BuildSpeed
;		BuildSpeed
;		Design.cpp: if(str.GetSettingAsFloat(pPeonDef->fBuildSpeed, "BuildSpeed"))

3B7D8E0F	RepairRate
;		RepairRate
;		Design.cpp: else if(str.GetSettingAsFloat(pPeonDef->hpRepairRate, "RepairRate"))

67F96F7E	RepairStructureCost
;		RepairStructureCost
;		Design.cpp: else str.GetSettingAsFloat(pPeonDef->fRepairStructureCostFactor, "RepairStructureCost");

52202016	CargoHeightPos
;		CargoHeightPos
;		Design.cpp: else if(str.GetSettingAsFloat(pUnitStationDef->fCargoHeightPos, "CargoHeightPos"))

D50749F1	DamageFactorStructureOccupantHidingWeight
;		DamageFactorStructureOccupantHidingWeight
;		Design.cpp: else if(str.GetSettingAsFloat(fValue, "DamageFactorStructureOccupantHidingWeight"))

E0AA3461	NeedsDriver
;		NeedsDriver
;		Design.cpp: else if(str.GetSettingAsBool(pTransporterDef->bNeedsDriver, "NeedsDriver"))

E4DFE34C	AllowUsableLegsUnit
;		AllowUsableLegsUnit
;		Design.cpp: else if(str.GetSettingAsBool(pTransporterDef->bAllowUsableLegsUnit, "AllowUsableLegsUnit"))

1E85C17D	CargoSize
;		CargoSize
;		Design.cpp: if(str.GetSettingAsFloat(fValue, "CargoSize"))

0DC22160	CargoSizePerPlayer
;		CargoSizePerPlayer
;		Design.cpp: else if(str.GetSettingAsFloat(fValue, "CargoSizePerPlayer"))

853BBEEF	CaptureTime
;		CaptureTime
;		Design.cpp: else if(str.GetSettingAsInt(pHolderDef->ticksCaptureTime, "CaptureTime"))

D6F1F750	MaxUnitsPerPlayer
;		MaxUnitsPerPlayer
;		Design.cpp: else if(str.GetSettingAsInt(pHolderDef->nMaxUnitsPerPlayer, "MaxUnitsPerPlayer"))

2B1D7997	MaxPlayersPerTeam
;		MaxPlayersPerTeam
;		Design.cpp: else if(str.GetSettingAsInt(pHolderDef->nMaxPlayersPerTeam, "MaxPlayersPerTeam"))

DEEBF5DE	UnitsAllowed
;		UnitsAllowed
;		Design.cpp: else if(GetSettingAsStringList(astrList, "UnitsAllowed", &str))

E4AD29E8	NeutralIfEmpty
;		NeutralIfEmpty
;		Design.cpp: else if(str.GetSettingAsBool(pHolderDef->bNeutralIfEmpty, "NeutralIfEmpty"))

2304C059	DamageFactorHolderOccupantFightingWeight
;		DamageFactorHolderOccupantFightingWeight
;		Design.cpp: else if(str.GetSettingAsFloat(fValue, "DamageFactorHolderOccupantFightingWeight"))

E5EA9B02	ResourceAmount
;		ResourceAmount
;		Design.cpp: if(strAttribute.GetSettingAsFloat(pEntry->fResourceAmount, "ResourceAmount"))

11955F26	BuildTime
;		BuildTime
;		Design.cpp: else if(strAttribute.GetSettingAsInt(pEntry->ticksPurchaseTime, "BuildTime"))

F7A79726	AddIntoAssetNetwork
;		AddIntoAssetNetwork
;		Design.cpp: else if(strAttribute.GetSettingAsBool(pEntry->bAddIntoAssetNetwork, "AddIntoAssetNetwork"))
;		Design.cpp: else if(strAttribute.GetSettingAsBool(entry.bAddIntoAssetNetwork, "AddIntoAssetNetwork"))

1D31B3E3	GameTechs
;		GameTechs
;		Design.cpp: if(GetSettingAsStringList(astrList, "GameTechs", &str))

9B73FBA2	TechAmount
;		TechAmount
;		Design.cpp: if(strAttribute.GetSettingAsFloat(pEntry->fTechAmount, "TechAmount"))

108BB9AA	HealAmount
;		HealAmount
;		Design.cpp: if(GetSettingAsStringList(astrList, "HealAmount", &str))

87246CDB	HealRate
;		HealRate
;		Design.cpp: else if(str.GetSettingAsInt(pHealerDef->ticksHealRate, "HealRate"))

DDDB114E	HealRange
;		HealRange
;		Design.cpp: else if(str.GetSettingAsFloat(pHealerDef->fHealRangeInTiles, "HealRange"))

518918C0	CanHealStructure
;		CanHealStructure
;		Design.cpp: else if(str.GetSettingAsString(strValue, "CanHealStructure"))

179094EA	CanHealOrganic
;		CanHealOrganic
;		Design.cpp: else if(str.GetSettingAsString(strValue, "CanHealOrganic"))

A28FDA9B	UsesMana
;		UsesMana
;		Design.cpp: else if(str.GetSettingAsBool(pHealerDef->bUsesMana, "UsesMana"))

0FFF96A9	HealRateExtraLevels
;		HealRateExtraLevels
;		Design.cpp: str.GetSettingAsFloat(pHealerDef->hpHealAmountMechanicExtraLevels, "HealRateExtraLevels");

531A8A26	MaxMana
;		MaxMana
;		Design.cpp: if(str.GetSettingAsInt(pRemoteViewerDef->nMaxMana, "MaxMana"))
;		Design.cpp: if(str.GetSettingAsFloat(pManaUserDef->fMaxMana, "MaxMana"))

F5879B0D	ManaCost
;		ManaCost
;		Design.cpp: else if(str.GetSettingAsInt(pRemoteViewerDef->nManaCost, "ManaCost"))
;		Design.cpp: else if(str.GetSettingAsFloat(pManaUserDef->fManaCost, "ManaCost"))

5246754D	Range
;		Range
;		Design.cpp: else if(str.GetSettingAsInt(pRemoteViewerDef->nRange, "Range"))

F37B22D0	ManaRegenPerTickPerPrisoner
;		ManaRegenPerTickPerPrisoner
;		Design.cpp: else if(str.GetSettingAsFloat(pRemoteViewerDef->fManaRegenPerTickPerPrisoner, "ManaRegenPerTickPerPrisoner"))

325C3151	ManaBatch
;		ManaBatch
;		Design.cpp: else if(str.GetSettingAsFloat(pManaUserDef->fManaBatch, "ManaBatch"))

DBCBC22D	BatchTime
;		BatchTime
;		Design.cpp: else if(str.GetSettingAsInt(pManaUserDef->ticksBatch, "BatchTime"))

ED4C0BB1	ManaTypeName
;		ManaTypeName
;		Design.cpp: else if(str.GetSettingAsString(strValue, "ManaTypeName"))

353F8F1C	MouseOverText
;		MouseOverText
;		Design.cpp: else if(str.GetSettingAsString(strValue, "MouseOverText"))

63A499B0	UpgradeRange
;		UpgradeRange
;		Design.cpp: if(str.GetSettingAsFloat(pUpgraderDef->distUpgradeRange, "UpgradeRange"))

7EFA3D90	UpgradeDuration
;		UpgradeDuration
;		Design.cpp: str.GetSettingAsInt(pUpgraderDef->ticksUpgradeDuration, "UpgradeDuration");

AE9D3294	Research
;		Research
;		Design.cpp: if(str.GetSettingAsString(strValue, "Research"))

5196206D	TechTypes
;		TechTypes
;		Design.cpp: if(GetSettingAsStringList(astrList, "TechTypes", &str))

798A3D60	ResourceTypes
;		ResourceTypes
;		Design.cpp: if(GetSettingAsStringList(astrListOuterEntries, "ResourceTypes", &strFullString))
;		Design.cpp: else if(str.GetSettingAsString(strValue, "ResourceTypes"))

D959089C	TeammatesShareRatio
;		TeammatesShareRatio
;		Design.cpp: if(strResourceEntry.GetSettingAsFloat(defResEntry.fTeammatesShareRatio, "TeammatesShareRatio"))

1C097EB7	DropOffThresholdAmount
;		DropOffThresholdAmount
;		Design.cpp: else if(strResourceEntry.GetSettingAsFloat(defResEntry.fDropOffThresholdAmount, "DropOffThresholdAmount"))

62E2E5E7	EnableDropOff
;		EnableDropOff
;		Design.cpp: else if(strResourceEntry.GetSettingAsBool(defResEntry.bEnableDropOff, "EnableDropOff"))

EB9A5E8C	RecoveryBonus
;		RecoveryBonus
;		Design.cpp: else if(strResourceEntry.GetSettingAsBool(defResEntry.bRecoveryBonus, "RecoveryBonus"))

A8AAA13E	Periods
;		Periods
;		Design.cpp: if(strPeriodsHeader.CompareI("Periods") != 0)

E685FB00	\r\n\r\nInstead of finding 'Periods' the parser found this word: 
;		\r\n\r\nInstead of finding 'Periods' the parser found this word: 
;		Design.cpp: PLib::g_pApp->ExitWithMsg(L"Resource Factory design file parsing error, expecting the word 'Periods' inside resource entries in this line:\r\n\r\n" + strFullString + "\r\n\r\nInstead of finding 'Periods' the parser found this word: " + strPeriodsHeader + "\r\n\r\nError found in this bloc

4F195C7F	\r\n\r\nError found in this block: 
;		\r\n\r\nError found in this block: 
;		Design.cpp: PLib::g_pApp->ExitWithMsg(L"Resource Factory design file parsing error, expecting the word 'Periods' inside resource entries in this line:\r\n\r\n" + strFullString + "\r\n\r\nInstead of finding 'Periods' the parser found this word: " + strPeriodsHeader + "\r\n\r\nError found in this bloc

0ADDDC4C	ResourceRate
;		ResourceRate
;		Design.cpp: if(strAttribute.GetSettingAsInt(entry.ticksResRate, "ResourceRate"))

3957003F	ResourceRate_Bonus
;		ResourceRate_Bonus
;		Design.cpp: if(strAttribute.GetSettingAsInt(entry.ticksResRate_Bonus, "ResourceRate_Bonus"))

A83B9D58	BatchAmount
;		BatchAmount
;		Design.cpp: else if(strAttribute.GetSettingAsFloat(entry.fBatchAmount, "BatchAmount"))

7074CF68	DepletionAfter
;		DepletionAfter
;		Design.cpp: else if(strAttribute.GetSettingAsFloat(entry.fDepletionAfter, "DepletionAfter"))

B3F7BFE7	Destroy
;		Destroy
;		Design.cpp: else if(strAttribute.GetSettingAsBool(entry.bDestroy, "Destroy"))

28715B4D	Units
;		Units
;		Design.cpp: if(str.GetSettingAsString(strValue, "Units"))

B98BA12E	UnitCreationOffset
;		UnitCreationOffset
;		Design.cpp: else if(str.GetSettingAsString(strValue, "UnitCreationOffset"))

A9553176	CanLoad
;		CanLoad
;		Design.cpp: if(str.GetSettingAsString(strValue, "CanLoad"))

B8DDD798	CanUnload
;		CanUnload
;		Design.cpp: else if(str.GetSettingAsString(strValue, "CanUnload"))

6C3621C1	ConcurrentUnloaders
;		ConcurrentUnloaders
;		Design.cpp: else if(str.GetSettingAsInt(pDockDef->cConcurrentTransfers, "ConcurrentUnloaders"))

592ACBF7	MaxLoadDistance
;		MaxLoadDistance
;		Design.cpp: else if(str.GetSettingAsFloat(pDockDef->fMaxLoadDistance, "MaxLoadDistance"))

5062B033	MaxSearchArea
;		MaxSearchArea
;		Design.cpp: str.GetSettingAsInt(pDockDef->nMaxSearchArea, "MaxSearchArea");

710E300B	\0
;		\0
;		Design.cpp: m_data.PutAnsiString("\0");	//	Just a marker.
;		Design.cpp: m_data.PutAnsiString("\0");

73C9DC87	%s cannot be negative.\r\n\r\n
;		%s cannot be negative.\r\n\r\n
;		Design.cpp: CString("%s cannot be negative.\r\n\r\n", pString->ToString(false).Data()) +

E7B59077	%s cannot be smaller than the value before it.\r\n\r\n
;		%s cannot be smaller than the value before it.\r\n\r\n
;		Design.cpp: CString("%s cannot be smaller than the value before it.\r\n\r\n", pString->ToString(false).Data()) +

E5DDD3AD	using_teammates_ok
;		using_teammates_ok
;		Design.cpp: if(!astrOverriddes.IsEmpty() && !astrOverriddes.GetFirst()->CompareI("using_teammates_ok"))

773C5C2D	%s is too large or small, number must be between -32768 and 32767.\r\n\r\n
;		%s is too large or small, number must be between -32768 and 32767.\r\n\r\n
;		Design.cpp: g_pApp->MessageBoxOK(CString("%s is too large or small, number must be between -32768 and 32767.\r\n\r\n", CString(szSetting).Data()) + block.GetBlockName() + "\r\n" + block, s_szDesignMsgBoxTitle);

EA8E8946	Failed to open game design file.\r\n\r\n
;		Failed to open game design file.\r\n\r\n
;		Design.cpp: g_pApp->MessageBoxOK(CString("Failed to open game design file.\r\n\r\n") + strError + CString("\r\n\r\nYou may have to reinstall %s.", g_pApp->GetName().Data()), "File Error");

8B59BD58	\r\n\r\nYou may have to reinstall %s.
;		\r\n\r\nYou may have to reinstall %s.
;		Design.cpp: g_pApp->MessageBoxOK(CString("Failed to open game design file.\r\n\r\n") + strError + CString("\r\n\r\nYou may have to reinstall %s.", g_pApp->GetName().Data()), "File Error");

83B69F86	File Error
;		File Error
;		Design.cpp: g_pApp->MessageBoxOK(CString("Failed to open game design file.\r\n\r\n") + strError + CString("\r\n\r\nYou may have to reinstall %s.", g_pApp->GetName().Data()), "File Error");

DFA2AFF1	None
;		None
;		Design.cpp: "None", // RES_UNKNOWN = -1,
;		Design.cpp: "None", // SUnitDef::NONE
;		Unit.cpp: entry.strValue = "None";

A21284A4	Survivors
;		Survivors
;		Design.cpp: "Survivors", // RES_PEOPLE,
;		Game.cpp: szName = "Survivors";

3F7E3837	Gas
;		Gas
;		Design.cpp: "Gas", // RES_GAS,
;		Game.cpp: szName = "Gas";

4FBDD114	Ammo
;		Ammo
;		Design.cpp: "Ammo", // RES_AMMO
;		Game.cpp: szName = "Ammo";

5F08E136	Fixed
;		Fixed
;		Design.cpp: "Fixed",	// RD_FIXED,

5CBEB154	Any
;		Any
;		Design.cpp: "Any", // RD_ANY,

A7CB1182	Eight
;		Eight
;		Design.cpp: "Eight", // RD_EIGHT,

A0118070	Wheel
;		Wheel
;		Design.cpp: "Wheel", // SUnitDef::WHEEL

6BC7C553	Fly
;		Fly
;		Design.cpp: "Fly", // SUnitDef::FLY

69BD96AD	Foot
;		Foot
;		Design.cpp: "Foot", // SUnitDef::FOOT

21F1F4DB	Teleport
;		Teleport
;		Design.cpp: "Teleport", // SUnitDef::TELEPORT

02F696C1	PipeTorpedo
;		PipeTorpedo
;		Design.cpp: "PipeTorpedo", // SUnitDef::PIPETORPEDO

597CE434	Prop_Total
;		Prop_Total
;		Design.cpp: "Prop_Total", // SUnitDef::PROP_TOTAL

440A1E99	Gas Amount:
;		Gas Amount:
;		Drop.cpp: entry.strText = "Gas Amount:";

445A543E	%0.2f
;		%0.2f
;		Drop.cpp: entry.strValue = CString("%0.2f", m_gas);
;		Drop.cpp: entry.strValue = CString("%0.2f", m_ammo);
;		Drop.cpp: entry.strValue = CString("%0.2f", m_metal);

5C36460F	Shows how much gas is here.
;		Shows how much gas is here.
;		Drop.cpp: entry.strMouseOver = "Shows how much gas is here.";

CB65143D	Ammo Amount:
;		Ammo Amount:
;		Drop.cpp: entry.strText = "Ammo Amount:";

F92F8311	Shows how much ammo is here.
;		Shows how much ammo is here.
;		Drop.cpp: entry.strMouseOver = "Shows how much ammo is here.";

A858A387	Metal Amount:
;		Metal Amount:
;		Drop.cpp: entry.strText = "Metal Amount:";

02ECDF0E	Shows how much metal is here.
;		Shows how much metal is here.
;		Drop.cpp: entry.strMouseOver = "Shows how much metal is here.";

580ECB89	Weapon Type:
;		Weapon Type:
;		Drop.cpp: entry.strText = "Weapon Type:";

E6EA7102	Type of weapon here.
;		Type of weapon here.
;		Drop.cpp: entry.strMouseOver = "Type of weapon here.";

C815A831	Weapon Condition:
;		Weapon Condition:
;		Drop.cpp: entry.strText = "Weapon Condition:";

34BAE24F	The weapons condition.
;		The weapons condition.
;		Drop.cpp: entry.strMouseOver = "The weapons condition.";

97F15F00	Type:
;		Type:
;		Drop.cpp: entry.strText = "Type:";

E75432D5	Weapon Class:
;		Weapon Class:
;		Drop.cpp: entry.strText = "Weapon Class:";

00251812	Class of weapon here.
;		Class of weapon here.
;		Drop.cpp: entry.strMouseOver = "Class of weapon here.";

50CF6583	%2.1f 
;		%2.1f 
;		Drop.cpp: entry.strValue = CString("%2.1f ", hpDamage);

7A239B81	Damage/Sec of weapon here.
;		Damage/Sec of weapon here.
;		Drop.cpp: entry.strMouseOver = "Damage/Sec of weapon here.";

1C314D67	Range:
;		Range:
;		Drop.cpp: entry.strText = "Range:";

C57ECF76	%2.1f
;		%2.1f
;		Drop.cpp: entry.strValue = CString("%2.1f", fDistInTiles);

B4BBBC68	Range of weapon here.
;		Range of weapon here.
;		Drop.cpp: entry.strMouseOver = "Range of weapon here.";

1526B7A1	Unknown Expansion
;		Unknown Expansion
;		Expansion.cpp: "Unknown Expansion",

0B92EE91	Base Expansion
;		Base Expansion
;		Expansion.cpp: "Base Expansion",

84DAEA85	Normal Expansion
;		Normal Expansion
;		Expansion.cpp: "Normal Expansion", // MOVE_TO_ORDER = 0,

5BEBE717	Border Expansion
;		Border Expansion
;		Expansion.cpp: "Border Expansion", //ET_BORDER

B66B72EE	Road Expansion
;		Road Expansion
;		Expansion.cpp: "Road Expansion", //ET_ROAD

6B8DFAFA	Defensive Expansion
;		Defensive Expansion
;		Expansion.cpp: "Defensive Expansion",// ET_DEFENSIVE

D496271B	Foliage Expansion
;		Foliage Expansion
;		Expansion.cpp: "Foliage Expansion", //ET_FOLIAGE

EFB04349	Misc Expansion
;		Misc Expansion
;		Expansion.cpp: "Misc Expansion", //ET_MISC

CAA8608F	Misc Base Expansion
;		Misc Base Expansion
;		Expansion.cpp: "Misc Base Expansion", //ET_MISC_BASE

FAC3F034	Map Specific Expansion 1
;		Map Specific Expansion 1
;		Expansion.cpp: "Map Specific Expansion 1", //ET_MAP_SPECIFIC_1

63CAA18E	Map Specific Expansion 2
;		Map Specific Expansion 2
;		Expansion.cpp: "Map Specific Expansion 2", //ET_MAP_SPECIFIC_2

14CD9118	Map Specific Expansion 3
;		Map Specific Expansion 3
;		Expansion.cpp: "Map Specific Expansion 3", //ET_MAP_SPECIFIC_3

8AA904BB	Map Specific Expansion 4
;		Map Specific Expansion 4
;		Expansion.cpp: "Map Specific Expansion 4", //ET_MAP_SPECIFIC_4

FDAE342D	Map Specific Expansion 5
;		Map Specific Expansion 5
;		Expansion.cpp: "Map Specific Expansion 5", //ET_MAP_SPECIFIC_5

64A76597	Map Specific Expansion 6
;		Map Specific Expansion 6
;		Expansion.cpp: "Map Specific Expansion 6", //ET_MAP_SPECIFIC_6

13A05501	Map Specific Expansion 7
;		Map Specific Expansion 7
;		Expansion.cpp: "Map Specific Expansion 7", //ET_MAP_SPECIFIC_7

831F4890	Map Specific Expansion 8
;		Map Specific Expansion 8
;		Expansion.cpp: "Map Specific Expansion 8", //ET_MAP_SPECIFIC_8

F4187806	Map Specific Expansion 9
;		Map Specific Expansion 9
;		Expansion.cpp: "Map Specific Expansion 9", //ET_MAP_SPECIFIC_9

D595E864	Map Specific Expansion 10
;		Map Specific Expansion 10
;		Expansion.cpp: "Map Specific Expansion 10", //ET_MAP_SPECIFIC_10

383487B2	 -OR- 
;		 -OR- 
;		Game.cpp: strName += " -OR- ";

3C2A1742	CGameObj leak detected - review log.txt to see what was leaked
;		CGameObj leak detected - review log.txt to see what was leaked
;		Game.cpp: assert_debug(!"CGameObj leak detected - review log.txt to see what was leaked");

2D41CA56	This EXE version=%s  file's version=%s
;		This EXE version=%s  file's version=%s
;		Game.cpp: CString strMessage("This EXE version=%s  file's version=%s", CString(g_pApp->GetVersion()).Data(), strVersion.Data());

32D70693	\n
;		\n
;		Game.cpp: Warning(CString(strMessage) + "\n");
;		ResourceFactory.cpp: strDescription.Append("\n");
;		ResourceFactory.cpp: strVerbose.Append("\n");

26277045	Warning: Loading game save for different EXE version
;		Warning: Loading game save for different EXE version
;		Game.cpp: g_pApp->MessageBox(strMessage, "Warning: Loading game save for different EXE version");

66166CA8	Automatic map reveal is invoked because %s is dominating.
;		Automatic map reveal is invoked because %s is dominating.
;		Game.cpp: g_psinkMain->OnMessage(CString("Automatic map reveal is invoked because %s is dominating.", pTeamWinner->GetName(true).Data()));

C88A33F0	unknown resource
;		unknown resource
;		Game.cpp: const char * szName = "unknown resource";

AD26A7C7	unknown
;		unknown
;		Game.cpp: const char * szDescription = "unknown";
;		Peon.cpp: return "unknown";
;		TechUserComponent.cpp: const char * szDescription = "unknown";

C2675221	Allows to construct Structures
;		Allows to construct Structures
;		Game.cpp: szDescription = "Allows to construct Structures";

333CC195	Allows you to make super weapons
;		Allows you to make super weapons
;		Game.cpp: szDescription = "Allows you to make super weapons";

7C6103EB	Allows you to train soldiers
;		Allows you to train soldiers
;		Game.cpp: szDescription = "Allows you to train soldiers";

E6CA9FDF	Ammo is required for weapons and grenades
;		Ammo is required for weapons and grenades
;		Game.cpp: szDescription = "Ammo is required for weapons and grenades";

4F83905B	Gas is required for vehicles and flame weapons.
;		Gas is required for vehicles and flame weapons.
;		Game.cpp: szDescription = "Gas is required for vehicles and flame weapons.";

8483DF7D	Design File or Map Error
;		Design File or Map Error
;		GameMapGen.cpp: g_pApp->MessageBoxOK(CString(400, L"Failed to place %s; reason = %s\r\n\r\nThe reason applies to the preferred location.  Locations near the preferred location also failed (possibily for other reasons).", CMapObj::GetMapObjName(pDef->pMapObjDef->moType, true).Data(), strWhyNot.Data()

04911798	Design File error
;		Design File error
;		GameMapGen.cpp: g_pApp->MessageBoxOK(CString(400, L"Error found in \"InitialBuildings\" statements. Requirements are not fulfilled for %s", CMapObj::GetMapObjName(def.pMapObjDef->moType, true).Data()), "Design File error");

B451E39D	Dead Tree
;		Dead Tree
;		GFXObject.cpp: return CString::MakeFromAnsi("Dead Tree", bTranslate);
;		GFXObject.cpp: CString strDeadTree = "Dead Tree";

749DB155	Billboard
;		Billboard
;		GFXObject.cpp: return CString::MakeFromAnsi("Billboard", bTranslate);

0FABCB4A	Salvage Ruin
;		Salvage Ruin
;		GFXObject.cpp: return CString::MakeFromAnsi("Salvage Ruin", bTranslate);

977B149C	Rock
;		Rock
;		GFXObject.cpp: return CString::MakeFromAnsi("Rock", bTranslate);

36832B12	Scrub
;		Scrub
;		GFXObject.cpp: return CString::MakeFromAnsi("Scrub", bTranslate);

69CCB0F7	Grass
;		Grass
;		GFXObject.cpp: return CString::MakeFromAnsi("Grass", bTranslate);

8B8F9BBD	Billboard Big 
;		Billboard Big 
;		GFXObject.cpp: CString strBillboard = CString::MakeFromAnsi("Billboard Big ", true);

E3F56759	%d
;		%d
;		GFXObject.cpp: strBillboard.Append(CString("%d", nCurrentVariation));
;		TechDrop.cpp: entry.strValue = CString("%d", m_aEntries.Count());
;		Unit.cpp: entry.strValue = CString("%d", m_nVeterancyLvl);

FE289338	This mechanic cannot use this technology, but it can give the research to units that can use it.
;		This mechanic cannot use this technology, but it can give the research to units that can use it.
;		Healer.cpp: info.paStrsOut->Add("This mechanic cannot use this technology, but it can give the research to units that can use it.");
;		Upgrader.cpp: info.paStrsOut->Add("This mechanic cannot use this technology, but it can give the research to units that can use it.");

59E68B24	Not in range.
;		Not in range.
;		Healer.cpp: g_psinkMain->OnMessage("Not in range.", pAttackee);

D8EA15A0	I can't help organic units.
;		I can't help organic units.
;		Healer.cpp: g_psinkMain->OnMessage("I can't help organic units.", GetParent());

DF65F3E0	Repairing Unit
;		Repairing Unit
;		Healer.cpp: return "Repairing Unit";

C517434A	Survivors:
;		Survivors:
;		Hut.cpp: entry.strText = "Survivors:";

9D6A8DA0	Shows how many people are in this hut.
;		Shows how many people are in this hut.
;		Hut.cpp: entry.strMouseOver = "Shows how many people are in this hut.";

BA08F930	Being Converted
;		Being Converted
;		Hut.cpp: params.strText = "Being Converted";

18D6EE3B	Partially Converted
;		Partially Converted
;		Hut.cpp: params.strText = "Partially Converted";

5F1EEC4E	: 
;		: 
;		ManaUser.cpp: entry.strText = m_pDef->strManaTypeName + ": ";

D0235F3A	Researches %s.
;		Researches %s.
;		MapObj.cpp: aDescription.Add(CString("Researches %s.", strList.Data()));

FA05BAF5	%s Age in %01d:%02d
;		%s Age in %01d:%02d
;		Notes:  %s is a number written in ordinal form like "Second" or "Third"
;		MapObj.cpp: aRequires.Add(CString("%s Age in %01d:%02d", CString::IntToStr_OrdinalWordForm(nGameAge+1, true).Data(), (cSecs / 60), cSecs % 60));
;		Researcher.cpp: params.strError += CString("%s Age in %01d:%02d", CString::IntToStr_OrdinalWordForm(nGameAge+1, true).Data(), (cSecs / 60), cSecs % 60);

659BAD25	Mutant Teammate
;		Mutant Teammate
;		Notes:  This will be prefixed with "Requires".
;		MapObj.cpp: aRequires.Add("Mutant Teammate");

32C29B78	Human Teammate
;		Human Teammate
;		Notes:  This will be prefixed with "Requires".
;		MapObj.cpp: aRequires.Add("Human Teammate");

972A8333	More Power
;		More Power
;		Notes:  This will be prefixed with "Requires".
;		MapObj.cpp: aRequires.Add("More Power");

702A402B	with %s
;		with %s
;		MapObj.cpp: aDescription.Add(CString("with %s", weaponDef.m_strName.Data()));

D1413AE4	%s Weapon Class
;		%s Weapon Class
;		MapObj.cpp: aDescription.Add(CString("%s Weapon Class", GetWeaponClassName(wc, true).Data()));

DCC025EB	%2.1f Damage/Sec
;		%2.1f Damage/Sec
;		MapObj.cpp: aDescription.Add(CString("%2.1f Damage/Sec", hpDamage));

298F127B	Melee Range
;		Melee Range
;		MapObj.cpp: aDescription.Add("Melee Range");

88B03417	%2.1f Range
;		%2.1f Range
;		MapObj.cpp: aDescription.Add(CString("%2.1f Range", fDistInTiles));

E433ABCF	x=%d y=%d
;		x=%d y=%d
;		MapObj.cpp: sprintf_s(szBuffer, 255, "x=%d y=%d", 1, 3);

590BC2A2	Check_IsOutOfGas() was false, but we still didn't have enough gas
;		Check_IsOutOfGas() was false, but we still didn't have enough gas
;		Mover.cpp: assert_warning(!"Check_IsOutOfGas() was false, but we still didn't have enough gas");

2B7A75F3	Unit is encumbered.
;		Unit is encumbered.
;		Mover.cpp: params.strMouseOver = "Unit is encumbered.";

B1CC1F75	Encumbered
;		Encumbered
;		Mover.cpp: params.strText = "Encumbered";

C537C1EC	beginning RequestResourceOrder
;		beginning RequestResourceOrder
;		Orders.cpp: str = CString("beginning RequestResourceOrder");

229041F3	beginning HarvestResourceOrder
;		beginning HarvestResourceOrder
;		Orders.cpp: str = CString("beginning HarvestResourceOrder");

2A9713E3	Picking up salvage
;		Picking up salvage
;		Peon.cpp: params.strText = "Picking up salvage";

2B5172F3	Dropping off %s
;		Dropping off %s
;		Peon.cpp: params.strText = CString("Dropping off %s", GetResourceName(restype, false).Data());

A1479702	Disassembling %s
;		Disassembling %s
;		Peon.cpp: params.strText = CString("Disassembling %s", CMapObj::GetMapObjName(pAttackee->GetGameType(), true).Data());

35AEBCEE	Repairing %s
;		Repairing %s
;		Peon.cpp: params.strText = CString("Repairing %s", CMapObj::GetMapObjName(pStructure->GetGameType(), true).Data());

8757E37D	Constructing %s
;		Constructing %s
;		Peon.cpp: params.strText = CString("Constructing %s", CMapObj::GetMapObjName(typeToBe, true).Data());

4348C6EB	Converting to %s
;		Converting to %s
;		Peon.cpp: params.strText = CString("Converting to %s", CMapObj::GetMapObjName(type, true).Data());

0FCCBFBC	Converting Hut
;		Converting Hut
;		Peon.cpp: params.strText = "Converting Hut";

D180A575	Fortifying Armed Hut
;		Fortifying Armed Hut
;		Peon.cpp: params.strText = "Fortifying Armed Hut";

2B5F555D	Shows how much preparation of worker is done.
;		Shows how much preparation of worker is done.
;		Peon.cpp: entry.strMouseOver = "Shows how much preparation of worker is done.";
;		UnitStation.cpp: entry.strMouseOver = "Shows how much preparation of worker is done.";

E3F8B40F	Being prepared:
;		Being prepared:
;		Peon.cpp: entry.strText = "Being prepared:";

F3A58F3A	Waiting for dock
;		Waiting for dock
;		Peon.cpp: params.strText = "Waiting for dock";

0A935B56	Waiting for %s
;		Waiting for %s
;		Peon.cpp: params.strText = CString("Waiting for %s", pDock->GetParent()->GetDescription().Data());

4531DD1A	Waiting in line
;		Waiting in line
;		Peon.cpp: params.strText = "Waiting in line";

66FA0334	You can build another %s to reduce waiting lines.
;		You can build another %s to reduce waiting lines.
;		Peon.cpp: params.strMouseOver = CString("You can build another %s to reduce waiting lines.", pBuilding->GetName(true).Data());

DD53FEE6	%s needs power to operate.
;		%s needs power to operate.
;		Peon.cpp: params.strMouseOver = CString("%s needs power to operate.", pBuilding->GetName(true).Data());

CC0A7C74	I can't find resource to harvest around there.
;		I can't find resource to harvest around there.
;		Peon.cpp: g_psinkMain->OnMessage("I can't find resource to harvest around there.", m_pUnit);

EA03F8A5	I can't find any huts with people around there.
;		I can't find any huts with people around there.
;		Peon.cpp: g_psinkMain->OnMessage("I can't find any huts with people around there.", m_pUnit);

E00354A6	I can't find anymore people to recruit around here.
;		I can't find anymore people to recruit around here.
;		Peon.cpp: g_psinkMain->OnMessage("I can't find anymore people to recruit around here.", m_pUnit);

2FB137AF	I'm idle.
;		I'm idle.
;		Peon.cpp: g_psinkMain->OnMessage("I'm idle.", m_pUnit);

ED2847CF	I'm going to find work.
;		I'm going to find work.
;		Peon.cpp: g_psinkMain->OnMessage("I'm going to find work.", m_pUnit);

0E24DA9C	Too dangerous here
;		Too dangerous here
;		Peon.cpp: g_psinkMain->OnMessage("Too dangerous here", m_pUnit);

3366A37E	I can't reach %s.
;		I can't reach %s.
;		Peon.cpp: g_psinkMain->OnMessage(CString("I can't reach %s.", pDock->GetParent()->GetDescription().Data()), pUnit);

72D826C4	I can't find any good %s.
;		I can't find any good %s.
;		Peon.cpp: g_psinkMain->OnMessage(CString("I can't find any good %s.", GetDockTypeName().Data()), m_pPeon->m_pUnit);

593ECDAB	There's not enough warehouse space to unload my %s.
;		There's not enough warehouse space to unload my %s.
;		Peon.cpp: g_psinkMain->OnMessage(CString("There's not enough warehouse space to unload my %s.", GetResourceName(m_restype, true).Data()), m_pPeon->m_pUnit);

6FBC5809	place to unload salvage
;		place to unload salvage
;		Notes:  GetDockTypeName()
;		Peon.cpp: return "place to unload salvage";

C5A55D94	place to unload metal
;		place to unload metal
;		Notes:  GetDockTypeName()
;		Peon.cpp: return "place to unload metal";

94BC8DC7	I don't have cargo space available to harvest.
;		I don't have cargo space available to harvest.
;		Peon.cpp: g_psinkMain->OnMessage("I don't have cargo space available to harvest.", pUnit);

CFA3659B	salvage
;		salvage
;		Peon.cpp: return "salvage";

C062F4C9	metal
;		metal
;		Peon.cpp: return "metal";

3625CD24	waiting for resources
;		waiting for resources
;		Peon.cpp: g_psinkMain->OnMessage("waiting for resources", m_pPeon->CastToUnit());

DCADB114	I cannot make steep roads
;		I cannot make steep roads
;		Peon.cpp: g_psinkMain->OnMessage("I cannot make steep roads", pUnit);

6AD4EB65	I can't reach %s
;		I can't reach %s
;		Peon.cpp: g_psinkMain->OnMessage(CString("I can't reach %s", pSitePlan->GetDescription().Data()), pUnit);

602EEE71	%s ruin is in cooldown
;		%s ruin is in cooldown
;		Peon.cpp: g_psinkMain->OnMessage(CString("%s ruin is in cooldown", GameDesign().GetAttackeeDef( pSitePlan->GetTypeToBe())->strDisplayNameTranslated.Data()), pUnit);

712847BB	I don't have cargo space available to harvest salvage.
;		I don't have cargo space available to harvest salvage.
;		Peon.cpp: g_psinkMain->OnMessage("I don't have cargo space available to harvest salvage.", pUnit);

19695D2B	I can't find resource to make siteplan
;		I can't find resource to make siteplan
;		Peon.cpp: g_psinkMain->OnMessage("I can't find resource to make siteplan", pUnit);

A1EDE8FC	Waiting for resources
;		Waiting for resources
;		Peon.cpp: g_psinkMain->OnMessage("Waiting for resources", pUnit);

6FABF5C7	Need %s for %s
;		Need %s for %s
;		Peon.cpp: g_psinkMain->OnMessage(CString("Need %s for %s", GetResourceName(restypeNeeded, true).Data(), pYard->GetAttackeeToBe()->strNameTranslated.Data()), pUnit);

7C943081	Someone is already converting that %s
;		Someone is already converting that %s
;		Peon.cpp: g_psinkMain->OnMessage(CString("Someone is already converting that %s", CMapObj::GetMapObjName(pSite->GetType(), true).Data()), pUnit);

84158478	Not enough salvage.
;		Not enough salvage.
;		Notes:  said if worker does not have enough resources to repair a structure
;		Peon.cpp: g_psinkMain->OnMessage("Not enough salvage.", pUnit);

031FE6B2	What should I build here?
;		What should I build here?
;		Peon.cpp: g_psinkMain->OnMessage("What should I build here?", pUnit);

5461FAA6	Corrupt Save File; %s (%d, %d)
;		Corrupt Save File; %s (%d, %d)
;		Player.cpp: THROW(CString("Corrupt Save File; %s (%d, %d)", L"RTUS2", m_pTeam->GetTeamID(), idTeam));

27BC284E	 (CPU)
;		 (CPU)
;		Player.cpp: m_strName += " (CPU)";

7293D6A9	%s will replace %s
;		%s will replace %s
;		Player.cpp: g_psinkMain->OnMessage(CString("%s will replace %s", strNameNew.Data(), CGame::GameSettings()->aPlayers[iPlayer].strName.Data()));

FC392E35	player_name
;		player_name
;		Player.cpp: CString strName = "player_name";

8EA17042	amount
;		amount
;		Player.cpp: CString strAmount = "amount";

F7E6C21A	using the command /%s %s %s
;		using the command /%s %s %s
;		Player.cpp: CString strCommandFormat("using the command /%s %s %s", Game::GetResourceName(type, false).ToLower().Data(), strName.Data(), strAmount.Data());

6B1620FC	%s donated %.1f %s to %s %s.
;		%s donated %.1f %s to %s %s.
;		Player.cpp: g_psinkMain->OnDonation(CString("%s donated %.1f %s to %s %s.", GetName().Data(), fAmount, GetResourceName(type, true).Data(), pPlayerRecipient->GetName().Data(), strCommandFormat.Data()));

0EA13521	%s is unable to give %s to %s.
;		%s is unable to give %s to %s.
;		Player.cpp: g_psinkMain->OnMessage(CString("%s is unable to give %s to %s.", GetName().Data(), GetResourceName(type, true).Data(), pPlayerRecipient->GetName().Data()));

9FB57F53	Player
;		Player
;		Player.cpp: CString str = CString::MakeFromAnsi("Player", bTranslate);

71106707	shelter
;		shelter
;		Player.cpp: static MO_TYPE shelter = GameDesign().GetMapObjDef_AllowNull("shelter")->moType;

B3656280	Not available until %s age
;		Not available until %s age
;		Player.cpp: *params.pstrReason = CString("Not available until %s age", CString::IntToStr_OrdinalWordForm(params.requirements.age+1, false).Data());

A698B10C	%s is not in the build menu
;		%s is not in the build menu
;		Player.cpp: *params.pstrReason = CString(500, CString::MakeFromAnsi("%s is not in the build menu", bASync), CMapObj::GetMapObjName(params.type, bASync).Data());

58C04739	Cannot build %s without %s
;		Cannot build %s without %s
;		Player.cpp: *params.pstrReason = CString(500, CString::MakeFromAnsi("Cannot build %s without %s", true), CMapObj::GetMapObjName(params.type, bASync).Data(), strRequirement.Data());

11933616	doesn't have required %s
;		doesn't have required %s
;		Player.cpp: *params.pstrReason = CString("doesn't have required %s", CGameTechDesign::GetGameTechName(GT_LAND_MINE, true));

B6EC7306	Load:
;		Load:
;		Notes:  How much load the powerplant is under.  It might say something like "Load: 89%"
;		PowerPlant.cpp: entry.strText = "Load:";

9072F955	  %2.1f%%
;		  %2.1f%%
;		PowerPlant.cpp: entry.strValue = CString("  %2.1f%%", min(1.0f, f) * 100.0f);

EA6B973A	This %s is at max load.
;		This %s is at max load.
;		PowerPlant.cpp: entry.strMouseOver = CString("This %s is at max load.", GetSelectedName().Data());

F5C54323	  Some buildings on the network may not be powered.
;		  Some buildings on the network may not be powered.
;		Notes:  this message follows another message, and that's why there are some spaces in front of it.
;		PowerPlant.cpp: entry.strMouseOver += CString("  Some buildings on the network may not be powered.");

9D4BA768	This %s is providing %2.1f%% of its capacity.
;		This %s is providing %2.1f%% of its capacity.
;		PowerPlant.cpp: entry.strMouseOver = CString("This %s is providing %2.1f%% of its capacity.", GetSelectedName().Data(), min(1.0f, f) * 100.0f);

33072AE0	  You are low on available power.
;		  You are low on available power.
;		Notes:  this message follows another message, and that's why there are some spaces in front of it.
;		PowerPlant.cpp: entry.strMouseOver += "  You are low on available power.";

147C9DA1	Leech
;		Leech
;		PowerPlant.cpp: entry.strText = "Leech";

9090D270	%2.1f%%
;		%2.1f%%
;		PowerPlant.cpp: entry.strValue = CString("%2.1f%%", f * 100.0f);

4F4FA4F6	You are receiving %s of your power supply from teammates with a surplus.
;		You are receiving %s of your power supply from teammates with a surplus.
;		PowerPlant.cpp: entry.strMouseOver = CString("You are receiving %s of your power supply from teammates with a surplus.", entry.strValue.Data());

2EC7B25E	Share
;		Share
;		PowerPlant.cpp: entry.strText = "Share";

BDB70B2A	You are sharing %s of your power supply to teammates.  Only surplus power is shared.
;		You are sharing %s of your power supply to teammates.  Only surplus power is shared.
;		PowerPlant.cpp: entry.strMouseOver = CString("You are sharing %s of your power supply to teammates.  Only surplus power is shared.", entry.strValue.Data());

0B49C0FA	Prisoner(s) to be in the building.
;		Prisoner(s) to be in the building.
;		RemoteViewer.cpp: params.strError = "Prisoner(s) to be in the building.";

E65FD228	Points: %d
;		Points: %d
;		RemoteViewer.cpp: params.strError = CString("Points: %d", m_pDef->nManaCost);

97B88C43	Reveal Points:
;		Reveal Points:
;		Notes:  when enough reveal points are earning you can reveal a part of the map visually (by interrogating a prisoner).
;		RemoteViewer.cpp: entry.strText = "Reveal Points:";

925ADB2A	This shows how much intelligence you have collected from prisoners.  Points are collected from prisoners that are placed inside the Shelter.  When you have enough points, select the interrogate prisoner button, and left click on the area of the world you want to reveal.
;		This shows how much intelligence you have collected from prisoners.  Points are collected from prisoners that are placed inside the Shelter.  When you have enough points, select the interrogate prisoner button, and left click on the area of the world you want to reveal.
;		RemoteViewer.cpp: entry.strMouseOver = "This shows how much intelligence you have collected from prisoners.  Points are collected from prisoners that are placed inside the Shelter.  When you have enough points, select the interrogate prisoner button, and left click on the area of the world you want 

68519F2D	Interrogating...
;		Interrogating...
;		RemoteViewer.cpp: return "Interrogating...";

88B64587	Ready to Reveal
;		Ready to Reveal
;		RemoteViewer.cpp: return "Ready to Reveal";

3C4A2FC9	More resources are required to research %s.
;		More resources are required to research %s.
;		Researcher.cpp: params.strMouseOver = CString("More resources are required to research %s.", CGameTechDesign::GetGameTechName(flag, true).Data());

C6A2B986	Researching %s
;		Researching %s
;		Researcher.cpp: params.strText = CString("Researching %s", CGameTechDesign::GetGameTechName(params.techType, true).Data());
;		Researcher.cpp: return CString("Researching %s", CGameTechDesign::GetGameTechName(flag, true).Data());

3371174E	%s was researched at this %s.
;		%s was researched at this %s.
;		Notes:  note that the final %s refers to a building name and is always plural in the English version.
;		Researcher.cpp: info.paCurrentLevelOut->Add(CString("%s was researched at this %s.", CGameTechDesign::GetGameTechName(info.flag, true).Data(), m_pParent->GetName(true).Data()));

798ED143	%s has researched %s.
;		%s has researched %s.
;		Researcher.cpp: g_psinkMain->OnMessage(CString("%s has researched %s.", m_pParent->GetPlayer()->GetName().Data(), CGameTechDesign::GetGameTechName(flag, true).Data()), m_pParent->GetTileIndex());

E03C0297	Upgrade to
;		Upgrade to
;		Researcher.cpp: *pstrReason = "Upgrade to";

E6F36F93	 %s
;		 %s
;		Researcher.cpp: *pstrReason += CString(" %s", GameDesign().GetEntityDef(type)->strName.Data());

D212791B	, %s
;		, %s
;		Researcher.cpp: *pstrReason += CString(", %s", GameDesign().GetEntityDef(type)->strName.Data());
;		ResourceFactory.cpp: str += CString(", %s", GetResourceName(restype, false).Data());
;		ResourceFactory.cpp: str += CString(", %s", GetResourceName(aTypes[i], false).Data());
;		Tile.cpp: str += CString(", %s", entry.GetTypesDisplayNamesForUi_ASYNC().Data());

169406A1	Purchasing %0.0f %s
;		Purchasing %0.0f %s
;		ResearchPurchaser.cpp: return CString("Purchasing %0.0f %s", pEntry->fTechAmount, CGameTechDesign::GetGameTechName(pEntry->gtType, false).Data());
;		ResourcePurchaser.cpp: return CString("Purchasing %0.0f %s", pEntry->fResourceAmount, GetResourceName(pEntry->resType, false).Data());

CFD4F93B	Purchase %0.0f %s
;		Purchase %0.0f %s
;		ResearchPurchaser.cpp: return CString("Purchase %0.0f %s" , fAmount, CGameTechDesign::GetGameTechName(tech, false).Data());
;		ResourcePurchaser.cpp: return CString("Purchase %0.0f %s" , fAmount, GetResourceName(resType, false).Data());

06FCE910	%s is being converted.
;		%s is being converted.
;		ResearchSite.cpp: params.strText = CString("%s is being converted.", IGameMapObj::GetMapObjName(type, true).Data());

B1F6E586	 m_fProductionTime = %f
;		 m_fProductionTime = %f
;		ResourceFactory.cpp: strDescription.Append(CString(" m_fProductionTime = %f", m_fProductionRateRatio));

AF3BEE9A	%s %s
;		%s %s
;		ResourceFactory.cpp: strEntry = CString("%s %s", GetPlayer()->GetName_ObscureAsNeeded_ASYNC().Data(), strResource.Data());
;		ResourceFactory.cpp: strEntry = CString("%s %s", pPlayerItr->GetName_ObscureAsNeeded_ASYNC().Data(), strResource.Data());
;		ResourceFactory.cpp: strEntry = CString("%s %s", g_pInteractivePlayer->GetName_ObscureAsNeeded_ASYNC().Data(), strResource.Data());

140E363F	:
;		:
;		ResourceFactory.cpp: entry.strText = strEntry + ":";
;		ResShareSender.cpp: entry.strText = strResName + ":";
;		TechDrop.cpp: entry.strText += ":";

81CC6FEE	Recovery Bonus:
;		Recovery Bonus:
;		ResourceFactory.cpp: bonusentry.strText = "Recovery Bonus:";

84C7FF1B	Total Population : %i\n
;		Total Population : %i\n
;		ResourceFactory.cpp: CString t1 = CString("Total Population : %i\n", (int)f);

0272AF34	Recovery Threshold : %i\n
;		Recovery Threshold : %i\n
;		ResourceFactory.cpp: CString t2 = CString("Recovery Threshold : %i\n", n);

FBCEC318	%i survivors are available to use\n
;		%i survivors are available to use\n
;		ResourceFactory.cpp: CString t3 = CString("%i survivors are available to use\n", count);

81EB1CC8	Survivor production bonus is not in effect.\n
;		Survivor production bonus is not in effect.\n
;		ResourceFactory.cpp: CString t4 = CString("Survivor production bonus is not in effect.\n");

6B8FCF23	Survivor production bonus is in effect because you have less than %s total people.\n
;		Survivor production bonus is in effect because you have less than %s total people.\n
;		ResourceFactory.cpp: CString t5 = CString("Survivor production bonus is in effect because you have less than %s total people.\n", CString::IntToStr_WordForm(n, false).Data());

77885C7C	If population is below the Recovery Threshold, you get a survivor production bonus.
;		If population is below the Recovery Threshold, you get a survivor production bonus.
;		ResourceFactory.cpp: CString t6 = CString("If population is below the Recovery Threshold, you get a survivor production bonus.");

66A1E726	%i/%i
;		%i/%i
;		ResourceFactory.cpp: bonusentry.strValue = CString("%i/%i", (int)f, n);

038E117E	Shows how many 
;		Shows how many 
;		ResourceFactory.cpp: entry.strMouseOver = "Shows how many " + strResource + " are available to use.";

95E2BE05	 are available to use.
;		 are available to use.
;		ResourceFactory.cpp: entry.strMouseOver = "Shows how many " + strResource + " are available to use.";

87F461F5	Shows how much 
;		Shows how much 
;		ResourceFactory.cpp: entry.strMouseOver = "Shows how much " + strResource + " is available to use.";
;		ResShareSender.cpp: entry.strMouseOver = "Shows how much " + strResName + " is stored in your base.";

C3419686	 is available to use.
;		 is available to use.
;		ResourceFactory.cpp: entry.strMouseOver = "Shows how much " + strResource + " is available to use.";

6EE06649	Teammate is also producing resource.
;		Teammate is also producing resource.
;		ResourceFactory.cpp: entry.strMouseOver = "Teammate is also producing resource.";

AAF4CDF0	 production depleted
;		 production depleted
;		ResourceFactory.cpp: params.strText = strDepletion + " production depleted";

8A29D2ED	Gathering 
;		Gathering 
;		ResourceFactory.cpp: CString str = "Gathering ";

9EC2AEC7	%0.0f%% production bonus
;		%0.0f%% production bonus
;		ResourceFactory.cpp: params.strText = CString("%0.0f%% production bonus", fCurrentProductionBonus);

957DF9DF	Add another worker for %0.0f%% production bonus
;		Add another worker for %0.0f%% production bonus
;		ResourceFactory.cpp: params.strMouseOver = CString("Add another worker for %0.0f%% production bonus", (afProductionRatio[nUnits + 1]  / fMinRatio * 100) - 100);

C6858A90	Production bonus is at max
;		Production bonus is at max
;		ResourceFactory.cpp: params.strMouseOver = CString("Production bonus is at max");

49C7FC2A	 | Info: SEntry 
;		 | Info: SEntry 
;		ResourceFactory.cpp: strVerbose.Append(" | Info: SEntry ");

1D10B479	 | fRatioProgressBanked %f
;		 | fRatioProgressBanked %f
;		ResourceFactory.cpp: strVerbose.Append(CString(" | fRatioProgressBanked %f", entry.fRatioProgressBanked));

F30FF651	 | fResAlreadyProduced %f
;		 | fResAlreadyProduced %f
;		ResourceFactory.cpp: strVerbose.Append(CString(" | fResAlreadyProduced %f", entry.fResAlreadyProduced));

8A0DA963	 | fResProductionFactor %f
;		 | fResProductionFactor %f
;		ResourceFactory.cpp: strVerbose.Append(CString(" | fResProductionFactor %f", entry.fResourceProductionFactor));

2B82F465	 | ticksBatchStarted %d
;		 | ticksBatchStarted %d
;		ResourceFactory.cpp: strVerbose.Append(CString(" | ticksBatchStarted %d", entry.ticksBatchStarted));
;		ResourceFactory.cpp: strVerbose.Append(CString(" | ticksBatchStarted %d", entry.ticksResRate));
;		ResourceFactory.cpp: strVerbose.Append(CString(" | ticksBatchStarted %d", defEntry.ticksResRate));

69E85CF8	| Info: SResourceEntry::SEntry 
;		| Info: SResourceEntry::SEntry 
;		ResourceFactory.cpp: strVerbose.Append("| Info: SResourceEntry::SEntry ");

F1D4AB5F	 | fBatchAmount %f
;		 | fBatchAmount %f
;		ResourceFactory.cpp: strVerbose.Append(CString(" | fBatchAmount %f", defEntry.fBatchAmount));

1A041AC8	 | fDepletionAfter %f
;		 | fDepletionAfter %f
;		ResourceFactory.cpp: strVerbose.Append(CString(" | fDepletionAfter %f", defEntry.fDepletionAfter));

37B09D41	SetResourceBeingProducedFirst returned %d TICKS
;		SetResourceBeingProducedFirst returned %d TICKS
;		ResourceFactory.cpp: strVerbose.Append(CString("SetResourceBeingProducedFirst returned %d TICKS", ticksStart));

28698741	%s salvage
;		%s salvage
;		ResourceStore.cpp: strText += CString("%s salvage", CString::FloatToStr_DecimalsIfNeeded(f, 2).Data());

82553818	%s ammo
;		%s ammo
;		ResourceStore.cpp: strText += CString("%s ammo", CString::FloatToStr_DecimalsIfNeeded(f, 2).Data());

0091A7C2	%s gas
;		%s gas
;		ResourceStore.cpp: strText += CString("%s gas", CString::FloatToStr_DecimalsIfNeeded(f, 2).Data());

207AAF99	%d survivor
;		%d survivor
;		ResourceStore.cpp: strText += CString("%d survivor", c);

92FD9E44	%d survivors
;		%d survivors
;		ResourceStore.cpp: strText += CString("%d survivors", c);

08D87F0F	%s metal
;		%s metal
;		ResourceStore.cpp: strText += CString("%s metal", CString::FloatToStr_DecimalsIfNeeded(f, 2).Data());

46714137	 mana
;		 mana
;		ResourceStore.cpp: return pDef->strName + " mana";

60D64632	mana
;		mana
;		ResourceStore.cpp: return "mana";

BFDCD041	 is stored in your base.
;		 is stored in your base.
;		ResShareSender.cpp: entry.strMouseOver = "Shows how much " + strResName + " is stored in your base.";

FCCF203E	 and 
;		 and 
;		ResShareSender.cpp: str += " and ";

2A077DC2	Not Sharing 
;		Not Sharing 
;		ResShareSender.cpp: str += "Not Sharing ";

177D01CD	 with teammates
;		 with teammates
;		ResShareSender.cpp: params.strText = str + " with teammates";

E0C8A8F9	%d salvage
;		%d salvage
;		Salvage.cpp: pstr[4] = CString("%d salvage", RoundUp(m_fResourceOnMap));

D11687E9	Failed to load stage. Stage data is not compatible with current version. Failure detected at step %d (bytes failed=%d, bits failed=%d).\n
;		Failed to load stage. Stage data is not compatible with current version. Failure detected at step %d (bytes failed=%d, bits failed=%d).\n
;		Serializer.cpp: Warning("Failed to load stage. Stage data is not compatible with current version. Failure detected at step %d (bytes failed=%d, bits failed=%d).\n", idCheck, bByteStreamFailed ? 1:0, bBitStreamFailed ? 1:0);

FFCB865E	Select your buildings to move them around.
;		Select your buildings to move them around.
;		SimpleEvents.cpp: g_psinkMain->OnMessage(CString("Select your buildings to move them around."));

4B8E3137	Game has begun.
;		Game has begun.
;		SimpleEvents.cpp: g_psinkMain->OnMessage(CString("Game has begun.", -1, false));

D8FA1520	No resources for grenade
;		No resources for grenade
;		SimpleLauncher.cpp: assert_warning(!"No resources for grenade");

2D45615B	Need %s
;		Need %s
;		SimpleLauncher.cpp: g_psinkMain->OnMessage(CString("Need %s", GetResourceName(m_restypeConsumed, false).Data()), pAttackeeEx);

462C27D9	Unable to construct %s because %s is not on pipe network.
;		Unable to construct %s because %s is not on pipe network.
;		SitePlan.cpp: g_psinkMain->OnMessage(CString("Unable to construct %s because %s is not on pipe network.", CMapObj::GetMapObjName(m_typeToBe, true).Data(), CMapObj::GetMapObjName(m_moTypeRequired, true).Data()));

EBFC67A4	Unable to construct %s. %s
;		Unable to construct %s. %s
;		SitePlan.cpp: g_psinkMain->OnMessage(CString("Unable to construct %s. %s", CMapObj::GetMapObjName(m_typeToBe, true).Data(), strWhy.Data()));
;		SitePlan.cpp: g_psinkMain->OnMessage(CString("Unable to construct %s. %s", CMapObj::GetMapObjName(m_typeToBe, true).Data(), strReason.Data()));

DF8479D4	Unable to construct %s. %s.
;		Unable to construct %s. %s.
;		SitePlan.cpp: CString str = CString("Unable to construct %s. %s.", CMapObj::GetMapObjName(m_typeToBe, true).Data(), strReason.Data());

C222A5E0	Miss
;		Miss
;		StickyBomb.cpp: g_psinkMain->OnMessage("Miss", pTarget);

EBE832CD	This bomb will explode soon.
;		This bomb will explode soon.
;		StickyBomb.cpp: return "This bomb will explode soon.";

6B99DC6C	Neutral
;		Neutral
;		Team.cpp: return CString::MakeFromAnsi("Neutral", bTranslate);

E5B0CE56	Team %d
;		Team %d
;		Team.cpp: return CString("Team %d", m_iName);

43EF8E6F	Amount:
;		Amount:
;		TechDrop.cpp: entry.strText = "Amount:";

AC2CD09D	Shows how much tech is here.  Different units use different amounts of tech.
;		Shows how much tech is here.  Different units use different amounts of tech.
;		TechDrop.cpp: entry.strMouseOver = "Shows how much tech is here.  Different units use different amounts of tech.";

9786981B	Level:
;		Level:
;		TechDrop.cpp: entry.strText = "Level:";

46611466	Level refers to how advanced the tech is.
;		Level refers to how advanced the tech is.
;		TechDrop.cpp: entry.strMouseOver = "Level refers to how advanced the tech is.";

C56AF746	Techs Here:
;		Techs Here:
;		Notes:  How much load the powerplant is under.  It might say something like "Load: 89%"
;		TechDrop.cpp: entry.strText = "Techs Here:";

A467A9A7	%s/%s
;		%s/%s
;		TechDrop.cpp: entry.strValue = CString("%s/%s", ShowTechLevel(pEntry->units).Data(), strLevel.Data());

95DA6D42	%s - %s tech units at level %s
;		%s - %s tech units at level %s
;		TechDrop.cpp: entry.strMouseOver = CString("%s - %s tech units at level %s", pDesign->Name(true).Data(), ShowTechLevel(pEntry->units).Data(), strLevel.Data());

5338A006	%s tech units
;		%s tech units
;		TechDrop.cpp: entry.strMouseOver = CString("%s tech units", pDesign->Name(true).Data(), ShowTechLevel(pEntry->units).Data());

03D9AE9E	%s:
;		%s:
;		TechFactory.cpp: entry.strText = CString("%s:", strName.Data());

0ED654B1	This %s is producing %s techs.
;		This %s is producing %s techs.
;		TechFactory.cpp: entry.strMouseOver = CString("This %s is producing %s techs.", m_pParent->GetName(true).Data(), pTechEntry->pTechDesign->Name(true).Data());

300F4FC3	Production is stopped. \nPut a worker carrying %s into %s to produce %s
;		Production is stopped. \nPut a worker carrying %s into %s to produce %s
;		TechFactory.cpp: entry.strMouseOver = CString("Production is stopped. \nPut a worker carrying %s into %s to produce %s", GetResourceName(s_resRequired, true).Data(), m_pParent->GetName(true).Data(), CGameTechDesign::GetGameTechName(m_rfSpecialty, true).Data());

23F09724	unknown research
;		unknown research
;		TechUserComponent.cpp: const char * szName = "unknown research";

4B83DF6C	Hindsight
;		Hindsight
;		Notes:  this research tech isn't currently being used
;		TechUserComponent.cpp: szName = "Hindsight";

46FC960F	Teleportation
;		Teleportation
;		Notes:  this research tech allows units to teleport
;		TechUserComponent.cpp: szName = "Teleportation";

1BF34738	Allows your units to teleport anywhere on the map.
;		Allows your units to teleport anywhere on the map.
;		TechUserComponent.cpp: szDescription = "Allows your units to teleport anywhere on the map.";

8341D51B	Roach Shell
;		Roach Shell
;		Notes:  this research tech causes roach to receive less damage from certain weapon types
;		TechUserComponent.cpp: szName = "Roach Shell";

E741FAE5	%s weapons (Bullet/Roach Bite) do only %0.0f%% damage against Roach Shell.
;		%s weapons (Bullet/Roach Bite) do only %0.0f%% damage against Roach Shell.
;		TechUserComponent.cpp: GetArmorDescription(tech, "%s weapons (Bullet/Roach Bite) do only %0.0f%% damage against Roach Shell.", aStrs);

FE0598EE	Toxic Bite
;		Toxic Bite
;		Notes:  this research tech isn't currently being used
;		TechUserComponent.cpp: szName = "Toxic Bite";

AC7F9D5E	This tech has been removed from the game
;		This tech has been removed from the game
;		TechUserComponent.cpp: szDescription = "This tech has been removed from the game";

27C47338	Clench
;		Clench
;		Notes:  this research tech allows roaches to immobilize enemy units
;		TechUserComponent.cpp: szName = "Clench";

7622B019	Roach's attack immobilizes its targets.
;		Roach's attack immobilizes its targets.
;		TechUserComponent.cpp: szDescription = "Roach's attack immobilizes its targets.";

681373DA	A grenade that releases hallucinogenic gas, causing temporary insanity.
;		A grenade that releases hallucinogenic gas, causing temporary insanity.
;		TechUserComponent.cpp: szDescription = "A grenade that releases hallucinogenic gas, causing temporary insanity.";

21092FE4	Implosion
;		Implosion
;		Notes:  this research tech allows karkino to reduce the area-of-effect of enemy explosions
;		TechUserComponent.cpp: szName = "Implosion";

F8A13765	Reduces area-of-effect of enemy attacks by %s%%, for attacks near Fire Dome.
;		Reduces area-of-effect of enemy attacks by %s%%, for attacks near Fire Dome.
;		TechUserComponent.cpp: aStrs.Add(CString("Reduces area-of-effect of enemy attacks by %s%%, for attacks near Fire Dome.", CString::FloatToStr_DecimalsIfNeeded(100.0f * (1.0f - GameDesign().Properties().fImplosionFactor), 0).Data()));

763920A3	Anti-Air
;		Anti-Air
;		Notes:  this research gives the Fire Dome a MindBlaster Weapon
;		TechUserComponent.cpp: szName = "Anti-Air";

41C5F49D	Gives Fire Dome ability to attack air targets.
;		Gives Fire Dome ability to attack air targets.
;		TechUserComponent.cpp: szDescription = "Gives Fire Dome ability to attack air targets.";

88C47365	Detection
;		Detection
;		Notes:  this research tech allows certains units to detect hidden things like burried gas sites.
;		TechUserComponent.cpp: szName = "Detection";

482B9812	Allows Dump Trucks to discover precious metal sites.
;		Allows Dump Trucks to discover precious metal sites.
;		TechUserComponent.cpp: aStrs.Add("Allows Dump Trucks to discover precious metal sites.");

7A0CA84E	Allows Thralls to discover precious metal sites.
;		Allows Thralls to discover precious metal sites.
;		TechUserComponent.cpp: aStrs.Add("Allows Thralls to discover precious metal sites.");

9E318A69	Allows brawler to force engagement with enemy forces.
;		Allows brawler to force engagement with enemy forces.
;		TechUserComponent.cpp: szDescription = "Allows brawler to force engagement with enemy forces.";

B05CC4CE	Steep Roads
;		Steep Roads
;		Notes:  this research tech allows dump truck to make roads over steep terrain.
;		TechUserComponent.cpp: szName = "Steep Roads";

A5BC525A	Allows Dump Trucks to make roads on steep areas.
;		Allows Dump Trucks to make roads on steep areas.
;		TechUserComponent.cpp: szDescription = "Allows Dump Trucks to make roads on steep areas.";

2C7EE2B9	Target Tracking
;		Target Tracking
;		Notes:  this research tech allows units to attack moving targets better.
;		TechUserComponent.cpp: szName = "Target Tracking";

1E877351	Improves ability to attack moving units.
;		Improves ability to attack moving units.
;		TechUserComponent.cpp: szDescription = "Improves ability to attack moving units.";

DA3C37EB	Levitation
;		Levitation
;		Notes:  this research tech allows units to levitate
;		TechUserComponent.cpp: szName = "Levitation";

DE75D9A8	Gives units ability to levitate. Allows melee units to attack flying units.
;		Gives units ability to levitate. Allows melee units to attack flying units.
;		TechUserComponent.cpp: szDescription = "Gives units ability to levitate. Allows melee units to attack flying units.";

44439F79	Capture
;		Capture
;		Notes:  this research tech allows firetruck to throw a net to immobilize enemy units
;		TechUserComponent.cpp: szName = "Capture";

24540C98	Gives Fire Truck ability to disable enemies units with a large net.
;		Gives Fire Truck ability to disable enemies units with a large net.
;		TechUserComponent.cpp: szDescription = "Gives Fire Truck ability to disable enemies units with a large net.";

7CC04597	Fountain Heal
;		Fountain Heal
;		TechUserComponent.cpp: szName = "Fountain Heal";

D332F9D8	Allows fountain to heal units.
;		Allows fountain to heal units.
;		TechUserComponent.cpp: szDescription = "Allows fountain to heal units.";

F31EF5F0	Passive Heal
;		Passive Heal
;		TechUserComponent.cpp: szName = "Passive Heal";

4E851E92	Units are passively repaired over time.
;		Units are passively repaired over time.
;		TechUserComponent.cpp: szDescription = "Units are passively repaired over time.";

3722CE18	Flame Wall
;		Flame Wall
;		Notes:  this research tech gives units near fountain a protective wall made of fire
;		TechUserComponent.cpp: szName = "Flame Wall";

121DA134	Fountain with Flame Wall gives anti-melee protection to nearby units.  Enemy units near protected units will burn.
;		Fountain with Flame Wall gives anti-melee protection to nearby units.  Enemy units near protected units will burn.
;		TechUserComponent.cpp: szDescription = "Fountain with Flame Wall gives anti-melee protection to nearby units.  Enemy units near protected units will burn.";

47987F72	Flame Resist
;		Flame Resist
;		Notes:  this research tech isn't currently being used
;		TechUserComponent.cpp: szName = "Flame Resist";

1DEB09E9	Enhanced Speed
;		Enhanced Speed
;		Notes:  this mutant research tech allows units to move faster
;		TechUserComponent.cpp: szName = "Enhanced Speed";

021B6068	Allows units to move faster, especially in short stints.
;		Allows units to move faster, especially in short stints.
;		TechUserComponent.cpp: szDescription = "Allows units to move faster, especially in short stints.";

D5079DE8	Amplification
;		Amplification
;		Notes:  this research tech allows amplicon to increase the damage of nearby friendly attack units
;		TechUserComponent.cpp: szName = "Amplification";

1D46BFD4	Extension
;		Extension
;		Notes:  this research tech allows shaman to increase the attack range of nearby friendly units
;		TechUserComponent.cpp: szName = "Extension";

A48E565D	Extender Flight
;		Extender Flight
;		Notes:  this research tech allows extenders to fly
;		TechUserComponent.cpp: szName = "Extender Flight";

3C77C6F9	Acid Bomb
;		Acid Bomb
;		Notes:  this research tech allows Karkino to drop acid bombs
;		TechUserComponent.cpp: szName = "Acid Bomb";

AFEB7A29	The acid eats holes in armor.
;		The acid eats holes in armor.
;		TechUserComponent.cpp: szDescription = "The acid eats holes in armor.";

A27AB86B	A grenade that temporarily disables the power of nearby structures.
;		A grenade that temporarily disables the power of nearby structures.
;		TechUserComponent.cpp: szDescription = "A grenade that temporarily disables the power of nearby structures.";

30514E4C	Smoke Grenade
;		Smoke Grenade
;		TechUserComponent.cpp: szName = "Smoke Grenade";

F391A018	Smoke grenade is used to provide opportunity for movement over ground covered by fire.
;		Smoke grenade is used to provide opportunity for movement over ground covered by fire.
;		TechUserComponent.cpp: szDescription = "Smoke grenade is used to provide opportunity for movement over ground covered by fire.";

06481C79	A grenade that temporarily flash.
;		A grenade that temporarily flash.
;		TechUserComponent.cpp: szDescription = "A grenade that temporarily flash.";

F8910F9B	HE Grenade is an anti-personnel weapon that explodes a short time after release.
;		HE Grenade is an anti-personnel weapon that explodes a short time after release.
;		TechUserComponent.cpp: szDescription = "HE Grenade is an anti-personnel weapon that explodes a short time after release.";

C1D5FE58	Molotov Cocktail is an incendiary device that consists of a glass bottle, a flammable liquid, and a soaked rag. 
;		Molotov Cocktail is an incendiary device that consists of a glass bottle, a flammable liquid, and a soaked rag. 
;		TechUserComponent.cpp: szDescription = "Molotov Cocktail is an incendiary device that consists of a glass bottle, a flammable liquid, and a soaked rag. ";

5DCD9123	A grenade that sticks to its target and delivers high damage.
;		A grenade that sticks to its target and delivers high damage.
;		TechUserComponent.cpp: aStrs.Add("A grenade that sticks to its target and delivers high damage.");

A263DC19	Land Mine Tech
;		Land Mine Tech
;		TechUserComponent.cpp: szName = "Land Mine Tech";

3B5E209C	Land mines are an anti-personnel weapon that explodes.
;		Land mines are an anti-personnel weapon that explodes.
;		TechUserComponent.cpp: szDescription = "Land mines are an anti-personnel weapon that explodes.";

02055E14	Selective Fire
;		Selective Fire
;		Notes:  this research tech prevents friend-fire damage
;		TechUserComponent.cpp: szName = "Selective Fire";

F34474EB	Prevents friendly-fire from occuring.
;		Prevents friendly-fire from occuring.
;		TechUserComponent.cpp: szDescription = "Prevents friendly-fire from occuring.";

81BAD7F8	A slowness grenade is a special device that slows down enemy units in a particular area.
;		A slowness grenade is a special device that slows down enemy units in a particular area.
;		TechUserComponent.cpp: szDescription = "A slowness grenade is a special device that slows down enemy units in a particular area.";

73D80300	Mechanic Repair
;		Mechanic Repair
;		Notes:  this research tech allows mechanics to repair at a higher rate
;		TechUserComponent.cpp: szName = "Mechanic Repair";

6A1477C8	Mechanic can repair units and structures.
;		Mechanic can repair units and structures.
;		TechUserComponent.cpp: szDescription = "Mechanic can repair units and structures.";

393F0EB1	Nitro Implants
;		Nitro Implants
;		Notes:  this research tech allows organic units to use nitro upgrades
;		TechUserComponent.cpp: szName = "Nitro Implants";

471670C7	Turret Rotation Speed
;		Turret Rotation Speed
;		Notes:  this research tech allows units using turrets to rotate their turrets faster
;		TechUserComponent.cpp: szName = "Turret Rotation Speed";

D91A18E4	Increases speed at which weapons can rotate.
;		Increases speed at which weapons can rotate.
;		TechUserComponent.cpp: szDescription = "Increases speed at which weapons can rotate.";

A01C0B2D	Human Body Armor
;		Human Body Armor
;		Notes:  this research tech gives armor to soldier units
;		TechUserComponent.cpp: szName = "Human Body Armor";

BF578F01	Piercing Resistance
;		Piercing Resistance
;		TechUserComponent.cpp: szName = "Piercing Resistance";

D4DB0575	Stackable Research that gives Piercing Resistance to any unit type.
;		Stackable Research that gives Piercing Resistance to any unit type.
;		TechUserComponent.cpp: szDescription = "Stackable Research that gives Piercing Resistance to any unit type.";

5C2497B8	Flame Resistance
;		Flame Resistance
;		TechUserComponent.cpp: szName = "Flame Resistance";

A7768036	Stackable Research that gives Flame Resistance to any unit type.
;		Stackable Research that gives Flame Resistance to any unit type.
;		TechUserComponent.cpp: szDescription = "Stackable Research that gives Flame Resistance to any unit type.";

B4652E47	Concussive Resistance
;		Concussive Resistance
;		TechUserComponent.cpp: szName = "Concussive Resistance";

C6576F4D	Stackable Research that gives Concussive Resistance to any unit type.
;		Stackable Research that gives Concussive Resistance to any unit type.
;		TechUserComponent.cpp: szDescription = "Stackable Research that gives Concussive Resistance to any unit type.";

51C4D165	Protec Piercing Resistance
;		Protec Piercing Resistance
;		Notes:  this research lets the Protec have the piercing resistance aura
;		TechUserComponent.cpp: szName = "Protec Piercing Resistance";

3CECD4B9	Stackable Research that improves the Protec's Piercing Resistance Aura.
;		Stackable Research that improves the Protec's Piercing Resistance Aura.
;		TechUserComponent.cpp: szDescription = "Stackable Research that improves the Protec's Piercing Resistance Aura.";

DB0A3238	Protec Flame Resistance
;		Protec Flame Resistance
;		Notes:  this research lets the Protec have the flame resistance aura
;		TechUserComponent.cpp: szName = "Protec Flame Resistance";

108853EF	Stackable Research that improves the Protec's Flame Resistance Aura.
;		Stackable Research that improves the Protec's Flame Resistance Aura.
;		TechUserComponent.cpp: szDescription = "Stackable Research that improves the Protec's Flame Resistance Aura.";

39271284	Protec Concussive Resistance
;		Protec Concussive Resistance
;		Notes:  this research lets the Protec have the concussive resistance aura
;		TechUserComponent.cpp: szName = "Protec Concussive Resistance";

094E931A	Stackable Research that improves the Protec's Concussive Resistance Aura.
;		Stackable Research that improves the Protec's Concussive Resistance Aura.
;		TechUserComponent.cpp: szDescription = "Stackable Research that improves the Protec's Concussive Resistance Aura.";

D5A1D389	Run and Gun Research
;		Run and Gun Research
;		Notes:  this research lets unit to fire when moving
;		TechUserComponent.cpp: szName = "Run and Gun Research";

3D8E948A	Stackable Research that improves the run and gun.
;		Stackable Research that improves the run and gun.
;		TechUserComponent.cpp: szDescription = "Stackable Research that improves the run and gun.";

4D74379C	First-Aid Kit
;		First-Aid Kit
;		Notes:  this research lets unit use first aid
;		TechUserComponent.cpp: szName = "First-Aid Kit";

652FFF7D	Allow units to heal.
;		Allow units to heal.
;		TechUserComponent.cpp: szDescription = "Allow units to heal.";

697E95C8	Spare Parts
;		Spare Parts
;		Notes:  this research lets unit to repair vehicle parts
;		TechUserComponent.cpp: szName = "Spare Parts";

881B8CD1	Allow units to repair vehicle parts.
;		Allow units to repair vehicle parts.
;		TechUserComponent.cpp: szDescription = "Allow units to repair vehicle parts.";

7B2BD6E3	Deploy 
;		Deploy 
;		TechUserComponent.cpp: ansiName = "Deploy " + pDef->strNameAnsi;

86B31D93	Too far
;		Too far
;		Teleporter.cpp: params.strError = "Too far";

81C99D04	Current teleport range is %0.0f
;		Current teleport range is %0.0f
;		Notes:  %0.0f means display a float point number as a real number (it's basically like %d).
;		Teleporter.cpp: info.paCurrentLevelOut->Add(CString("Current teleport range is %0.0f", GetTeleportRange(cUpgradesNow)));

01D3D3F8	Having extra upgrades has increased your teleport speed by about %0.0f%%
;		Having extra upgrades has increased your teleport speed by about %0.0f%%
;		Teleporter.cpp: info.paCurrentLevelOut->Add(CString("Having extra upgrades has increased your teleport speed by about %0.0f%%", (fNow - fBase) / fBase * 100.0f));

757847BE	With another upgrade level, this unit will be able to teleport about %0.0f%% faster
;		With another upgrade level, this unit will be able to teleport about %0.0f%% faster
;		Teleporter.cpp: info.paNextLevelOut->Add(CString("With another upgrade level, this unit will be able to teleport about %0.0f%% faster", (fNext - fNow) / fNow * 100.0f));

4E5A0E54	and teleport range would be %0.0f
;		and teleport range would be %0.0f
;		Notes:  %0.0f means display a float point number as a real number (it's basically like %d).
;		Teleporter.cpp: info.paNextLevelOut->Add(CString("and teleport range would be %0.0f", GetTeleportRange(cUpgradesNow+1)));

13632E33	Off Map
;		Off Map
;		Tile.cpp: *params.pstrReason = "Off Map";

4492F31A	%s is not available near here
;		%s is not available near here
;		Tile.cpp: *pstrReason = CString("%s is not available near here", CMapObj::GetMapObjName(pDef->resourceCost.typeSite, true).Data());

6FE852AF	%s can be built near to %s only
;		%s can be built near to %s only
;		Tile.cpp: *pstrReason = CString("%s can be built near to %s only", CMapObj::GetMapObjName(type, true).Data(), CMapObj::GetMapObjName(parentDef.moType, true).Data());

3A4D89A1	No expansion site is exist near here
;		No expansion site is exist near here
;		Tile.cpp: *pstrReason = "No expansion site is exist near here";

5DF97F27	 not found in this network
;		 not found in this network
;		Tile.cpp: *pstrReason = str + CString(" not found in this network");

AB54DA05	Area is not explored
;		Area is not explored
;		Tile.cpp: *pstrReason = "Area is not explored";

7A37DD61	Too close to edge of map
;		Too close to edge of map
;		Tile.cpp: *pstrReason = "Too close to edge of map";

892BF2B6	Area is outside base
;		Area is outside base
;		Tile.cpp: *pstrReason = "Area is outside base";

E6DD58FA	Location is blocked for %s of %s
;		Location is blocked for %s of %s
;		Tile.cpp: *pstrReason = CString("Location is blocked for %s of %s", pStructure->GetName(false).Data(), GameDesign().GetMapObjDef(typeObstructed)->strName.Data());

C1A70BCB	Location is blocked for %s
;		Location is blocked for %s
;		Tile.cpp: *pstrReason = CString("Location is blocked for %s", pStructure->GetName(false).Data());

8E82C8FA	Terrain is too steep there
;		Terrain is too steep there
;		Tile.cpp: *pstrReason = "Terrain is too steep there";

807DEE35	The nearby %s does not have enough available slots for %s
;		The nearby %s does not have enough available slots for %s
;		Tile.cpp: *pstrReason = CString("The nearby %s does not have enough available slots for %s", CMapObj::GetMapObjName(typeSiteNeeded, true).Data(), CMapObj::GetMapObjName(type, true).Data());

AE9C84C7	The nearby %s does not have any available slots
;		The nearby %s does not have any available slots
;		Tile.cpp: *pstrReason = CString("The nearby %s does not have any available slots", CMapObj::GetMapObjName(typeSiteNeeded, true).Data());

8C74C2C2	You can only build %s near a %s
;		You can only build %s near a %s
;		Tile.cpp: *pstrReason = CString("You can only build %s near a %s", CMapObj::GetMapObjName(type, true).Data(), CMapObj::GetMapObjName(typeSiteNeeded, true).Data());

8CC90CAF	Location is reserved for %s
;		Location is reserved for %s
;		Tile.cpp: *pstrReason = CString("Location is reserved for %s", GameDesign().GetMapObjDef(typeObstructed)->strName.Data());

36EDF12E	Too close to warp gate
;		Too close to warp gate
;		Tile.cpp: *pstrReason = "Too close to warp gate";

33A2D094	Too close to %s
;		Too close to %s
;		Tile.cpp: *pstrReason = CString("Too close to %s", pMapObj->GetName(true).Data());

DA388BC9	Too close to a player's starting position
;		Too close to a player's starting position
;		Tile.cpp: *pstrReason = "Too close to a player's starting position";

5D0410C3	%s is already there.
;		%s is already there.
;		Tile.cpp: *pstrReason = CString("%s is already there.", CMapObj::GetMapObjName(type, true).Data());

750D166C	A building is in the way
;		A building is in the way
;		Tile.cpp: *pstrReason = "A building is in the way";

E4ED6620	A wall is in the way
;		A wall is in the way
;		Tile.cpp: *pstrReason = "A wall is in the way";

29088C86	A gate is in the way
;		A gate is in the way
;		Tile.cpp: *pstrReason = "A gate is in the way";

AC26B16E	A short wall is in the way
;		A short wall is in the way
;		Tile.cpp: *pstrReason = "A short wall is in the way";

D9BF9673	I can't
;		I can't
;		Transporter.cpp: g_psinkMain->OnMessage("I can't", m_pUnit);
;		UnitStation.cpp: g_psinkMain->OnMessage("I can't", m_pUnit);

C8671B8A	Can't reach transport
;		Can't reach transport
;		Transporter.cpp: g_psinkMain->OnMessage("Can't reach transport", m_pUnit);

0448B436	I don't have enough space
;		I don't have enough space
;		Transporter.cpp: g_psinkMain->OnMessage("I don't have enough space", m_pTransport->GetParent());

91279FFC	No Driver
;		No Driver
;		Transporter.cpp: params.strText = "No Driver";

E9820CB2	Move a soldier into the vehicle.\nAny soldier can be used as a driver. 2-4 soldiers can ride in the same vehicle, depending on the vehicle type. The passengers will fire their personal weapons from the vehicle. Captured soldiers can drive the vehicle, but won't operate any weapons. Unconscious soldiers can be transported inside the vehicle, if there is space.
;		Move a soldier into the vehicle.\nAny soldier can be used as a driver. 2-4 soldiers can ride in the same vehicle, depending on the vehicle type. The passengers will fire their personal weapons from the vehicle. Captured soldiers can drive the vehicle, but won't operate any weapons. Unconscious soldiers can be transported inside the vehicle, if there is space.
;		Transporter.cpp: params.strMouseOver = "Move a soldier into the vehicle.\nAny soldier can be used as a driver. 2-4 soldiers can ride in the same vehicle, depending on the vehicle type. The passengers will fire their personal weapons from the vehicle. Captured soldiers can drive the vehicle, but won'

0026AE4D	Can't, legs need healing
;		Can't, legs need healing
;		Unit.cpp: g_psinkMain->OnMessage("Can't, legs need healing", this);

5DD7E37D	Can't, wheels need repair
;		Can't, wheels need repair
;		Unit.cpp: g_psinkMain->OnMessage("Can't, wheels need repair", this);

EAFC82CB	I need a driver
;		I need a driver
;		Unit.cpp: g_psinkMain->OnMessage("I need a driver", this);

73F050EB	I need gas
;		I need gas
;		Unit.cpp: g_psinkMain->OnMessage("I need gas", this);

EC8A6B8A	I can disassemble only my %s
;		I can disassemble only my %s
;		Unit.cpp: params.strError = CString("I can disassemble only my %s", pAttackee->GetName(false).Data());

D133DFC7	Hope there's room
;		Hope there's room
;		Unit.cpp: g_psinkMain->OnMessage("Hope there's room", this);

817CDA3D	This unit is unconscious and is dying.
;		This unit is unconscious and is dying.
;		Unit.cpp: params.strMouseOver = "This unit is unconscious and is dying.";

D72927D4	Unconscious
;		Unconscious
;		Unit.cpp: params.strText = "Unconscious";

B818829C	This unit has been captured.
;		This unit has been captured.
;		Unit.cpp: params.strMouseOver = "This unit has been captured.";

5DF7A7AD	Prisoner
;		Prisoner
;		Unit.cpp: params.strText = "Prisoner";

8D227E72	This unit's legs have been damaged.
;		This unit's legs have been damaged.
;		Unit.cpp: params.strMouseOver = "This unit's legs have been damaged.";

E245CD22	Legs Damaged
;		Legs Damaged
;		Unit.cpp: params.strText = "Legs Damaged";

219FFCE7	This unit's wheels have been damaged.
;		This unit's wheels have been damaged.
;		Unit.cpp: params.strMouseOver = "This unit's wheels have been damaged.";

8EA6C1FC	Wheel Damaged
;		Wheel Damaged
;		Unit.cpp: params.strText = "Wheel Damaged";

0BC10338	This unit is temporarily insane, and uncontrollable.  A Mind Blaster with Madness Research has induced the insanity.
;		This unit is temporarily insane, and uncontrollable.  A Mind Blaster with Madness Research has induced the insanity.
;		Unit.cpp: params.strMouseOver = "This unit is temporarily insane, and uncontrollable.  A Mind Blaster with Madness Research has induced the insanity.";

65CE4222	This unit is being clenched by a roach.  This unit cannot move until the roach releases it.
;		This unit is being clenched by a roach.  This unit cannot move until the roach releases it.
;		Unit.cpp: params.strMouseOver = "This unit is being clenched by a roach.  This unit cannot move until the roach releases it.";

CD1F93E5	Clenched
;		Clenched
;		Unit.cpp: params.strText = "Clenched";

AC5998A0	This unit is temporarily disabled.  A Firetruck has thrown a net over this.
;		This unit is temporarily disabled.  A Firetruck has thrown a net over this.
;		Unit.cpp: params.strMouseOver = "This unit is temporarily disabled.  A Firetruck has thrown a net over this.";

B140C0CB	Captured
;		Captured
;		Unit.cpp: params.strText = "Captured";

200A9F08	This unit is temporarily stunned.
;		This unit is temporarily stunned.
;		Unit.cpp: params.strMouseOver = "This unit is temporarily stunned.";

E5355085	Stunned
;		Stunned
;		Unit.cpp: params.strText = "Stunned";

B57CB5D4	A nearby Cheiftain has inflicted slowness on this unit.
;		A nearby Cheiftain has inflicted slowness on this unit.
;		Unit.cpp: params.strMouseOver = "A nearby Cheiftain has inflicted slowness on this unit.";

9A903B31	This unit is temporarily disrupted and cannot attack.
;		This unit is temporarily disrupted and cannot attack.
;		Unit.cpp: params.strMouseOver = "This unit is temporarily disrupted and cannot attack.";

6A19AE45	Disrupted
;		Disrupted
;		Unit.cpp: params.strText = "Disrupted";

FB432EA8	%s requires tech from %s in order to function correctly.
;		%s requires tech from %s in order to function correctly.
;		Unit.cpp: params.strMouseOver = CString("%s requires tech from %s in order to function correctly.", GetName(false).Data(), strResearchBuilding.Data());

D9424DFC	Needs Tech
;		Needs Tech
;		Unit.cpp: params.strText = "Needs Tech";

5685B78C	Veterancy Rank:
;		Veterancy Rank:
;		Unit.cpp: entry.strText = "Veterancy Rank:";

4B89BA5C	Veterancy Rank of this unit
;		Veterancy Rank of this unit
;		Unit.cpp: entry.strMouseOver = "Veterancy Rank of this unit";

AA42BE50	Flame Resist:
;		Flame Resist:
;		Unit.cpp: entry.strText = "Flame Resist:";

D0D1177B	Acid Damage has removed this unit's combustive resistance.
;		Acid Damage has removed this unit's combustive resistance.
;		Unit.cpp: entry.strMouseOver = "Acid Damage has removed this unit's combustive resistance.";

65E4141E	%0.0f%%
;		%0.0f%%
;		Unit.cpp: entry.strValue = CString("%0.0f%%", 100.0f * (1.0f - GetFlameDamageModifer(HD_FRONT)));
;		Unit.cpp: entry.strValue = CString("%0.0f%%", 100.0f * (1.0f - GetBulletDamageModifer(NULL, HD_FRONT)));
;		Unit.cpp: entry.strValue = CString("%0.0f%%", 100.0f * (1.0f - GetBluntDamageModifer(HD_FRONT)));

2577851F	Combustive damage to this unit is reduced by 
;		Combustive damage to this unit is reduced by 
;		Unit.cpp: entry.strMouseOver = "Combustive damage to this unit is reduced by " + entry.strValue;

18DE1DF9	Bullet Armor:
;		Bullet Armor:
;		Unit.cpp: entry.strText = "Bullet Armor:";

6F4F744F	Acid Damage has negated this unit's piercing armor.
;		Acid Damage has negated this unit's piercing armor.
;		Unit.cpp: entry.strMouseOver = "Acid Damage has negated this unit's piercing armor.";

2A83C8BC	Piercing damage to this unit is reduced by 
;		Piercing damage to this unit is reduced by 
;		Unit.cpp: entry.strMouseOver = "Piercing damage to this unit is reduced by " + entry.strValue;

538F73B0	Concussive Armor:
;		Concussive Armor:
;		Unit.cpp: entry.strText = "Concussive Armor:";

BC226516	Acid Damage has negated this unit's concussive armor.
;		Acid Damage has negated this unit's concussive armor.
;		Unit.cpp: entry.strMouseOver = "Acid Damage has negated this unit's concussive armor.";

7FB42EE2	Concussive damage to this unit is reduced by 
;		Concussive damage to this unit is reduced by 
;		Unit.cpp: entry.strMouseOver = "Concussive damage to this unit is reduced by " + entry.strValue;

08BD2EB2	Healing
;		Healing
;		Unit.cpp: params.strText = "Healing";

CBC428B1	Rescuing
;		Rescuing
;		Unit.cpp: params.strText = "Rescuing";

DF894DA5	Capturing %s
;		Capturing %s
;		Unit.cpp: params.strText = CString("Capturing %s", pHolder->GetParent()->GetName(false).Data());

296679C5	Upgrading..
;		Upgrading..
;		Unit.cpp: params.strText = CString("Upgrading..");

F6734A48	 - LVL 
;		 - LVL 
;		Unit.cpp: str += " - LVL ";

0ADCA1F9	With one upgrade, unit full-heals in %0.1f minutes.
;		With one upgrade, unit full-heals in %0.1f minutes.
;		Notes:  singular version
;		Unit.cpp: info.paCurrentLevelOut->Add(CString("With one upgrade, unit full-heals in %0.1f minutes.", GetPassiveHealFullHealTime_InMins(info.fUpgrades)));

E59757AB	With %s upgrades, unit full-heals in %0.1f minutes.
;		With %s upgrades, unit full-heals in %0.1f minutes.
;		Notes:  plural version
;		Unit.cpp: info.paCurrentLevelOut->Add(CString("With %s upgrades, unit full-heals in %0.1f minutes.", ShowTechLevelAsWord(info.fUpgrades, false).Data(), GetPassiveHealFullHealTime_InMins(info.fUpgrades)));

9E40713F	Another upgrade would reduce full-heal time to %0.1f minutes.
;		Another upgrade would reduce full-heal time to %0.1f minutes.
;		Unit.cpp: info.paNextLevelOut->Add(CString("Another upgrade would reduce full-heal time to %0.1f minutes.", GetPassiveHealFullHealTime_InMins(info.fUpgrades + 1.0f)));

451D87BB	Having one upgrade allows your unit to levitate for %0.1f seconds.
;		Having one upgrade allows your unit to levitate for %0.1f seconds.
;		Notes:  singular version
;		Unit.cpp: info.paCurrentLevelOut->Add(CString("Having one upgrade allows your unit to levitate for %0.1f seconds.", graphLevitationDuration.EvaluateY((float)(0)) / 100.0f));

B4FB8622	Having %s upgrades allows your unit to levitate for %0.1f seconds.
;		Having %s upgrades allows your unit to levitate for %0.1f seconds.
;		Notes:  singular version
;		Unit.cpp: info.paCurrentLevelOut->Add(CString("Having %s upgrades allows your unit to levitate for %0.1f seconds.", ShowTechLevelAsWord(info.fUpgrades, false).Data(), graphLevitationDuration.EvaluateY(info.fUpgrades - 1) / 100.0f));

1113BAF6	Another upgrade would allow your unit to levitate for %0.1f seconds.
;		Another upgrade would allow your unit to levitate for %0.1f seconds.
;		Unit.cpp: info.paNextLevelOut->Add(CString("Another upgrade would allow your unit to levitate for %0.1f seconds.", graphLevitationDuration.EvaluateY(info.fUpgrades + 0) / 100.0f));

164C5DA1	Not enough space
;		Not enough space
;		Unit.cpp: g_psinkMain->OnMessage("Not enough space", this);

6F0DF920	Too close
;		Too close
;		Unit.cpp: g_psinkMain->OnMessage("Too close", this);

BDB0ECC2	Ouch
;		Ouch
;		Unit.cpp: g_psinkMain->OnMessage("Ouch", this);

06E07547	%s's %s is not sharing %s resources.
;		%s's %s is not sharing %s resources.
;		Unit.cpp: g_psinkMain->OnMessage(CString("%s's %s is not sharing %s resources.", pTeammateBuilding->GetPlayer()->GetName().Data(), pTeammateBuilding->GetName(true).Data(), GetResourceName(restypeDisabled, true).Data()), m_pUpgradingUnit);
;		Unit.cpp: str = CString("%s's %s is not sharing %s resources.", m_pUpgraderBuilding->GetPlayer()->GetName().Data(), m_pUpgraderBuilding->GetName(true).Data(), GetResourceName(restype, true).Data());

A1BC199F	Too far from any upgrade building.
;		Too far from any upgrade building.
;		Unit.cpp: g_psinkMain->OnMessage("Too far from any upgrade building.", m_pUpgradingUnit);

A49790A7	%s needs %s %s to upgrade me.
;		%s needs %s %s to upgrade me.
;		Unit.cpp: str = CString("%s needs %s %s to upgrade me.", m_pUpgraderBuilding->GetName(true).Data(), CString("%0.0f", fAmtNeeded).Data(), GetResourceName(restype, true).Data()); // Auto Factory needs 8 salvage to upgrade me.

B0DA2D71	Upgrading.
;		Upgrading.
;		Unit.cpp: g_psinkMain->OnMessage(CString("Upgrading.", m_pUpgradingUnit->GetName(false)).Data(), m_pUpgradingUnit);

16DDB66D	Requires %s
;		Requires %s
;		UnitFactory.cpp: *pstrReason = CString("Requires %s", CGameTechDesign::GetGameTechName(*pFlag, true).Data());

28D7DF0D	Producing %s
;		Producing %s
;		UnitFactory.cpp: params.strText = CString("Producing %s", params.pDef->strName.Data());

789620DE	You have reached the maximum number of units you can have any one time.  You cannot build more units until you are under the player pop limit.
;		You have reached the maximum number of units you can have any one time.  You cannot build more units until you are under the player pop limit.
;		UnitFactory.cpp: params.strMouseOver = "You have reached the maximum number of units you can have any one time.  You cannot build more units until you are under the player pop limit.";

BE5092FA	Player Pop Limit
;		Player Pop Limit
;		UnitFactory.cpp: params.strText = "Player Pop Limit";

350B27D4	Your team has reached the maximum number of units it can have any one time.  You cannot build more units until your team is under the team pop limit.
;		Your team has reached the maximum number of units it can have any one time.  You cannot build more units until your team is under the team pop limit.
;		UnitFactory.cpp: params.strMouseOver = "Your team has reached the maximum number of units it can have any one time.  You cannot build more units until your team is under the team pop limit.";

7302BA81	Team Pop Limit
;		Team Pop Limit
;		UnitFactory.cpp: params.strText = "Team Pop Limit";

7599363A	A survivor is part of your total population, but has not yet been converted to an on-map unit.  A survivor is converted to an on-map unit when you create a soldier from the shelter, or when you create any other combat unit with a weapon or vehicle.\nIf you run out of survivors, the build queue will stall.  You can still build weapons and vehicles by clearing the build queue, and CTRL-click the build buttons.
;		A survivor is part of your total population, but has not yet been converted to an on-map unit.  A survivor is converted to an on-map unit when you create a soldier from the shelter, or when you create any other combat unit with a weapon or vehicle.\nIf you run out of survivors, the build queue will stall.  You can still build weapons and vehicles by clearing the build queue, and CTRL-click the build buttons.
;		UnitFactory.cpp: params.strMouseOver = "A survivor is part of your total population, but has not yet been converted to an on-map unit.  A survivor is converted to an on-map unit when you create a soldier from the shelter, or when you create any other combat unit with a weapon or vehicle.\nIf you run

52354FA1	More resources are required to build the unit.
;		More resources are required to build the unit.
;		UnitFactory.cpp: params.strMouseOver = "More resources are required to build the unit.";

4B045B66	Building %s
;		Building %s
;		UnitFactory.cpp: return "Building %s";

8399BDB6	%s cannot make %s because %s.
;		%s cannot make %s because %s.
;		UnitFactory.cpp: g_psinkMain->OnMessage(CString("%s cannot make %s because %s.", CMapObj::GetMapObjName(m_pMapObj->GetType(), false).Data(), m_pVariationDef->pDef->strName.Data(), strReason.Data()), m_pMapObj->GetTileIndex(), false);

4E59F84F	%s is capturing
;		%s is capturing
;		UnitHolder.cpp: params.strText = CString("%s is capturing", pUnit->GetName(false).Data());

91C1A66D	Being uncaptured
;		Being uncaptured
;		UnitHolder.cpp: params.strText = CString("Being uncaptured");

6D45F3A6	Capture Cooldown
;		Capture Cooldown
;		UnitHolder.cpp: params.strText = "Capture Cooldown";

6707641F	Not enough room for me
;		Not enough room for me
;		Notes:  unit cannot fit in unit holder
;		UnitHolder.cpp: g_psinkMain->OnMessage("Not enough room for me", pUnitSubject);

B77A4D3D	Can't reach Station
;		Can't reach Station
;		UnitStation.cpp: g_psinkMain->OnMessage("Can't reach Station", m_pUnit);

982E3812	Worker is being prepared:
;		Worker is being prepared:
;		UnitStation.cpp: entry.strText = "Worker is being prepared:";

1936DC7F	No crew
;		No crew
;		UnitStation.cpp: params.strText = "No crew";

E0A3F0ED	Move a soldier into the structure.\nAny soldier can be used as crew. While some weapons platforms and structures can have a crew of 4, only one is actually needed to operate the main weapon. The rest of the soldiers will fire their personal weapons.
;		Move a soldier into the structure.\nAny soldier can be used as crew. While some weapons platforms and structures can have a crew of 4, only one is actually needed to operate the main weapon. The rest of the soldiers will fire their personal weapons.
;		UnitStation.cpp: params.strMouseOver = "Move a soldier into the structure.\nAny soldier can be used as crew. While some weapons platforms and structures can have a crew of 4, only one is actually needed to operate the main weapon. The rest of the soldiers will fire their personal weapons.";

9019915F	Upgrading Unit
;		Upgrading Unit
;		Upgrader.cpp: return "Upgrading Unit";

D91D2276	This portal links two points on map.  Allows instant travel between these points.
;		This portal links two points on map.  Allows instant travel between these points.

B68BBE85	This warp gate has not yet been linked.
;		This warp gate has not yet been linked.
;		WarpGate.cpp: return "This warp gate has not yet been linked.";

A8A380F9	We should not be calling this
;		We should not be calling this
;		Weapon.cpp: assert_debug(!"We should not be calling this");

76072D7B	%s broke!
;		%s broke!
;		Weapon.cpp: g_psinkMain->OnMessage( CString("%s broke!", m_pDef->m_strNameTranslated.Data()), m_pAttacker->GetParent()  );

85D510BF	Check_IsOutOfResources() was false, but we still didn't have enough resources
;		Check_IsOutOfResources() was false, but we still didn't have enough resources
;		Weapon.cpp: assert_warning(!"Check_IsOutOfResources() was false, but we still didn't have enough resources");

AD2D77B7	LoF Error
;		LoF Error
;		Weapon.cpp: assert_warning(!"LoF Error");

